Update perseus DSDT
authorSophon <strongtz@yeah.net>
星期四, 26 Aug 2021 05:38:29 +0000 (13:38 +0800)
committerSophon <strongtz@yeah.net>
星期四, 26 Aug 2021 05:38:29 +0000 (13:38 +0800)
Tested by Pagnchanak

perseus/DSDT.aml
perseus/DSDT.dsl
perseus/adc.asl [new file with mode: 0644]
perseus/cust_adc.asl [new file with mode: 0644]
perseus/cust_pmic_batt.asl [new file with mode: 0644]
perseus/cust_thermal_zones.asl [new file with mode: 0644]
perseus/pmic_batt.asl [new file with mode: 0644]
perseus/thz.asl [new file with mode: 0644]

index 3a46b4d65609b3562b3f06c558a13239ef04e6c4..2186c605f2f480bd2c8ddadeba35a54c3bc6ccdb 100644 (file)
Binary files a/perseus/DSDT.aml and b/perseus/DSDT.aml differ
index 1de6c5917d33c64c6eef01a8665587cf519a83a1..6eee61a2ec1f210bc39ad3cc2aaf8fb76d04d712 100644 (file)
@@ -398,2418 +398,1875 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003)
             }
         }
 
-        Device (PEIC)
+        Include("pmic_batt.asl")
+
+        Device (PEP0)
         {
-            Name (_HID, "QCOM02D3")  // _HID: Hardware ID
-            Method (_STA, 0, NotSerialized)  // _STA: Status
-            {
-                Return (Zero)
-            }
+            Name (_HID, "QCOM0237")  // _HID: Hardware ID
+            Name (_CID, "PNP0D80" /* Windows-compatible System Power Management Controller */)  // _CID: Compatible ID
+            Include("thz.asl")
 
             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
             {
-                Name (RBUF, ResourceTemplate ()
+                Return (ResourceTemplate ()
                 {
-                    I2cSerialBusV2 (0x0008, ControllerInitiated, 0x00061A80,
-                        AddressingMode7Bit, "\\_SB.I2C7",
-                        0x00, ResourceConsumer, , Exclusive,
-                        )
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, ExclusiveAndWake, ,, )
+                    {
+                        0x0000021A,
+                    }
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, ExclusiveAndWake, ,, )
+                    {
+                        0x0000021C,
+                    }
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, ExclusiveAndWake, ,, )
+                    {
+                        0x0000021B,
+                    }
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, ExclusiveAndWake, ,, )
+                    {
+                        0x0000021D,
+                    }
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
+                    {
+                        0x00000025,
+                    }
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
+                    {
+                        0x000000A1,
+                    }
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
+                    {
+                        0x000001A5,
+                    }
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
+                    {
+                        0x00000040,
+                    }
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
+                    {
+                        0x00000041,
+                    }
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
+                    {
+                        0x00000265,
+                    }
                 })
-                Return (RBUF) /* \_SB_.PEIC._CRS.RBUF */
             }
 
-            Method (PMCF, 0, NotSerialized)
+            Field (^ABD.ROP1, BufferAcc, NoLock, Preserve)
             {
-                Name (CFG0, Package (0x02)
-                {
-                    Zero, 
-                    0x02
-                })
-                Return (CFG0) /* \_SB_.PEIC.PMCF.CFG0 */
+                Connection (
+                    I2cSerialBusV2 (0x0001, ControllerInitiated, 0x00000000,
+                        AddressingMode7Bit, "\\_SB.ABD",
+                        0x00, ResourceConsumer, , Exclusive,
+                        )
+                ), 
+                AccessAs (BufferAcc, AttribRawBytes (0x15)), 
+                FLD0,   168
             }
-        }
 
-        Device (PMBT)
-        {
-            Name (_HID, "QCOM0264")  // _HID: Hardware ID
-            Name (_DEP, Package (0x03)  // _DEP: Dependencies
-            {
-                PMIC, 
-                ADC1, 
-                PEIC
-            })
-            Method (_STA, 0, NotSerialized)  // _STA: Status
+            Method (GEPT, 0, NotSerialized)
             {
-                Return (Zero)
+                Name (BUFF, Buffer (0x04){})
+                CreateByteField (BUFF, Zero, STAT)
+                CreateWordField (BUFF, 0x02, DATA)
+                DATA = One
+                Return (DATA) /* \_SB_.PEP0.GEPT.DATA */
             }
 
-            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
+            Name (ROST, Zero)
+            Method (NPUR, 1, NotSerialized)
             {
-                Name (RBUF, ResourceTemplate ()
-                {
-                    GpioInt (Edge, ActiveHigh, Shared, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x0149
-                        }
-                    GpioInt (Edge, ActiveHigh, Exclusive, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x014B
-                        }
-                    GpioInt (Edge, ActiveHigh, Shared, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x00ED
-                        }
-                    GpioInt (Edge, ActiveHigh, Shared, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x00E0
-                        }
-                })
-                Return (RBUF) /* \_SB_.PMBT._CRS.RBUF */
+                ^^AGR0._PUR [One] = Arg0
+                Notify (AGR0, 0x80) // Status Change
             }
 
-            Method (BMNR, 0, NotSerialized)
+            Method (INTR, 0, NotSerialized)
             {
-                Name (CFG0, Package (0x05)
+                Name (RBUF, Package (0x18)
                 {
+                    0x02, 
                     One, 
-                    Zero, 
+                    0x03, 
+                    One, 
+                    0x06, 
+                    0x17911008, 
                     One, 
                     Zero, 
-                    "CUST_PMIC"
-                })
-                CFG0 [0x04] = CUST /* External reference */
-                Return (CFG0) /* \_SB_.PMBT.BMNR.CFG0 */
-            }
-
-            Method (BTIM, 0, NotSerialized)
-            {
-                Name (CFG0, Package (0x08)
-                {
-                    0x7530, 
-                    0x2710, 
-                    0x000493E0, 
-                    0x0001D4C0, 
+                    0x86000000, 
+                    0x00200000, 
+                    Zero, 
+                    Zero, 
+                    0x0C300000, 
+                    0x1000, 
+                    Zero, 
+                    Zero, 
+                    0x01FD4000, 
+                    0x08, 
+                    Zero, 
+                    Zero, 
+                    0x1799000C, 
                     Zero, 
                     Zero, 
-                    0x01AC7780, 
                     Zero
                 })
-                Return (CFG0) /* \_SB_.PMBT.BTIM.CFG0 */
+                Return (RBUF) /* \_SB_.PEP0.INTR.RBUF */
             }
 
-            Method (BBAT, 0, NotSerialized)
+            Method (CRTC, 0, NotSerialized)
             {
-                Name (CFG0, Package (0x0D)
-                {
-                    One, 
-                    0x4C494F4E, 
-                    0xFFFFFFFF, 
-                    0xFFFFFFFF, 
-                    0xFFFFFFFF, 
-                    0xFFFFFFFF, 
-                    "QCOMBATT01", 
-                    "Qualcomm", 
-                    "QCOMBAT01_07012011", 
-                    "07012011", 
-                    0x13, 
-                    0x04, 
-                    0x07DE
-                })
-                Local0 = (PCT1 * BFCC) /* External reference */
-                Divide (Local0, 0x64, Local1, Local2)
-                Local0 = (PCT2 * BFCC) /* External reference */
-                Divide (Local0, 0x64, Local1, Local3)
-                CFG0 [0x02] = BFCC /* External reference */
-                CFG0 [0x03] = BFCC /* External reference */
-                CFG0 [0x04] = Local2
-                CFG0 [0x05] = Local3
-                Return (CFG0) /* \_SB_.PMBT.BBAT.CFG0 */
+                Return (CTRX) /* \_SB_.PEP0.CTRX */
             }
 
-            Method (BPCH, 0, NotSerialized)
+            Name (CTRX, Package (0x0B)
             {
-                Name (CFG0, Package (0x03)
-                {
-                    0x05DC, 
-                    0x05DC, 
-                    0x05DC
-                })
-                Return (CFG0) /* \_SB_.PMBT.BPCH.CFG0 */
-            }
-
-            Method (BFCH, 0, NotSerialized)
+                "NSTC", 
+                "HLCB", 
+                "MMVD", 
+                "DSGP", 
+                "CCGP", 
+                "MTPS", 
+                "CPGP", 
+                "DMPP", 
+                "VRDL", 
+                "GBDL", 
+                "SRDL"
+            })
+            Method (STND, 0, NotSerialized)
             {
-                Name (CFG0, Package (0x04)
-                {
-                    One, 
-                    0x05, 
-                    0x1388, 
-                    0x0384
-                })
-                Return (CFG0) /* \_SB_.PMBT.BFCH.CFG0 */
+                Return (STNX) /* \_SB_.PEP0.STNX */
             }
 
-            Method (BCCC, 0, NotSerialized)
+            Name (STNX, Package (0x19)
             {
-                Name (CFG0, Package (0x03)
+                "DMPO", 
+                "DMSB", 
+                "DMQP", 
+                "DMMS", 
+                "DMPA", 
+                "DMPC", 
+                "DMPB", 
+                "DM0G", 
+                "DM1G", 
+                "DM2G", 
+                "DM3G", 
+                "DM4G", 
+                "DM5G", 
+                "DM6G", 
+                "DM7G", 
+                "DM8G", 
+                "DM9G", 
+                "DMPS", 
+                "DMPL", 
+                "DMDQ", 
+                "DMPI", 
+                "DMWE", 
+                "XMPC", 
+                "XMPL", 
+                "DMEP"
+            })
+            Method (CTPM, 0, NotSerialized)
+            {
+                Name (CTPN, Package (0x02)
                 {
-                    One, 
-                    Zero, 
-                    Zero
+                    "CORE_TOPOLOGY", 
+                    0x08
                 })
-                Return (CFG0) /* \_SB_.PMBT.BCCC.CFG0 */
+                Return (CTPN) /* \_SB_.PEP0.CTPM.CTPN */
             }
 
-            Method (BRCH, 0, NotSerialized)
+            Name (CCFG, Package (0x08)
             {
-                Name (CFG0, Package (0x02)
+                Package (0x02)
                 {
-                    0x64, 
-                    Zero
-                })
-                Return (CFG0) /* \_SB_.PMBT.BRCH.CFG0 */
-            }
+                    "\\_SB.SYSM.CLUS.CPU0", 
+                    0x10
+                }, 
 
-            Method (_BQI, 0, NotSerialized)
-            {
-                Name (CFG0, Package (0x01)
+                Package (0x02)
                 {
-                    Zero
-                })
-                Return (CFG0) /* \_SB_.PMBT._BQI.CFG0 */
-            }
+                    "\\_SB.SYSM.CLUS.CPU1", 
+                    0x11
+                }, 
 
-            Method (BIRQ, 0, NotSerialized)
-            {
-                Name (CFG0, Package (0x04)
+                Package (0x02)
                 {
-                    "VbatLow", 
-                    "BattMissing", 
-                    "FvCal", 
-                    "JeitaLimit"
-                })
-                Return (CFG0) /* \_SB_.PMBT.BIRQ.CFG0 */
-            }
+                    "\\_SB.SYSM.CLUS.CPU2", 
+                    0x12
+                }, 
 
-            Method (BPLT, 0, NotSerialized)
-            {
-                Name (CFG0, Package (0x2A)
+                Package (0x02)
                 {
-                    0x03FF, 
-                    0xFFFFFFFF, 
-                    0xFFFFFFFF, 
-                    0xFFFFFFFF, 
-                    0xFFFFFFFF, 
-                    One, 
-                    0x32, 
-                    0x32, 
-                    0x1388, 
-                    0x08, 
-                    One, 
-                    0x50, 
-                    0xFFFFFFEC, 
-                    0x48, 
-                    0x64, 
-                    0x1E, 
-                    0x05, 
-                    0x06, 
-                    0x01F4, 
-                    0x7E, 
-                    0x0190, 
-                    0xFFFFFFFF, 
-                    0x02EE, 
-                    One, 
-                    Zero, 
-                    0x32, 
-                    0x0A, 
-                    One, 
-                    0xFFFFFFEC, 
-                    0x0A, 
-                    0x0A, 
-                    0x0A, 
-                    0x0A, 
-                    One, 
-                    0x96, 
-                    0x64, 
-                    0x05, 
-                    0x0A, 
-                    0x02, 
-                    0x33, 
-                    0x02, 
-                    0x0A
-                })
-                CFG0 [One] = VNOM /* External reference */
-                CFG0 [0x02] = VLOW /* External reference */
-                CFG0 [0x03] = EMPT /* External reference */
-                CFG0 [0x04] = DCMA /* External reference */
-                CFG0 [0x15] = BOCP /* External reference */
-                CFG0 [0x19] = IFGD /* External reference */
-                CFG0 [0x1A] = VFGD /* External reference */
-                Return (CFG0) /* \_SB_.PMBT.BPLT.CFG0 */
-            }
+                    "\\_SB.SYSM.CLUS.CPU3", 
+                    0x13
+                }, 
 
-            Method (BPTM, 0, NotSerialized)
-            {
-                Name (CFG0, Package (0x02)
+                Package (0x02)
                 {
-                    0x3A98, 
-                    Zero
-                })
-                Return (CFG0) /* \_SB_.PMBT.BPTM.CFG0 */
-            }
+                    "\\_SB.SYSM.CLUS.CPU4", 
+                    0x14
+                }, 
 
-            Method (BJTA, 0, NotSerialized)
-            {
-                Name (CFG0, Package (0x03)
+                Package (0x02)
                 {
-                    0x02, 
-                    0x02, 
-                    Package (0x0A)
-                    {
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero
-                    }
-                })
-                CFG0 [0x02] = BCT1 /* \_SB_.PMBT.BCT1 */
-                Return (CFG0) /* \_SB_.PMBT.BJTA.CFG0 */
-            }
+                    "\\_SB.SYSM.CLUS.CPU5", 
+                    0x15
+                }, 
 
-            Method (BEHC, 0, NotSerialized)
-            {
-                Name (CFG0, Package (0x08)
+                Package (0x02)
                 {
-                    One, 
-                    0x08, 
-                    One, 
-                    Zero, 
-                    0x02, 
-                    0x02, 
-                    0x02, 
-                    0x04
-                })
-                Return (CFG0) /* \_SB_.PMBT.BEHC.CFG0 */
-            }
+                    "\\_SB.SYSM.CLUS.CPU6", 
+                    0x16
+                }, 
 
-            Method (CTMC, 0, NotSerialized)
-            {
-                Name (CFG0, Package (0x07)
+                Package (0x02)
                 {
-                    0x07D0, 
-                    0x36B0, 
-                    0xFFFFFFFF, 
-                    0xFFFFFFFF, 
-                    0x0003A980, 
-                    0x0006DDD0, 
-                    One
-                })
-                CFG0 [0x02] = RID2 /* External reference */
-                CFG0 [0x03] = RID3 /* External reference */
-                Return (CFG0) /* \_SB_.PMBT.CTMC.CFG0 */
+                    "\\_SB.SYSM.CLUS.CPU7", 
+                    0x17
+                }
+            })
+            Method (PGCC, 0, NotSerialized)
+            {
+                Return (CCFG) /* \_SB_.PEP0.CCFG */
             }
 
-            Method (BAT1, 0, NotSerialized)
+            Name (DRVC, Package (0x02)
             {
-                Name (CFG0, Package (0x05)
+                Package (0x03)
                 {
-                    Zero, 
-                    0xFFFFFFEC, 
-                    0x41, 
-                    Package (0x04)
-                    {
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero
-                    }, 
-
-                    Package (0x0A)
-                    {
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero
-                    }
-                })
-                CFG0 [0x04] = BCT1 /* \_SB_.PMBT.BCT1 */
-                Return (CFG0) /* \_SB_.PMBT.BAT1.CFG0 */
-            }
+                    "HLOS_DRV", 
+                    0x02, 
+                    "/icb/arbiter"
+                }, 
 
-            Name (BCT1, Package (0x0A)
-            {
-                0x10FE, 
-                0x0834, 
-                Zero, 
-                0x0A, 
-                0x2D, 
-                0x37, 
-                0x69, 
-                Zero, 
-                Zero, 
-                0x03E8
+                Package (0x03)
+                {
+                    "DISPLAY_DRV", 
+                    0x09, 
+                    "/icb/arbiter/display"
+                }
             })
-            Method (BMPC, 0, NotSerialized)
+            Method (LDRV, 0, NotSerialized)
             {
-                Name (CFG0, Package (0x07)
-                {
-                    Zero, 
-                    Zero, 
-                    0x1B58, 
-                    0x03E8, 
-                    0x32, 
-                    0x3C, 
-                    0x01F4
-                })
-                Return (CFG0) /* \_SB_.PMBT.BMPC.CFG0 */
+                Return (DRVC) /* \_SB_.PEP0.DRVC */
             }
-        }
 
-        Device (PMBM)
-        {
-            Name (_HID, "QCOM0263")  // _HID: Hardware ID
-            Method (_STA, 0, NotSerialized)  // _STA: Status
+            Name (DCVS, Zero)
+            Method (PGDS, 0, NotSerialized)
             {
-                Return (0x0F)
+                Return (DCVS) /* \_SB_.PEP0.DCVS */
             }
 
-            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
+            Name (PPPP, Package (0x32)
             {
-                Name (RBUF, Buffer (0x02)
+                Package (0x03)
                 {
-                     0x79, 0x00                                       // y.
-                })
-                Return (RBUF) /* \_SB_.PMBM._CRS.RBUF */
-            }
-        }
+                    "PPP_RESOURCE_ID_SMPS1_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-        Device (BCL1)
-        {
-            Name (_HID, "QCOM02D6")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-            Name (_DEP, Package (0x01)  // _DEP: Dependencies
-            {
-                PMIC
-            })
-            Method (_STA, 0, NotSerialized)  // _STA: Status
-            {
-                Return (Zero)
-            }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_SMPS2_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
-            {
-                Name (RBUF, ResourceTemplate ()
+                Package (0x03)
                 {
-                    GpioInt (Edge, ActiveHigh, Shared, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x0040
-                        }
-                    GpioInt (Edge, ActiveHigh, Shared, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x0041
-                        }
-                    GpioInt (Edge, ActiveHigh, Shared, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x0042
-                        }
-                    GpioInt (Edge, ActiveHigh, Shared, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x0043
-                        }
-                    GpioInt (Edge, ActiveHigh, Shared, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x0044
-                        }
-                    GpioInt (Edge, ActiveHigh, Shared, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x004B
-                        }
-                    GpioInt (Edge, ActiveHigh, Shared, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x0150
-                        }
-                    GpioInt (Edge, ActiveHigh, Shared, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x0151
-                        }
-                    GpioInt (Edge, ActiveHigh, Shared, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x0153
-                        }
-                    GpioInt (Edge, ActiveHigh, Shared, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x0154
-                        }
-                    GpioInt (Edge, ActiveHigh, Shared, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x0144
-                        }
-                    GpioInt (Edge, ActiveHigh, Shared, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x0146
-                        }
-                    GpioInt (Edge, ActiveBoth, Shared, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        RawDataBuffer (0x01)  // Vendor Data
-                        {
-                            0x08
-                        })
-                        {   // Pin list
-                            0x0158
-                        }
-                    GpioInt (Edge, ActiveBoth, Shared, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        RawDataBuffer (0x01)  // Vendor Data
-                        {
-                            0x08
-                        })
-                        {   // Pin list
-                            0x0159
-                        }
-                    GpioInt (Edge, ActiveBoth, Shared, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        RawDataBuffer (0x01)  // Vendor Data
-                        {
-                            0x08
-                        })
-                        {   // Pin list
-                            0x015A
-                        }
-                })
-                Return (RBUF) /* \_SB_.BCL1._CRS.RBUF */
-            }
+                    "PPP_RESOURCE_ID_SMPS3_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-            Method (BCLS, 0, NotSerialized)
-            {
-                Name (CFG0, Package (0x0B)
+                Package (0x03)
                 {
-                    0x02, 
-                    One, 
-                    0x1388, 
-                    0x50, 
-                    0x5A, 
-                    0x0CE4, 
-                    0x0A28, 
-                    0x0C80, 
-                    0x0ABE, 
-                    0x09C4, 
-                    0x0A
-                })
-                Return (CFG0) /* \_SB_.BCL1.BCLS.CFG0 */
-            }
+                    "PPP_RESOURCE_ID_SMPS4_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-            Method (BCLQ, 0, NotSerialized)
-            {
-                Name (CFG0, Package (0x06)
+                Package (0x03)
                 {
-                    "VCOMP_LOW0", 
-                    "VCOMP_LOW1", 
-                    "VCOMP_LOW2", 
-                    "VCOMP_HI", 
-                    "SYS_OK", 
-                    "BAN_ALARM"
-                })
-                Return (CFG0) /* \_SB_.BCL1.BCLQ.CFG0 */
-            }
-        }
+                    "PPP_RESOURCE_ID_SMPS5_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-        Device (PTCC)
-        {
-            Name (_HID, "QCOM02E6")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-            Name (_DEP, Package (0x01)  // _DEP: Dependencies
-            {
-                PMIC
-            })
-            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
-            {
-                Name (RBUF, ResourceTemplate ()
+                Package (0x03)
                 {
-                    GpioInt (Edge, ActiveHigh, SharedAndWake, PullNone, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x00EF
-                        }
-                    GpioInt (Edge, ActiveHigh, SharedAndWake, PullNone, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x010E
-                        }
-                    GpioInt (Edge, ActiveHigh, SharedAndWake, PullNone, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x010D
-                        }
-                    GpioInt (Edge, ActiveHigh, SharedAndWake, PullNone, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x010C
-                        }
-                    GpioInt (Edge, ActiveHigh, SharedAndWake, PullNone, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x010B
-                        }
-                    GpioInt (Edge, ActiveHigh, SharedAndWake, PullNone, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x010A
-                        }
-                    GpioInt (Edge, ActiveHigh, SharedAndWake, PullNone, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x0109
-                        }
-                    GpioInt (Edge, ActiveHigh, SharedAndWake, PullNone, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x0108
-                        }
-                    GpioInt (Edge, ActiveHigh, Exclusive, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x00D9
-                        }
-                    GpioInt (Edge, ActiveBoth, Exclusive, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x0107
-                        }
-                    GpioInt (Edge, ActiveHigh, Exclusive, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x00EB
-                        }
-                    GpioIo (Exclusive, PullUp, 0x0000, 0x0000, IoRestrictionNone,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x01ED
-                        }
-                })
-                Return (RBUF) /* \_SB_.PTCC._CRS.RBUF */
-            }
-        }
+                    "PPP_RESOURCE_ID_SMPS6_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-        Device (PEP0)
-        {
-            Name (_HID, "QCOM0237")  // _HID: Hardware ID
-            Name (_CID, "PNP0D80" /* Windows-compatible System Power Management Controller */)  // _CID: Compatible ID
-            Method (THTZ, 4, NotSerialized)
-            {
-                While (One)
+                Package (0x03)
                 {
-                    Name (_T_0, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                    _T_0 = ToInteger (Arg0)
-                    If ((_T_0 == One))
-                    {
-                        While (One)
-                        {
-                            Name (_T_1, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_1 = ToInteger (Arg3)
-                            If ((_T_1 == Zero))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ1.TPSV = Arg1
-                                    Notify (TZ1, 0x81) // Thermal Trip Point Change
-                                }
-
-                                Return (^^TZ1._PSV ())
-                            }
-                            ElseIf ((_T_1 == 0x02))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ1.TTSP = Arg1
-                                    Notify (TZ1, 0x81) // Thermal Trip Point Change
-                                }
+                    "PPP_RESOURCE_ID_SMPS7_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ1._TSP ())
-                            }
-                            ElseIf ((_T_1 == 0x03))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ1.TTC1 = Arg1
-                                    Notify (TZ1, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_SMPS9_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ1._TC1 ())
-                            }
-                            ElseIf ((_T_1 == 0x04))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ1.TTC2 = Arg1
-                                    Notify (TZ1, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_SMPS1_C", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ1._TC2 ())
-                            }
-                            Else
-                            {
-                                Return (0xFFFF)
-                            }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_SMPS2_C", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                            Break
-                        }
-                    }
-                    ElseIf ((_T_0 == 0x03))
-                    {
-                        While (One)
-                        {
-                            Name (_T_2, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_2 = ToInteger (Arg3)
-                            If ((_T_2 == Zero))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ3.TPSV = Arg1
-                                    Notify (TZ3, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_SMPS3_C", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ3._PSV ())
-                            }
-                            ElseIf ((_T_2 == 0x02))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ3.TTSP = Arg1
-                                    Notify (TZ3, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO1_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ3._TSP ())
-                            }
-                            ElseIf ((_T_2 == 0x03))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ3.TTC1 = Arg1
-                                    Notify (TZ3, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO2_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ3._TC1 ())
-                            }
-                            ElseIf ((_T_2 == 0x04))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ3.TTC2 = Arg1
-                                    Notify (TZ3, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO3_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ3._TC2 ())
-                            }
-                            Else
-                            {
-                                Return (0xFFFF)
-                            }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO4_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                            Break
-                        }
-                    }
-                    ElseIf ((_T_0 == 0x04))
-                    {
-                        While (One)
-                        {
-                            Name (_T_3, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_3 = ToInteger (Arg3)
-                            If ((_T_3 == Zero))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ4.TPSV = Arg1
-                                    Notify (TZ4, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO5_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ4._PSV ())
-                            }
-                            ElseIf ((_T_3 == 0x02))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ4.TTSP = Arg1
-                                    Notify (TZ4, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO6_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ4._TSP ())
-                            }
-                            ElseIf ((_T_3 == 0x03))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ4.TTC1 = Arg1
-                                    Notify (TZ4, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO7_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ4._TC1 ())
-                            }
-                            ElseIf ((_T_3 == 0x04))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ4.TTC2 = Arg1
-                                    Notify (TZ4, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO8_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ4._TC2 ())
-                            }
-                            Else
-                            {
-                                Return (0xFFFF)
-                            }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO9_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                            Break
-                        }
-                    }
-                    ElseIf ((_T_0 == 0x05))
-                    {
-                        While (One)
-                        {
-                            Name (_T_4, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_4 = ToInteger (Arg3)
-                            If ((_T_4 == Zero))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ5.TPSV = Arg1
-                                    Notify (TZ5, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO10_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ5._PSV ())
-                            }
-                            ElseIf ((_T_4 == 0x02))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ5.TTSP = Arg1
-                                    Notify (TZ5, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO11_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ5._TSP ())
-                            }
-                            ElseIf ((_T_4 == 0x03))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ5.TTC1 = Arg1
-                                    Notify (TZ5, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO12_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ3._TC1 ())
-                            }
-                            ElseIf ((_T_4 == 0x04))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ5.TTC2 = Arg1
-                                    Notify (TZ5, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO13_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ5._TC2 ())
-                            }
-                            Else
-                            {
-                                Return (0xFFFF)
-                            }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO14_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                            Break
-                        }
-                    }
-                    ElseIf ((_T_0 == 0x06))
-                    {
-                        While (One)
-                        {
-                            Name (_T_5, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_5 = ToInteger (Arg3)
-                            If ((_T_5 == Zero))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ6.TPSV = Arg1
-                                    Notify (TZ6, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO15_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ6._PSV ())
-                            }
-                            ElseIf ((_T_5 == 0x02))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ6.TTSP = Arg1
-                                    Notify (TZ6, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO16_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ6._TSP ())
-                            }
-                            ElseIf ((_T_5 == 0x03))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ6.TTC1 = Arg1
-                                    Notify (TZ6, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO17_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ6._TC1 ())
-                            }
-                            ElseIf ((_T_5 == 0x04))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ6.TTC2 = Arg1
-                                    Notify (TZ6, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO18_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ6._TC2 ())
-                            }
-                            Else
-                            {
-                                Return (0xFFFF)
-                            }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO19_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                            Break
-                        }
-                    }
-                    ElseIf ((_T_0 == 0x07))
-                    {
-                        While (One)
-                        {
-                            Name (_T_6, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_6 = ToInteger (Arg3)
-                            If ((_T_6 == Zero))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ7.TPSV = Arg1
-                                    Notify (TZ7, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO20_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ7._PSV ())
-                            }
-                            ElseIf ((_T_6 == One))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ7.TCRT = Arg1
-                                    Notify (TZ7, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO21_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ7._CRT ())
-                            }
-                            ElseIf ((_T_6 == 0x02))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ7.TTSP = Arg1
-                                    Notify (TZ7, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO22_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ7._TSP ())
-                            }
-                            ElseIf ((_T_6 == 0x03))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ7.TTC1 = Arg1
-                                    Notify (TZ7, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO23_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ7._TC1 ())
-                            }
-                            ElseIf ((_T_6 == 0x04))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ7.TTC2 = Arg1
-                                    Notify (TZ7, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO24_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ7._TC2 ())
-                            }
-                            Else
-                            {
-                                Return (0xFFFF)
-                            }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO25_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                            Break
-                        }
-                    }
-                    ElseIf ((_T_0 == 0x08))
-                    {
-                        While (One)
-                        {
-                            Name (_T_7, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_7 = ToInteger (Arg3)
-                            If ((_T_7 == Zero))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ8.TPSV = Arg1
-                                    Notify (TZ8, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO26_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ8._PSV ())
-                            }
-                            ElseIf ((_T_7 == 0x02))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ8.TTSP = Arg1
-                                    Notify (TZ8, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO27_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ8._TSP ())
-                            }
-                            ElseIf ((_T_7 == 0x03))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ8.TTC1 = Arg1
-                                    Notify (TZ8, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LDO28_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ8._TC1 ())
-                            }
-                            ElseIf ((_T_7 == 0x04))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ8.TTC2 = Arg1
-                                    Notify (TZ8, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LVS1_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ8._TC2 ())
-                            }
-                            Else
-                            {
-                                Return (0xFFFF)
-                            }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_LVS2_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                            Break
-                        }
-                    }
-                    ElseIf ((_T_0 == 0x09))
-                    {
-                        While (One)
-                        {
-                            Name (_T_8, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_8 = ToInteger (Arg3)
-                            If ((_T_8 == Zero))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ9.TPSV = Arg1
-                                    Notify (TZ9, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_CXO_BUFFERS_BBCLK2_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ9._PSV ())
-                            }
-                            ElseIf ((_T_8 == 0x02))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ9.TTSP = Arg1
-                                    Notify (TZ9, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_CXO_BUFFERS_BBCLK3_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ9._TSP ())
-                            }
-                            ElseIf ((_T_8 == 0x03))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ9.TTC1 = Arg1
-                                    Notify (TZ9, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_CXO_BUFFERS_RFCLK1_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ9._TC1 ())
-                            }
-                            ElseIf ((_T_8 == 0x04))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ9.TTC2 = Arg1
-                                    Notify (TZ9, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_CXO_BUFFERS_RFCLK2_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ9._TC2 ())
-                            }
-                            Else
-                            {
-                                Return (0xFFFF)
-                            }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_CXO_BUFFERS_RFCLK3_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                            Break
-                        }
-                    }
-                    ElseIf ((_T_0 == 0x14))
-                    {
-                        While (One)
-                        {
-                            Name (_T_9, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_9 = ToInteger (Arg3)
-                            If ((_T_9 == Zero))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ20.TPSV = Arg1
-                                    Notify (TZ20, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_CXO_BUFFERS_DIVCLK1_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ20._PSV ())
-                            }
-                            ElseIf ((_T_9 == 0x02))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ20.TTSP = Arg1
-                                    Notify (TZ20, 0x81) // Thermal Trip Point Change
-                                }
-
-                                Return (^^TZ20._TSP ())
-                            }
-                            ElseIf ((_T_9 == 0x03))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ20.TTC1 = Arg1
-                                    Notify (TZ20, 0x81) // Thermal Trip Point Change
-                                }
-
-                                Return (^^TZ20._TC1 ())
-                            }
-                            ElseIf ((_T_9 == 0x04))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ20.TTC2 = Arg1
-                                    Notify (TZ20, 0x81) // Thermal Trip Point Change
-                                }
-
-                                Return (^^TZ20._TC2 ())
-                            }
-                            Else
-                            {
-                                Return (0xFFFF)
-                            }
-
-                            Break
-                        }
-                    }
-                    ElseIf ((_T_0 == 0x15))
-                    {
-                        While (One)
-                        {
-                            Name (_T_A, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_A = ToInteger (Arg3)
-                            If ((_T_A == Zero))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ21.TPSV = Arg1
-                                    Notify (TZ21, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_CXO_BUFFERS_DIVCLK2_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ21._PSV ())
-                            }
-                            ElseIf ((_T_A == 0x02))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ21.TTSP = Arg1
-                                    Notify (TZ21, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_CXO_BUFFERS_DIVCLK3_A", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }, 
 
-                                Return (^^TZ21._TSP ())
-                            }
-                            ElseIf ((_T_A == 0x03))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ21.TTC1 = Arg1
-                                    Notify (TZ21, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x03)
+                {
+                    "PPP_RESOURCE_ID_BUCK_BOOST1_B", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
+                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                }
+            })
+            Method (PPPM, 0, NotSerialized)
+            {
+                Return (PPPP) /* \_SB_.PEP0.PPPP */
+            }
 
-                                Return (^^TZ21._TC1 ())
-                            }
-                            ElseIf ((_T_A == 0x04))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ21.TTC2 = Arg1
-                                    Notify (TZ21, 0x81) // Thermal Trip Point Change
-                                }
+            Name (PRRP, Package (0x12)
+            {
+                "PPP_RESOURCE_RANGE_INFO_SMPS_A", 
+                "PPP_RESOURCE_ID_SMPS1_A", 
+                "PPP_RESOURCE_ID_SMPS13_A", 
+                "PPP_RESOURCE_RANGE_INFO_SMPS_C", 
+                "PPP_RESOURCE_ID_SMPS1_C", 
+                "PPP_RESOURCE_ID_SMPS4_C", 
+                "PPP_RESOURCE_RANGE_INFO_LDO_A", 
+                "PPP_RESOURCE_ID_LDO1_A", 
+                "PPP_RESOURCE_ID_LDO28_A", 
+                "PPP_RESOURCE_RANGE_INFO_LVS_A", 
+                "PPP_RESOURCE_ID_LVS1_A", 
+                "PPP_RESOURCE_ID_LVS2_A", 
+                "PPP_RESOURCE_RANGE_INFO_CXO_BUFFERS_A", 
+                "PPP_RESOURCE_ID_CXO_BUFFERS_BBCLK2_A", 
+                "PPP_RESOURCE_ID_CXO_BUFFERS_DIVCLK3_A", 
+                "PPP_RESOURCE_RANGE_INFO_BUCK_BOOST_B", 
+                "PPP_RESOURCE_ID_BUCK_BOOST1_B", 
+                "PPP_RESOURCE_ID_BUCK_BOOST1_B"
+            })
+            Method (PPRR, 0, NotSerialized)
+            {
+                Return (PRRP) /* \_SB_.PEP0.PRRP */
+            }
 
-                                Return (^^TZ21._TC2 ())
-                            }
-                            Else
-                            {
-                                Return (0xFFFF)
-                            }
+            Method (PGSD, 0, NotSerialized)
+            {
+                Return (SDFR) /* \_SB_.PEP0.SDFR */
+            }
 
-                            Break
-                        }
-                    }
-                    ElseIf ((_T_0 == 0x21))
-                    {
-                        While (One)
-                        {
-                            Name (_T_B, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_B = ToInteger (Arg3)
-                            If ((_T_B == Zero))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ33.TPSV = Arg1
-                                    Notify (TZ33, 0x81) // Thermal Trip Point Change
-                                }
+            Name (FPDP, Zero)
+            Method (FPMD, 0, NotSerialized)
+            {
+                Return (FPDP) /* \_SB_.PEP0.FPDP */
+            }
 
-                                Return (^^TZ33._PSV ())
-                            }
-                            ElseIf ((_T_B == 0x02))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ33.TTSP = Arg1
-                                    Notify (TZ33, 0x81) // Thermal Trip Point Change
-                                }
+            Name (PPPC, Zero)
+            Method (PGPC, 0, NotSerialized)
+            {
+                Return (PPPC) /* \_SB_.PEP0.PPPC */
+            }
 
-                                Return (^^TZ33._TSP ())
-                            }
-                            ElseIf ((_T_B == 0x03))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ33.TTC1 = Arg1
-                                    Notify (TZ33, 0x81) // Thermal Trip Point Change
-                                }
+            Method (DPRF, 0, NotSerialized)
+            {
+                Return (DPP0) /* \_SB_.DPP0 */
+            }
 
-                                Return (^^TZ33._TC1 ())
-                            }
-                            ElseIf ((_T_B == 0x04))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ33.TTC2 = Arg1
-                                    Notify (TZ33, 0x81) // Thermal Trip Point Change
-                                }
+            Method (DMRF, 0, NotSerialized)
+            {
+                Return (DPP1) /* \_SB_.DPP1 */
+            }
+        }
 
-                                Return (^^TZ33._TC2 ())
-                            }
-                            Else
-                            {
-                                Return (0xFFFF)
-                            }
+        Scope (PEP0)
+        {
+            Method (LPDC, 0, NotSerialized)
+            {
+                Return (NPDC) /* \_SB_.PEP0.NPDC */
+            }
 
-                            Break
-                        }
-                    }
-                    ElseIf ((_T_0 == 0x24))
+            Name (NPDC, Package (0x01)
+            {
+                Package (0x02)
+                {
+                    "INTERRUPT_CONFIG", 
+                    Package (0x0D)
                     {
-                        While (One)
+                        Package (0x04)
                         {
-                            Name (_T_C, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_C = ToInteger (Arg3)
-                            If ((_T_C == Zero))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ36.TPSV = Arg1
-                                    Notify (TZ36, 0x81) // Thermal Trip Point Change
-                                }
-
-                                Return (^^TZ36._PSV ())
-                            }
-                            ElseIf ((_T_C == 0x02))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ36.TTSP = Arg1
-                                    Notify (TZ36, 0x81) // Thermal Trip Point Change
-                                }
-
-                                Return (^^TZ36._TSP ())
-                            }
-                            ElseIf ((_T_C == 0x03))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ36.TTC1 = Arg1
-                                    Notify (TZ36, 0x81) // Thermal Trip Point Change
-                                }
-
-                                Return (^^TZ36._TC1 ())
-                            }
-                            ElseIf ((_T_C == 0x04))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ36.TTC2 = Arg1
-                                    Notify (TZ36, 0x81) // Thermal Trip Point Change
-                                }
-
-                                Return (^^TZ36._TC2 ())
-                            }
-                            Else
-                            {
-                                Return (0xFFFF)
-                            }
+                            Zero, 
+                            0x021A, 
+                            Zero, 
+                            One
+                        }, 
 
-                            Break
-                        }
-                    }
-                    ElseIf ((_T_0 == 0x25))
-                    {
-                        While (One)
+                        Package (0x04)
                         {
-                            Name (_T_D, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_D = ToInteger (Arg3)
-                            If ((_T_D == Zero))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ37.TPSV = Arg1
-                                    Notify (TZ37, 0x81) // Thermal Trip Point Change
-                                }
-
-                                Return (^^TZ37._PSV ())
-                            }
-                            ElseIf ((_T_D == One))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ37.TCRT = Arg1
-                                    Notify (TZ37, 0x81) // Thermal Trip Point Change
-                                }
-
-                                Return (^^TZ37._CRT ())
-                            }
-                            ElseIf ((_T_D == 0x02))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ37.TTSP = Arg1
-                                    Notify (TZ37, 0x81) // Thermal Trip Point Change
-                                }
-
-                                Return (^^TZ37._TSP ())
-                            }
-                            ElseIf ((_T_D == 0x03))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ37.TTC1 = Arg1
-                                    Notify (TZ37, 0x81) // Thermal Trip Point Change
-                                }
-
-                                Return (^^TZ37._TC1 ())
-                            }
-                            ElseIf ((_T_D == 0x04))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ37.TTC2 = Arg1
-                                    Notify (TZ37, 0x81) // Thermal Trip Point Change
-                                }
-
-                                Return (^^TZ37._TC2 ())
-                            }
-                            Else
-                            {
-                                Return (0xFFFF)
-                            }
+                            One, 
+                            0x021B, 
+                            Zero, 
+                            One
+                        }, 
 
-                            Break
-                        }
-                    }
-                    ElseIf ((_T_0 == 0x26))
-                    {
-                        While (One)
+                        Package (0x04)
                         {
-                            Name (_T_E, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_E = ToInteger (Arg3)
-                            If ((_T_E == Zero))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ38.TPSV = Arg1
-                                    Notify (TZ38, 0x81) // Thermal Trip Point Change
-                                }
-
-                                Return (^^TZ38._PSV ())
-                            }
-                            Else
-                            {
-                                Return (0xFFFF)
-                            }
+                            0x02, 
+                            0x021C, 
+                            Zero, 
+                            One
+                        }, 
 
-                            Break
-                        }
-                    }
-                    ElseIf ((_T_0 == 0x28))
-                    {
-                        While (One)
+                        Package (0x04)
                         {
-                            Name (_T_F, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_F = ToInteger (Arg3)
-                            If ((_T_F == Zero))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ40.TPSV = Arg1
-                                    Notify (TZ40, 0x81) // Thermal Trip Point Change
-                                }
-
-                                Return (^^TZ40._PSV ())
-                            }
-                            ElseIf ((_T_F == 0x02))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ40.TTSP = Arg1
-                                    Notify (TZ40, 0x81) // Thermal Trip Point Change
-                                }
+                            0x03, 
+                            0x021D, 
+                            Zero, 
+                            One
+                        }, 
 
-                                Return (^^TZ40._TSP ())
-                            }
-                            ElseIf ((_T_F == 0x03))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ40.TTC1 = Arg1
-                                    Notify (TZ40, 0x81) // Thermal Trip Point Change
-                                }
+                        Package (0x04)
+                        {
+                            0x04, 
+                            0x0218, 
+                            Zero, 
+                            One
+                        }, 
 
-                                Return (^^TZ40._TC1 ())
-                            }
-                            ElseIf ((_T_F == 0x04))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ40.TTC2 = Arg1
-                                    Notify (TZ40, 0x81) // Thermal Trip Point Change
-                                }
+                        Package (0x04)
+                        {
+                            0x05, 
+                            0x0219, 
+                            Zero, 
+                            One
+                        }, 
 
-                                Return (^^TZ40._TC2 ())
-                            }
-                            Else
-                            {
-                                Return (0xFFFF)
-                            }
+                        Package (0x04)
+                        {
+                            0x06, 
+                            0x0206, 
+                            Zero, 
+                            One
+                        }, 
 
-                            Break
-                        }
-                    }
-                    ElseIf ((_T_0 == 0x2C))
-                    {
-                        While (One)
+                        Package (0x04)
                         {
-                            Name (_T_G, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_G = ToInteger (Arg3)
-                            If ((_T_G == Zero))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ44.TPSV = Arg1
-                                    Notify (TZ44, 0x81) // Thermal Trip Point Change
-                                }
+                            0x07, 
+                            0x0207, 
+                            Zero, 
+                            One
+                        }, 
 
-                                Return (^^TZ44._PSV ())
-                            }
-                            ElseIf ((_T_G == 0x02))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ44.TTSP = Arg1
-                                    Notify (TZ44, 0x81) // Thermal Trip Point Change
-                                }
+                        Package (0x05)
+                        {
+                            0x08, 
+                            0x0208, 
+                            Zero, 
+                            One, 
+                            0x08
+                        }, 
 
-                                Return (^^TZ44._TSP ())
-                            }
-                            ElseIf ((_T_G == 0x03))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ44.TTC1 = Arg1
-                                    Notify (TZ44, 0x81) // Thermal Trip Point Change
-                                }
+                        Package (0x05)
+                        {
+                            0x09, 
+                            0x0209, 
+                            Zero, 
+                            One, 
+                            0x08
+                        }, 
 
-                                Return (^^TZ44._TC1 ())
-                            }
-                            ElseIf ((_T_G == 0x04))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ44.TTC2 = Arg1
-                                    Notify (TZ44, 0x81) // Thermal Trip Point Change
-                                }
+                        Package (0x05)
+                        {
+                            0x0A, 
+                            0x020A, 
+                            Zero, 
+                            One, 
+                            0x08
+                        }, 
 
-                                Return (^^TZ44._TC2 ())
-                            }
-                            Else
-                            {
-                                Return (0xFFFF)
-                            }
+                        Package (0x05)
+                        {
+                            0x0B, 
+                            0x020B, 
+                            Zero, 
+                            One, 
+                            0x08
+                        }, 
 
-                            Break
+                        Package (0x04)
+                        {
+                            0x0C, 
+                            0x0201, 
+                            Zero, 
+                            0x04
                         }
                     }
-                    ElseIf ((_T_0 == 0x62))
-                    {
-                        While (One)
-                        {
-                            Name (_T_H, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_H = ToInteger (Arg3)
-                            If ((_T_H == Zero))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ98.TPSV = Arg1
-                                    Notify (TZ98, 0x81) // Information Change
-                                }
-
-                                Return (^^TZ98._PSV) /* External reference */
-                            }
-                            ElseIf ((_T_H == 0x02))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ98.TTSP = Arg1
-                                    Notify (TZ98, 0x81) // Information Change
-                                }
+                }
+            })
+        }
 
-                                Return (^^TZ98._TSP) /* External reference */
-                            }
-                            ElseIf ((_T_H == 0x03))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ98.TTC1 = Arg1
-                                    Notify (TZ98, 0x81) // Information Change
-                                }
+        Scope (PEP0)
+        {
+            Method (LPCU, 0, NotSerialized)
+            {
+                Return (NPCU) /* \_SB_.PEP0.NPCU */
+            }
 
-                                Return (^^TZ98._TC1) /* External reference */
-                            }
-                            ElseIf ((_T_H == 0x04))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ98.TTC2 = Arg1
-                                    Notify (TZ98, 0x81) // Information Change
-                                }
+            Name (NPCU, Package (0x05)
+            {
+                "PCU_CONFIG", 
+                0x09, 
+                One, 
+                Package (0x02)
+                {
+                    "PCU_CLUSTER_CONFIG", 
+                    0x09
+                }, 
 
-                                Return (^^TZ98._TC2) /* External reference */
-                            }
-                            Else
-                            {
-                                Return (0xFFFF)
-                            }
+                Package (0x0A)
+                {
+                    "PCU_PHYS_CONFIG", 
+                    0x17E00040, 
+                    0x17E10040, 
+                    0x17E20040, 
+                    0x17E30040, 
+                    0x17E40040, 
+                    0x17E50040, 
+                    0x17E60040, 
+                    0x17E70040, 
+                    0x17810104
+                }
+            })
+        }
 
-                            Break
-                        }
-                    }
-                    ElseIf ((_T_0 == 0x63))
-                    {
-                        While (One)
-                        {
-                            Name (_T_I, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_I = ToInteger (Arg3)
-                            If ((_T_I == One))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ99.TCRT = Arg1
-                                    Notify (TZ99, 0x81) // Thermal Trip Point Change
-                                }
+        Scope (PEP0)
+        {
+            Method (LVDD, 0, NotSerialized)
+            {
+                Return (NVDD) /* \_SB_.PEP0.NVDD */
+            }
 
-                                Return (^^TZ99._CRT ())
-                            }
-                            ElseIf ((_T_I == 0x02))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ99.TTSP = Arg1
-                                    Notify (TZ99, 0x81) // Thermal Trip Point Change
-                                }
+            Name (NVDD, Package (0x06)
+            {
+                Package (0x02)
+                {
+                    "/arc/client/rail_cx", 
+                    "RAIL_VOLTAGE_LEVEL_NOMINAL"
+                }, 
 
-                                Return (^^TZ99._TSP ())
-                            }
-                            ElseIf ((_T_I == 0x03))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ99.TTC1 = Arg1
-                                    Notify (TZ99, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x02)
+                {
+                    "/arc/client/display/rail_cx", 
+                    "RAIL_VOLTAGE_LEVEL_OFF"
+                }, 
 
-                                Return (^^TZ99._TC1 ())
-                            }
-                            ElseIf ((_T_I == 0x04))
-                            {
-                                If (Arg2)
-                                {
-                                    ^^TZ99.TTC2 = Arg1
-                                    Notify (TZ99, 0x81) // Thermal Trip Point Change
-                                }
+                Package (0x02)
+                {
+                    "/arc/client/rail_mx", 
+                    "RAIL_VOLTAGE_LEVEL_NOMINAL"
+                }, 
 
-                                Return (^^TZ99._TC2 ())
-                            }
-                            Else
-                            {
-                                Return (0xFFFF)
-                            }
+                Package (0x02)
+                {
+                    "/arc/client/display/rail_mx", 
+                    "RAIL_VOLTAGE_LEVEL_OFF"
+                }, 
 
-                            Break
-                        }
-                    }
-                    Else
-                    {
-                        Return (0xFFFF)
-                    }
+                Package (0x02)
+                {
+                    "/arc/client/rail_xo", 
+                    "XO_LEVEL_ON"
+                }, 
 
-                    Break
+                Package (0x02)
+                {
+                    "/arc/client/display/rail_xo", 
+                    "XO_LEVEL_CRYSTAL_OFF"
                 }
+            })
+        }
+
+        Scope (PEP0)
+        {
+            Method (LLMH, 0, NotSerialized)
+            {
+                Return (NLMH) /* \_SB_.PEP0.NLMH */
             }
 
-            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
+            Name (NLMH, Package (0x01)
             {
-                Return (ResourceTemplate ()
+                Package (0x03)
                 {
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, ExclusiveAndWake, ,, )
-                    {
-                        0x0000021A,
-                    }
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, ExclusiveAndWake, ,, )
-                    {
-                        0x0000021C,
-                    }
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, ExclusiveAndWake, ,, )
+                    "PEP_LMH_CFG", 
+                    Package (0x06)
                     {
-                        0x0000021B,
-                    }
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, ExclusiveAndWake, ,, )
-                    {
-                        0x0000021D,
-                    }
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x00000025,
-                    }
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x000000A1,
-                    }
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x000001A5,
-                    }
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x00000040,
-                    }
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x00000041,
-                    }
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
+                        Zero, 
+                        Zero, 
+                        0x002DB400, 
+                        0x0D02, 
+                        0x0DF7, 
+                        0x0DFC
+                    }, 
+
+                    Package (0x06)
                     {
-                        0x00000265,
+                        One, 
+                        Zero, 
+                        0x002DB400, 
+                        0x0D02, 
+                        0x0DF7, 
+                        0x0DFC
                     }
-                })
-            }
-
-            Field (^ABD.ROP1, BufferAcc, NoLock, Preserve)
-            {
-                Connection (
-                    I2cSerialBusV2 (0x0001, ControllerInitiated, 0x00000000,
-                        AddressingMode7Bit, "\\_SB.ABD",
-                        0x00, ResourceConsumer, , Exclusive,
-                        )
-                ), 
-                AccessAs (BufferAcc, AttribRawBytes (0x15)), 
-                FLD0,   168
-            }
+                }
+            })
+        }
 
-            Method (GEPT, 0, NotSerialized)
+        Scope (PEP0)
+        {
+            Name (DVMP, Package (0x02)
             {
-                Name (BUFF, Buffer (0x04){})
-                CreateByteField (BUFF, Zero, STAT)
-                CreateWordField (BUFF, 0x02, DATA)
-                DATA = One
-                Return (DATA) /* \_SB_.PEP0.GEPT.DATA */
-            }
+                Package (0x04)
+                {
+                    "PPP_RESOURCE_ID_PMIC_GPIO_DV1", 
+                    "PPP_RESOURCE_TYPE_DISCRETE_PMIC_GPIO", 
+                    Package (0x02)
+                    {
+                        "PM_DISCRETE_VREG_STATE_ON", 
+                        Package (0x0A)
+                        {
+                            Zero, 
+                            0x08, 
+                            Zero, 
+                            Zero, 
+                            One, 
+                            Zero, 
+                            One, 
+                            Zero, 
+                            One, 
+                            0x05
+                        }
+                    }, 
 
-            Name (ROST, Zero)
-            Method (NPUR, 1, NotSerialized)
-            {
-                ^^AGR0._PUR [One] = Arg0
-                Notify (AGR0, 0x80) // Status Change
-            }
+                    Package (0x02)
+                    {
+                        "PM_DISCRETE_VREG_STATE_OFF", 
+                        Package (0x0A)
+                        {
+                            Zero, 
+                            0x08, 
+                            Zero, 
+                            Zero, 
+                            Zero, 
+                            Zero, 
+                            One, 
+                            Zero, 
+                            One, 
+                            0x05
+                        }
+                    }
+                }, 
 
-            Method (INTR, 0, NotSerialized)
-            {
-                Name (RBUF, Package (0x18)
+                Package (0x04)
                 {
-                    0x02, 
-                    One, 
-                    0x03, 
-                    One, 
-                    0x06, 
-                    0x17911008, 
-                    One, 
-                    Zero, 
-                    0x86000000, 
-                    0x00200000, 
-                    Zero, 
-                    Zero, 
-                    0x0C300000, 
-                    0x1000, 
-                    Zero, 
-                    Zero, 
-                    0x01FD4000, 
-                    0x08, 
-                    Zero, 
-                    Zero, 
-                    0x1799000C, 
-                    Zero, 
-                    Zero, 
-                    Zero
-                })
-                Return (RBUF) /* \_SB_.PEP0.INTR.RBUF */
-            }
-
-            Method (CRTC, 0, NotSerialized)
-            {
-                Return (CTRX) /* \_SB_.PEP0.CTRX */
-            }
+                    "PPP_RESOURCE_ID_PMIC_MPP_DV1", 
+                    "PPP_RESOURCE_TYPE_DISCRETE_PMIC_MPP", 
+                    Package (0x02)
+                    {
+                        "PM_DISCRETE_VREG_STATE_ON", 
+                        Package (0x06)
+                        {
+                            Zero, 
+                            0x03, 
+                            Zero, 
+                            0x02, 
+                            One, 
+                            Zero
+                        }
+                    }, 
 
-            Name (CTRX, Package (0x0B)
-            {
-                "NSTC", 
-                "HLCB", 
-                "MMVD", 
-                "DSGP", 
-                "CCGP", 
-                "MTPS", 
-                "CPGP", 
-                "DMPP", 
-                "VRDL", 
-                "GBDL", 
-                "SRDL"
+                    Package (0x02)
+                    {
+                        "PM_DISCRETE_VREG_STATE_OFF", 
+                        Package (0x06)
+                        {
+                            Zero, 
+                            0x03, 
+                            Zero, 
+                            0x02, 
+                            Zero, 
+                            Zero
+                        }
+                    }
+                }
             })
-            Method (STND, 0, NotSerialized)
+            Method (DVMM, 0, NotSerialized)
             {
-                Return (STNX) /* \_SB_.PEP0.STNX */
+                Return (DVMP) /* \_SB_.PEP0.DVMP */
             }
+        }
 
-            Name (STNX, Package (0x19)
-            {
-                "DMPO", 
-                "DMSB", 
-                "DMQP", 
-                "DMMS", 
-                "DMPA", 
-                "DMPC", 
-                "DMPB", 
-                "DM0G", 
-                "DM1G", 
-                "DM2G", 
-                "DM3G", 
-                "DM4G", 
-                "DM5G", 
-                "DM6G", 
-                "DM7G", 
-                "DM8G", 
-                "DM9G", 
-                "DMPS", 
-                "DMPL", 
-                "DMDQ", 
-                "DMPI", 
-                "DMWE", 
-                "XMPC", 
-                "XMPL", 
-                "DMEP"
-            })
-            Method (CTPM, 0, NotSerialized)
+        Scope (PEP0)
+        {
+            Method (LDBG, 0, NotSerialized)
             {
-                Name (CTPN, Package (0x02)
-                {
-                    "CORE_TOPOLOGY", 
-                    0x08
-                })
-                Return (CTPN) /* \_SB_.PEP0.CTPM.CTPN */
+                Return (NDBG) /* \_SB_.PEP0.NDBG */
             }
 
-            Name (CCFG, Package (0x08)
+            Name (NDBG, Package (0x04)
             {
-                Package (0x02)
-                {
-                    "\\_SB.SYSM.CLUS.CPU0", 
-                    0x10
-                }, 
-
-                Package (0x02)
+                "DEBUGGERS", 
+                Package (0x05)
                 {
-                    "\\_SB.SYSM.CLUS.CPU1", 
-                    0x11
-                }, 
+                    "TYPE", 
+                    "SERIAL", 
+                    Package (0x02)
+                    {
+                        "INSTANCES", 
+                        "\\_SB.UARD"
+                    }, 
 
-                Package (0x02)
-                {
-                    "\\_SB.SYSM.CLUS.CPU2", 
-                    0x12
-                }, 
+                    Package (0x0C)
+                    {
+                        "DEBUG_ON", 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x02)
+                            {
+                                "gcc_qupv3_wrap_1_m_ahb_clk", 
+                                One
+                            }
+                        }, 
 
-                Package (0x02)
-                {
-                    "\\_SB.SYSM.CLUS.CPU3", 
-                    0x13
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_qupv3_wrap_1_m_ahb_clk", 
+                                0x09, 
+                                0x08
+                            }
+                        }, 
 
-                Package (0x02)
-                {
-                    "\\_SB.SYSM.CLUS.CPU4", 
-                    0x14
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_qupv3_wrap_1_m_ahb_clk", 
+                                0x09, 
+                                0x0C
+                            }
+                        }, 
 
-                Package (0x02)
-                {
-                    "\\_SB.SYSM.CLUS.CPU5", 
-                    0x15
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x02)
+                            {
+                                "gcc_qupv3_wrap_1_s_ahb_clk", 
+                                One
+                            }
+                        }, 
 
-                Package (0x02)
-                {
-                    "\\_SB.SYSM.CLUS.CPU6", 
-                    0x16
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_qupv3_wrap_1_s_ahb_clk", 
+                                0x09, 
+                                0x08
+                            }
+                        }, 
 
-                Package (0x02)
-                {
-                    "\\_SB.SYSM.CLUS.CPU7", 
-                    0x17
-                }
-            })
-            Method (PGCC, 0, NotSerialized)
-            {
-                Return (CCFG) /* \_SB_.PEP0.CCFG */
-            }
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_qupv3_wrap_1_s_ahb_clk", 
+                                0x09, 
+                                0x0C
+                            }
+                        }, 
 
-            Name (DRVC, Package (0x02)
-            {
-                Package (0x03)
-                {
-                    "HLOS_DRV", 
-                    0x02, 
-                    "/icb/arbiter"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x02)
+                            {
+                                "gcc_qupv3_wrap1_s1_clk", 
+                                One
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "DISPLAY_DRV", 
-                    0x09, 
-                    "/icb/arbiter/display"
-                }
-            })
-            Method (LDRV, 0, NotSerialized)
-            {
-                Return (DRVC) /* \_SB_.PEP0.DRVC */
-            }
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_qupv3_wrap1_s1_clk", 
+                                0x09, 
+                                0x08
+                            }
+                        }, 
 
-            Name (DCVS, Zero)
-            Method (PGDS, 0, NotSerialized)
-            {
-                Return (DCVS) /* \_SB_.PEP0.DCVS */
-            }
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_qupv3_wrap1_s1_clk", 
+                                0x09, 
+                                0x0C
+                            }
+                        }, 
 
-            Name (PPPP, Package (0x32)
-            {
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_SMPS1_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "BUSARB", 
+                            Package (0x07)
+                            {
+                                0x03, 
+                                "ICBID_MASTER_BLSP_2", 
+                                "ICBID_SLAVE_EBI1", 
+                                0x00989680, 
+                                0x0682, 
+                                "HLOS_DRV", 
+                                "SUPPRESSIBLE"
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_SMPS2_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "BUSARB", 
+                            Package (0x07)
+                            {
+                                0x03, 
+                                "ICBID_MASTER_APPSS_PROC", 
+                                "ICBID_SLAVE_BLSP_2", 
+                                0x00989680, 
+                                0x004C4B40, 
+                                "HLOS_DRV", 
+                                "SUPPRESSIBLE"
+                            }
+                        }
+                    }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_SMPS3_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                    Package (0x01)
+                    {
+                        "DEBUG_OFF"
+                    }
                 }, 
 
-                Package (0x03)
+                Package (0x05)
                 {
-                    "PPP_RESOURCE_ID_SMPS4_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                    "TYPE", 
+                    "USB2.0", 
+                    Package (0x02)
+                    {
+                        "INSTANCES", 
+                        "\\_SB.USB1"
+                    }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_SMPS5_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                    Package (0x1E)
+                    {
+                        "DEBUG_ON", 
+                        Package (0x02)
+                        {
+                            "PMICVREGVOTE", 
+                            Package (0x06)
+                            {
+                                "PPP_RESOURCE_ID_LDO12_A", 
+                                One, 
+                                0x001B7740, 
+                                One, 
+                                0x07, 
+                                Zero
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_SMPS6_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "PMICVREGVOTE", 
+                            Package (0x06)
+                            {
+                                "PPP_RESOURCE_ID_LDO24_A", 
+                                One, 
+                                0x002EEBB8, 
+                                One, 
+                                0x07, 
+                                Zero
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_SMPS7_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "PMICVREGVOTE", 
+                            Package (0x06)
+                            {
+                                "PPP_RESOURCE_ID_LDO26_A", 
+                                One, 
+                                0x00124F80, 
+                                One, 
+                                0x07, 
+                                Zero
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_SMPS9_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "PMICVREGVOTE", 
+                            Package (0x06)
+                            {
+                                "PPP_RESOURCE_ID_LDO1_A", 
+                                One, 
+                                0x000D6D80, 
+                                One, 
+                                0x07, 
+                                Zero
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_SMPS1_C", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "FOOTSWITCH", 
+                            Package (0x02)
+                            {
+                                "usb30_sec_gdsc", 
+                                One
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_SMPS2_C", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb30_sec_sleep_clk", 
+                                0x09, 
+                                0x08
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_SMPS3_C", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb30_sec_sleep_clk", 
+                                0x09, 
+                                0x0C
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO1_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x02)
+                            {
+                                "gcc_usb30_sec_sleep_clk", 
+                                One
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO2_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb3_sec_phy_pipe_clk", 
+                                0x09, 
+                                0x08
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO3_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb3_sec_phy_pipe_clk", 
+                                0x09, 
+                                0x0C
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO4_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x02)
+                            {
+                                "gcc_usb3_sec_phy_pipe_clk", 
+                                One
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO5_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_aggre_usb3_sec_axi_clk", 
+                                0x09, 
+                                0x08
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO6_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_aggre_usb3_sec_axi_clk", 
+                                0x09, 
+                                0x0C
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO7_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x04)
+                            {
+                                "gcc_aggre_usb3_sec_axi_clk", 
+                                0x08, 
+                                0x78, 
+                                0x09
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO8_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_cfg_noc_usb3_sec_axi_clk", 
+                                0x09, 
+                                0x08
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO9_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_cfg_noc_usb3_sec_axi_clk", 
+                                0x09, 
+                                0x0C
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO10_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x04)
+                            {
+                                "gcc_cfg_noc_usb3_sec_axi_clk", 
+                                0x08, 
+                                0x78, 
+                                0x09
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO11_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb30_sec_master_clk", 
+                                0x09, 
+                                0x08
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO12_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb30_sec_master_clk", 
+                                0x09, 
+                                0x0C
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO13_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x04)
+                            {
+                                "gcc_usb30_sec_master_clk", 
+                                0x08, 
+                                0x78, 
+                                0x09
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO14_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb3_sec_phy_aux_clk", 
+                                0x09, 
+                                0x08
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO15_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb3_sec_phy_aux_clk", 
+                                0x09, 
+                                0x0C
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO16_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x04)
+                            {
+                                "gcc_usb3_sec_phy_aux_clk", 
+                                0x08, 
+                                0x04B0, 
+                                0x07
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO17_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb_phy_cfg_ahb2phy_clk", 
+                                0x09, 
+                                0x08
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO18_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb_phy_cfg_ahb2phy_clk", 
+                                0x09, 
+                                0x0C
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO19_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x02)
+                            {
+                                "gcc_usb_phy_cfg_ahb2phy_clk", 
+                                One
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO20_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "BUSARB", 
+                            Package (0x07)
+                            {
+                                0x03, 
+                                "ICBID_MASTER_APPSS_PROC", 
+                                "ICBID_SLAVE_USB3_1", 
+                                0x17D78400, 
+                                Zero, 
+                                "HLOS_DRV", 
+                                "SUPPRESSIBLE"
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO21_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "BUSARB", 
+                            Package (0x07)
+                            {
+                                0x03, 
+                                "ICBID_MASTER_USB3_1", 
+                                "ICBID_SLAVE_EBI1", 
+                                0x28000000, 
+                                0x28000000, 
+                                "HLOS_DRV", 
+                                "SUPPRESSIBLE"
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO22_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "NPARESOURCE", 
+                            Package (0x04)
+                            {
+                                One, 
+                                "/arc/client/rail_cx", 
+                                0x0100, 
+                                "SUPPRESSIBLE"
+                            }
+                        }
+                    }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO23_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
+                    Package (0x01)
+                    {
+                        "DEBUG_OFF"
+                    }
                 }, 
 
-                Package (0x03)
+                Package (0x05)
                 {
-                    "PPP_RESOURCE_ID_LDO24_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                    "TYPE", 
+                    "USB3.0", 
+                    Package (0x02)
+                    {
+                        "INSTANCES", 
+                        "\\_SB.URS0"
+                    }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO25_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                    Package (0x1E)
+                    {
+                        "DEBUG_ON", 
+                        Package (0x02)
+                        {
+                            "PMICVREGVOTE", 
+                            Package (0x06)
+                            {
+                                "PPP_RESOURCE_ID_LDO12_A", 
+                                One, 
+                                0x001B7740, 
+                                One, 
+                                0x07, 
+                                Zero
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO26_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "PMICVREGVOTE", 
+                            Package (0x06)
+                            {
+                                "PPP_RESOURCE_ID_LDO24_A", 
+                                One, 
+                                0x002EEBB8, 
+                                One, 
+                                0x07, 
+                                Zero
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO27_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
-
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LDO28_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
-
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LVS1_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
-
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_LVS2_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
-
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_CXO_BUFFERS_BBCLK2_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
-
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_CXO_BUFFERS_BBCLK3_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
-
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_CXO_BUFFERS_RFCLK1_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "PMICVREGVOTE", 
+                            Package (0x06)
+                            {
+                                "PPP_RESOURCE_ID_LDO26_A", 
+                                One, 
+                                0x00124F80, 
+                                One, 
+                                0x07, 
+                                Zero
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_CXO_BUFFERS_RFCLK2_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "PMICVREGVOTE", 
+                            Package (0x06)
+                            {
+                                "PPP_RESOURCE_ID_LDO1_A", 
+                                One, 
+                                0x000D6D80, 
+                                One, 
+                                0x07, 
+                                Zero
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_CXO_BUFFERS_RFCLK3_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "FOOTSWITCH", 
+                            Package (0x02)
+                            {
+                                "usb30_prim_gdsc", 
+                                One
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_CXO_BUFFERS_DIVCLK1_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x02)
+                            {
+                                "gcc_usb30_prim_sleep_clk", 
+                                One
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_CXO_BUFFERS_DIVCLK2_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb30_prim_sleep_clk", 
+                                0x09, 
+                                0x08
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_CXO_BUFFERS_DIVCLK3_A", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }, 
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb30_prim_sleep_clk", 
+                                0x09, 
+                                0x0C
+                            }
+                        }, 
 
-                Package (0x03)
-                {
-                    "PPP_RESOURCE_ID_BUCK_BOOST1_B", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", 
-                    "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF"
-                }
-            })
-            Method (PPPM, 0, NotSerialized)
-            {
-                Return (PPPP) /* \_SB_.PEP0.PPPP */
-            }
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x02)
+                            {
+                                "gcc_usb3_prim_phy_pipe_clk", 
+                                One
+                            }
+                        }, 
 
-            Name (PRRP, Package (0x12)
-            {
-                "PPP_RESOURCE_RANGE_INFO_SMPS_A", 
-                "PPP_RESOURCE_ID_SMPS1_A", 
-                "PPP_RESOURCE_ID_SMPS13_A", 
-                "PPP_RESOURCE_RANGE_INFO_SMPS_C", 
-                "PPP_RESOURCE_ID_SMPS1_C", 
-                "PPP_RESOURCE_ID_SMPS4_C", 
-                "PPP_RESOURCE_RANGE_INFO_LDO_A", 
-                "PPP_RESOURCE_ID_LDO1_A", 
-                "PPP_RESOURCE_ID_LDO28_A", 
-                "PPP_RESOURCE_RANGE_INFO_LVS_A", 
-                "PPP_RESOURCE_ID_LVS1_A", 
-                "PPP_RESOURCE_ID_LVS2_A", 
-                "PPP_RESOURCE_RANGE_INFO_CXO_BUFFERS_A", 
-                "PPP_RESOURCE_ID_CXO_BUFFERS_BBCLK2_A", 
-                "PPP_RESOURCE_ID_CXO_BUFFERS_DIVCLK3_A", 
-                "PPP_RESOURCE_RANGE_INFO_BUCK_BOOST_B", 
-                "PPP_RESOURCE_ID_BUCK_BOOST1_B", 
-                "PPP_RESOURCE_ID_BUCK_BOOST1_B"
-            })
-            Method (PPRR, 0, NotSerialized)
-            {
-                Return (PRRP) /* \_SB_.PEP0.PRRP */
-            }
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb3_prim_phy_pipe_clk", 
+                                0x09, 
+                                0x08
+                            }
+                        }, 
 
-            Method (PGSD, 0, NotSerialized)
-            {
-                Return (SDFR) /* \_SB_.PEP0.SDFR */
-            }
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb3_prim_phy_pipe_clk", 
+                                0x09, 
+                                0x0C
+                            }
+                        }, 
 
-            Name (FPDP, Zero)
-            Method (FPMD, 0, NotSerialized)
-            {
-                Return (FPDP) /* \_SB_.PEP0.FPDP */
-            }
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_aggre_usb3_prim_axi_clk", 
+                                0x09, 
+                                0x08
+                            }
+                        }, 
 
-            Name (PPPC, Zero)
-            Method (PGPC, 0, NotSerialized)
-            {
-                Return (PPPC) /* \_SB_.PEP0.PPPC */
-            }
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_aggre_usb3_prim_axi_clk", 
+                                0x09, 
+                                0x0C
+                            }
+                        }, 
 
-            Method (DPRF, 0, NotSerialized)
-            {
-                Return (DPP0) /* \_SB_.DPP0 */
-            }
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x04)
+                            {
+                                "gcc_aggre_usb3_prim_axi_clk", 
+                                0x08, 
+                                0x78, 
+                                0x09
+                            }
+                        }, 
 
-            Method (DMRF, 0, NotSerialized)
-            {
-                Return (DPP1) /* \_SB_.DPP1 */
-            }
-        }
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_cfg_noc_usb3_prim_axi_clk", 
+                                0x09, 
+                                0x08
+                            }
+                        }, 
 
-        Scope (PEP0)
-        {
-            Method (LPDC, 0, NotSerialized)
-            {
-                Return (NPDC) /* \_SB_.PEP0.NPDC */
-            }
+                        Package (0x02)
+                        {
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_cfg_noc_usb3_prim_axi_clk", 
+                                0x09, 
+                                0x0C
+                            }
+                        }, 
 
-            Name (NPDC, Package (0x01)
-            {
-                Package (0x02)
-                {
-                    "INTERRUPT_CONFIG", 
-                    Package (0x0D)
-                    {
-                        Package (0x04)
+                        Package (0x02)
                         {
-                            Zero, 
-                            0x021A, 
-                            Zero, 
-                            One
+                            "CLOCK", 
+                            Package (0x04)
+                            {
+                                "gcc_cfg_noc_usb3_prim_axi_clk", 
+                                0x08, 
+                                0x78, 
+                                0x09
+                            }
                         }, 
 
-                        Package (0x04)
+                        Package (0x02)
                         {
-                            One, 
-                            0x021B, 
-                            Zero, 
-                            One
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb30_prim_master_clk", 
+                                0x09, 
+                                0x08
+                            }
                         }, 
 
-                        Package (0x04)
+                        Package (0x02)
                         {
-                            0x02, 
-                            0x021C, 
-                            Zero, 
-                            One
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb30_prim_master_clk", 
+                                0x09, 
+                                0x0C
+                            }
                         }, 
 
-                        Package (0x04)
+                        Package (0x02)
                         {
-                            0x03, 
-                            0x021D, 
-                            Zero, 
-                            One
+                            "CLOCK", 
+                            Package (0x04)
+                            {
+                                "gcc_usb30_prim_master_clk", 
+                                0x08, 
+                                0x78, 
+                                0x09
+                            }
                         }, 
 
-                        Package (0x04)
+                        Package (0x02)
                         {
-                            0x04, 
-                            0x0218, 
-                            Zero, 
-                            One
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb3_prim_phy_aux_clk", 
+                                0x09, 
+                                0x08
+                            }
                         }, 
 
-                        Package (0x04)
+                        Package (0x02)
                         {
-                            0x05, 
-                            0x0219, 
-                            Zero, 
-                            One
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb3_prim_phy_aux_clk", 
+                                0x09, 
+                                0x0C
+                            }
                         }, 
 
-                        Package (0x04)
+                        Package (0x02)
                         {
-                            0x06, 
-                            0x0206, 
-                            Zero, 
-                            One
+                            "CLOCK", 
+                            Package (0x04)
+                            {
+                                "gcc_usb3_prim_phy_aux_clk", 
+                                0x08, 
+                                0x04B0, 
+                                0x07
+                            }
                         }, 
 
-                        Package (0x04)
+                        Package (0x02)
                         {
-                            0x07, 
-                            0x0207, 
-                            Zero, 
-                            One
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb_phy_cfg_ahb2phy_clk", 
+                                0x09, 
+                                0x08
+                            }
                         }, 
 
-                        Package (0x05)
+                        Package (0x02)
                         {
-                            0x08, 
-                            0x0208, 
-                            Zero, 
-                            One, 
-                            0x08
+                            "CLOCK", 
+                            Package (0x03)
+                            {
+                                "gcc_usb_phy_cfg_ahb2phy_clk", 
+                                0x09, 
+                                0x0C
+                            }
                         }, 
 
-                        Package (0x05)
+                        Package (0x02)
                         {
-                            0x09, 
-                            0x0209, 
-                            Zero, 
-                            One, 
-                            0x08
+                            "CLOCK", 
+                            Package (0x02)
+                            {
+                                "gcc_usb_phy_cfg_ahb2phy_clk", 
+                                One
+                            }
                         }, 
 
-                        Package (0x05)
+                        Package (0x02)
                         {
-                            0x0A, 
-                            0x020A, 
-                            Zero, 
-                            One, 
-                            0x08
+                            "BUSARB", 
+                            Package (0x07)
+                            {
+                                0x03, 
+                                "ICBID_MASTER_APPSS_PROC", 
+                                "ICBID_SLAVE_USB3_0", 
+                                0x17D78400, 
+                                Zero, 
+                                "HLOS_DRV", 
+                                "SUPPRESSIBLE"
+                            }
                         }, 
 
-                        Package (0x05)
+                        Package (0x02)
                         {
-                            0x0B, 
-                            0x020B, 
-                            Zero, 
-                            One, 
-                            0x08
+                            "BUSARB", 
+                            Package (0x07)
+                            {
+                                0x03, 
+                                "ICBID_MASTER_USB3_0", 
+                                "ICBID_SLAVE_EBI1", 
+                                0x28000000, 
+                                0x28000000, 
+                                "HLOS_DRV", 
+                                "SUPPRESSIBLE"
+                            }
                         }, 
 
-                        Package (0x04)
+                        Package (0x02)
                         {
-                            0x0C, 
-                            0x0201, 
-                            Zero, 
-                            0x04
+                            "NPARESOURCE", 
+                            Package (0x04)
+                            {
+                                One, 
+                                "/arc/client/rail_cx", 
+                                0x0100, 
+                                "SUPPRESSIBLE"
+                            }
                         }
+                    }, 
+
+                    Package (0x01)
+                    {
+                        "DEBUG_OFF"
                     }
                 }
             })
@@ -2817,256 +2274,57 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003)
 
         Scope (PEP0)
         {
-            Method (LPCU, 0, NotSerialized)
+            Method (LDRS, 0, NotSerialized)
             {
-                Return (NPCU) /* \_SB_.PEP0.NPCU */
+                Return (NDRS) /* \_SB_.PEP0.NDRS */
             }
 
-            Name (NPCU, Package (0x05)
+            Name (NDRS, Package (0x03)
             {
-                "PCU_CONFIG", 
-                0x09, 
-                One, 
-                Package (0x02)
-                {
-                    "PCU_CLUSTER_CONFIG", 
-                    0x09
-                }, 
-
-                Package (0x0A)
+                "DEFAULT_RESOURCES", 
+                Package (0x04)
                 {
-                    "PCU_PHYS_CONFIG", 
-                    0x17E00040, 
-                    0x17E10040, 
-                    0x17E20040, 
-                    0x17E30040, 
-                    0x17E40040, 
-                    0x17E50040, 
-                    0x17E60040, 
-                    0x17E70040, 
-                    0x17810104
-                }
-            })
-        }
-
-        Scope (PEP0)
-        {
-            Method (LVDD, 0, NotSerialized)
-            {
-                Return (NVDD) /* \_SB_.PEP0.NVDD */
-            }
-
-            Name (NVDD, Package (0x06)
-            {
-                Package (0x02)
-                {
-                    "/arc/client/rail_cx", 
-                    "RAIL_VOLTAGE_LEVEL_NOMINAL"
-                }, 
-
-                Package (0x02)
-                {
-                    "/arc/client/display/rail_cx", 
-                    "RAIL_VOLTAGE_LEVEL_OFF"
-                }, 
-
-                Package (0x02)
-                {
-                    "/arc/client/rail_mx", 
-                    "RAIL_VOLTAGE_LEVEL_NOMINAL"
-                }, 
-
-                Package (0x02)
-                {
-                    "/arc/client/display/rail_mx", 
-                    "RAIL_VOLTAGE_LEVEL_OFF"
-                }, 
-
-                Package (0x02)
-                {
-                    "/arc/client/rail_xo", 
-                    "XO_LEVEL_ON"
-                }, 
-
-                Package (0x02)
-                {
-                    "/arc/client/display/rail_xo", 
-                    "XO_LEVEL_CRYSTAL_OFF"
-                }
-            })
-        }
-
-        Scope (PEP0)
-        {
-            Method (LLMH, 0, NotSerialized)
-            {
-                Return (NLMH) /* \_SB_.PEP0.NLMH */
-            }
-
-            Name (NLMH, Package (0x01)
-            {
-                Package (0x03)
-                {
-                    "PEP_LMH_CFG", 
-                    Package (0x06)
-                    {
-                        Zero, 
-                        Zero, 
-                        0x002DB400, 
-                        0x0D02, 
-                        0x0DF7, 
-                        0x0DFC
-                    }, 
-
-                    Package (0x06)
-                    {
-                        One, 
-                        Zero, 
-                        0x002DB400, 
-                        0x0D02, 
-                        0x0DF7, 
-                        0x0DFC
-                    }
-                }
-            })
-        }
-
-        Scope (PEP0)
-        {
-            Name (DVMP, Package (0x02)
-            {
-                Package (0x04)
-                {
-                    "PPP_RESOURCE_ID_PMIC_GPIO_DV1", 
-                    "PPP_RESOURCE_TYPE_DISCRETE_PMIC_GPIO", 
-                    Package (0x02)
-                    {
-                        "PM_DISCRETE_VREG_STATE_ON", 
-                        Package (0x0A)
-                        {
-                            Zero, 
-                            0x08, 
-                            Zero, 
-                            Zero, 
-                            One, 
-                            Zero, 
-                            One, 
-                            Zero, 
-                            One, 
-                            0x05
-                        }
-                    }, 
-
+                    "OPTIMIZATION", 
+                    "CPU_CNOC_VOTE", 
+                    "BOOT", 
                     Package (0x02)
                     {
-                        "PM_DISCRETE_VREG_STATE_OFF", 
-                        Package (0x0A)
+                        "RESOURCES", 
+                        Package (0x02)
                         {
-                            Zero
-                            0x08, 
-                            Zero, 
-                            Zero
-                            Zero
-                            Zero
-                            One, 
-                            Zero
-                            One, 
-                            0x05
+                            "BUSARB"
+                            Package (0x06)
+                            {
+                                0x03
+                                "ICBID_MASTER_APPSS_PROC"
+                                "ICBID_SLAVE_CLK_CTL"
+                                One, 
+                                One
+                                "SUPPRESSIBLE"
+                            }
                         }
                     }
                 }, 
 
                 Package (0x04)
                 {
-                    "PPP_RESOURCE_ID_PMIC_MPP_DV1", 
-                    "PPP_RESOURCE_TYPE_DISCRETE_PMIC_MPP", 
-                    Package (0x02)
-                    {
-                        "PM_DISCRETE_VREG_STATE_ON", 
-                        Package (0x06)
-                        {
-                            Zero, 
-                            0x03, 
-                            Zero, 
-                            0x02, 
-                            One, 
-                            Zero
-                        }
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "PM_DISCRETE_VREG_STATE_OFF", 
-                        Package (0x06)
-                        {
-                            Zero, 
-                            0x03, 
-                            Zero, 
-                            0x02, 
-                            Zero, 
-                            Zero
-                        }
-                    }
-                }
-            })
-            Method (DVMM, 0, NotSerialized)
-            {
-                Return (DVMP) /* \_SB_.PEP0.DVMP */
-            }
-        }
-
-        Scope (PEP0)
-        {
-            Method (LDBG, 0, NotSerialized)
-            {
-                Return (NDBG) /* \_SB_.PEP0.NDBG */
-            }
-
-            Name (NDBG, Package (0x04)
-            {
-                "DEBUGGERS", 
-                Package (0x05)
-                {
-                    "TYPE", 
-                    "SERIAL", 
-                    Package (0x02)
-                    {
-                        "INSTANCES", 
-                        "\\_SB.UARD"
-                    }, 
-
-                    Package (0x0C)
+                    "WORKAROUND", 
+                    "USB1_GPIO_VOTE", 
+                    "BOOT", 
+                    Package (0x05)
                     {
-                        "DEBUG_ON", 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x02)
-                            {
-                                "gcc_qupv3_wrap_1_m_ahb_clk", 
-                                One
-                            }
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
-                            {
-                                "gcc_qupv3_wrap_1_m_ahb_clk", 
-                                0x09, 
-                                0x08
-                            }
-                        }, 
-
+                        "RESOURCES", 
                         Package (0x02)
                         {
-                            "CLOCK", 
-                            Package (0x03)
+                            "TLMMGPIO", 
+                            Package (0x06)
                             {
-                                "gcc_qupv3_wrap_1_m_ahb_clk", 
-                                0x09, 
-                                0x0C
+                                0x2C, 
+                                One, 
+                                Zero, 
+                                One, 
+                                Zero, 
+                                Zero
                             }
                         }, 
 
@@ -3075,7 +2333,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003)
                             "CLOCK", 
                             Package (0x02)
                             {
-                                "gcc_qupv3_wrap_1_s_ahb_clk", 
+                                "gcc_disp_ahb_clk", 
                                 One
                             }
                         }, 
@@ -3085,7 +2343,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003)
                             "CLOCK", 
                             Package (0x03)
                             {
-                                "gcc_qupv3_wrap_1_s_ahb_clk", 
+                                "gcc_disp_ahb_clk", 
                                 0x09, 
                                 0x08
                             }
@@ -3096,888 +2354,1266 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003)
                             "CLOCK", 
                             Package (0x03)
                             {
-                                "gcc_qupv3_wrap_1_s_ahb_clk", 
+                                "gcc_disp_ahb_clk", 
                                 0x09, 
                                 0x0C
                             }
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x02)
-                            {
-                                "gcc_qupv3_wrap1_s1_clk", 
-                                One
-                            }
-                        }, 
+                        }
+                    }
+                }
+            })
+        }
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
-                            {
-                                "gcc_qupv3_wrap1_s1_clk", 
-                                0x09, 
-                                0x08
-                            }
-                        }, 
+        Scope (PEP0)
+        {
+            Method (UIDL, 0, NotSerialized)
+            {
+                Return (NIDL) /* \_SB_.PEP0.NIDL */
+            }
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
-                            {
-                                "gcc_qupv3_wrap1_s1_clk", 
-                                0x09, 
-                                0x0C
-                            }
-                        }, 
+            Name (NIDL, Package (0x0E)
+            {
+                "MICROPEP_IDLE", 
+                One, 
+                Package (0x08)
+                {
+                    "LPR", 
+                    "KryoSilver0", 
+                    Zero, 
+                    Zero, 
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C1", 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero
+                    }, 
 
-                        Package (0x02)
-                        {
-                            "BUSARB", 
-                            Package (0x07)
-                            {
-                                0x03, 
-                                "ICBID_MASTER_BLSP_2", 
-                                "ICBID_SLAVE_EBI1", 
-                                0x00989680, 
-                                0x0682, 
-                                "HLOS_DRV", 
-                                "SUPPRESSIBLE"
-                            }
-                        }, 
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C2d", 
+                        0x03E8, 
+                        0x0FA0, 
+                        Zero, 
+                        Zero, 
+                        0x02
+                    }, 
 
-                        Package (0x02)
-                        {
-                            "BUSARB", 
-                            Package (0x07)
-                            {
-                                0x03, 
-                                "ICBID_MASTER_APPSS_PROC", 
-                                "ICBID_SLAVE_BLSP_2", 
-                                0x00989680, 
-                                0x004C4B40, 
-                                "HLOS_DRV", 
-                                "SUPPRESSIBLE"
-                            }
-                        }
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C3", 
+                        0x0BB8, 
+                        0x1194, 
+                        0x03, 
+                        Zero, 
+                        0x40000003
                     }, 
 
-                    Package (0x01)
+                    Package (0x07)
                     {
-                        "DEBUG_OFF"
+                        "MODE", 
+                        "C3_NI", 
+                        0x0BB8, 
+                        0x1194, 
+                        0x13, 
+                        Zero, 
+                        0x40000004
                     }
                 }, 
 
-                Package (0x05)
+                Package (0x08)
                 {
-                    "TYPE", 
-                    "USB2.0", 
-                    Package (0x02)
+                    "LPR", 
+                    "KryoSilver1", 
+                    One, 
+                    Zero, 
+                    Package (0x07)
                     {
-                        "INSTANCES", 
-                        "\\_SB.USB1"
+                        "MODE", 
+                        "C1", 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero
                     }, 
 
-                    Package (0x1E)
+                    Package (0x07)
                     {
-                        "DEBUG_ON", 
-                        Package (0x02)
-                        {
-                            "PMICVREGVOTE", 
-                            Package (0x06)
-                            {
-                                "PPP_RESOURCE_ID_LDO12_A", 
-                                One, 
-                                0x001B7740, 
-                                One, 
-                                0x07, 
-                                Zero
-                            }
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "PMICVREGVOTE", 
-                            Package (0x06)
-                            {
-                                "PPP_RESOURCE_ID_LDO24_A", 
-                                One, 
-                                0x002EEBB8, 
-                                One, 
-                                0x07, 
-                                Zero
-                            }
-                        }, 
+                        "MODE", 
+                        "C2d", 
+                        0x03E8, 
+                        0x0FA0, 
+                        Zero, 
+                        Zero, 
+                        0x02
+                    }, 
 
-                        Package (0x02)
-                        {
-                            "PMICVREGVOTE", 
-                            Package (0x06)
-                            {
-                                "PPP_RESOURCE_ID_LDO26_A", 
-                                One, 
-                                0x00124F80, 
-                                One, 
-                                0x07, 
-                                Zero
-                            }
-                        }, 
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C3", 
+                        0x0BB8, 
+                        0x1194, 
+                        0x03, 
+                        Zero, 
+                        0x40000003
+                    }, 
 
-                        Package (0x02)
-                        {
-                            "PMICVREGVOTE", 
-                            Package (0x06)
-                            {
-                                "PPP_RESOURCE_ID_LDO1_A", 
-                                One, 
-                                0x000D6D80, 
-                                One, 
-                                0x07, 
-                                Zero
-                            }
-                        }, 
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C3_NI", 
+                        0x0BB8, 
+                        0x1194, 
+                        0x13, 
+                        Zero, 
+                        0x40000004
+                    }
+                }, 
 
-                        Package (0x02)
-                        {
-                            "FOOTSWITCH", 
-                            Package (0x02)
-                            {
-                                "usb30_sec_gdsc", 
-                                One
-                            }
-                        }, 
+                Package (0x08)
+                {
+                    "LPR", 
+                    "KryoSilver2", 
+                    0x02, 
+                    Zero, 
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C1", 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero
+                    }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
-                            {
-                                "gcc_usb30_sec_sleep_clk"
-                                0x09
-                                0x08
-                            }
-                        }, 
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C2d", 
+                        0x03E8, 
+                        0x0FA0
+                        Zero
+                        Zero, 
+                        0x02
+                    }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
-                            {
-                                "gcc_usb30_sec_sleep_clk"
-                                0x09
-                                0x0C
-                            }
-                        }, 
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C3", 
+                        0x0BB8, 
+                        0x1194
+                        0x03
+                        Zero, 
+                        0x40000003
+                    }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x02)
-                            {
-                                "gcc_usb30_sec_sleep_clk", 
-                                One
-                            }
-                        }, 
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C3_NI", 
+                        0x0BB8, 
+                        0x1194, 
+                        0x13, 
+                        Zero, 
+                        0x40000004
+                    }
+                }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
-                            {
-                                "gcc_usb3_sec_phy_pipe_clk", 
-                                0x09, 
-                                0x08
-                            }
-                        }, 
+                Package (0x08)
+                {
+                    "LPR", 
+                    "KryoSilver3", 
+                    0x03, 
+                    Zero, 
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C1", 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero
+                    }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
-                            {
-                                "gcc_usb3_sec_phy_pipe_clk"
-                                0x09
-                                0x0C
-                            }
-                        }, 
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C2d", 
+                        0x03E8, 
+                        0x0FA0
+                        Zero
+                        Zero, 
+                        0x02
+                    }, 
 
-                        Package (0x02)
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C3", 
+                        0x0BB8, 
+                        0x1194, 
+                        0x03, 
+                        Zero, 
+                        0x40000003
+                    }, 
+
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C3_NI", 
+                        0x0BB8, 
+                        0x1194, 
+                        0x13, 
+                        Zero, 
+                        0x40000004
+                    }
+                }, 
+
+                Package (0x08)
+                {
+                    "LPR", 
+                    "KryoGold0", 
+                    0x04, 
+                    Zero, 
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C1", 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero
+                    }, 
+
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C2d", 
+                        0x0320, 
+                        0x1770, 
+                        0x10, 
+                        Zero, 
+                        0x02
+                    }, 
+
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C3", 
+                        0x0384, 
+                        0x00011170, 
+                        0x13, 
+                        Zero, 
+                        0x40000003
+                    }, 
+
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C3_NI", 
+                        0x0384, 
+                        0x00011170, 
+                        0x13, 
+                        Zero, 
+                        0x40000004
+                    }
+                }, 
+
+                Package (0x08)
+                {
+                    "LPR", 
+                    "KryoGold1", 
+                    0x05, 
+                    Zero, 
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C1", 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero
+                    }, 
+
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C2d", 
+                        0x0320, 
+                        0x1770, 
+                        0x10, 
+                        Zero, 
+                        0x02
+                    }, 
+
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C3", 
+                        0x0384, 
+                        0x00011170, 
+                        0x13, 
+                        Zero, 
+                        0x40000003
+                    }, 
+
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C3_NI", 
+                        0x0384, 
+                        0x00011170, 
+                        0x13, 
+                        Zero, 
+                        0x40000004
+                    }
+                }, 
+
+                Package (0x08)
+                {
+                    "LPR", 
+                    "KryoGold2", 
+                    0x06, 
+                    Zero, 
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C1", 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero
+                    }, 
+
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C2d", 
+                        0x0320, 
+                        0x1770, 
+                        0x10, 
+                        Zero, 
+                        0x02
+                    }, 
+
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C3", 
+                        0x0384, 
+                        0x00011170, 
+                        0x13, 
+                        Zero, 
+                        0x40000003
+                    }, 
+
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C3_NI", 
+                        0x0384, 
+                        0x00011170, 
+                        0x13, 
+                        Zero, 
+                        0x40000004
+                    }
+                }, 
+
+                Package (0x08)
+                {
+                    "LPR", 
+                    "KryoGold3", 
+                    0x07, 
+                    Zero, 
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C1", 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero
+                    }, 
+
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C2d", 
+                        0x0320, 
+                        0x1770, 
+                        0x10, 
+                        Zero, 
+                        0x02
+                    }, 
+
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C3", 
+                        0x0384, 
+                        0x00011170, 
+                        0x13, 
+                        Zero, 
+                        0x40000003
+                    }, 
+
+                    Package (0x07)
+                    {
+                        "MODE", 
+                        "C3_NI", 
+                        0x0384, 
+                        0x00011170, 
+                        0x13, 
+                        Zero, 
+                        0x40000004
+                    }
+                }, 
+
+                Package (0x07)
+                {
+                    "LPR", 
+                    "L2_Silver", 
+                    0xFFFFFFFF, 
+                    0x01000000, 
+                    Package (0x0B)
+                    {
+                        "MODE", 
+                        "D2d", 
+                        0x0514, 
+                        0x0BB8, 
+                        0x10, 
+                        Zero, 
+                        0x20, 
+                        Package (0x05)
                         {
-                            "CLOCK", 
-                            Package (0x02)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                "gcc_usb3_sec_phy_pipe_clk", 
-                                One
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoSilver0", 
+                                "C1", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
+                            Package (0x04)
                             {
-                                "gcc_aggre_usb3_sec_axi_clk", 
-                                0x09
-                                0x08
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoSilver0"
+                                "C2d", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
+                            Package (0x04)
                             {
-                                "gcc_aggre_usb3_sec_axi_clk", 
-                                0x09
-                                0x0C
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoSilver0"
+                                "C3", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
                             Package (0x04)
                             {
-                                "gcc_aggre_usb3_sec_axi_clk", 
-                                0x08
-                                0x78
-                                0x09
+                                "DEPENDENCY", 
+                                "KryoSilver0"
+                                "C3_NI"
+                                0x07
                             }
                         }, 
 
-                        Package (0x02)
+                        Package (0x05)
                         {
-                            "CLOCK", 
-                            Package (0x03)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                "gcc_cfg_noc_usb3_sec_axi_clk", 
-                                0x09
-                                0x08
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoSilver1"
+                                "C1", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
+                            Package (0x04)
                             {
-                                "gcc_cfg_noc_usb3_sec_axi_clk", 
-                                0x09
-                                0x0C
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoSilver1"
+                                "C2d", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
                             Package (0x04)
                             {
-                                "gcc_cfg_noc_usb3_sec_axi_clk", 
-                                0x08, 
-                                0x78, 
-                                0x09
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoSilver1", 
+                                "C3", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
+                            Package (0x04)
                             {
-                                "gcc_usb30_sec_master_clk", 
-                                0x09, 
-                                0x08
+                                "DEPENDENCY", 
+                                "KryoSilver1", 
+                                "C3_NI", 
+                                0x07
                             }
                         }, 
 
-                        Package (0x02)
+                        Package (0x05)
                         {
-                            "CLOCK", 
-                            Package (0x03)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                "gcc_usb30_sec_master_clk", 
-                                0x09
-                                0x0C
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoSilver2"
+                                "C1", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
                             Package (0x04)
                             {
-                                "gcc_usb30_sec_master_clk", 
-                                0x08, 
-                                0x78, 
-                                0x09
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoSilver2", 
+                                "C2d", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
+                            Package (0x04)
                             {
-                                "gcc_usb3_sec_phy_aux_clk", 
-                                0x09
-                                0x08
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoSilver2"
+                                "C3", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
+                            Package (0x04)
                             {
-                                "gcc_usb3_sec_phy_aux_clk", 
-                                0x09, 
-                                0x0C
+                                "DEPENDENCY", 
+                                "KryoSilver2", 
+                                "C3_NI", 
+                                0x07
                             }
                         }, 
 
-                        Package (0x02)
+                        Package (0x05)
                         {
-                            "CLOCK", 
+                            "DEPENDENCY_CONTAINER", 
                             Package (0x04)
                             {
-                                "gcc_usb3_sec_phy_aux_clk", 
-                                0x08
-                                0x04B0
+                                "DEPENDENCY", 
+                                "KryoSilver3"
+                                "C1"
                                 0x07
-                            }
-                        }, 
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
+                            Package (0x04)
                             {
-                                "gcc_usb_phy_cfg_ahb2phy_clk", 
-                                0x09
-                                0x08
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoSilver3"
+                                "C2d", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
+                            Package (0x04)
                             {
-                                "gcc_usb_phy_cfg_ahb2phy_clk", 
-                                0x09
-                                0x0C
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoSilver3"
+                                "C3", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x02)
+                            Package (0x04)
                             {
-                                "gcc_usb_phy_cfg_ahb2phy_clk", 
-                                One
+                                "DEPENDENCY", 
+                                "KryoSilver3", 
+                                "C3_NI", 
+                                0x07
                             }
-                        }, 
+                        }
+                    }, 
 
-                        Package (0x02)
+                    Package (0x0B)
+                    {
+                        "MODE", 
+                        "D2e", 
+                        0x05DC, 
+                        0x0DAC, 
+                        0x10, 
+                        Zero, 
+                        0x30, 
+                        Package (0x03)
                         {
-                            "BUSARB", 
-                            Package (0x07)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                0x03, 
-                                "ICBID_MASTER_APPSS_PROC", 
-                                "ICBID_SLAVE_USB3_1", 
-                                0x17D78400, 
-                                Zero, 
-                                "HLOS_DRV", 
-                                "SUPPRESSIBLE"
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoSilver0", 
+                                "C3", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "BUSARB", 
-                            Package (0x07)
+                            Package (0x04)
                             {
-                                0x03, 
-                                "ICBID_MASTER_USB3_1", 
-                                "ICBID_SLAVE_EBI1", 
-                                0x28000000, 
-                                0x28000000, 
-                                "HLOS_DRV", 
-                                "SUPPRESSIBLE"
+                                "DEPENDENCY", 
+                                "KryoSilver0", 
+                                "C3_NI", 
+                                0x07
                             }
                         }, 
 
-                        Package (0x02)
+                        Package (0x03)
                         {
-                            "NPARESOURCE", 
+                            "DEPENDENCY_CONTAINER", 
                             Package (0x04)
                             {
-                                One, 
-                                "/arc/client/rail_cx", 
-                                0x0100, 
-                                "SUPPRESSIBLE"
-                            }
-                        }
-                    }, 
-
-                    Package (0x01)
-                    {
-                        "DEBUG_OFF"
-                    }
-                }, 
-
-                Package (0x05)
-                {
-                    "TYPE", 
-                    "USB3.0", 
-                    Package (0x02)
-                    {
-                        "INSTANCES", 
-                        "\\_SB.URS0"
-                    }, 
+                                "DEPENDENCY", 
+                                "KryoSilver1", 
+                                "C3", 
+                                0x07
+                            }, 
 
-                    Package (0x1E)
-                    {
-                        "DEBUG_ON", 
-                        Package (0x02)
-                        {
-                            "PMICVREGVOTE", 
-                            Package (0x06)
+                            Package (0x04)
                             {
-                                "PPP_RESOURCE_ID_LDO12_A", 
-                                One, 
-                                0x001B7740, 
-                                One, 
-                                0x07, 
-                                Zero
+                                "DEPENDENCY", 
+                                "KryoSilver1", 
+                                "C3_NI", 
+                                0x07
                             }
                         }, 
 
-                        Package (0x02)
+                        Package (0x03)
                         {
-                            "PMICVREGVOTE", 
-                            Package (0x06)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                "PPP_RESOURCE_ID_LDO24_A", 
-                                One, 
-                                0x002EEBB8, 
-                                One, 
-                                0x07, 
-                                Zero
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoSilver2", 
+                                "C3", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "PMICVREGVOTE", 
-                            Package (0x06)
+                            Package (0x04)
                             {
-                                "PPP_RESOURCE_ID_LDO26_A", 
-                                One, 
-                                0x00124F80, 
-                                One, 
-                                0x07, 
-                                Zero
+                                "DEPENDENCY", 
+                                "KryoSilver2", 
+                                "C3_NI", 
+                                0x07
                             }
                         }, 
 
-                        Package (0x02)
+                        Package (0x03)
                         {
-                            "PMICVREGVOTE", 
-                            Package (0x06)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                "PPP_RESOURCE_ID_LDO1_A", 
-                                One, 
-                                0x000D6D80, 
-                                One, 
-                                0x07, 
-                                Zero
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoSilver3", 
+                                "C3", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "FOOTSWITCH", 
-                            Package (0x02)
+                            Package (0x04)
                             {
-                                "usb30_prim_gdsc", 
-                                One
+                                "DEPENDENCY", 
+                                "KryoSilver3", 
+                                "C3_NI", 
+                                0x07
                             }
-                        }, 
+                        }
+                    }, 
 
-                        Package (0x02)
+                    Package (0x0B)
+                    {
+                        "MODE", 
+                        "D4", 
+                        0x2328, 
+                        0xFA00, 
+                        0x10, 
+                        Zero, 
+                        0x40, 
+                        Package (0x03)
                         {
-                            "CLOCK", 
-                            Package (0x02)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                "gcc_usb30_prim_sleep_clk", 
-                                One
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoSilver0", 
+                                "C3", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
+                            Package (0x04)
                             {
-                                "gcc_usb30_prim_sleep_clk", 
-                                0x09, 
-                                0x08
+                                "DEPENDENCY", 
+                                "KryoSilver0", 
+                                "C3_NI", 
+                                0x07
                             }
                         }, 
 
-                        Package (0x02)
+                        Package (0x03)
                         {
-                            "CLOCK", 
-                            Package (0x03)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                "gcc_usb30_prim_sleep_clk", 
-                                0x09
-                                0x0C
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoSilver1"
+                                "C3", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x02)
+                            Package (0x04)
                             {
-                                "gcc_usb3_prim_phy_pipe_clk", 
-                                One
+                                "DEPENDENCY", 
+                                "KryoSilver1", 
+                                "C3_NI", 
+                                0x07
                             }
                         }, 
 
-                        Package (0x02)
+                        Package (0x03)
                         {
-                            "CLOCK", 
-                            Package (0x03)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                "gcc_usb3_prim_phy_pipe_clk", 
-                                0x09
-                                0x08
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoSilver2"
+                                "C3", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
+                            Package (0x04)
                             {
-                                "gcc_usb3_prim_phy_pipe_clk", 
-                                0x09, 
-                                0x0C
+                                "DEPENDENCY", 
+                                "KryoSilver2", 
+                                "C3_NI", 
+                                0x07
                             }
                         }, 
 
-                        Package (0x02)
+                        Package (0x03)
                         {
-                            "CLOCK", 
-                            Package (0x03)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                "gcc_aggre_usb3_prim_axi_clk", 
-                                0x09
-                                0x08
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoSilver3"
+                                "C3", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
+                            Package (0x04)
                             {
-                                "gcc_aggre_usb3_prim_axi_clk", 
-                                0x09, 
-                                0x0C
+                                "DEPENDENCY", 
+                                "KryoSilver3", 
+                                "C3_NI", 
+                                0x07
                             }
-                        }, 
+                        }
+                    }
+                }, 
 
-                        Package (0x02)
+                Package (0x07)
+                {
+                    "LPR", 
+                    "L2_Gold", 
+                    0xFFFFFFFF, 
+                    0x01000000, 
+                    Package (0x0B)
+                    {
+                        "MODE", 
+                        "D2d", 
+                        0x07D0, 
+                        0x2328, 
+                        0x10, 
+                        Zero, 
+                        0x20, 
+                        Package (0x05)
                         {
-                            "CLOCK", 
+                            "DEPENDENCY_CONTAINER", 
                             Package (0x04)
                             {
-                                "gcc_aggre_usb3_prim_axi_clk", 
-                                0x08, 
-                                0x78, 
-                                0x09
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoGold0", 
+                                "C1", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
+                            Package (0x04)
                             {
-                                "gcc_cfg_noc_usb3_prim_axi_clk", 
-                                0x09
-                                0x08
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoGold0"
+                                "C2d", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
+                            Package (0x04)
                             {
-                                "gcc_cfg_noc_usb3_prim_axi_clk", 
-                                0x09
-                                0x0C
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoGold0"
+                                "C3", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
                             Package (0x04)
                             {
-                                "gcc_cfg_noc_usb3_prim_axi_clk", 
-                                0x08
-                                0x78
-                                0x09
+                                "DEPENDENCY", 
+                                "KryoGold0"
+                                "C3_NI"
+                                0x07
                             }
                         }, 
 
-                        Package (0x02)
+                        Package (0x05)
                         {
-                            "CLOCK", 
-                            Package (0x03)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                "gcc_usb30_prim_master_clk", 
-                                0x09
-                                0x08
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoGold1"
+                                "C1", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
+                            Package (0x04)
                             {
-                                "gcc_usb30_prim_master_clk", 
-                                0x09
-                                0x0C
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoGold0"
+                                "C2d", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
                             Package (0x04)
                             {
-                                "gcc_usb30_prim_master_clk", 
-                                0x08, 
-                                0x78, 
-                                0x09
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoGold1", 
+                                "C3", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
+                            Package (0x04)
                             {
-                                "gcc_usb3_prim_phy_aux_clk", 
-                                0x09, 
-                                0x08
+                                "DEPENDENCY", 
+                                "KryoGold1", 
+                                "C3_NI", 
+                                0x07
                             }
                         }, 
 
-                        Package (0x02)
+                        Package (0x05)
                         {
-                            "CLOCK", 
-                            Package (0x03)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                "gcc_usb3_prim_phy_aux_clk", 
-                                0x09
-                                0x0C
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoGold2"
+                                "C1", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
                             Package (0x04)
                             {
-                                "gcc_usb3_prim_phy_aux_clk", 
-                                0x08
-                                0x04B0
+                                "DEPENDENCY", 
+                                "KryoGold0"
+                                "C2d"
                                 0x07
-                            }
-                        }, 
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
+                            Package (0x04)
                             {
-                                "gcc_usb_phy_cfg_ahb2phy_clk", 
-                                0x09
-                                0x08
-                            }
-                        }, 
+                                "DEPENDENCY", 
+                                "KryoGold2"
+                                "C3", 
+                                0x07
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "CLOCK", 
-                            Package (0x03)
+                            Package (0x04)
                             {
-                                "gcc_usb_phy_cfg_ahb2phy_clk", 
-                                0x09, 
-                                0x0C
+                                "DEPENDENCY", 
+                                "KryoGold2", 
+                                "C3_NI", 
+                                0x07
                             }
                         }, 
 
-                        Package (0x02)
+                        Package (0x05)
                         {
-                            "CLOCK", 
-                            Package (0x02)
-                            {
-                                "gcc_usb_phy_cfg_ahb2phy_clk", 
-                                One
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "KryoGold3", 
+                                "C1", 
+                                0x07
+                            }, 
+
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "KryoGold0", 
+                                "C2d", 
+                                0x07
+                            }, 
+
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "KryoGold3", 
+                                "C3", 
+                                0x07
+                            }, 
+
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "KryoGold3", 
+                                "C3_NI", 
+                                0x07
+                            }
+                        }
+                    }, 
+
+                    Package (0x0B)
+                    {
+                        "MODE", 
+                        "D2e", 
+                        0x0FA0, 
+                        0x2710, 
+                        0x10, 
+                        Zero, 
+                        0x30, 
+                        Package (0x03)
+                        {
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "KryoGold0", 
+                                "C3", 
+                                0x07
+                            }, 
+
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "KryoGold0", 
+                                "C3_NI", 
+                                0x07
                             }
                         }, 
 
-                        Package (0x02)
+                        Package (0x03)
                         {
-                            "BUSARB", 
-                            Package (0x07)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                0x03, 
-                                "ICBID_MASTER_APPSS_PROC", 
-                                "ICBID_SLAVE_USB3_0", 
-                                0x17D78400, 
-                                Zero, 
-                                "HLOS_DRV", 
-                                "SUPPRESSIBLE"
+                                "DEPENDENCY", 
+                                "KryoGold1", 
+                                "C3", 
+                                0x07
+                            }, 
+
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "KryoGold1", 
+                                "C3_NI", 
+                                0x07
                             }
                         }, 
 
-                        Package (0x02)
+                        Package (0x03)
                         {
-                            "BUSARB", 
-                            Package (0x07)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                0x03, 
-                                "ICBID_MASTER_USB3_0", 
-                                "ICBID_SLAVE_EBI1", 
-                                0x28000000, 
-                                0x28000000, 
-                                "HLOS_DRV", 
-                                "SUPPRESSIBLE"
+                                "DEPENDENCY", 
+                                "KryoGold2", 
+                                "C3", 
+                                0x07
+                            }, 
+
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "KryoGold2", 
+                                "C3_NI", 
+                                0x07
                             }
                         }, 
 
-                        Package (0x02)
+                        Package (0x03)
                         {
-                            "NPARESOURCE", 
+                            "DEPENDENCY_CONTAINER", 
                             Package (0x04)
                             {
-                                One, 
-                                "/arc/client/rail_cx", 
-                                0x0100, 
-                                "SUPPRESSIBLE"
+                                "DEPENDENCY", 
+                                "KryoGold3", 
+                                "C3", 
+                                0x07
+                            }, 
+
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "KryoGold3", 
+                                "C3_NI", 
+                                0x07
                             }
                         }
                     }, 
 
-                    Package (0x01)
+                    Package (0x0B)
                     {
-                        "DEBUG_OFF"
-                    }
-                }
-            })
-        }
+                        "MODE", 
+                        "D4", 
+                        0x2EE0, 
+                        0xEA60, 
+                        0x10, 
+                        Zero, 
+                        0x40, 
+                        Package (0x03)
+                        {
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "KryoGold0", 
+                                "C3", 
+                                0x07
+                            }, 
 
-        Scope (PEP0)
-        {
-            Method (LDRS, 0, NotSerialized)
-            {
-                Return (NDRS) /* \_SB_.PEP0.NDRS */
-            }
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "KryoGold0", 
+                                "C3_NI", 
+                                0x07
+                            }
+                        }, 
 
-            Name (NDRS, Package (0x03)
-            {
-                "DEFAULT_RESOURCES", 
-                Package (0x04)
-                {
-                    "OPTIMIZATION", 
-                    "CPU_CNOC_VOTE", 
-                    "BOOT", 
-                    Package (0x02)
-                    {
-                        "RESOURCES", 
-                        Package (0x02)
+                        Package (0x03)
                         {
-                            "BUSARB", 
-                            Package (0x06)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                0x03, 
-                                "ICBID_MASTER_APPSS_PROC", 
-                                "ICBID_SLAVE_CLK_CTL", 
-                                One, 
-                                One, 
-                                "SUPPRESSIBLE"
+                                "DEPENDENCY", 
+                                "KryoGold1", 
+                                "C3", 
+                                0x07
+                            }, 
+
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "KryoGold1", 
+                                "C3_NI", 
+                                0x07
+                            }
+                        }, 
+
+                        Package (0x03)
+                        {
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "KryoGold2", 
+                                "C3", 
+                                0x07
+                            }, 
+
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "KryoGold2", 
+                                "C3_NI", 
+                                0x07
+                            }
+                        }, 
+
+                        Package (0x03)
+                        {
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "KryoGold3", 
+                                "C3", 
+                                0x07
+                            }, 
+
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "KryoGold3", 
+                                "C3_NI", 
+                                0x07
                             }
                         }
                     }
                 }, 
 
-                Package (0x04)
+                Package (0x07)
                 {
-                    "WORKAROUND", 
-                    "USB1_GPIO_VOTE", 
-                    "BOOT", 
-                    Package (0x05)
+                    "LPR", 
+                    "CCI", 
+                    0xFFFFFFFF, 
+                    0x02000000, 
+                    Package (0x09)
                     {
-                        "RESOURCES", 
-                        Package (0x02)
+                        "MODE", 
+                        "E1", 
+                        0x1388, 
+                        0x6590, 
+                        0x10, 
+                        Zero, 
+                        0x0100, 
+                        Package (0x03)
                         {
-                            "TLMMGPIO", 
-                            Package (0x06)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                0x2C, 
-                                One, 
-                                Zero, 
-                                One, 
-                                Zero, 
-                                Zero
+                                "DEPENDENCY", 
+                                "L2_Silver", 
+                                "D2e", 
+                                0x07
+                            }, 
+
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "L2_Silver", 
+                                "D4", 
+                                0x07
                             }
                         }, 
 
+                        Package (0x03)
+                        {
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "L2_Gold", 
+                                "D2e", 
+                                0x07
+                            }, 
+
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "L2_Gold", 
+                                "D4", 
+                                0x07
+                            }
+                        }
+                    }, 
+
+                    Package (0x09)
+                    {
+                        "MODE", 
+                        "E3", 
+                        0x2AF8, 
+                        0x7530, 
+                        0x10, 
+                        Zero, 
+                        0x0400, 
                         Package (0x02)
                         {
-                            "CLOCK", 
-                            Package (0x02)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                "gcc_disp_ahb_clk", 
-                                One
+                                "DEPENDENCY", 
+                                "L2_Silver", 
+                                "D4", 
+                                0x07
                             }
                         }, 
 
                         Package (0x02)
                         {
-                            "CLOCK", 
-                            Package (0x03)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                "gcc_disp_ahb_clk", 
-                                0x09, 
-                                0x08
+                                "DEPENDENCY", 
+                                "L2_Gold", 
+                                "D4", 
+                                0x07
+                            }
+                        }
+                    }, 
+
+                    Package (0x09)
+                    {
+                        "MODE", 
+                        "E3+RPM", 
+                        0x2CEC, 
+                        0x88B8, 
+                        0x10, 
+                        Zero, 
+                        0x0500, 
+                        Package (0x02)
+                        {
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "L2_Silver", 
+                                "D4", 
+                                0x07
                             }
                         }, 
 
                         Package (0x02)
                         {
-                            "CLOCK", 
-                            Package (0x03)
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
                             {
-                                "gcc_disp_ahb_clk", 
-                                0x09, 
-                                0x0C
+                                "DEPENDENCY", 
+                                "L2_Gold", 
+                                "D4", 
+                                0x07
+                            }
+                        }
+                    }
+                }, 
+
+                Package (0x05)
+                {
+                    "LPR", 
+                    "platform", 
+                    0xFFFFFFFF, 
+                    Zero, 
+                    Package (0x08)
+                    {
+                        "MODE", 
+                        "xo", 
+                        0x1388, 
+                        0x00050910, 
+                        0x20, 
+                        0x10, 
+                        0xFFFFFE00, 
+                        Package (0x02)
+                        {
+                            "DEPENDENCY_CONTAINER", 
+                            Package (0x04)
+                            {
+                                "DEPENDENCY", 
+                                "CCI", 
+                                "E3+RPM", 
+                                0x07
                             }
                         }
                     }
@@ -3987,1865 +3623,1291 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003)
 
         Scope (PEP0)
         {
-            Method (UIDL, 0, NotSerialized)
+            Method (CPRZ, 0, NotSerialized)
             {
-                Return (NIDL) /* \_SB_.PEP0.NIDL */
+                Return (CPRH) /* \_SB_.PEP0.CPRH */
             }
 
-            Name (NIDL, Package (0x0E)
+            Name (CPRH, Package (0x06)
             {
-                "MICROPEP_IDLE", 
-                One
-                Package (0x08)
+                "CPRH_SW_SETTING", 
+                Zero
+                Package (0x05)
                 {
-                    "LPR", 
-                    "KryoSilver0", 
-                    Zero, 
-                    Zero, 
-                    Package (0x07)
+                    "CPRH_CHIP_INFO", 
+                    0x0141, 
+                    One, 
+                    Package (0x36)
                     {
-                        "MODE", 
-                        "C1", 
+                        "CPRH_SW_CONTROLLER_SETTING", 
                         Zero, 
+                        "APC0", 
+                        0x17DC0000, 
+                        0x4000, 
                         Zero, 
+                        0x14, 
+                        0x0F, 
+                        0x0C, 
+                        0x0B, 
+                        One, 
+                        0x08, 
+                        0xF0, 
                         Zero, 
                         Zero, 
-                        Zero
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C2d", 
-                        0x03E8, 
-                        0x0FA0, 
+                        0x00017700, 
+                        0x0190, 
+                        0x04, 
+                        0x04, 
+                        0x05, 
                         Zero, 
+                        One, 
+                        0x05, 
+                        One, 
+                        One, 
+                        One, 
+                        One, 
+                        0x17, 
+                        0x4B00, 
                         Zero, 
-                        0x02
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C3", 
-                        0x0BB8, 
-                        0x1194, 
-                        0x03, 
+                        0x04, 
+                        One, 
+                        0x04, 
+                        One, 
                         Zero, 
-                        0x40000003
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C3_NI", 
-                        0x0BB8, 
-                        0x1194, 
-                        0x13, 
                         Zero, 
-                        0x40000004
-                    }
-                }, 
-
-                Package (0x08)
-                {
-                    "LPR", 
-                    "KryoSilver1", 
-                    One, 
-                    Zero, 
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C1", 
+                        "", 
                         Zero, 
                         Zero, 
                         Zero, 
                         Zero, 
-                        Zero
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C2d", 
-                        0x03E8, 
-                        0x0FA0, 
                         Zero, 
                         Zero, 
-                        0x02
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C3", 
-                        0x0BB8, 
-                        0x1194, 
-                        0x03, 
                         Zero, 
-                        0x40000003
+                        0x17840800, 
+                        0x0400, 
+                        One, 
+                        One, 
+                        Zero, 
+                        One, 
+                        One, 
+                        One, 
+                        Package (0x07)
+                        {
+                            "CPRH_SW_THREAD_SETTING", 
+                            Zero, 
+                            "L3", 
+                            0x02, 
+                            0x02, 
+                            Zero, 
+                            Zero
+                        }, 
+
+                        Package (0x07)
+                        {
+                            "CPRH_SW_THREAD_SETTING", 
+                            One, 
+                            "Silver", 
+                            0x02, 
+                            0x02, 
+                            Zero, 
+                            Zero
+                        }
                     }, 
 
-                    Package (0x07)
+                    Package (0x35)
                     {
-                        "MODE", 
-                        "C3_NI"
-                        0x0BB8
-                        0x1194
-                        0x13
+                        "CPRH_SW_CONTROLLER_SETTING", 
+                        One
+                        "APC1"
+                        0x17DB0000
+                        0x4000
                         Zero, 
-                        0x40000004
+                        0x14, 
+                        0x0F, 
+                        0x0E, 
+                        0x09, 
+                        One, 
+                        0x0E, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        0x00017700, 
+                        0x0190, 
+                        0x04, 
+                        0x04, 
+                        0x05, 
+                        Zero, 
+                        0x06, 
+                        0x0A, 
+                        One, 
+                        One, 
+                        Zero, 
+                        Zero, 
+                        0x17, 
+                        0x4B00, 
+                        Zero, 
+                        0x04, 
+                        One, 
+                        0x04, 
+                        One, 
+                        Zero, 
+                        Zero, 
+                        "", 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        0x17830800, 
+                        0x0400, 
+                        One, 
+                        One, 
+                        Zero, 
+                        One, 
+                        One, 
+                        One, 
+                        Package (0x07)
+                        {
+                            "CPRH_SW_THREAD_SETTING", 
+                            Zero, 
+                            "Gold", 
+                            0x02, 
+                            0x02, 
+                            Zero, 
+                            0x02
+                        }
                     }
                 }, 
 
-                Package (0x08)
+                Package (0x05)
                 {
-                    "LPR", 
-                    "KryoSilver2"
+                    "CPRH_CHIP_INFO", 
+                    0x0141
                     0x02, 
-                    Zero, 
-                    Package (0x07)
+                    Package (0x36)
                     {
-                        "MODE", 
-                        "C1", 
+                        "CPRH_SW_CONTROLLER_SETTING", 
                         Zero, 
+                        "APC0", 
+                        0x17DC0000, 
+                        0x4000, 
                         Zero, 
+                        0x14, 
+                        0x0F, 
+                        0x0C, 
+                        0x0B, 
+                        One, 
+                        0x08, 
+                        0xF0, 
                         Zero, 
                         Zero, 
-                        Zero
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C2d", 
-                        0x03E8, 
-                        0x0FA0, 
+                        0x00017700, 
+                        0x0190, 
+                        0x04, 
+                        0x04, 
+                        0x05, 
                         Zero, 
+                        One, 
+                        0x05, 
+                        One, 
+                        One, 
+                        One, 
+                        One, 
+                        0x17, 
+                        0x4B00, 
                         Zero, 
-                        0x02
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C3", 
-                        0x0BB8, 
-                        0x1194, 
-                        0x03, 
+                        0x04, 
+                        One, 
+                        0x04, 
+                        One, 
                         Zero, 
-                        0x40000003
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C3_NI", 
-                        0x0BB8, 
-                        0x1194, 
-                        0x13, 
                         Zero, 
-                        0x40000004
-                    }
-                }, 
-
-                Package (0x08)
-                {
-                    "LPR", 
-                    "KryoSilver3", 
-                    0x03, 
-                    Zero, 
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C1", 
+                        "", 
                         Zero, 
                         Zero, 
                         Zero, 
                         Zero, 
-                        Zero
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C2d", 
-                        0x03E8, 
-                        0x0FA0, 
                         Zero, 
                         Zero, 
-                        0x02
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C3", 
-                        0x0BB8, 
-                        0x1194, 
-                        0x03, 
                         Zero, 
-                        0x40000003
+                        0x17840800, 
+                        0x0400, 
+                        One, 
+                        One, 
+                        Zero, 
+                        One, 
+                        One, 
+                        One, 
+                        Package (0x07)
+                        {
+                            "CPRH_SW_THREAD_SETTING", 
+                            Zero, 
+                            "L3", 
+                            0x02, 
+                            0x02, 
+                            Zero, 
+                            Zero
+                        }, 
+
+                        Package (0x07)
+                        {
+                            "CPRH_SW_THREAD_SETTING", 
+                            One, 
+                            "Silver", 
+                            0x02, 
+                            0x02, 
+                            Zero, 
+                            Zero
+                        }
                     }, 
 
-                    Package (0x07)
+                    Package (0x35)
                     {
-                        "MODE", 
-                        "C3_NI"
-                        0x0BB8
-                        0x1194
-                        0x13
+                        "CPRH_SW_CONTROLLER_SETTING", 
+                        One
+                        "APC1"
+                        0x17DB0000
+                        0x4000
                         Zero, 
-                        0x40000004
-                    }
-                }, 
-
-                Package (0x08)
-                {
-                    "LPR", 
-                    "KryoGold0", 
-                    0x04, 
-                    Zero, 
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C1", 
+                        0x14, 
+                        0x0F, 
+                        0x0E, 
+                        0x09, 
+                        One, 
+                        0x0E, 
                         Zero, 
                         Zero, 
                         Zero, 
+                        0x00017700, 
+                        0x0190, 
+                        0x04, 
+                        0x04, 
+                        0x05, 
                         Zero, 
-                        Zero
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C2d", 
-                        0x0320, 
-                        0x1770, 
-                        0x10, 
+                        0x06, 
+                        0x0A, 
+                        One, 
+                        One, 
                         Zero, 
-                        0x02
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C3", 
-                        0x0384, 
-                        0x00011170, 
-                        0x13, 
                         Zero, 
-                        0x40000003
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C3_NI", 
-                        0x0384, 
-                        0x00011170, 
-                        0x13, 
+                        0x17, 
+                        0x4B00, 
                         Zero, 
-                        0x40000004
-                    }
-                }, 
-
-                Package (0x08)
-                {
-                    "LPR", 
-                    "KryoGold1", 
-                    0x05, 
-                    Zero, 
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C1", 
+                        0x04, 
+                        One, 
+                        0x04, 
+                        One, 
                         Zero, 
                         Zero, 
+                        "", 
                         Zero, 
                         Zero, 
-                        Zero
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C2d", 
-                        0x0320, 
-                        0x1770, 
-                        0x10, 
                         Zero, 
-                        0x02
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C3", 
-                        0x0384, 
-                        0x00011170, 
-                        0x13, 
                         Zero, 
-                        0x40000003
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C3_NI", 
-                        0x0384, 
-                        0x00011170, 
-                        0x13, 
                         Zero, 
-                        0x40000004
+                        Zero, 
+                        Zero, 
+                        0x17830800, 
+                        0x0400, 
+                        One, 
+                        One, 
+                        Zero, 
+                        One, 
+                        One, 
+                        One, 
+                        Package (0x07)
+                        {
+                            "CPRH_SW_THREAD_SETTING", 
+                            Zero, 
+                            "Gold", 
+                            0x02, 
+                            0x02, 
+                            Zero, 
+                            0x02
+                        }
                     }
                 }, 
 
-                Package (0x08)
+                Package (0x05)
                 {
-                    "LPR", 
-                    "KryoGold2", 
-                    0x06, 
-                    Zero, 
-                    Package (0x07)
+                    "CPRH_CHIP_INFO", 
+                    0x0155, 
+                    One, 
+                    Package (0x36)
                     {
-                        "MODE", 
-                        "C1", 
+                        "CPRH_SW_CONTROLLER_SETTING", 
                         Zero, 
+                        "APC0", 
+                        0x17DC0000, 
+                        0x4000, 
                         Zero, 
+                        0x14, 
+                        0x0F, 
+                        0x0C, 
+                        0x0B, 
+                        One, 
+                        0x08, 
+                        0xF0, 
                         Zero, 
                         Zero, 
-                        Zero
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C2d", 
-                        0x0320, 
-                        0x1770, 
-                        0x10, 
+                        0x00017700, 
+                        0x0190, 
+                        0x04, 
+                        0x04, 
+                        0x05, 
                         Zero, 
-                        0x02
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C3", 
-                        0x0384, 
-                        0x00011170, 
-                        0x13, 
+                        One, 
+                        0x05, 
+                        One, 
+                        One, 
+                        One, 
+                        One, 
+                        0x17, 
+                        0x4B00, 
                         Zero, 
-                        0x40000003
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C3_NI", 
-                        0x0384, 
-                        0x00011170, 
-                        0x13, 
+                        0x04, 
+                        One, 
+                        0x04, 
+                        One, 
                         Zero, 
-                        0x40000004
-                    }
-                }, 
-
-                Package (0x08)
-                {
-                    "LPR", 
-                    "KryoGold3", 
-                    0x07, 
-                    Zero, 
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C1", 
                         Zero, 
+                        "", 
                         Zero, 
                         Zero, 
                         Zero, 
-                        Zero
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C2d", 
-                        0x0320, 
-                        0x1770, 
-                        0x10, 
                         Zero, 
-                        0x02
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C3", 
-                        0x0384, 
-                        0x00011170, 
-                        0x13, 
                         Zero, 
-                        0x40000003
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "MODE", 
-                        "C3_NI", 
-                        0x0384, 
-                        0x00011170, 
-                        0x13, 
                         Zero, 
-                        0x40000004
-                    }
-                }, 
-
-                Package (0x07)
-                {
-                    "LPR", 
-                    "L2_Silver", 
-                    0xFFFFFFFF, 
-                    0x01000000, 
-                    Package (0x0B)
-                    {
-                        "MODE", 
-                        "D2d", 
-                        0x0514, 
-                        0x0BB8, 
-                        0x10, 
                         Zero, 
-                        0x20, 
-                        Package (0x05)
+                        0x17840800, 
+                        0x0400, 
+                        One, 
+                        One, 
+                        Zero, 
+                        One, 
+                        One, 
+                        One, 
+                        Package (0x07)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver0", 
-                                "C1", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver0", 
-                                "C2d", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver0", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver0", 
-                                "C3_NI", 
-                                0x07
-                            }
+                            "CPRH_SW_THREAD_SETTING", 
+                            Zero, 
+                            "Silver", 
+                            0x02, 
+                            0x02, 
+                            Zero, 
+                            Zero
                         }, 
 
-                        Package (0x05)
+                        Package (0x07)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver1", 
-                                "C1", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver1", 
-                                "C2d", 
-                                0x07
-                            }, 
+                            "CPRH_SW_THREAD_SETTING", 
+                            One, 
+                            "L3", 
+                            0x02, 
+                            0x02, 
+                            Zero, 
+                            Zero
+                        }
+                    }, 
 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver1", 
-                                "C3", 
-                                0x07
-                            }, 
+                    Package (0x35)
+                    {
+                        "CPRH_SW_CONTROLLER_SETTING", 
+                        One, 
+                        "APC1", 
+                        0x17DB0000, 
+                        0x4000, 
+                        Zero, 
+                        0x14, 
+                        0x0F, 
+                        0x0E, 
+                        0x09, 
+                        One, 
+                        0x0E, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        0x00017700, 
+                        0x0190, 
+                        0x04, 
+                        0x04, 
+                        0x05, 
+                        Zero, 
+                        0x06, 
+                        0x0A, 
+                        One, 
+                        One, 
+                        Zero, 
+                        Zero, 
+                        0x17, 
+                        0x4B00, 
+                        Zero, 
+                        0x04, 
+                        One, 
+                        0x04, 
+                        One, 
+                        Zero, 
+                        Zero, 
+                        "", 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        0x17830800, 
+                        0x0400, 
+                        One, 
+                        One, 
+                        Zero, 
+                        One, 
+                        One, 
+                        One, 
+                        Package (0x07)
+                        {
+                            "CPRH_SW_THREAD_SETTING", 
+                            Zero, 
+                            "Gold", 
+                            0x02, 
+                            0x02, 
+                            Zero, 
+                            0x02
+                        }
+                    }
+                }, 
 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver1", 
-                                "C3_NI", 
-                                0x07
-                            }
+                Package (0x05)
+                {
+                    "CPRH_CHIP_INFO", 
+                    0x0155, 
+                    0x02, 
+                    Package (0x36)
+                    {
+                        "CPRH_SW_CONTROLLER_SETTING", 
+                        Zero, 
+                        "APC0", 
+                        0x17DC0000, 
+                        0x4000, 
+                        Zero, 
+                        0x14, 
+                        0x0F, 
+                        0x0C, 
+                        0x0B, 
+                        One, 
+                        0x08, 
+                        0xF0, 
+                        Zero, 
+                        Zero, 
+                        0x00017700, 
+                        0x0190, 
+                        0x04, 
+                        0x04, 
+                        0x05, 
+                        Zero, 
+                        One, 
+                        0x05, 
+                        One, 
+                        One, 
+                        One, 
+                        One, 
+                        0x17, 
+                        0x4B00, 
+                        Zero, 
+                        0x04, 
+                        One, 
+                        0x04, 
+                        One, 
+                        Zero, 
+                        Zero, 
+                        "", 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        0x17840800, 
+                        0x0400, 
+                        One, 
+                        One, 
+                        Zero, 
+                        One, 
+                        One, 
+                        One, 
+                        Package (0x07)
+                        {
+                            "CPRH_SW_THREAD_SETTING", 
+                            Zero, 
+                            "Silver", 
+                            0x02, 
+                            0x02, 
+                            Zero, 
+                            Zero
                         }, 
 
-                        Package (0x05)
+                        Package (0x07)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver2", 
-                                "C1", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver2", 
-                                "C2d", 
-                                0x07
-                            }, 
+                            "CPRH_SW_THREAD_SETTING", 
+                            One, 
+                            "L3", 
+                            0x02, 
+                            0x02, 
+                            Zero, 
+                            Zero
+                        }
+                    }, 
 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver2", 
-                                "C3", 
-                                0x07
-                            }, 
+                    Package (0x35)
+                    {
+                        "CPRH_SW_CONTROLLER_SETTING", 
+                        One, 
+                        "APC1", 
+                        0x17DB0000, 
+                        0x4000, 
+                        Zero, 
+                        0x14, 
+                        0x0F, 
+                        0x0E, 
+                        0x09, 
+                        One, 
+                        0x0E, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        0x00017700, 
+                        0x0190, 
+                        0x04, 
+                        0x04, 
+                        0x05, 
+                        Zero, 
+                        0x06, 
+                        0x0A, 
+                        One, 
+                        One, 
+                        Zero, 
+                        Zero, 
+                        0x17, 
+                        0x4B00, 
+                        Zero, 
+                        0x04, 
+                        One, 
+                        0x04, 
+                        One, 
+                        Zero, 
+                        Zero, 
+                        "", 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        0x17830800, 
+                        0x0400, 
+                        One, 
+                        One, 
+                        Zero, 
+                        One, 
+                        One, 
+                        One, 
+                        Package (0x07)
+                        {
+                            "CPRH_SW_THREAD_SETTING", 
+                            Zero, 
+                            "Gold", 
+                            0x02, 
+                            0x02, 
+                            Zero, 
+                            0x02
+                        }
+                    }
+                }
+            })
+        }
 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver2", 
-                                "C3_NI", 
-                                0x07
-                            }
+        Scope (PEP0)
+        {
+            Name (NDCV, Package (0x05)
+            {
+                Package (0x08)
+                {
+                    "CHIP_INFO", 
+                    0x0141, 
+                    One, 
+                    Zero, 
+                    0x02, 
+                    Package (0x06)
+                    {
+                        "BIG", 
+                        0x04, 
+                        "apcs_gold_sysleaf_clk", 
+                        Package (0x03)
+                        {
+                            0x012C, 
+                            0x040D, 
+                            0x0626
                         }, 
 
-                        Package (0x05)
+                        0x03, 
+                        Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver3", 
-                                "C1", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver3", 
-                                "C2d", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver3", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver3", 
-                                "C3_NI", 
-                                0x07
-                            }
+                            Zero, 
+                            0x09, 
+                            0x10
                         }
                     }, 
 
-                    Package (0x0B)
+                    Package (0x06)
                     {
-                        "MODE", 
-                        "D2e", 
-                        0x05DC, 
-                        0x0DAC, 
-                        0x10, 
-                        Zero, 
-                        0x30, 
+                        "LITTLE", 
+                        0x04, 
+                        "apcs_silver_sysleaf_clk", 
                         Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver0", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver0", 
-                                "C3_NI", 
-                                0x07
-                            }
+                            0x012C, 
+                            0x04BA, 
+                            0x063A
                         }, 
 
+                        0x03, 
                         Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver1", 
-                                "C3", 
-                                0x07
-                            }, 
+                            Zero, 
+                            0x0B, 
+                            0x10
+                        }
+                    }, 
 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver1", 
-                                "C3_NI", 
-                                0x07
-                            }
-                        }, 
+                    Package (0x02)
+                    {
+                        "L3_CACHE", 
+                        "apcs_l3_sysleaf_clk"
+                    }
+                }, 
 
+                Package (0x08)
+                {
+                    "CHIP_INFO", 
+                    0x0141, 
+                    0x02, 
+                    Zero, 
+                    0x02, 
+                    Package (0x06)
+                    {
+                        "BIG", 
+                        0x04, 
+                        "apcs_gold_sysleaf_clk", 
                         Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver2", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver2", 
-                                "C3_NI", 
-                                0x07
-                            }
+                            0x033A, 
+                            0x0553, 
+                            0x05B4
                         }, 
 
+                        0x03, 
                         Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver3", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver3", 
-                                "C3_NI", 
-                                0x07
-                            }
+                            Zero, 
+                            0x07, 
+                            0x0F
                         }
                     }, 
 
-                    Package (0x0B)
+                    Package (0x06)
                     {
-                        "MODE", 
-                        "D4", 
-                        0x2328, 
-                        0xFA00, 
-                        0x10, 
-                        Zero, 
-                        0x40, 
-                        Package (0x03)
-                        {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver0", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver0", 
-                                "C3_NI", 
-                                0x07
-                            }
-                        }, 
-
-                        Package (0x03)
-                        {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver1", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver1", 
-                                "C3_NI", 
-                                0x07
-                            }
-                        }, 
-
+                        "LITTLE", 
+                        0x04, 
+                        "apcs_silver_sysleaf_clk", 
                         Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver2", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver2", 
-                                "C3_NI", 
-                                0x07
-                            }
+                            0x012C, 
+                            0x04CD, 
+                            0x052D
                         }, 
 
+                        0x03, 
                         Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver3", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoSilver3", 
-                                "C3_NI", 
-                                0x07
-                            }
+                            Zero, 
+                            0x0B, 
+                            0x0F
                         }
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "L3_CACHE", 
+                        "apcs_l3_sysleaf_clk"
                     }
                 }, 
 
-                Package (0x07)
+                Package (0x08)
                 {
-                    "LPR", 
-                    "L2_Gold", 
-                    0xFFFFFFFF, 
-                    0x01000000, 
-                    Package (0x0B)
+                    "CHIP_INFO", 
+                    0x0155, 
+                    One, 
+                    Zero, 
+                    0x02, 
+                    Package (0x06)
                     {
-                        "MODE", 
-                        "D2d", 
-                        0x07D0, 
-                        0x2328, 
-                        0x10, 
-                        Zero, 
-                        0x20, 
-                        Package (0x05)
-                        {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold0", 
-                                "C1", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold0", 
-                                "C2d", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold0", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold0", 
-                                "C3_NI", 
-                                0x07
-                            }
-                        }, 
-
-                        Package (0x05)
-                        {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold1", 
-                                "C1", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold0", 
-                                "C2d", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold1", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold1", 
-                                "C3_NI", 
-                                0x07
-                            }
-                        }, 
-
-                        Package (0x05)
+                        "BIG", 
+                        0x04, 
+                        "apcs_gold_sysleaf_clk", 
+                        Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold2", 
-                                "C1", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold0", 
-                                "C2d", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold2", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold2", 
-                                "C3_NI", 
-                                0x07
-                            }
+                            0x012C, 
+                            0x040D, 
+                            0x0626
                         }, 
 
-                        Package (0x05)
+                        0x03, 
+                        Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold3", 
-                                "C1", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold0", 
-                                "C2d", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold3", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold3", 
-                                "C3_NI", 
-                                0x07
-                            }
+                            Zero, 
+                            0x09, 
+                            0x10
                         }
                     }, 
 
-                    Package (0x0B)
+                    Package (0x06)
                     {
-                        "MODE", 
-                        "D2e", 
-                        0x0FA0, 
-                        0x2710, 
-                        0x10, 
-                        Zero, 
-                        0x30, 
+                        "LITTLE", 
+                        0x04, 
+                        "apcs_silver_sysleaf_clk", 
                         Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold0", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold0", 
-                                "C3_NI", 
-                                0x07
-                            }
+                            0x012C, 
+                            0x04BA, 
+                            0x063A
                         }, 
 
+                        0x03, 
                         Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold1", 
-                                "C3", 
-                                0x07
-                            }, 
+                            Zero, 
+                            0x0B, 
+                            0x10
+                        }
+                    }, 
 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold1", 
-                                "C3_NI", 
-                                0x07
-                            }
-                        }, 
+                    Package (0x02)
+                    {
+                        "L3_CACHE", 
+                        "apcs_l3_sysleaf_clk"
+                    }
+                }, 
 
+                Package (0x08)
+                {
+                    "CHIP_INFO", 
+                    0x0155, 
+                    0x02, 
+                    Zero, 
+                    0x02, 
+                    Package (0x06)
+                    {
+                        "BIG", 
+                        0x04, 
+                        "apcs_gold_sysleaf_clk", 
                         Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold2", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold2", 
-                                "C3_NI", 
-                                0x07
-                            }
+                            0x033A, 
+                            0x0553, 
+                            0x05B4
                         }, 
 
+                        0x03, 
                         Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold3", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold3", 
-                                "C3_NI", 
-                                0x07
-                            }
+                            Zero, 
+                            0x07, 
+                            0x0F
                         }
                     }, 
 
-                    Package (0x0B)
+                    Package (0x06)
                     {
-                        "MODE", 
-                        "D4", 
-                        0x2EE0, 
-                        0xEA60, 
-                        0x10, 
-                        Zero, 
-                        0x40, 
+                        "LITTLE", 
+                        0x04, 
+                        "apcs_silver_sysleaf_clk", 
                         Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold0", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold0", 
-                                "C3_NI", 
-                                0x07
-                            }
+                            0x012C, 
+                            0x04CD, 
+                            0x052D
                         }, 
 
+                        0x03, 
                         Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold1", 
-                                "C3", 
-                                0x07
-                            }, 
+                            Zero, 
+                            0x0B, 
+                            0x0F
+                        }
+                    }, 
 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold1", 
-                                "C3_NI", 
-                                0x07
-                            }
-                        }, 
+                    Package (0x02)
+                    {
+                        "L3_CACHE", 
+                        "apcs_l3_sysleaf_clk"
+                    }
+                }, 
 
+                Package (0x08)
+                {
+                    "CHIP_INFO", 
+                    0x015C, 
+                    0x02, 
+                    Zero, 
+                    0x02, 
+                    Package (0x06)
+                    {
+                        "BIG", 
+                        0x04, 
+                        "apcs_gold_sysleaf_clk", 
                         Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold2", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold2", 
-                                "C3_NI", 
-                                0x07
-                            }
+                            0x033A, 
+                            0x0553, 
+                            0x05B4
                         }, 
 
+                        0x03, 
                         Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold3", 
-                                "C3", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "KryoGold3", 
-                                "C3_NI", 
-                                0x07
-                            }
+                            Zero, 
+                            0x07, 
+                            0x0F
                         }
-                    }
-                }, 
+                    }, 
 
-                Package (0x07)
-                {
-                    "LPR", 
-                    "CCI", 
-                    0xFFFFFFFF, 
-                    0x02000000, 
-                    Package (0x09)
+                    Package (0x06)
                     {
-                        "MODE", 
-                        "E1", 
-                        0x1388, 
-                        0x6590, 
-                        0x10, 
-                        Zero, 
-                        0x0100, 
+                        "LITTLE", 
+                        0x04, 
+                        "apcs_silver_sysleaf_clk", 
                         Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "L2_Silver", 
-                                "D2e", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "L2_Silver", 
-                                "D4", 
-                                0x07
-                            }
-                        }, 
+                            0x012C, 
+                            0x04CD, 
+                            0x052D
+                        }, 
 
+                        0x03, 
                         Package (0x03)
                         {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "L2_Gold", 
-                                "D2e", 
-                                0x07
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "L2_Gold", 
-                                "D4", 
-                                0x07
-                            }
-                        }
-                    }, 
-
-                    Package (0x09)
-                    {
-                        "MODE", 
-                        "E3", 
-                        0x2AF8, 
-                        0x7530, 
-                        0x10, 
-                        Zero, 
-                        0x0400, 
-                        Package (0x02)
-                        {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "L2_Silver", 
-                                "D4", 
-                                0x07
-                            }
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "L2_Gold", 
-                                "D4", 
-                                0x07
-                            }
+                            Zero, 
+                            0x0B, 
+                            0x0F
                         }
                     }, 
 
-                    Package (0x09)
-                    {
-                        "MODE", 
-                        "E3+RPM", 
-                        0x2CEC, 
-                        0x88B8, 
-                        0x10, 
-                        Zero, 
-                        0x0500, 
-                        Package (0x02)
-                        {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "L2_Silver", 
-                                "D4", 
-                                0x07
-                            }
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "L2_Gold", 
-                                "D4", 
-                                0x07
-                            }
-                        }
-                    }
-                }, 
-
-                Package (0x05)
-                {
-                    "LPR", 
-                    "platform", 
-                    0xFFFFFFFF, 
-                    Zero, 
-                    Package (0x08)
+                    Package (0x02)
                     {
-                        "MODE", 
-                        "xo", 
-                        0x1388, 
-                        0x00050910, 
-                        0x20, 
-                        0x10, 
-                        0xFFFFFE00, 
-                        Package (0x02)
-                        {
-                            "DEPENDENCY_CONTAINER", 
-                            Package (0x04)
-                            {
-                                "DEPENDENCY", 
-                                "CCI", 
-                                "E3+RPM", 
-                                0x07
-                            }
-                        }
+                        "L3_CACHE", 
+                        "apcs_l3_sysleaf_clk"
                     }
                 }
             })
+            Method (LDCV, 0, NotSerialized)
+            {
+                Return (NDCV) /* \_SB_.PEP0.NDCV */
+            }
         }
 
         Scope (PEP0)
         {
-            Method (CPRZ, 0, NotSerialized)
+            Method (CTSN, 0, NotSerialized)
             {
-                Return (CPRH) /* \_SB_.PEP0.CPRH */
+                Return (THSD) /* \_SB_.PEP0.THSD */
             }
 
-            Name (CPRH, Package (0x06)
+            Method (PEPH, 0, NotSerialized)
             {
-                "CPRH_SW_SETTING", 
-                Zero, 
-                Package (0x05)
+                Return (Package (0x01)
                 {
-                    "CPRH_CHIP_INFO", 
-                    0x0141, 
-                    One, 
-                    Package (0x36)
+                    "ACPI\\VEN_QCOM&DEV_0237"
+                })
+            }
+
+            Method (BCLH, 0, NotSerialized)
+            {
+                Return (Package (0x01)
+                {
+                    "ACPI\\VEN_QCOM&DEV_0294"
+                })
+            }
+
+            Name (THSD, Package (0x07)
+            {
+                Package (0x16)
+                {
+                    0x15, 
+                    Package (0x02)
                     {
-                        "CPRH_SW_CONTROLLER_SETTING", 
-                        Zero, 
-                        "APC0", 
-                        0x17DC0000, 
-                        0x4000, 
-                        Zero, 
-                        0x14, 
-                        0x0F, 
-                        0x0C, 
-                        0x0B, 
-                        One, 
-                        0x08, 
-                        0xF0, 
-                        Zero, 
-                        Zero, 
-                        0x00017700, 
-                        0x0190, 
-                        0x04, 
-                        0x04, 
-                        0x05, 
-                        Zero, 
-                        One, 
-                        0x05, 
-                        One, 
-                        One, 
-                        One, 
-                        One, 
-                        0x17, 
-                        0x4B00, 
-                        Zero, 
-                        0x04, 
-                        One, 
-                        0x04, 
-                        One, 
-                        Zero, 
-                        Zero, 
-                        "", 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        0x17840800, 
-                        0x0400, 
-                        One, 
-                        One, 
-                        Zero, 
-                        One, 
-                        One, 
-                        One, 
-                        Package (0x07)
-                        {
-                            "CPRH_SW_THREAD_SETTING", 
-                            Zero, 
-                            "L3", 
-                            0x02, 
-                            0x02, 
-                            Zero, 
-                            Zero
-                        }, 
+                        "ACPI\\VEN_QCOM&DEV_027F", 
+                        Zero
+                    }, 
 
-                        Package (0x07)
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_0280", 
+                        One
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_0281", 
+                        0x02
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_0282", 
+                        0x03
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_0283", 
+                        0x04
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_0284", 
+                        0x05
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_0285", 
+                        0x06
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_0286", 
+                        0x07
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_0287", 
+                        0x08
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_0288", 
+                        0x09
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_0289", 
+                        0x0A
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_02AB", 
+                        0x0B
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_02AC", 
+                        0x0C
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_02AD", 
+                        0x0D
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_02AE", 
+                        0x0E
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_02AF", 
+                        0x0F
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_02C8", 
+                        0x10
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_02C9", 
+                        0x11
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_02CA", 
+                        0x12
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_02CB", 
+                        0x13
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_02CC", 
+                        0x14
+                    }
+                }, 
+
+                Package (0x04)
+                {
+                    0x03, 
+                    Package (0x04)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_02B0", 
+                        0x15, 
+                        0x05, 
+                        Package (0x05)
                         {
-                            "CPRH_SW_THREAD_SETTING", 
                             One, 
-                            "Silver", 
                             0x02, 
-                            0x02
-                            Zero
-                            Zero
+                            0x03
+                            0x04
+                            0x05
                         }
                     }, 
 
-                    Package (0x35)
+                    Package (0x04)
                     {
-                        "CPRH_SW_CONTROLLER_SETTING", 
-                        One, 
-                        "APC1", 
-                        0x17DB0000, 
-                        0x4000, 
-                        Zero, 
-                        0x14, 
-                        0x0F, 
-                        0x0E, 
-                        0x09, 
-                        One, 
-                        0x0E, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        0x00017700, 
-                        0x0190, 
-                        0x04, 
-                        0x04, 
+                        "ACPI\\VEN_QCOM&DEV_02B1", 
+                        0x16, 
                         0x05, 
-                        Zero, 
-                        0x06, 
-                        0x0A, 
-                        One, 
-                        One, 
-                        Zero, 
-                        Zero, 
+                        Package (0x05)
+                        {
+                            0x06, 
+                            0x07, 
+                            0x08, 
+                            0x09, 
+                            0x0A
+                        }
+                    }, 
+
+                    Package (0x04)
+                    {
+                        "ACPI\\VEN_QCOM&DEV_02B2", 
                         0x17, 
-                        0x4B00, 
-                        Zero, 
-                        0x04, 
-                        One, 
-                        0x04, 
-                        One, 
-                        Zero, 
-                        Zero, 
-                        "", 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        0x17830800, 
-                        0x0400, 
-                        One, 
-                        One, 
-                        Zero, 
-                        One, 
-                        One, 
-                        One, 
-                        Package (0x07)
+                        0x15, 
+                        Package (0x15)
                         {
-                            "CPRH_SW_THREAD_SETTING", 
                             Zero, 
-                            "Gold", 
-                            0x02, 
+                            One, 
                             0x02, 
-                            Zero, 
-                            0x02
+                            0x03, 
+                            0x04, 
+                            0x05, 
+                            0x06, 
+                            0x07, 
+                            0x08, 
+                            0x09, 
+                            0x0A, 
+                            0x0B, 
+                            0x0C, 
+                            0x0D, 
+                            0x0E, 
+                            0x0F, 
+                            0x10, 
+                            0x11, 
+                            0x12, 
+                            0x13, 
+                            0x14
                         }
                     }
                 }, 
 
-                Package (0x05)
+                Package (0x09)
                 {
-                    "CPRH_CHIP_INFO", 
-                    0x0141, 
-                    0x02, 
-                    Package (0x36)
+                    0x08, 
+                    Package (0x04)
                     {
-                        "CPRH_SW_CONTROLLER_SETTING", 
-                        Zero, 
-                        "APC0", 
-                        0x17DC0000, 
-                        0x4000, 
-                        Zero, 
-                        0x14, 
-                        0x0F, 
-                        0x0C, 
-                        0x0B, 
-                        One, 
-                        0x08, 
-                        0xF0, 
-                        Zero, 
-                        Zero, 
-                        0x00017700, 
-                        0x0190, 
-                        0x04, 
-                        0x04, 
-                        0x05, 
-                        Zero, 
-                        One, 
-                        0x05, 
-                        One, 
-                        One, 
-                        One, 
-                        One, 
-                        0x17, 
-                        0x4B00, 
+                        "SYS_THERM1", 
+                        "ACPI\\VEN_QCOM&DEV_0299", 
                         Zero, 
-                        0x04, 
-                        One, 
-                        0x04, 
+                        Zero
+                    }, 
+
+                    Package (0x04)
+                    {
+                        "SYS_THERM2", 
+                        "ACPI\\VEN_QCOM&DEV_029A", 
                         One, 
-                        Zero, 
-                        Zero, 
-                        "", 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        0x17840800, 
-                        0x0400, 
-                        One, 
-                        One, 
-                        Zero, 
-                        One, 
-                        One, 
-                        One, 
-                        Package (0x07)
-                        {
-                            "CPRH_SW_THREAD_SETTING", 
-                            Zero, 
-                            "L3", 
-                            0x02, 
-                            0x02, 
-                            Zero, 
-                            Zero
-                        }, 
+                        Zero
+                    }, 
 
-                        Package (0x07)
-                        {
-                            "CPRH_SW_THREAD_SETTING", 
-                            One, 
-                            "Silver", 
-                            0x02, 
-                            0x02, 
-                            Zero, 
-                            Zero
-                        }
+                    Package (0x04)
+                    {
+                        "PA_THERM", 
+                        "ACPI\\VEN_QCOM&DEV_029B", 
+                        0x02, 
+                        Zero
                     }, 
 
-                    Package (0x35)
+                    Package (0x04)
                     {
-                        "CPRH_SW_CONTROLLER_SETTING", 
-                        One, 
-                        "APC1", 
-                        0x17DB0000, 
-                        0x4000, 
-                        Zero, 
-                        0x14, 
-                        0x0F, 
-                        0x0E, 
-                        0x09, 
-                        One, 
-                        0x0E, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        0x00017700, 
-                        0x0190, 
-                        0x04, 
+                        "PA_THERM1", 
+                        "ACPI\\VEN_QCOM&DEV_029C", 
+                        0x03, 
+                        Zero
+                    }, 
+
+                    Package (0x04)
+                    {
+                        "SYS_THERM3", 
+                        "ACPI\\VEN_QCOM&DEV_029D", 
                         0x04, 
+                        Zero
+                    }, 
+
+                    Package (0x04)
+                    {
+                        "PMIC_THERM", 
+                        "ACPI\\VEN_QCOM&DEV_029E", 
                         0x05, 
-                        Zero, 
+                        Zero
+                    }, 
+
+                    Package (0x04)
+                    {
+                        "BAT_THERM", 
+                        "ACPI\\VEN_QCOM&DEV_029F", 
                         0x06, 
-                        0x0A, 
-                        One, 
-                        One, 
-                        Zero, 
-                        Zero, 
-                        0x17, 
-                        0x4B00, 
-                        Zero, 
-                        0x04, 
-                        One, 
-                        0x04, 
-                        One, 
-                        Zero, 
-                        Zero, 
-                        "", 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        0x17830800, 
-                        0x0400, 
-                        One, 
-                        One, 
-                        Zero, 
-                        One, 
-                        One, 
-                        One, 
-                        Package (0x07)
-                        {
-                            "CPRH_SW_THREAD_SETTING", 
-                            Zero, 
-                            "Gold", 
-                            0x02, 
-                            0x02, 
-                            Zero, 
-                            0x02
-                        }
+                        Zero
+                    }, 
+
+                    Package (0x04)
+                    {
+                        "RF_THERM", 
+                        "ACPI\\VEN_QCOM&DEV_02A0", 
+                        0x07, 
+                        Zero
                     }
                 }, 
 
-                Package (0x05)
+                Package (0x02)
                 {
-                    "CPRH_CHIP_INFO", 
-                    0x0155, 
                     One, 
-                    Package (0x36)
+                    Package (0x05)
                     {
-                        "CPRH_SW_CONTROLLER_SETTING", 
-                        Zero, 
-                        "APC0", 
-                        0x17DC0000, 
-                        0x4000, 
-                        Zero, 
-                        0x14, 
-                        0x0F, 
-                        0x0C, 
-                        0x0B, 
-                        One, 
-                        0x08, 
-                        0xF0, 
-                        Zero, 
-                        Zero, 
-                        0x00017700, 
-                        0x0190, 
-                        0x04, 
-                        0x04, 
-                        0x05, 
-                        Zero, 
-                        One, 
-                        0x05, 
-                        One, 
-                        One, 
-                        One, 
-                        One, 
-                        0x17, 
-                        0x4B00, 
-                        Zero, 
-                        0x04, 
-                        One, 
-                        0x04, 
-                        One, 
-                        Zero, 
-                        Zero, 
-                        "", 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        0x17840800, 
-                        0x0400, 
-                        One, 
-                        One, 
-                        Zero, 
-                        One, 
-                        One, 
-                        One, 
-                        Package (0x07)
-                        {
-                            "CPRH_SW_THREAD_SETTING", 
-                            Zero, 
-                            "Silver", 
-                            0x02, 
-                            0x02, 
-                            Zero, 
-                            Zero
-                        }, 
+                        0x02, 
+                        0x0ADC, 
+                        0x0B0E, 
+                        0x02, 
+                        One
+                    }
+                }, 
 
-                        Package (0x07)
-                        {
-                            "CPRH_SW_THREAD_SETTING", 
-                            One, 
-                            "L3", 
-                            0x02, 
-                            0x02, 
-                            Zero, 
-                            Zero
-                        }
+                Package (0x05)
+                {
+                    0x04, 
+                    Package (0x03)
+                    {
+                        "cpuv_restriction_cold", 
+                        One, 
+                        Zero
                     }, 
 
-                    Package (0x35)
+                    Package (0x03)
                     {
-                        "CPRH_SW_CONTROLLER_SETTING", 
-                        One, 
-                        "APC1", 
-                        0x17DB0000, 
-                        0x4000, 
-                        Zero, 
-                        0x14, 
-                        0x0F, 
-                        0x0E, 
-                        0x09, 
-                        One, 
-                        0x0E, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        0x00017700, 
-                        0x0190, 
-                        0x04, 
-                        0x04, 
-                        0x05, 
-                        Zero, 
-                        0x06, 
-                        0x0A, 
-                        One, 
-                        One, 
-                        Zero, 
-                        Zero, 
-                        0x17, 
-                        0x4B00, 
-                        Zero, 
-                        0x04, 
-                        One, 
-                        0x04, 
-                        One, 
-                        Zero, 
-                        Zero, 
-                        "", 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        0x17830800, 
-                        0x0400, 
-                        One, 
-                        One, 
-                        Zero, 
+                        "cpuv_restriction_cold", 
                         One, 
+                        One
+                    }, 
+
+                    Package (0x03)
+                    {
+                        "cpuv_restriction_cold", 
                         One, 
+                        0x43
+                    }, 
+
+                    Package (0x03)
+                    {
+                        "cpuv_restriction_cold", 
                         One, 
-                        Package (0x07)
-                        {
-                            "CPRH_SW_THREAD_SETTING", 
-                            Zero, 
-                            "Gold", 
-                            0x02, 
-                            0x02, 
-                            Zero, 
-                            0x02
-                        }
+                        0x53
                     }
                 }, 
 
-                Package (0x05)
+                Package (0x01)
                 {
-                    "CPRH_CHIP_INFO", 
-                    0x0155, 
-                    0x02, 
-                    Package (0x36)
+                    Zero
+                }, 
+
+                Package (0x08)
+                {
+                    0x07, 
+                    Package (0x03)
                     {
-                        "CPRH_SW_CONTROLLER_SETTING", 
-                        Zero, 
-                        "APC0", 
-                        0x17DC0000, 
-                        0x4000, 
-                        Zero, 
-                        0x14, 
-                        0x0F, 
-                        0x0C, 
-                        0x0B, 
-                        One, 
-                        0x08, 
-                        0xF0, 
-                        Zero, 
-                        Zero, 
-                        0x00017700, 
-                        0x0190, 
-                        0x04, 
-                        0x04, 
-                        0x05, 
-                        Zero, 
-                        One, 
-                        0x05, 
-                        One, 
-                        One, 
-                        One, 
-                        One, 
-                        0x17, 
-                        0x4B00, 
-                        Zero, 
-                        0x04, 
-                        One, 
-                        0x04, 
-                        One, 
-                        Zero, 
-                        Zero, 
-                        "", 
-                        Zero, 
-                        Zero, 
-                        Zero, 
                         Zero, 
                         Zero, 
-                        Zero, 
-                        Zero, 
-                        0x17840800, 
-                        0x0400, 
-                        One, 
-                        One, 
-                        Zero, 
-                        One, 
-                        One, 
+                        Zero
+                    }, 
+
+                    Package (0x03)
+                    {
                         One, 
-                        Package (0x07)
-                        {
-                            "CPRH_SW_THREAD_SETTING", 
-                            Zero, 
-                            "Silver", 
-                            0x02, 
-                            0x02, 
-                            Zero, 
-                            Zero
-                        }, 
+                        0x03, 
+                        Zero
+                    }, 
 
-                        Package (0x07)
-                        {
-                            "CPRH_SW_THREAD_SETTING", 
-                            One, 
-                            "L3", 
-                            0x02, 
-                            0x02, 
-                            Zero, 
-                            Zero
-                        }
+                    Package (0x03)
+                    {
+                        0x03, 
+                        0x02, 
+                        Zero
                     }, 
 
-                    Package (0x35)
+                    Package (0x03)
                     {
-                        "CPRH_SW_CONTROLLER_SETTING", 
-                        One, 
-                        "APC1", 
-                        0x17DB0000, 
-                        0x4000, 
-                        Zero, 
-                        0x14, 
-                        0x0F, 
-                        0x0E, 
-                        0x09, 
-                        One, 
-                        0x0E, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        0x00017700, 
-                        0x0190, 
-                        0x04, 
                         0x04, 
-                        0x05, 
-                        Zero, 
+                        0x02, 
+                        One
+                    }, 
+
+                    Package (0x03)
+                    {
                         0x06, 
-                        0x0A, 
-                        One, 
-                        One, 
-                        Zero, 
-                        Zero, 
-                        0x17, 
-                        0x4B00, 
-                        Zero, 
-                        0x04, 
-                        One, 
+                        0x02, 
+                        0x02
+                    }, 
+
+                    Package (0x03)
+                    {
+                        0x08, 
+                        0x02, 
+                        0x03
+                    }, 
+
+                    Package (0x03)
+                    {
+                        0x02, 
                         0x04, 
-                        One, 
-                        Zero, 
-                        Zero, 
-                        "", 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        0x17830800, 
-                        0x0400, 
-                        One, 
-                        One, 
-                        Zero, 
-                        One, 
-                        One, 
-                        One, 
-                        Package (0x07)
-                        {
-                            "CPRH_SW_THREAD_SETTING", 
-                            Zero, 
-                            "Gold", 
-                            0x02, 
-                            0x02, 
-                            Zero, 
-                            0x02
-                        }
+                        Zero
                     }
                 }
             })
@@ -5853,796 +4915,368 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003)
 
         Scope (PEP0)
         {
-            Name (NDCV, Package (0x05)
+            Method (APMD, 0, NotSerialized)
             {
-                Package (0x08)
+                Return (APCC) /* \_SB_.PEP0.APCC */
+            }
+
+            Name (APCC, Package (0x02)
+            {
+                Package (0x1A)
                 {
-                    "CHIP_INFO", 
-                    0x0141, 
-                    One, 
-                    Zero, 
-                    0x02, 
-                    Package (0x06)
+                    "DEVICE", 
+                    "\\_SB.ADSP.SLM1.ADCM.AUDD", 
+                    Package (0x05)
                     {
-                        "BIG", 
-                        0x04, 
-                        "apcs_gold_sysleaf_clk", 
-                        Package (0x03)
-                        {
-                            0x012C, 
-                            0x040D, 
-                            0x0626
-                        }, 
-
-                        0x03, 
+                        "COMPONENT", 
+                        Zero, 
                         Package (0x03)
                         {
+                            "FSTATE", 
                             Zero, 
-                            0x09, 
-                            0x10
-                        }
-                    }, 
+                            Package (0x02)
+                            {
+                                "PMICVREGVOTE", 
+                                Package (0x03)
+                                {
+                                    "PPP_RESOURCE_ID_CXO_BUFFERS_BBCLK2_A", 
+                                    0x06, 
+                                    One
+                                }
+                            }
+                        }, 
 
-                    Package (0x06)
-                    {
-                        "LITTLE", 
-                        0x04, 
-                        "apcs_silver_sysleaf_clk", 
                         Package (0x03)
                         {
-                            0x012C, 
-                            0x04BA, 
-                            0x063A
+                            "FSTATE", 
+                            One, 
+                            Package (0x02)
+                            {
+                                "PMICVREGVOTE", 
+                                Package (0x03)
+                                {
+                                    "PPP_RESOURCE_ID_CXO_BUFFERS_BBCLK2_A", 
+                                    0x06, 
+                                    Zero
+                                }
+                            }
                         }, 
 
-                        0x03, 
-                        Package (0x03)
+                        Package (0x06)
                         {
+                            "PSTATE_SET", 
                             Zero, 
-                            0x0B, 
-                            0x10
+                            Package (0x03)
+                            {
+                                "PSTATE", 
+                                Zero, 
+                                Package (0x02)
+                                {
+                                    "PMICVREGVOTE", 
+                                    Package (0x06)
+                                    {
+                                        "PPP_RESOURCE_ID_SMPS4_A", 
+                                        0x02, 
+                                        0x001B7740, 
+                                        One, 
+                                        Zero, 
+                                        Zero
+                                    }
+                                }
+                            }, 
+
+                            Package (0x03)
+                            {
+                                "PSTATE", 
+                                One, 
+                                Package (0x02)
+                                {
+                                    "PMICVREGVOTE", 
+                                    Package (0x06)
+                                    {
+                                        "PPP_RESOURCE_ID_SMPS4_A", 
+                                        0x02, 
+                                        0x001B7740, 
+                                        Zero, 
+                                        Zero, 
+                                        Zero
+                                    }
+                                }
+                            }, 
+
+                            Package (0x02)
+                            {
+                                "PREPARE_PSTATE", 
+                                Zero
+                            }, 
+
+                            Package (0x02)
+                            {
+                                "ABANDON_PSTATE", 
+                                One
+                            }
                         }
                     }, 
 
-                    Package (0x02)
-                    {
-                        "L3_CACHE", 
-                        "apcs_l3_sysleaf_clk"
-                    }
-                }, 
-
-                Package (0x08)
-                {
-                    "CHIP_INFO", 
-                    0x0141, 
-                    0x02, 
-                    Zero, 
-                    0x02, 
-                    Package (0x06)
+                    Package (0x04)
                     {
-                        "BIG", 
-                        0x04, 
-                        "apcs_gold_sysleaf_clk", 
-                        Package (0x03)
+                        "COMPONENT", 
+                        One, 
+                        Package (0x02)
                         {
-                            0x033A, 
-                            0x0553, 
-                            0x05B4
+                            "FSTATE", 
+                            Zero
                         }, 
 
-                        0x03, 
-                        Package (0x03)
+                        Package (0x02)
                         {
-                            Zero, 
-                            0x07, 
-                            0x0F
+                            "FSTATE", 
+                            One
                         }
                     }, 
 
-                    Package (0x06)
+                    Package (0x04)
                     {
-                        "LITTLE", 
-                        0x04, 
-                        "apcs_silver_sysleaf_clk", 
-                        Package (0x03)
+                        "COMPONENT", 
+                        0x02, 
+                        Package (0x02)
                         {
-                            0x012C, 
-                            0x04CD, 
-                            0x052D
+                            "FSTATE", 
+                            Zero
                         }, 
 
-                        0x03, 
-                        Package (0x03)
+                        Package (0x02)
                         {
-                            Zero, 
-                            0x0B, 
-                            0x0F
+                            "FSTATE", 
+                            One
                         }
                     }, 
 
-                    Package (0x02)
-                    {
-                        "L3_CACHE", 
-                        "apcs_l3_sysleaf_clk"
-                    }
-                }, 
-
-                Package (0x08)
-                {
-                    "CHIP_INFO", 
-                    0x0155, 
-                    One, 
-                    Zero, 
-                    0x02, 
-                    Package (0x06)
+                    Package (0x04)
                     {
-                        "BIG", 
-                        0x04, 
-                        "apcs_gold_sysleaf_clk", 
-                        Package (0x03)
+                        "COMPONENT", 
+                        0x03, 
+                        Package (0x02)
                         {
-                            0x012C, 
-                            0x040D, 
-                            0x0626
+                            "FSTATE", 
+                            Zero
                         }, 
 
-                        0x03, 
-                        Package (0x03)
+                        Package (0x02)
                         {
-                            Zero, 
-                            0x09, 
-                            0x10
+                            "FSTATE", 
+                            One
                         }
                     }, 
 
-                    Package (0x06)
+                    Package (0x04)
                     {
-                        "LITTLE", 
+                        "COMPONENT", 
                         0x04, 
-                        "apcs_silver_sysleaf_clk", 
-                        Package (0x03)
+                        Package (0x02)
                         {
-                            0x012C, 
-                            0x04BA, 
-                            0x063A
+                            "FSTATE", 
+                            Zero
                         }, 
 
-                        0x03, 
-                        Package (0x03)
+                        Package (0x02)
                         {
-                            Zero, 
-                            0x0B, 
-                            0x10
+                            "FSTATE", 
+                            One
                         }
                     }, 
 
-                    Package (0x02)
-                    {
-                        "L3_CACHE", 
-                        "apcs_l3_sysleaf_clk"
-                    }
-                }, 
-
-                Package (0x08)
-                {
-                    "CHIP_INFO", 
-                    0x0155, 
-                    0x02, 
-                    Zero, 
-                    0x02, 
-                    Package (0x06)
+                    Package (0x04)
                     {
-                        "BIG", 
-                        0x04, 
-                        "apcs_gold_sysleaf_clk", 
-                        Package (0x03)
+                        "COMPONENT", 
+                        0x05, 
+                        Package (0x02)
                         {
-                            0x033A, 
-                            0x0553, 
-                            0x05B4
+                            "FSTATE", 
+                            Zero
                         }, 
 
-                        0x03, 
-                        Package (0x03)
+                        Package (0x02)
                         {
-                            Zero, 
-                            0x07, 
-                            0x0F
+                            "FSTATE", 
+                            One
                         }
                     }, 
 
-                    Package (0x06)
+                    Package (0x04)
                     {
-                        "LITTLE", 
-                        0x04, 
-                        "apcs_silver_sysleaf_clk", 
-                        Package (0x03)
+                        "COMPONENT", 
+                        0x06, 
+                        Package (0x02)
                         {
-                            0x012C, 
-                            0x04CD, 
-                            0x052D
+                            "FSTATE", 
+                            Zero
                         }, 
 
-                        0x03, 
-                        Package (0x03)
+                        Package (0x02)
                         {
-                            Zero, 
-                            0x0B, 
-                            0x0F
+                            "FSTATE", 
+                            One
                         }
                     }, 
 
-                    Package (0x02)
-                    {
-                        "L3_CACHE", 
-                        "apcs_l3_sysleaf_clk"
-                    }
-                }, 
-
-                Package (0x08)
-                {
-                    "CHIP_INFO", 
-                    0x015C, 
-                    0x02, 
-                    Zero, 
-                    0x02, 
-                    Package (0x06)
+                    Package (0x04)
                     {
-                        "BIG", 
-                        0x04, 
-                        "apcs_gold_sysleaf_clk", 
-                        Package (0x03)
+                        "COMPONENT", 
+                        0x07, 
+                        Package (0x02)
                         {
-                            0x033A, 
-                            0x0553, 
-                            0x05B4
+                            "FSTATE", 
+                            Zero
                         }, 
 
-                        0x03, 
-                        Package (0x03)
+                        Package (0x02)
                         {
-                            Zero, 
-                            0x07, 
-                            0x0F
+                            "FSTATE", 
+                            One
                         }
                     }, 
 
-                    Package (0x06)
+                    Package (0x04)
                     {
-                        "LITTLE", 
-                        0x04, 
-                        "apcs_silver_sysleaf_clk", 
-                        Package (0x03)
+                        "COMPONENT", 
+                        0x08, 
+                        Package (0x02)
                         {
-                            0x012C, 
-                            0x04CD, 
-                            0x052D
+                            "FSTATE", 
+                            Zero
                         }, 
 
-                        0x03, 
-                        Package (0x03)
+                        Package (0x02)
                         {
-                            Zero, 
-                            0x0B, 
-                            0x0F
+                            "FSTATE", 
+                            One
                         }
                     }, 
 
-                    Package (0x02)
-                    {
-                        "L3_CACHE", 
-                        "apcs_l3_sysleaf_clk"
-                    }
-                }
-            })
-            Method (LDCV, 0, NotSerialized)
-            {
-                Return (NDCV) /* \_SB_.PEP0.NDCV */
-            }
-        }
-
-        Scope (PEP0)
-        {
-            Method (CTSN, 0, NotSerialized)
-            {
-                Return (THSD) /* \_SB_.PEP0.THSD */
-            }
-
-            Method (PEPH, 0, NotSerialized)
-            {
-                Return (Package (0x01)
-                {
-                    "ACPI\\VEN_QCOM&DEV_0237"
-                })
-            }
-
-            Method (BCLH, 0, NotSerialized)
-            {
-                Return (Package (0x01)
-                {
-                    "ACPI\\VEN_QCOM&DEV_0294"
-                })
-            }
-
-            Name (THSD, Package (0x07)
-            {
-                Package (0x16)
-                {
-                    0x15, 
-                    Package (0x02)
+                    Package (0x04)
                     {
-                        "ACPI\\VEN_QCOM&DEV_027F", 
-                        Zero
-                    }, 
+                        "COMPONENT", 
+                        0x09, 
+                        Package (0x02)
+                        {
+                            "FSTATE", 
+                            Zero
+                        }, 
 
-                    Package (0x02)
-                    {
-                        "ACPI\\VEN_QCOM&DEV_0280", 
-                        One
+                        Package (0x02)
+                        {
+                            "FSTATE", 
+                            One
+                        }
                     }, 
 
-                    Package (0x02)
+                    Package (0x04)
                     {
-                        "ACPI\\VEN_QCOM&DEV_0281", 
-                        0x02
-                    }, 
+                        "COMPONENT", 
+                        0x0A, 
+                        Package (0x02)
+                        {
+                            "FSTATE", 
+                            Zero
+                        }, 
 
-                    Package (0x02)
-                    {
-                        "ACPI\\VEN_QCOM&DEV_0282", 
-                        0x03
+                        Package (0x02)
+                        {
+                            "FSTATE", 
+                            One
+                        }
                     }, 
 
-                    Package (0x02)
+                    Package (0x04)
                     {
-                        "ACPI\\VEN_QCOM&DEV_0283", 
-                        0x04
-                    }, 
+                        "COMPONENT", 
+                        0x0B, 
+                        Package (0x02)
+                        {
+                            "FSTATE", 
+                            Zero
+                        }, 
 
-                    Package (0x02)
-                    {
-                        "ACPI\\VEN_QCOM&DEV_0284", 
-                        0x05
+                        Package (0x02)
+                        {
+                            "FSTATE", 
+                            One
+                        }
                     }, 
 
-                    Package (0x02)
+                    Package (0x04)
                     {
-                        "ACPI\\VEN_QCOM&DEV_0285", 
-                        0x06
-                    }, 
+                        "COMPONENT", 
+                        0x0C, 
+                        Package (0x02)
+                        {
+                            "FSTATE", 
+                            Zero
+                        }, 
 
-                    Package (0x02)
-                    {
-                        "ACPI\\VEN_QCOM&DEV_0286", 
-                        0x07
+                        Package (0x02)
+                        {
+                            "FSTATE", 
+                            One
+                        }
                     }, 
 
-                    Package (0x02)
+                    Package (0x04)
                     {
-                        "ACPI\\VEN_QCOM&DEV_0287", 
-                        0x08
-                    }, 
+                        "COMPONENT", 
+                        0x0D, 
+                        Package (0x02)
+                        {
+                            "FSTATE", 
+                            Zero
+                        }, 
 
-                    Package (0x02)
-                    {
-                        "ACPI\\VEN_QCOM&DEV_0288", 
-                        0x09
+                        Package (0x02)
+                        {
+                            "FSTATE", 
+                            One
+                        }
                     }, 
 
-                    Package (0x02)
+                    Package (0x04)
                     {
-                        "ACPI\\VEN_QCOM&DEV_0289", 
-                        0x0A
-                    }, 
+                        "COMPONENT", 
+                        0x0E, 
+                        Package (0x02)
+                        {
+                            "FSTATE", 
+                            Zero
+                        }, 
 
-                    Package (0x02)
-                    {
-                        "ACPI\\VEN_QCOM&DEV_02AB", 
-                        0x0B
+                        Package (0x02)
+                        {
+                            "FSTATE", 
+                            One
+                        }
                     }, 
 
-                    Package (0x02)
+                    Package (0x04)
                     {
-                        "ACPI\\VEN_QCOM&DEV_02AC", 
-                        0x0C
-                    }, 
+                        "COMPONENT", 
+                        0x0F, 
+                        Package (0x02)
+                        {
+                            "FSTATE", 
+                            Zero
+                        }, 
 
-                    Package (0x02)
-                    {
-                        "ACPI\\VEN_QCOM&DEV_02AD", 
-                        0x0D
+                        Package (0x02)
+                        {
+                            "FSTATE", 
+                            One
+                        }
                     }, 
 
-                    Package (0x02)
-                    {
-                        "ACPI\\VEN_QCOM&DEV_02AE", 
-                        0x0E
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "ACPI\\VEN_QCOM&DEV_02AF", 
-                        0x0F
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "ACPI\\VEN_QCOM&DEV_02C8", 
-                        0x10
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "ACPI\\VEN_QCOM&DEV_02C9", 
-                        0x11
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "ACPI\\VEN_QCOM&DEV_02CA", 
-                        0x12
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "ACPI\\VEN_QCOM&DEV_02CB", 
-                        0x13
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "ACPI\\VEN_QCOM&DEV_02CC", 
-                        0x14
-                    }
-                }, 
-
-                Package (0x04)
-                {
-                    0x03, 
-                    Package (0x04)
-                    {
-                        "ACPI\\VEN_QCOM&DEV_02B0", 
-                        0x15, 
-                        0x05, 
-                        Package (0x05)
-                        {
-                            One, 
-                            0x02, 
-                            0x03, 
-                            0x04, 
-                            0x05
-                        }
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "ACPI\\VEN_QCOM&DEV_02B1", 
-                        0x16, 
-                        0x05, 
-                        Package (0x05)
-                        {
-                            0x06, 
-                            0x07, 
-                            0x08, 
-                            0x09, 
-                            0x0A
-                        }
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "ACPI\\VEN_QCOM&DEV_02B2", 
-                        0x17, 
-                        0x15, 
-                        Package (0x15)
-                        {
-                            Zero, 
-                            One, 
-                            0x02, 
-                            0x03, 
-                            0x04, 
-                            0x05, 
-                            0x06, 
-                            0x07, 
-                            0x08, 
-                            0x09, 
-                            0x0A, 
-                            0x0B, 
-                            0x0C, 
-                            0x0D, 
-                            0x0E, 
-                            0x0F, 
-                            0x10, 
-                            0x11, 
-                            0x12, 
-                            0x13, 
-                            0x14
-                        }
-                    }
-                }, 
-
-                Package (0x09)
-                {
-                    0x08, 
-                    Package (0x04)
-                    {
-                        "SYS_THERM1", 
-                        "ACPI\\VEN_QCOM&DEV_0299", 
-                        Zero, 
-                        Zero
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "SYS_THERM2", 
-                        "ACPI\\VEN_QCOM&DEV_029A", 
-                        One, 
-                        Zero
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "PA_THERM", 
-                        "ACPI\\VEN_QCOM&DEV_029B", 
-                        0x02, 
-                        Zero
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "PA_THERM1", 
-                        "ACPI\\VEN_QCOM&DEV_029C", 
-                        0x03, 
-                        Zero
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "SYS_THERM3", 
-                        "ACPI\\VEN_QCOM&DEV_029D", 
-                        0x04, 
-                        Zero
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "PMIC_THERM", 
-                        "ACPI\\VEN_QCOM&DEV_029E", 
-                        0x05, 
-                        Zero
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "BAT_THERM", 
-                        "ACPI\\VEN_QCOM&DEV_029F", 
-                        0x06, 
-                        Zero
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "RF_THERM", 
-                        "ACPI\\VEN_QCOM&DEV_02A0", 
-                        0x07, 
-                        Zero
-                    }
-                }, 
-
-                Package (0x02)
-                {
-                    One, 
-                    Package (0x05)
-                    {
-                        0x02, 
-                        0x0ADC, 
-                        0x0B0E, 
-                        0x02, 
-                        One
-                    }
-                }, 
-
-                Package (0x05)
-                {
-                    0x04, 
-                    Package (0x03)
-                    {
-                        "cpuv_restriction_cold", 
-                        One, 
-                        Zero
-                    }, 
-
-                    Package (0x03)
-                    {
-                        "cpuv_restriction_cold", 
-                        One, 
-                        One
-                    }, 
-
-                    Package (0x03)
-                    {
-                        "cpuv_restriction_cold", 
-                        One, 
-                        0x43
-                    }, 
-
-                    Package (0x03)
-                    {
-                        "cpuv_restriction_cold", 
-                        One, 
-                        0x53
-                    }
-                }, 
-
-                Package (0x01)
-                {
-                    Zero
-                }, 
-
-                Package (0x08)
-                {
-                    0x07, 
-                    Package (0x03)
-                    {
-                        Zero, 
-                        Zero, 
-                        Zero
-                    }, 
-
-                    Package (0x03)
-                    {
-                        One, 
-                        0x03, 
-                        Zero
-                    }, 
-
-                    Package (0x03)
-                    {
-                        0x03, 
-                        0x02, 
-                        Zero
-                    }, 
-
-                    Package (0x03)
-                    {
-                        0x04, 
-                        0x02, 
-                        One
-                    }, 
-
-                    Package (0x03)
-                    {
-                        0x06, 
-                        0x02, 
-                        0x02
-                    }, 
-
-                    Package (0x03)
-                    {
-                        0x08, 
-                        0x02, 
-                        0x03
-                    }, 
-
-                    Package (0x03)
-                    {
-                        0x02, 
-                        0x04, 
-                        Zero
-                    }
-                }
-            })
-        }
-
-        Scope (PEP0)
-        {
-            Method (APMD, 0, NotSerialized)
-            {
-                Return (APCC) /* \_SB_.PEP0.APCC */
-            }
-
-            Name (APCC, Package (0x02)
-            {
-                Package (0x1A)
-                {
-                    "DEVICE", 
-                    "\\_SB.ADSP.SLM1.ADCM.AUDD", 
-                    Package (0x05)
-                    {
-                        "COMPONENT", 
-                        Zero, 
-                        Package (0x03)
-                        {
-                            "FSTATE", 
-                            Zero, 
-                            Package (0x02)
-                            {
-                                "PMICVREGVOTE", 
-                                Package (0x03)
-                                {
-                                    "PPP_RESOURCE_ID_CXO_BUFFERS_BBCLK2_A", 
-                                    0x06, 
-                                    One
-                                }
-                            }
-                        }, 
-
-                        Package (0x03)
-                        {
-                            "FSTATE", 
-                            One, 
-                            Package (0x02)
-                            {
-                                "PMICVREGVOTE", 
-                                Package (0x03)
-                                {
-                                    "PPP_RESOURCE_ID_CXO_BUFFERS_BBCLK2_A", 
-                                    0x06, 
-                                    Zero
-                                }
-                            }
-                        }, 
-
-                        Package (0x06)
-                        {
-                            "PSTATE_SET", 
-                            Zero, 
-                            Package (0x03)
-                            {
-                                "PSTATE", 
-                                Zero, 
-                                Package (0x02)
-                                {
-                                    "PMICVREGVOTE", 
-                                    Package (0x06)
-                                    {
-                                        "PPP_RESOURCE_ID_SMPS4_A", 
-                                        0x02, 
-                                        0x001B7740, 
-                                        One, 
-                                        Zero, 
-                                        Zero
-                                    }
-                                }
-                            }, 
-
-                            Package (0x03)
-                            {
-                                "PSTATE", 
-                                One, 
-                                Package (0x02)
-                                {
-                                    "PMICVREGVOTE", 
-                                    Package (0x06)
-                                    {
-                                        "PPP_RESOURCE_ID_SMPS4_A", 
-                                        0x02, 
-                                        0x001B7740, 
-                                        Zero, 
-                                        Zero, 
-                                        Zero
-                                    }
-                                }
-                            }, 
-
-                            Package (0x02)
-                            {
-                                "PREPARE_PSTATE", 
-                                Zero
-                            }, 
-
-                            Package (0x02)
-                            {
-                                "ABANDON_PSTATE", 
-                                One
-                            }
-                        }
-                    }, 
-
-                    Package (0x04)
+                    Package (0x04)
                     {
                         "COMPONENT", 
-                        One
+                        0x10
                         Package (0x02)
                         {
                             "FSTATE", 
@@ -6659,7 +5293,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003)
                     Package (0x04)
                     {
                         "COMPONENT", 
-                        0x02
+                        0x11
                         Package (0x02)
                         {
                             "FSTATE", 
@@ -6676,7 +5310,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003)
                     Package (0x04)
                     {
                         "COMPONENT", 
-                        0x03
+                        0x12
                         Package (0x02)
                         {
                             "FSTATE", 
@@ -6693,7 +5327,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003)
                     Package (0x04)
                     {
                         "COMPONENT", 
-                        0x04
+                        0x13
                         Package (0x02)
                         {
                             "FSTATE", 
@@ -6710,7 +5344,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003)
                     Package (0x04)
                     {
                         "COMPONENT", 
-                        0x05
+                        0x14
                         Package (0x02)
                         {
                             "FSTATE", 
@@ -6727,7 +5361,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003)
                     Package (0x04)
                     {
                         "COMPONENT", 
-                        0x06
+                        0x15
                         Package (0x02)
                         {
                             "FSTATE", 
@@ -6744,7 +5378,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003)
                     Package (0x04)
                     {
                         "COMPONENT", 
-                        0x07
+                        0x16
                         Package (0x02)
                         {
                             "FSTATE", 
@@ -6761,7 +5395,7 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003)
                     Package (0x04)
                     {
                         "COMPONENT", 
-                        0x08
+                        0x17
                         Package (0x02)
                         {
                             "FSTATE", 
@@ -6773,12 +5407,17 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003)
                             "FSTATE", 
                             One
                         }
-                    }, 
+                    }
+                }, 
 
+                Package (0x03)
+                {
+                    "DEVICE", 
+                    "\\_SB.ADSP.SLM1.ADCM.AUDD.MBHC", 
                     Package (0x04)
                     {
                         "COMPONENT", 
-                        0x09
+                        Zero
                         Package (0x02)
                         {
                             "FSTATE", 
@@ -6790,331 +5429,71 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003)
                             "FSTATE", 
                             One
                         }
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "COMPONENT", 
-                        0x0A, 
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            Zero
-                        }, 
+                    }
+                }
+            })
+        }
 
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            One
-                        }
-                    }, 
+        Scope (PEP0)
+        {
+            Method (GPMD, 0, NotSerialized)
+            {
+                Name (LIST, Package (0x0B)
+                {
+                    "METHOD_LIST", 
+                    "DM0G", 
+                    "DM1G", 
+                    "DM2G", 
+                    "DM3G", 
+                    "DM4G", 
+                    "DM5G", 
+                    "DM6G", 
+                    "DM7G", 
+                    "DM8G", 
+                    "DM9G"
+                })
+                Return (LIST) /* \_SB_.PEP0.GPMD.LIST */
+            }
 
-                    Package (0x04)
+            Method (G0MD, 0, NotSerialized)
+            {
+                Name (GPCC, Package (0x01)
+                {
+                    Package (0x03)
                     {
-                        "COMPONENT", 
-                        0x0B
-                        Package (0x02)
+                        "DEVICE", 
+                        "\\_SB.GPU0"
+                        Package (0x0C)
                         {
-                            "FSTATE", 
-                            Zero
-                        }, 
+                            "COMPONENT", 
+                            Zero, 
+                            Package (0x02)
+                            {
+                                "FSTATE", 
+                                Zero
+                            }, 
 
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            One
-                        }
-                    }, 
+                            Package (0x04)
+                            {
+                                "FSTATE", 
+                                One, 
+                                Package (0x12)
+                                {
+                                    "ENTER", 
+                                    Package (0x01)
+                                    {
+                                        "PSTATE_SAVE"
+                                    }, 
 
-                    Package (0x04)
-                    {
-                        "COMPONENT", 
-                        0x0C, 
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            One
-                        }
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "COMPONENT", 
-                        0x0D, 
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            One
-                        }
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "COMPONENT", 
-                        0x0E, 
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            One
-                        }
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "COMPONENT", 
-                        0x0F, 
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            One
-                        }
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "COMPONENT", 
-                        0x10, 
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            One
-                        }
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "COMPONENT", 
-                        0x11, 
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            One
-                        }
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "COMPONENT", 
-                        0x12, 
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            One
-                        }
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "COMPONENT", 
-                        0x13, 
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            One
-                        }
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "COMPONENT", 
-                        0x14, 
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            One
-                        }
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "COMPONENT", 
-                        0x15, 
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            One
-                        }
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "COMPONENT", 
-                        0x16, 
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            One
-                        }
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "COMPONENT", 
-                        0x17, 
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            One
-                        }
-                    }
-                }, 
-
-                Package (0x03)
-                {
-                    "DEVICE", 
-                    "\\_SB.ADSP.SLM1.ADCM.AUDD.MBHC", 
-                    Package (0x04)
-                    {
-                        "COMPONENT", 
-                        Zero, 
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "FSTATE", 
-                            One
-                        }
-                    }
-                }
-            })
-        }
-
-        Scope (PEP0)
-        {
-            Method (GPMD, 0, NotSerialized)
-            {
-                Name (LIST, Package (0x0B)
-                {
-                    "METHOD_LIST", 
-                    "DM0G", 
-                    "DM1G", 
-                    "DM2G", 
-                    "DM3G", 
-                    "DM4G", 
-                    "DM5G", 
-                    "DM6G", 
-                    "DM7G", 
-                    "DM8G", 
-                    "DM9G"
-                })
-                Return (LIST) /* \_SB_.PEP0.GPMD.LIST */
-            }
-
-            Method (G0MD, 0, NotSerialized)
-            {
-                Name (GPCC, Package (0x01)
-                {
-                    Package (0x03)
-                    {
-                        "DEVICE", 
-                        "\\_SB.GPU0", 
-                        Package (0x0C)
-                        {
-                            "COMPONENT", 
-                            Zero, 
-                            Package (0x02)
-                            {
-                                "FSTATE", 
-                                Zero
-                            }, 
-
-                            Package (0x04)
-                            {
-                                "FSTATE", 
-                                One, 
-                                Package (0x12)
-                                {
-                                    "ENTER", 
-                                    Package (0x01)
-                                    {
-                                        "PSTATE_SAVE"
-                                    }, 
-
-                                    Package (0x02)
-                                    {
-                                        "PSTATE_ADJUST", 
-                                        Package (0x02)
-                                        {
-                                            0x03, 
-                                            0x0C
-                                        }
-                                    }, 
+                                    Package (0x02)
+                                    {
+                                        "PSTATE_ADJUST", 
+                                        Package (0x02)
+                                        {
+                                            0x03, 
+                                            0x0C
+                                        }
+                                    }, 
 
                                     Package (0x02)
                                     {
@@ -56282,8332 +54661,5578 @@ DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003)
                     Return (Buffer (One)
                     {
                          0x00                                             // .
-                    })
-                }
-                Else
-                {
-                    Local0 = Arg0
-                }
-
-                If ((Arg1 > 0x1000))
-                {
-                    Local1 = 0x1000
-                }
-                Else
-                {
-                    Local1 = Arg1
-                }
-
-                If (((Local0 + Local1) > SizeOf (Local2)))
-                {
-                    Local1 = (SizeOf (Local2) - Local0)
-                }
-
-                CreateField (Local2, (0x08 * Local0), (0x08 * Local1), RBUF)
-                Return (RBUF) /* \_SB_.GPU0._ROM.RBUF */
-            }
-
-            Method (PIGC, 2, NotSerialized)
-            {
-                Name (RBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                Return (RBUF) /* \_SB_.GPU0.PIGC.RBUF */
-            }
-
-            Method (PPCC, 2, NotSerialized)
-            {
-                Name (RBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                Return (RBUF) /* \_SB_.GPU0.PPCC.RBUF */
-            }
-
-            Method (PGCT, 2, NotSerialized)
-            {
-                Name (RBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                Return (RBUF) /* \_SB_.GPU0.PGCT.RBUF */
-            }
-
-            Method (PLGC, 3, NotSerialized)
-            {
-                Name (TBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                If ((Arg1 >= SizeOf (TBUF)))
-                {
-                    Return (Buffer (One)
-                    {
-                         0x00                                             // .
-                    })
-                }
-                Else
-                {
-                    Local1 = Arg1
-                }
-
-                If ((Arg2 > 0x1000))
-                {
-                    Local2 = 0x1000
-                }
-                Else
-                {
-                    Local2 = Arg2
-                }
-
-                If (((Local1 + Local2) > SizeOf (TBUF)))
-                {
-                    Local2 = (SizeOf (TBUF) - Local1)
-                }
-
-                CreateField (TBUF, (0x08 * Local1), (0x08 * Local2), RBUF)
-                Return (RBUF) /* \_SB_.GPU0.PLGC.RBUF */
-            }
-
-            Method (HSIC, 2, NotSerialized)
-            {
-                Name (RBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                Return (RBUF) /* \_SB_.GPU0.HSIC.RBUF */
-            }
-
-            Method (PGMT, 2, NotSerialized)
-            {
-                Name (TBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                If ((Arg0 >= SizeOf (TBUF)))
-                {
-                    Return (Buffer (One)
-                    {
-                         0x00                                             // .
-                    })
-                }
-                Else
-                {
-                    Local0 = Arg0
-                }
-
-                If ((Arg1 > 0x1000))
-                {
-                    Local1 = 0x1000
-                }
-                Else
-                {
-                    Local1 = Arg1
-                }
-
-                If (((Local0 + Local1) > SizeOf (TBUF)))
-                {
-                    Local1 = (SizeOf (TBUF) - Local0)
-                }
-
-                CreateField (TBUF, (0x08 * Local0), (0x08 * Local1), RBUF)
-                Return (RBUF) /* \_SB_.GPU0.PGMT.RBUF */
-            }
-
-            Method (PWGM, 2, NotSerialized)
-            {
-                Name (TBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                If ((Arg0 >= SizeOf (TBUF)))
-                {
-                    Return (Buffer (One)
-                    {
-                         0x00                                             // .
-                    })
-                }
-                Else
-                {
-                    Local0 = Arg0
-                }
-
-                If ((Arg1 > 0x1000))
-                {
-                    Local1 = 0x1000
-                }
-                Else
-                {
-                    Local1 = Arg1
-                }
-
-                If (((Local0 + Local1) > SizeOf (TBUF)))
-                {
-                    Local1 = (SizeOf (TBUF) - Local0)
-                }
-
-                CreateField (TBUF, (0x08 * Local0), (0x08 * Local1), RBUF)
-                Return (RBUF) /* \_SB_.GPU0.PWGM.RBUF */
-            }
-
-            Method (PGRT, 2, NotSerialized)
-            {
-                Name (RBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                Return (RBUF) /* \_SB_.GPU0.PGRT.RBUF */
-            }
-
-            Method (PBRT, 2, NotSerialized)
-            {
-                Name (RBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                Return (RBUF) /* \_SB_.GPU0.PBRT.RBUF */
-            }
-
-            Method (PBRC, 2, NotSerialized)
-            {
-                Name (RBUF, Buffer (0x02)
-                {
-                     0x00, 0x00                                       // ..
-                })
-                Return (RBUF) /* \_SB_.GPU0.PBRC.RBUF */
-            }
-
-            Method (DITH, 2, NotSerialized)
-            {
-                Name (RBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                Return (RBUF) /* \_SB_.GPU0.DITH.RBUF */
-            }
-
-            Method (BLCP, 1, Serialized)
-            {
-                Name (RBUF, Buffer (0x0100){})
-                Local0 = Zero
-                CreateField (RBUF, (Local0 * 0x08), 0x20, PKHR)
-                Local0 += 0x04
-                CreateField (RBUF, (Local0 * 0x08), 0x08, PKCM)
-                Local0 += One
-                CreateField (RBUF, (Local0 * 0x08), 0x08, PKDS)
-                Local0 += One
-                CreateField (RBUF, (Local0 * 0x08), 0x08, PKUB)
-                Local0 += One
-                CreateField (RBUF, (Local0 * 0x08), 0x08, PKLB)
-                Local0 += One
-                Name (BON, Buffer (0x03)
-                {
-                     0x39, 0x53, 0x24                                 // 9S$
-                })
-                CreateField (RBUF, (Local0 * 0x08), 0x20, PKH2)
-                Local0 += 0x04
-                CreateField (RBUF, (Local0 * 0x08), 0x20, PKP2)
-                PKH2 = SizeOf (BON)
-                PKP2 = BON /* \_SB_.GPU0.BLCP.BON_ */
-                Local0 += SizeOf (BON)
-                CreateDWordField (RBUF, (Local0 * 0x08), EOF)
-                Local1 = (Arg0 * 0x03FF)
-                Local1 /= 0xFF
-                Local2 = (Arg0 * 0x03FF)
-                Local2 /= 0xFF00
-                Local2 &= 0x03
-                PKHR = 0x04
-                PKCM = 0x39
-                PKDS = 0x51
-                PKUB = Local2
-                PKLB = Local1
-                EOF = Zero
-                Return (RBUF) /* \_SB_.GPU0.BLCP.RBUF */
-            }
-
-            Method (ROM2, 3, NotSerialized)
-            {
-                Name (PCFG, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                While (One)
-                {
-                    If (One)
-                    {
-                        Local2 = PCFG /* \_SB_.GPU0.ROM2.PCFG */
-                    }
-
-                    Break
-                }
-
-                If ((Arg0 >= SizeOf (Local2)))
-                {
-                    Return (Buffer (One)
-                    {
-                         0x00                                             // .
-                    })
-                }
-                Else
-                {
-                    Local0 = Arg0
-                }
-
-                If ((Arg1 > 0x1000))
-                {
-                    Local1 = 0x1000
-                }
-                Else
-                {
-                    Local1 = Arg1
-                }
-
-                If (((Local0 + Local1) > SizeOf (Local2)))
-                {
-                    Local1 = (SizeOf (Local2) - Local0)
-                }
-
-                CreateField (Local2, (0x08 * Local0), (0x08 * Local1), RBUF)
-                Return (RBUF) /* \_SB_.GPU0.ROM2.RBUF */
-            }
-
-            Method (IGC2, 2, NotSerialized)
-            {
-                Name (RBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                Return (RBUF) /* \_SB_.GPU0.IGC2.RBUF */
-            }
-
-            Method (PCC2, 2, NotSerialized)
-            {
-                Name (RBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                Return (RBUF) /* \_SB_.GPU0.PCC2.RBUF */
-            }
-
-            Method (GCT2, 2, NotSerialized)
-            {
-                Name (RBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                Return (RBUF) /* \_SB_.GPU0.GCT2.RBUF */
-            }
-
-            Method (LGC2, 3, NotSerialized)
-            {
-                Name (TBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                If ((Arg1 >= SizeOf (TBUF)))
-                {
-                    Return (Buffer (One)
-                    {
-                         0x00                                             // .
-                    })
-                }
-                Else
-                {
-                    Local1 = Arg1
-                }
-
-                If ((Arg2 > 0x1000))
-                {
-                    Local2 = 0x1000
-                }
-                Else
-                {
-                    Local2 = Arg2
-                }
-
-                If (((Local1 + Local2) > SizeOf (TBUF)))
-                {
-                    Local2 = (SizeOf (TBUF) - Local1)
-                }
-
-                CreateField (TBUF, (0x08 * Local1), (0x08 * Local2), RBUF)
-                Return (RBUF) /* \_SB_.GPU0.LGC2.RBUF */
-            }
-
-            Method (HSI2, 2, NotSerialized)
-            {
-                Name (RBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                Return (RBUF) /* \_SB_.GPU0.HSI2.RBUF */
-            }
-
-            Method (GMT2, 2, NotSerialized)
-            {
-                Name (TBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                If ((Arg0 >= SizeOf (TBUF)))
-                {
-                    Return (Buffer (One)
-                    {
-                         0x00                                             // .
-                    })
-                }
-                Else
-                {
-                    Local0 = Arg0
-                }
-
-                If ((Arg1 > 0x1000))
-                {
-                    Local1 = 0x1000
-                }
-                Else
-                {
-                    Local1 = Arg1
-                }
-
-                If (((Local0 + Local1) > SizeOf (TBUF)))
-                {
-                    Local1 = (SizeOf (TBUF) - Local0)
-                }
-
-                CreateField (TBUF, (0x08 * Local0), (0x08 * Local1), RBUF)
-                Return (RBUF) /* \_SB_.GPU0.GMT2.RBUF */
-            }
-
-            Method (WGM2, 2, NotSerialized)
-            {
-                Name (TBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                If ((Arg0 >= SizeOf (TBUF)))
-                {
-                    Return (Buffer (One)
-                    {
-                         0x00                                             // .
-                    })
-                }
-                Else
-                {
-                    Local0 = Arg0
-                }
-
-                If ((Arg1 > 0x1000))
-                {
-                    Local1 = 0x1000
-                }
-                Else
-                {
-                    Local1 = Arg1
-                }
-
-                If (((Local0 + Local1) > SizeOf (TBUF)))
-                {
-                    Local1 = (SizeOf (TBUF) - Local0)
-                }
-
-                CreateField (TBUF, (0x08 * Local0), (0x08 * Local1), RBUF)
-                Return (RBUF) /* \_SB_.GPU0.WGM2.RBUF */
-            }
-
-            Method (GRT2, 2, NotSerialized)
-            {
-                Name (RBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                Return (RBUF) /* \_SB_.GPU0.GRT2.RBUF */
-            }
-
-            Method (BRT2, 2, NotSerialized)
-            {
-                Name (RBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                Return (RBUF) /* \_SB_.GPU0.BRT2.RBUF */
-            }
-
-            Method (DIT2, 2, NotSerialized)
-            {
-                Name (RBUF, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                Return (RBUF) /* \_SB_.GPU0.DIT2.RBUF */
-            }
-
-            Method (BLC2, 1, NotSerialized)
-            {
-                Name (RBUF, Buffer (0x0100){})
-                Return (RBUF) /* \_SB_.GPU0.BLC2.RBUF */
-            }
-
-            Method (ROE1, 3, NotSerialized)
-            {
-                Name (PCFG, Buffer (One)
-                {
-                     0x00                                             // .
-                })
-                Local2 = PCFG /* \_SB_.GPU0.ROE1.PCFG */
-                If ((Arg0 >= SizeOf (Local2)))
-                {
-                    Return (Buffer (One)
-                    {
-                         0x00                                             // .
-                    })
-                }
-                Else
-                {
-                    Local0 = Arg0
-                }
-
-                If ((Arg1 > 0x1000))
-                {
-                    Local1 = 0x1000
-                }
-                Else
-                {
-                    Local1 = Arg1
-                }
-
-                If (((Local0 + Local1) > SizeOf (Local2)))
-                {
-                    Local1 = (SizeOf (Local2) - Local0)
-                }
-
-                CreateField (Local2, (0x08 * Local0), (0x08 * Local1), RBUF)
-                Return (RBUF) /* \_SB_.GPU0.ROE1.RBUF */
-            }
-
-            Name (_DOD, Package (0x01)  // _DOD: Display Output Devices
-            {
-                0x00024321
-            })
-            Method (_STA, 0, NotSerialized)  // _STA: Status
-            {
-                Return (0x0F)
-            }
-
-            Method (CHDV, 0, NotSerialized)
-            {
-                Name (CHIF, Package (0x02)
-                {
-                    One, 
-                    Package (0x07)
-                    {
-                        "CHILDDEV", 
-                        Zero, 
-                        0x00024321, 
-                        "QCOM_AVStream_850", 
-                        Zero, 
-                        "Qualcomm Camera AVStream Mini Driver", 
-                        Package (0x04)
-                        {
-                            "COMPATIBLEIDS", 
-                            0x02, 
-                            "VEN_QCOM&DEV__AVSTREAM", 
-                            "QCOM_AVSTREAM"
-                        }
-                    }
-                })
-                Return (CHIF) /* \_SB_.GPU0.CHDV.CHIF */
-            }
-
-            Method (DPCC, 2, NotSerialized)
-            {
-                Return (CCST) /* \_SB_.CCST */
-            }
-
-            Method (DPIN, 2, NotSerialized)
-            {
-                Return (PINA) /* \_SB_.PINA */
-            }
-
-            Method (REGR, 0, NotSerialized)
-            {
-                Name (RBUF, Package (0x1B)
-                {
-                    Package (0x02)
-                    {
-                        "ForceMaxPerf", 
-                        Zero
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "ForceStablePowerSettings", 
-                        Zero
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "ForceActive", 
-                        Zero
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "DeferForceActive", 
-                        Zero
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "PreventPowerCollapse", 
-                        Zero
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "DisableThermalMitigation", 
-                        Zero
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "DisableTzMDSSRestore", 
-                        One
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "UseLowPTForGfxPerProcess", 
-                        One
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "DisableCDI", 
-                        One
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "GPU64bAddrEnabled", 
-                        One
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "MaxPreemptionOffsets", 
-                        0x80
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "MaxRequiredDmaQueueEntry", 
-                        0x08
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "SupportsSecureInAperture", 
-                        One
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "ZeroFlagSupportInPTE", 
-                        One
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "SupportsCacheCoherency", 
-                        One
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "SupportsSHMBridge", 
-                        Zero
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "SecureCarveoutSize", 
-                        0x00200000
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "UBWCEnable", 
-                        Zero
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "allowDrmAbove1080p", 
-                        One
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "ZeroPageLowAddr", 
-                        0x85F00000
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "ZeroPageHighAddr", 
-                        Zero
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "KeepUefiBuffer", 
-                        One
-                    }, 
-
-                    Package (0x06)
-                    {
-                        "GRAPHICS", 
-                        Package (0x02)
-                        {
-                            "ForceActive", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "EnableSystemCache", 
-                            One
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "EnableSysCacheForGpuhtw", 
-                            One
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            "DCVS", 
-                            Package (0x02)
-                            {
-                                "Enable", 
-                                One
-                            }, 
-
-                            Package (0x02)
-                            {
-                                "IncreaseFilterBw", 
-                                0x00020000
-                            }, 
-
-                            Package (0x02)
-                            {
-                                "DecreaseFilterBw", 
-                                0x3333
-                            }, 
-
-                            Package (0x02)
-                            {
-                                "TargetBusyPct", 
-                                0x55
-                            }, 
-
-                            Package (0x02)
-                            {
-                                "SampleRate", 
-                                0x3C
-                            }, 
-
-                            Package (0x02)
-                            {
-                                "TargetBusyPctOffscreen", 
-                                0x4B
-                            }, 
-
-                            Package (0x02)
-                            {
-                                "SampleRateOffscreen", 
-                                0x14
-                            }, 
-
-                            Package (0x02)
-                            {
-                                "GpuResetValue", 
-                                0x11490C80
-                            }, 
-
-                            Package (0x02)
-                            {
-                                "BusResetValue", 
-                                0x04B0
-                            }
-                        }, 
-
-                        Package (0x06)
-                        {
-                            "A6x", 
-                            Package (0x02)
-                            {
-                                "SleepMode", 
-                                Zero
-                            }, 
-
-                            Package (0x02)
-                            {
-                                "DisableICG", 
-                                Zero
-                            }, 
-
-                            Package (0x02)
-                            {
-                                "DisableGmuCG", 
-                                Zero
-                            }, 
-
-                            Package (0x02)
-                            {
-                                "EnableFallbackToDisableSecureMode", 
-                                Zero
-                            }, 
-
-                            Package (0x02)
-                            {
-                                "DisableCPCrashDump", 
-                                Zero
-                            }
-                        }
-                    }, 
-
-                    Package (0x04)
-                    {
-                        "VIDEO", 
-                        Package (0x02)
-                        {
-                            "ForceActive", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "PreventPowerCollapse", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "EnableSystemCache", 
-                            One
-                        }
-                    }, 
-
-                    Package (0x02)
-                    {
-                        "CRYPTO", 
-                        Package (0x02)
-                        {
-                            "EnableCryptoVA", 
-                            One
-                        }
-                    }, 
-
-                    Package (0x03)
-                    {
-                        "VIDEO_ENCODER", 
-                        Package (0x02)
-                        {
-                            "ForceActive", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "PreventPowerCollapse", 
-                            Zero
-                        }
-                    }, 
-
-                    Package (0x07)
-                    {
-                        "DISPLAY", 
-                        Package (0x02)
-                        {
-                            "DisableMiracast", 
-                            One
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "EnableOEMDriverDependency", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "EnableBridgeDriverDependency", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "DisableRotator", 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "DisableMDPBLT", 
-                            One
-                        }, 
-
-                        Package (0x02)
-                        {
-                            "DisableExternal", 
-                            0x03
-                        }
-                    }
-                })
-                Return (RBUF) /* \_SB_.GPU0.REGR.RBUF */
-            }
-        }
-
-        Device (SCM0)
-        {
-            Name (_HID, "QCOM0214")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-            Name (_UID, Zero)  // _UID: Unique ID
-        }
-
-        Device (TREE)
-        {
-            Name (_HID, "QCOM02BB")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-            Name (_UID, Zero)  // _UID: Unique ID
-            Method (MCGT, 0, NotSerialized)
-            {
-                Name (TPKG, Package (0x01)
-                {
-                    Package (0x02)
-                    {
-                        Zero, 
-                        Zero
-                    }
-                })
-                DerefOf (TPKG [Zero]) [Zero] = TCMA /* \_SB_.TCMA */
-                DerefOf (TPKG [Zero]) [One] = TCML /* \_SB_.TCML */
-                Return (TPKG) /* \_SB_.TREE.MCGT.TPKG */
-            }
-        }
-
-        Device (SPMI)
-        {
-            Name (_HID, "QCOM0216")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-            Name (_CID, "PNP0CA2")  // _CID: Compatible ID
-            Name (_UID, One)  // _UID: Unique ID
-            Name (_CCA, Zero)  // _CCA: Cache Coherency Attribute
-            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
-            {
-                Name (RBUF, ResourceTemplate ()
-                {
-                    Memory32Fixed (ReadWrite,
-                        0x0C400000,         // Address Base
-                        0x02800000,         // Address Length
-                        )
-                })
-                Return (RBUF) /* \_SB_.SPMI._CRS.RBUF */
-            }
-
-            Method (CONF, 0, NotSerialized)
-            {
-                Name (XBUF, Buffer (0x1A)
-                {
-                    /* 0000 */  0x00, 0x01, 0x01, 0x01, 0xFF, 0x00, 0x02, 0x00,  // ........
-                    /* 0008 */  0x0A, 0x07, 0x04, 0x07, 0x01, 0xFF, 0x10, 0x01,  // ........
-                    /* 0010 */  0x00, 0x01, 0x0C, 0x40, 0x00, 0x00, 0x02, 0x80,  // ...@....
-                    /* 0018 */  0x00, 0x00                                       // ..
-                })
-                Return (XBUF) /* \_SB_.SPMI.CONF.XBUF */
-            }
-        }
-
-        Device (GIO0)
-        {
-            Name (_HID, "QCOM0217")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-            Name (_UID, Zero)  // _UID: Unique ID
-            Name (HPD1, ResourceTemplate ()
-            {
-                GpioIo (Shared, PullNone, 0x0000, 0x0000, IoRestrictionNone,
-                    "\\_SB.GIO0", 0x00, ResourceConsumer, ,
-                    )
-                    {   // Pin list
-                        0x0071
-                    }
-            })
-            OperationRegion (HPD2, GeneralPurposeIo, Zero, One)
-            Field (HPD2, ByteAcc, NoLock, Preserve)
-            {
-                Connection (HPD1), 
-                ESTA,   1
-            }
-
-            OperationRegion (GPOR, GeneralPurposeIo, Zero, One)
-            Field (GPOR, ByteAcc, NoLock, Preserve)
-            {
-            }
-
-            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
-            {
-                Name (RBUF, ResourceTemplate ()
-                {
-                    Memory32Fixed (ReadWrite,
-                        0x03400000,         // Address Base
-                        0x00C00000,         // Address Length
-                        )
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, )
-                    {
-                        0x000000F0,
-                    }
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, )
-                    {
-                        0x000000F0,
-                    }
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, )
-                    {
-                        0x000000F0,
-                    }
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Shared, ,, )
-                    {
-                        0x00000288,
-                    }
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Shared, ,, )
-                    {
-                        0x00000238,
-                    }
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Shared, ,, )
-                    {
-                        0x00000226,
-                    }
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Shared, ,, )
-                    {
-                        0x00000232,
-                    }
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Shared, ,, )
-                    {
-                        0x00000284,
-                    }
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Shared, ,, )
-                    {
-                        0x0000021F,
-                    }
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Shared, ,, )
-                    {
-                        0x00000236,
-                    }
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Shared, ,, )
-                    {
-                        0x0000023D,
-                    }
-                })
-                Return (RBUF) /* \_SB_.GIO0._CRS.RBUF */
-            }
-
-            Method (OFNI, 0, NotSerialized)
-            {
-                Name (RBUF, Buffer (0x02)
-                {
-                     0x96, 0x00                                       // ..
-                })
-                Return (RBUF) /* \_SB_.GIO0.OFNI.RBUF */
-            }
-
-            Name (GABL, Zero)
-            Method (_REG, 2, NotSerialized)  // _REG: Region Availability
-            {
-                If ((Arg0 == 0x08))
-                {
-                    GABL = Arg1
-                }
-            }
-
-            Name (_AEI, Buffer (0x02)  // _AEI: ACPI Event Interrupts
-            {
-                 0x79, 0x00                                       // y.
-            })
-        }
-
-        OperationRegion (CP00, SystemMemory, 0x13000000, 0x24)
-        Field (CP00, DWordAcc, NoLock, Preserve)
-        {
-            MVIO,   32, 
-            MV01,   32, 
-            MV02,   32, 
-            MV03,   32, 
-            MV04,   32, 
-            MV11,   32, 
-            MV12,   32, 
-            MV13,   32, 
-            MV14,   32
-        }
-
-        OperationRegion (CP01, SystemMemory, 0x01C00000, 0x1004)
-        Field (CP01, DWordAcc, NoLock, Preserve)
-        {
-            PSC0,   32, 
-            Offset (0x20), 
-            PPC0,   32, 
-            PPS0,   32, 
-            Offset (0x1B0), 
-            PLT0,   32, 
-            Offset (0x358), 
-            PSL0,   32, 
-            Offset (0x360), 
-            WBL0,   32, 
-            WBH0,   32, 
-            WLL0,   32, 
-            WLH0,   32, 
-            RBL0,   32, 
-            RBH0,   32, 
-            RLL0,   32, 
-            RLH0,   32, 
-            PPEB,   32, 
-            Offset (0x398), 
-            WBL1,   32, 
-            WBH1,   32, 
-            WLL1,   32, 
-            WLH1,   32, 
-            RBL1,   32, 
-            RBH1,   32, 
-            RLL1,   32, 
-            RLH1,   32, 
-            Offset (0x1000), 
-            PDT0,   32
-        }
-
-        OperationRegion (CP02, SystemMemory, 0x01C06000, 0x0188)
-        Field (CP02, DWordAcc, NoLock, Preserve)
-        {
-            Offset (0x0C), 
-            QCB1,   32, 
-            QSEC,   32, 
-            QAP1,   32, 
-            QAP2,   32, 
-            QSP1,   32, 
-            QSP2,   32, 
-            QSS1,   32, 
-            QSS2,   32, 
-            Offset (0x34), 
-            QECE,   32, 
-            QCE1,   32, 
-            QSCC,   32, 
-            QSBE,   32, 
-            Offset (0x48), 
-            QCPI,   32, 
-            Offset (0x5C), 
-            QCED,   32, 
-            QCP0,   32, 
-            Offset (0x68), 
-            QPR0,   32, 
-            Offset (0x70), 
-            QPC0,   32, 
-            Offset (0x80), 
-            QSES,   32, 
-            Offset (0x88), 
-            QCRC,   32, 
-            Offset (0x90), 
-            QCLC,   32, 
-            Offset (0x98), 
-            QC1M,   32, 
-            QC2M,   32, 
-            QC3M,   32, 
-            Offset (0xB0), 
-            QSM0,   32, 
-            Offset (0xB8), 
-            QS1M,   32, 
-            QS2M,   32, 
-            QS3M,   32, 
-            Offset (0xD8), 
-            QIG0,   32, 
-            QIG1,   32, 
-            Offset (0xF0), 
-            QCVT,   32, 
-            QVT1,   32, 
-            QVT2,   32, 
-            Offset (0x11C), 
-            QTT1,   32, 
-            QTT2,   32, 
-            Offset (0x138), 
-            QCCS,   32, 
-            QCHS,   32, 
-            Offset (0x148), 
-            QCD0,   32, 
-            Offset (0x154), 
-            QCCN,   32, 
-            Offset (0x15C), 
-            QCCC,   32, 
-            Offset (0x164), 
-            QMCS,   32, 
-            Offset (0x184), 
-            QCCM,   32
-        }
-
-        OperationRegion (CP03, SystemMemory, 0x01C06200, 0xA8)
-        Field (CP03, DWordAcc, NoLock, Preserve)
-        {
-            Offset (0x44), 
-            QTOT,   32, 
-            Offset (0x60), 
-            QTDE,   32, 
-            Offset (0x8C), 
-            QTM1,   32, 
-            Offset (0xA4), 
-            QTL2,   32
-        }
-
-        OperationRegion (CP04, SystemMemory, 0x01C06400, 0x016C)
-        Field (CP04, DWordAcc, NoLock, Preserve)
-        {
-            Offset (0x0C), 
-            QRSH,   32, 
-            Offset (0x14), 
-            QRSG,   32, 
-            Offset (0x34), 
-            QRUS,   32, 
-            Offset (0x3C), 
-            QRFL,   32, 
-            Offset (0x44), 
-            QRPC,   32, 
-            Offset (0xD4), 
-            QRC2,   32, 
-            QRC3,   32, 
-            QRC4,   32, 
-            Offset (0xF8), 
-            QRA1,   32, 
-            QRA2,   32, 
-            QRSE,   32, 
-            QRSC,   32, 
-            Offset (0x10C), 
-            QRDC,   32, 
-            Offset (0x11C), 
-            QRIM,   32, 
-            Offset (0x164), 
-            QRM0,   32, 
-            QRM1,   32
-        }
-
-        OperationRegion (CP05, SystemMemory, 0x01C06600, 0x70)
-        Field (CP05, DWordAcc, NoLock, Preserve)
-        {
-            Offset (0x2C), 
-            PMDC,   32, 
-            Offset (0x44), 
-            PAC1,   32, 
-            Offset (0x54), 
-            PMC2,   32, 
-            PMC3,   32, 
-            PMC4,   32, 
-            PMC5,   32
-        }
-
-        OperationRegion (CP06, SystemMemory, 0x01C06800, 0x0210)
-        Field (CP06, DWordAcc, NoLock, Preserve)
-        {
-            PPSR,   32, 
-            PPDC,   32, 
-            PCST,   32, 
-            Offset (0x54), 
-            PERD,   32, 
-            Offset (0x6C), 
-            PSC4,   32, 
-            Offset (0xA0), 
-            PDTA,   32, 
-            PLTA,   32, 
-            PLCD,   32, 
-            Offset (0xC4), 
-            PFC1,   32, 
-            PFC2,   32, 
-            PFVL,   32, 
-            PFVH,   32, 
-            PFMC,   32, 
-            Offset (0x174), 
-            PPPS,   32, 
-            Offset (0x1A8), 
-            PSDM,   32, 
-            PODA,   32, 
-            PPSC,   32, 
-            Offset (0x1D8), 
-            PRSL,   32, 
-            PDAL,   32, 
-            PDAM,   32, 
-            Offset (0x20C), 
-            PRC1,   32
-        }
-
-        OperationRegion (CP07, SystemMemory, 0x60000000, 0x1000)
-        Field (CP07, DWordAcc, NoLock, Preserve)
-        {
-            Offset (0x04), 
-            SCR0,   32, 
-            CRI0,   32, 
-            Offset (0x10), 
-            R0B0,   32, 
-            R0B1,   32, 
-            BNR0,   32, 
-            Offset (0x7C), 
-            LCA0,   32, 
-            LCS0,   32, 
-            Offset (0x88), 
-            SLC0,   32, 
-            Offset (0xA0), 
-            LC20,   32, 
-            Offset (0x8BC), 
-            CSW0,   32, 
-            Offset (0x900), 
-            IAV0,   32, 
-            CR10,   32, 
-            CR20,   32, 
-            ILB0,   32, 
-            IUB0,   32, 
-            ILR0,   32, 
-            ILT0,   32, 
-            IUT0,   32, 
-            Offset (0xF24), 
-            ESC0,   32, 
-            EST0,   32, 
-            Offset (0xFC4), 
-            ECS0,   32
-        }
-
-        Method (PPU0, 0, Serialized)
-        {
-            Name (TOUT, Zero)
-            PDT0 = 0x04
-            PPDC = One
-            QECE = 0x14
-            QCPI = 0x07
-            QCLC = One
-            QCRC = 0x20
-            QCVT = Zero
-            QVT2 = One
-            QVT1 = 0xC9
-            QTT1 = 0xFF
-            QTT2 = 0x3F
-            QMCS = One
-            QCCN = Zero
-            QCD0 = 0x0A
-            QCED = 0x19
-            QCE1 = 0x90
-            QSM0 = 0x82
-            QS3M = 0x02
-            QS2M = 0xEA
-            QS1M = 0xAB
-            QC3M = Zero
-            QC2M = 0x0D
-            QC1M = 0x04
-            QCHS = Zero
-            QCP0 = 0x06
-            QPR0 = 0x16
-            QPC0 = 0x36
-            QCCM = One
-            QCCC = 0x16
-            QCCS = 0x33
-            QSCC = 0x02
-            QSBE = 0x07
-            QSES = 0x04
-            QIG1 = Zero
-            QIG0 = 0x3F
-            QCB1 = 0x09
-            QSEC = One
-            QSP1 = 0x40
-            QSP2 = One
-            QAP1 = 0x02
-            QAP2 = Zero
-            QSS1 = 0x7E
-            QSS2 = 0x15
-            QTOT = 0x02
-            QTL2 = 0x12
-            QTDE = 0x10
-            QTM1 = 0x06
-            QRSC = 0x03
-            QRSE = 0x1C
-            QRDC = 0x14
-            QRC2 = 0x0E
-            QRC3 = 0x04
-            QRC4 = 0x1A
-            QRUS = 0x4B
-            QRSG = 0x04
-            QRSH = 0x04
-            QRA1 = 0x71
-            QRM0 = 0x59
-            QRM1 = 0x59
-            QRA2 = 0x80
-            QRIM = 0x40
-            QRPC = 0x71
-            QRFL = 0x40
-            PERD = 0x04
-            PMDC = 0x52
-            PMC2 = 0x50
-            PMC4 = 0x1A
-            PMC5 = 0x06
-            PFC2 = 0x83
-            PFVL = 0x09
-            PFVH = 0xA2
-            PFMC = 0x40
-            PFC1 = 0x02
-            PODA = Zero
-            PDTA = One
-            PDAM = Zero
-            PDAL = 0x20
-            PSDM = Zero
-            PLTA = One
-            PLCD = 0x73
-            PRSL = 0xAA
-            PPSC = 0x03
-            PRC1 = 0x0D
-            PSC4 = Zero
-            PAC1 = Zero
-            If ((SIDV >= 0x00020000)){}
-            PPDC = 0x03
-            PPSR = Zero
-            PCST = 0x03
-            Local0 = PPPS /* \_SB_.PPPS */
-            While ((Local0 & 0x40))
-            {
-                Sleep (One)
-                TOUT++
-                If ((TOUT == 0x0F))
-                {
-                    Break
-                }
-
-                Local0 = PPPS /* \_SB_.PPPS */
-            }
-
-            If ((TOUT == 0x0F))
-            {
-                Return (One)
-            }
-            Else
-            {
-                Return (Zero)
-            }
-        }
-
-        Method (LTS0, 0, Serialized)
-        {
-            Name (TOUT, Zero)
-            Local0 = LC20 /* \_SB_.LC20 */
-            Local0 |= 0x40
-            LC20 = Local0
-            PLT0 = 0x0100
-            Local0 = EST0 /* \_SB_.EST0 */
-            While (((Local0 & 0x0400) != 0x0400))
-            {
-                Sleep (One)
-                TOUT++
-                If ((TOUT == 0x96))
-                {
-                    Break
-                }
-
-                Local0 = EST0 /* \_SB_.EST0 */
-            }
-
-            If ((TOUT == 0x96))
-            {
-                Return (One)
-            }
-            Else
-            {
-                Return (Zero)
-            }
-        }
-
-        Method (IAT0, 0, Serialized)
-        {
-            IAV0 = One
-            ILB0 = 0x60100000
-            IUB0 = Zero
-            ILR0 = 0x601FFFFF
-            ILT0 = 0x01000000
-            IUT0 = Zero
-            CR10 = 0x04
-            CR20 = 0x80000000
-            BNR0 = 0x00010100
-        }
-
-        Method (REB0, 2, Serialized)
-        {
-            Local0 = PSC0 /* \_SB_.PSC0 */
-            Local0 &= 0xFBFFFFFF
-            PSC0 = Local0
-            WBL0 = Arg0
-            WBH0 = Zero
-            WLL0 = Arg1
-            WLH0 = Zero
-            RBL0 = Arg0
-            RBH0 = Zero
-            RLL0 = Arg1
-            RLH0 = Zero
-            Local0 = PSC0 /* \_SB_.PSC0 */
-            Local0 |= 0x04000000
-            PSC0 = Local0
-        }
-
-        Method (EEB0, 2, Serialized)
-        {
-            Local0 = PSC0 /* \_SB_.PSC0 */
-            Local0 &= 0xBFFFFFFF
-            PSC0 = Local0
-            WBL1 = Arg0
-            WBH1 = Zero
-            WLL1 = Arg1
-            WLH1 = Zero
-            RBL1 = Arg0
-            RBH1 = Zero
-            RLL1 = Arg1
-            RLH1 = Zero
-            Local0 = PSC0 /* \_SB_.PSC0 */
-            Local0 |= 0x40000000
-            PSC0 = Local0
-        }
-
-        Name (E0LT, 0x600FFFFF)
-        Method (MSC0, 0, Serialized)
-        {
-            Local0 = SCR0 /* \_SB_.SCR0 */
-            Local0 |= 0x02
-            SCR0 = Local0
-            PSL0 = 0x01000000
-            Local0 = PPC0 /* \_SB_.PPC0 */
-            Local0 &= 0xFFFFFFDF
-            PPC0 = Local0
-            CSW0 = One
-            Local0 = LCA0 /* \_SB_.LCA0 */
-            Local0 |= 0x00400000
-            Local0 &= 0xFFFFFBFF
-            Local0 |= 0x0800
-            LCA0 = Local0
-            Local0 = CRI0 /* \_SB_.CRI0 */
-            Local0 &= 0xFFFF
-            Local0 |= 0x06040000
-            CRI0 = Local0
-            ECS0 = One
-            R0B0 = Zero
-            R0B1 = Zero
-            ECS0 = Zero
-            CSW0 = Zero
-            PPEB = 0x60000000
-            REB0 (0x60001000, E0LT)
-            EEB0 (0x60101000, 0x601FFFFF)
-        }
-
-        Name (G0D3, Zero)
-        OperationRegion (CP08, SystemMemory, 0x01C08000, 0x1004)
-        Field (CP08, DWordAcc, NoLock, Preserve)
-        {
-            PSC1,   32, 
-            Offset (0x20), 
-            PPC1,   32, 
-            PPS1,   32, 
-            Offset (0x1B0), 
-            PLT1,   32, 
-            Offset (0x358), 
-            PSL1,   32, 
-            Offset (0x360), 
-            LBW0,   32, 
-            HBW0,   32, 
-            LLW0,   32, 
-            HLW0,   32, 
-            LBR0,   32, 
-            HBR0,   32, 
-            LLR0,   32, 
-            HLR0,   32, 
-            PEB1,   32, 
-            Offset (0x398), 
-            LBW1,   32, 
-            HBW1,   32, 
-            LLW1,   32, 
-            HLW1,   32, 
-            LBR1,   32, 
-            HBR1,   32, 
-            LLR1,   32, 
-            HLR1,   32, 
-            Offset (0x1000), 
-            PDT1,   32
-        }
-
-        OperationRegion (CP09, SystemMemory, 0x01C0A000, 0x026C)
-        Field (CP09, DWordAcc, NoLock, Preserve)
-        {
-            Offset (0x14), 
-            HSEC,   32, 
-            HAP1,   32, 
-            HAP2,   32, 
-            HSP1,   32, 
-            HSP2,   32, 
-            HSS1,   32, 
-            HSS2,   32, 
-            Offset (0x34), 
-            HSM1,   32, 
-            HSM2,   32, 
-            Offset (0x54), 
-            HECE,   32, 
-            HCE1,   32, 
-            HSCC,   32, 
-            HSBE,   32, 
-            HPLE,   32, 
-            HCPI,   32, 
-            C1M0,   32, 
-            C2M0,   32, 
-            C3M0,   32, 
-            C1M1,   32, 
-            C2M1,   32, 
-            C3M1,   32, 
-            Offset (0xB4), 
-            HCM0,   32, 
-            HCM1,   32, 
-            Offset (0xC0), 
-            HPR0,   32, 
-            HPR1,   32, 
-            HPR2,   32, 
-            HPC0,   32, 
-            HPC1,   32, 
-            HPC2,   32, 
-            Offset (0xDC), 
-            HSES,   32, 
-            Offset (0xF0), 
-            HRC2,   32, 
-            Offset (0xF8), 
-            HCLC,   32, 
-            Offset (0x100), 
-            HRM0,   32, 
-            Offset (0x108), 
-            HRM1,   32, 
-            Offset (0x11C), 
-            S1M0,   32, 
-            S2M0,   32, 
-            S3M0,   32, 
-            S1M1,   32, 
-            S2M1,   32, 
-            S3M1,   32, 
-            Offset (0x150), 
-            G0M0,   32, 
-            Offset (0x158), 
-            G0M1,   32, 
-            Offset (0x178), 
-            HCVT,   32, 
-            Offset (0x1CC), 
-            HCCS,   32, 
-            HCHS,   32, 
-            Offset (0x1E0), 
-            HCDV,   32, 
-            Offset (0x1E8), 
-            HCCE,   32, 
-            Offset (0x1F0), 
-            HCCC,   32, 
-            Offset (0x1FC), 
-            HMCS,   32, 
-            Offset (0x21C), 
-            HDM1,   32, 
-            Offset (0x224), 
-            HCCM,   32, 
-            HVD1,   32, 
-            HVD2,   32
-        }
-
-        OperationRegion (CP10, SystemMemory, 0x01C0A800, 0x02F0)
-        Field (CP10, DWordAcc, NoLock, Preserve)
-        {
-            Offset (0x0C), 
-            L0C0,   32, 
-            L0C1,   32, 
-            L0C2,   32, 
-            L0TE,   32, 
-            Offset (0x60), 
-            L0BM,   32, 
-            L0LM,   32, 
-            Offset (0x7C), 
-            L0PR,   32, 
-            Offset (0xC0), 
-            L0L0,   32, 
-            L0L1,   32, 
-            L0L2,   32, 
-            Offset (0xD0), 
-            L0R1,   32, 
-            L0R2,   32, 
-            L0M0,   32, 
-            L0M1,   32, 
-            L0M2,   32, 
-            Offset (0xFC), 
-            L0CD,   32, 
-            L0VD,   32, 
-            Offset (0x108), 
-            L0X0,   32, 
-            Offset (0x114), 
-            L0TT,   32, 
-            L0OT,   32, 
-            L0RT,   32, 
-            L0ET,   32, 
-            L0VG,   32, 
-            L0DG,   32, 
-            Offset (0x130), 
-            L0EG,   32, 
-            L0OG,   32, 
-            L0PG,   32, 
-            L0IN,   32, 
-            Offset (0x154), 
-            L0EI,   32, 
-            Offset (0x160), 
-            L0DI,   32, 
-            Offset (0x168), 
-            L0B0,   32, 
-            L0B1,   32, 
-            Offset (0x178), 
-            L0T1,   32, 
-            Offset (0x180), 
-            L0RC,   32, 
-            L0F0,   32, 
-            L0F1,   32, 
-            L0F2,   32, 
-            L0S0,   32, 
-            L0S1,   32, 
-            L0S2,   32, 
-            L0SC,   32, 
-            Offset (0x1A4), 
-            L0RB,   32, 
-            Offset (0x1C0), 
-            L0P0,   32, 
-            L0P1,   32, 
-            L0P2,   32, 
-            Offset (0x230), 
-            L0SE,   32, 
-            L0SN,   32, 
-            L0SD,   32, 
-            Offset (0x2A4), 
-            L0DC,   32, 
-            L0ST,   32, 
-            L0RE,   32, 
-            L0PC,   32, 
-            Offset (0x2B8), 
-            L0N0,   32, 
-            Offset (0x2C0), 
-            L0ER,   32, 
-            L0HI,   32, 
-            Offset (0x2CC), 
-            L0RR,   32
-        }
-
-        OperationRegion (CP11, SystemMemory, 0x01C0B000, 0x02F0)
-        Field (CP11, DWordAcc, NoLock, Preserve)
-        {
-            Offset (0x0C), 
-            L1C0,   32, 
-            L1C1,   32, 
-            L1C2,   32, 
-            L1TE,   32, 
-            Offset (0x60), 
-            L1BM,   32, 
-            L1LM,   32, 
-            Offset (0x7C), 
-            L1PR,   32, 
-            Offset (0xC0), 
-            L1L0,   32, 
-            L1L1,   32, 
-            L1L2,   32, 
-            Offset (0xD0), 
-            L1R1,   32, 
-            L1R2,   32, 
-            L1M0,   32, 
-            L1M1,   32, 
-            L1M2,   32, 
-            Offset (0xFC), 
-            L1CD,   32, 
-            L1VD,   32, 
-            Offset (0x108), 
-            L1X0,   32, 
-            Offset (0x114), 
-            L1TT,   32, 
-            L1OT,   32, 
-            L1RT,   32, 
-            L1ET,   32, 
-            L1VG,   32, 
-            L1DG,   32, 
-            Offset (0x130), 
-            L1EG,   32, 
-            L1OG,   32, 
-            L1PG,   32, 
-            L1IN,   32, 
-            Offset (0x154), 
-            L1EI,   32, 
-            Offset (0x160), 
-            L1DI,   32, 
-            Offset (0x168), 
-            L1B0,   32, 
-            L1B1,   32, 
-            Offset (0x178), 
-            L1T1,   32, 
-            Offset (0x180), 
-            L1RC,   32, 
-            L1F0,   32, 
-            L1F1,   32, 
-            L1F2,   32, 
-            L1S0,   32, 
-            L1S1,   32, 
-            L1S2,   32, 
-            L1SC,   32, 
-            Offset (0x1A4), 
-            L1RB,   32, 
-            Offset (0x1C0), 
-            L1P0,   32, 
-            L1P1,   32, 
-            L1P2,   32, 
-            Offset (0x230), 
-            L1SE,   32, 
-            L1SN,   32, 
-            L1SD,   32, 
-            Offset (0x2A4), 
-            L1DC,   32, 
-            L1ST,   32, 
-            L1RE,   32, 
-            L1PC,   32, 
-            Offset (0x2B8), 
-            L1N0,   32, 
-            Offset (0x2C0), 
-            L1ER,   32, 
-            L1HI,   32, 
-            Offset (0x2CC), 
-            L1RR,   32
-        }
-
-        OperationRegion (CP12, SystemMemory, 0x01C0B800, 0x02DC)
-        Field (CP12, DWordAcc, NoLock, Preserve)
-        {
-            HPSR,   32, 
-            HPDC,   32, 
-            HSTC,   32, 
-            Offset (0x2C), 
-            HTM3,   32, 
-            Offset (0x40), 
-            HTP3,   32, 
-            Offset (0x54), 
-            HTM6,   32, 
-            Offset (0x68), 
-            HTP6,   32, 
-            Offset (0x15C), 
-            HPSG,   32, 
-            Offset (0x174), 
-            HTRC,   32, 
-            Offset (0x2AC), 
-            HPST,   32
-        }
-
-        OperationRegion (CP13, SystemMemory, 0x40000000, 0x1000)
-        Field (CP13, DWordAcc, NoLock, Preserve)
-        {
-            Offset (0x04), 
-            SCR1,   32, 
-            CRI1,   32, 
-            Offset (0x10), 
-            R1B0,   32, 
-            R1B1,   32, 
-            BNR1,   32, 
-            Offset (0x7C), 
-            LCA1,   32, 
-            LCS1,   32, 
-            SCA1,   32, 
-            SLC1,   32, 
-            Offset (0xA0), 
-            LC21,   32, 
-            Offset (0x154), 
-            P1PR,   32, 
-            Offset (0x710), 
-            GPLC,   32, 
-            Offset (0x80C), 
-            G32C,   32, 
-            Offset (0x8A8), 
-            GEQC,   32, 
-            GMDC,   32, 
-            Offset (0x8BC), 
-            CSW1,   32, 
-            Offset (0x900), 
-            IAV1,   32, 
-            CR11,   32, 
-            CR21,   32, 
-            ILB1,   32, 
-            IUB1,   32, 
-            ILR1,   32, 
-            ILT1,   32, 
-            IUT1,   32, 
-            Offset (0xF24), 
-            ESC1,   32, 
-            EST1,   32, 
-            Offset (0xFC4), 
-            ECS1,   32
-        }
-
-        OperationRegion (CP14, SystemMemory, 0x03971000, 0x10)
-        Field (CP14, DWordAcc, NoLock, Preserve)
-        {
-            C113,   32, 
-            I113,   32, 
-            N113,   32, 
-            S113,   32
-        }
-
-        OperationRegion (CP15, SystemMemory, 0x0016B000, 0x1020)
-        Field (CP15, DWordAcc, NoLock, Preserve)
-        {
-            GP0B,   32, 
-            Offset (0x101C), 
-            G0PB,   32
-        }
-
-        OperationRegion (CP16, SystemMemory, 0x0018D000, 0x1030)
-        Field (CP16, DWordAcc, NoLock, Preserve)
-        {
-            GP1B,   32, 
-            Offset (0x1014), 
-            G1LB,   32, 
-            Offset (0x101C), 
-            G1PB,   32, 
-            G1NB,   32
-        }
-
-        Method (PPU1, 0, Serialized)
-        {
-            Name (TOUT, Zero)
-            PDT1 = 0x04
-            HPDC = 0x03
-            HSES = 0x27
-            HSEC = One
-            HSP1 = 0x31
-            HSP2 = One
-            HSS1 = 0xDE
-            HSS2 = 0x07
-            HSM1 = 0x4C
-            HSM2 = 0x06
-            HECE = 0x18
-            HCE1 = 0xB0
-            C1M0 = 0x8C
-            C2M0 = 0x20
-            C1M1 = 0x14
-            C2M1 = 0x34
-            HCM0 = 0x06
-            HCM1 = 0x06
-            HPR0 = 0x16
-            HPR1 = 0x16
-            HPC0 = 0x36
-            HPC1 = 0x36
-            HRC2 = 0x05
-            HCLC = 0x42
-            HRM0 = 0x82
-            HRM1 = 0x68
-            S1M0 = 0x55
-            S2M0 = 0x55
-            S3M0 = 0x03
-            S1M1 = 0xAB
-            S2M1 = 0xAA
-            S3M1 = 0x02
-            G0M0 = 0x3F
-            G0M1 = 0x3F
-            HCVT = 0x10
-            HCCS = Zero
-            HCHS = 0x30
-            HCDV = 0x04
-            HCCE = 0x73
-            HCCC = 0x1C
-            HMCS = 0x15
-            HDM1 = 0x04
-            HCCM = One
-            HVD1 = 0x22
-            HVD2 = Zero
-            L0C0 = Zero
-            L0TE = 0x0D
-            L0BM = One
-            L0LM = 0x3A
-            L0PR = 0x2F
-            L0L0 = 0x09
-            L0L1 = 0x09
-            L0L2 = 0x1A
-            L0R1 = One
-            L0R2 = 0x07
-            L0M0 = 0x31
-            L0M1 = 0x31
-            L0M2 = 0x03
-            L0CD = 0x02
-            L0VD = One
-            L0X0 = 0x12
-            L0TT = 0x25
-            L0OT = Zero
-            L0RT = 0x05
-            L0ET = One
-            L0VG = 0x26
-            L0DG = 0x12
-            L0EG = 0x04
-            L0OG = 0x04
-            L0PG = 0x09
-            L0EI = 0x15
-            L0DI = 0x32
-            L0B0 = 0x7F
-            L0B1 = 0x07
-            L0T1 = 0x04
-            L0RC = 0x70
-            L0F0 = 0x08
-            L0F1 = 0x08
-            L0F2 = 0x09
-            L0S0 = 0x04
-            L0S1 = 0x04
-            L0S2 = 0x02
-            L0SC = 0x0C
-            L0RB = 0x02
-            L0P0 = 0x5C
-            L0P1 = 0x3E
-            L0P2 = 0x3F
-            L0SE = 0x21
-            L0SN = 0xA0
-            L0SD = 0x08
-            L0DC = One
-            L0RE = 0xC3
-            L0PC = Zero
-            L0N0 = 0x8C
-            L0ER = 0x7F
-            L0HI = 0x2A
-            L0C1 = 0x0C
-            L0C2 = Zero
-            L0RR = 0x02
-            L0IN = 0x20
-            L1C0 = Zero
-            L1TE = 0x0D
-            L1BM = One
-            L1LM = 0x3A
-            L1PR = 0x2F
-            L1L0 = 0x09
-            L1L1 = 0x09
-            L1L2 = 0x1A
-            L1R1 = One
-            L1R2 = 0x07
-            L1M0 = 0x31
-            L1M1 = 0x31
-            L1M2 = 0x03
-            L1CD = 0x02
-            L1VD = One
-            L1X0 = 0x12
-            L1TT = 0x25
-            L1OT = Zero
-            L1RT = 0x05
-            L1ET = One
-            L1VG = 0x26
-            L1DG = 0x12
-            L1EG = 0x04
-            L1OG = 0x04
-            L1PG = 0x09
-            L1EI = 0x15
-            L1DI = 0x32
-            L1B0 = 0x7F
-            L1B1 = 0x07
-            L1T1 = 0x04
-            L1RC = 0x70
-            L1F0 = 0x08
-            L1F1 = 0x08
-            L1F2 = 0x09
-            L1S0 = 0x04
-            L1S1 = 0x04
-            L1S2 = 0x02
-            L1SC = 0x0C
-            L1RB = 0x02
-            L1P0 = 0x5C
-            L1P1 = 0x3E
-            L1P2 = 0x3F
-            L1SE = 0x21
-            L1SN = 0xA0
-            L1SD = 0x08
-            L1DC = One
-            L1RE = 0xC3
-            L1PC = Zero
-            L1N0 = 0x8C
-            L1ER = 0x7F
-            L1HI = 0x2A
-            L1C1 = 0x0C
-            L1C2 = Zero
-            L1RR = 0x02
-            L1IN = 0x20
-            HPSG = 0x3F
-            HTRC = 0x58
-            HTM3 = 0x19
-            HTP3 = 0x07
-            HTM6 = 0x17
-            HTP6 = 0x09
-            If ((SIDV >= 0x00020000)){}
-            HPSR = Zero
-            L0ST = One
-            L1ST = One
-            HSTC = One
-            Local0 = HPST /* \_SB_.HPST */
-            While ((Local0 & 0x40))
-            {
-                Sleep (One)
-                TOUT++
-                If ((TOUT == 0x0F))
-                {
-                    Break
-                }
-
-                Local0 = HPST /* \_SB_.HPST */
-            }
-
-            If ((TOUT == 0x0F))
-            {
-                Return (One)
-            }
-            Else
-            {
-                Return (Zero)
-            }
-        }
-
-        Method (LTS1, 0, Serialized)
-        {
-            Name (TOUT, Zero)
-            Local0 = G32C /* \_SB_.G32C */
-            Local0 &= 0xFFFFE0FF
-            Local0 |= 0x0100
-            G32C = Local0
-            GMDC = 0x000155A0
-            Local0 = GEQC /* \_SB_.GEQC */
-            Local0 &= 0xFFFFFFEF
-            GEQC = Local0
-            CSW1 = One
-            P1PR = 0x77777777
-            CSW1 = Zero
-            Local0 = GPLC /* \_SB_.GPLC */
-            Local0 &= 0xFFC0F0FF
-            Local0 |= 0x00030300
-            GPLC = Local0
-            PLT1 = 0x0100
-            Local0 = EST1 /* \_SB_.EST1 */
-            While (((Local0 & 0x0400) != 0x0400))
-            {
-                Sleep (One)
-                TOUT++
-                If ((TOUT == 0x96))
-                {
-                    Break
-                }
-
-                Local0 = EST1 /* \_SB_.EST1 */
-            }
-
-            If ((TOUT == 0x96))
-            {
-                Return (One)
-            }
-            Else
-            {
-                Return (Zero)
-            }
-        }
-
-        Method (IAT1, 0, Serialized)
-        {
-            IAV1 = One
-            ILB1 = 0x40100000
-            IUB1 = Zero
-            ILR1 = 0x401FFFFF
-            ILT1 = 0x01000000
-            IUT1 = Zero
-            CR11 = 0x04
-            CR21 = 0x80000000
-            BNR1 = 0x00010100
-        }
-
-        Method (REB1, 2, Serialized)
-        {
-            Local0 = PSC1 /* \_SB_.PSC1 */
-            Local0 &= 0xFBFFFFFF
-            PSC1 = Local0
-            LBW0 = Arg0
-            HBW0 = Zero
-            LLW0 = Arg1
-            HLW0 = Zero
-            LBR0 = Arg0
-            HBR0 = Zero
-            LLR0 = Arg1
-            HLR0 = Zero
-            Local0 = PSC1 /* \_SB_.PSC1 */
-            Local0 |= 0x04000000
-            PSC1 = Local0
-        }
-
-        Method (EEB1, 2, Serialized)
-        {
-            Local0 = PSC1 /* \_SB_.PSC1 */
-            Local0 &= 0xBFFFFFFF
-            PSC1 = Local0
-            LBW1 = Arg0
-            HBW1 = Zero
-            LLW1 = Arg1
-            HLW1 = Zero
-            LBR1 = Arg0
-            HBR1 = Zero
-            LLR1 = Arg1
-            HLR1 = Zero
-            Local0 = PSC1 /* \_SB_.PSC1 */
-            Local0 |= 0x40000000
-            PSC1 = Local0
-        }
-
-        Name (E1LT, 0x400FFFFF)
-        Method (MSC1, 0, Serialized)
-        {
-            Local0 = SCR1 /* \_SB_.SCR1 */
-            Local0 |= 0x02
-            SCR1 = Local0
-            PSL1 = 0x20000000
-            Local0 = PPC1 /* \_SB_.PPC1 */
-            Local0 &= 0xFFFFFFDF
-            PPC1 = Local0
-            CSW1 = One
-            Local0 = LCA1 /* \_SB_.LCA1 */
-            Local0 |= 0x00400000
-            Local0 |= 0x0C00
-            LCA1 = Local0
-            Local0 = CRI1 /* \_SB_.CRI1 */
-            Local0 &= 0xFFFF
-            Local0 |= 0x06040000
-            CRI1 = Local0
-            Local0 = SCA1 /* \_SB_.SCA1 */
-            Local0 &= 0xFFFFFFBF
-            SCA1 = Local0
-            CSW1 = Zero
-            ECS1 = One
-            R1B0 = Zero
-            R1B1 = Zero
-            ECS1 = Zero
-            PEB1 = 0x40000000
-            REB1 (0x40001000, E1LT)
-            EEB1 (0x40101000, 0x401FFFFF)
-        }
-
-        Name (G1D3, Zero)
-        Device (IPC0)
-        {
-            Name (_DEP, Package (0x01)  // _DEP: Dependencies
-            {
-                GLNK
-            })
-            Name (_HID, "QCOM021C")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-        }
-
-        Device (GLNK)
-        {
-            Name (_DEP, Package (0x01)  // _DEP: Dependencies
-            {
-                RPEN
-            })
-            Name (_HID, "QCOM02F9")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-            Name (_UID, Zero)  // _UID: Unique ID
-            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
-            {
-                Name (RBUF, ResourceTemplate ()
-                {
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x000001E3,
-                    }
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x000000BE,
-                    }
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x000000CC,
-                    }
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x00000260,
-                    }
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x000001E1,
-                    }
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x000000BC,
-                    }
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x000000CA,
-                    }
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x0000025E,
-                    }
-                })
-                Return (RBUF) /* \_SB_.GLNK._CRS.RBUF */
-            }
-        }
-
-        Device (ARPC)
-        {
-            Name (_DEP, Package (0x03)  // _DEP: Dependencies
-            {
-                MMU0, 
-                GLNK, 
-                SCM0
-            })
-            Name (_HID, "QCOM0297")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-        }
-
-        Device (ARPD)
-        {
-            Name (_DEP, Package (0x02)  // _DEP: Dependencies
-            {
-                ADSP, 
-                ARPC
-            })
-            Name (_HID, "QCOM02F3")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-        }
-
-        Device (RFS0)
-        {
-            Name (_DEP, Package (0x02)  // _DEP: Dependencies
-            {
-                IPC0, 
-                UFS0
-            })
-            Name (_HID, "QCOM0235")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
-            {
-                Name (RBUF, ResourceTemplate ()
-                {
-                    Memory32Fixed (ReadWrite,
-                        0x88888888,         // Address Base
-                        0x99999999,         // Address Length
-                        _Y00)
-                    Memory32Fixed (ReadWrite,
-                        0x11111111,         // Address Base
-                        0x22222222,         // Address Length
-                        _Y01)
-                    Memory32Fixed (ReadWrite,
-                        0x33333333,         // Address Base
-                        0x44444444,         // Address Length
-                        _Y02)
-                })
-                CreateDWordField (RBUF, \_SB.RFS0._CRS._Y00._BAS, RMTA)  // _BAS: Base Address
-                CreateDWordField (RBUF, \_SB.RFS0._CRS._Y00._LEN, RMTL)  // _LEN: Length
-                CreateDWordField (RBUF, \_SB.RFS0._CRS._Y01._BAS, RFMA)  // _BAS: Base Address
-                CreateDWordField (RBUF, \_SB.RFS0._CRS._Y01._LEN, RFML)  // _LEN: Length
-                CreateDWordField (RBUF, \_SB.RFS0._CRS._Y02._BAS, RFAA)  // _BAS: Base Address
-                CreateDWordField (RBUF, \_SB.RFS0._CRS._Y02._LEN, RFAL)  // _LEN: Length
-                RMTA = RMTB /* \_SB_.RMTB */
-                RMTL = RMTX /* \_SB_.RMTX */
-                RFMA = RFMB /* \_SB_.RFMB */
-                RFML = RFMS /* \_SB_.RFMS */
-                RFAA = RFAB /* \_SB_.RFAB */
-                RFAL = RFAS /* \_SB_.RFAS */
-                Return (RBUF) /* \_SB_.RFS0._CRS.RBUF */
-            }
-
-            Method (_STA, 0, NotSerialized)  // _STA: Status
-            {
-                Return (0x0B)
-            }
-        }
-
-        Device (IPA)
-        {
-            Name (_DEP, Package (0x06)  // _DEP: Dependencies
-            {
-                PEP0, 
-                RPEN, 
-                PILC, 
-                MMU0, 
-                GSI, 
-                GLNK
-            })
-            Name (_HID, "QCOM02B3")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-            Name (_UID, Zero)  // _UID: Unique ID
-            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
-            {
-                Return (ResourceTemplate ()
-                {
-                    Memory32Fixed (ReadWrite,
-                        0x01E40000,         // Address Base
-                        0x0001FFFF,         // Address Length
-                        )
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x00000157,
-                    }
-                })
-            }
-        }
-
-        Device (GSI)
-        {
-            Name (_DEP, Package (0x01)  // _DEP: Dependencies
-            {
-                PEP0
-            })
-            Name (_HID, "QCOM02E7")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-            Name (_UID, Zero)  // _UID: Unique ID
-            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
-            {
-                Name (RBUF, ResourceTemplate ()
-                {
-                    Memory32Fixed (ReadWrite,
-                        0x01E00000,         // Address Base
-                        0x00030000,         // Address Length
-                        )
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x000001D0,
-                    }
-                })
-                Return (RBUF) /* \_SB_.GSI_._CRS.RBUF */
-            }
-        }
-
-        Device (QDIG)
-        {
-            Name (_DEP, Package (0x01)  // _DEP: Dependencies
-            {
-                GLNK
-            })
-            Name (_HID, "QCOM0225")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-        }
-
-        Device (QCDB)
-        {
-            Name (_HID, "QCOM0298")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-        }
-
-        Device (SYSM)
-        {
-            Name (_HID, "ACPI0010" /* Processor Container Device */)  // _HID: Hardware ID
-            Name (_UID, 0x00100000)  // _UID: Unique ID
-            Name (_LPI, Package (0x05)  // _LPI: Low Power Idle States
-            {
-                Zero, 
-                0x01000000, 
-                0x02, 
-                Package (0x0A)
-                {
-                    0x251C, 
-                    0x1770, 
-                    Zero, 
-                    0x20, 
-                    Zero, 
-                    Zero, 
-                    0x3300, 
-                    ResourceTemplate ()
-                    {
-                        Register (SystemMemory, 
-                            0x00,               // Bit Width
-                            0x00,               // Bit Offset
-                            0x0000000000000000, // Address
-                            ,)
-                    }, 
-
-                    ResourceTemplate ()
-                    {
-                        Register (SystemMemory, 
-                            0x00,               // Bit Width
-                            0x00,               // Bit Offset
-                            0x0000000000000000, // Address
-                            ,)
-                    }, 
-
-                    "platform.F1"
-                }, 
-
-                Package (0x0A)
-                {
-                    0x2710, 
-                    0x19C8, 
-                    One, 
-                    0x20, 
-                    Zero, 
-                    Zero, 
-                    0xC300, 
-                    ResourceTemplate ()
-                    {
-                        Register (SystemMemory, 
-                            0x00,               // Bit Width
-                            0x00,               // Bit Offset
-                            0x0000000000000000, // Address
-                            ,)
-                    }, 
-
-                    ResourceTemplate ()
-                    {
-                        Register (SystemMemory, 
-                            0x00,               // Bit Width
-                            0x00,               // Bit Offset
-                            0x0000000000000000, // Address
-                            ,)
-                    }, 
-
-                    "platform.F2"
-                }
-            })
-            Device (CLUS)
-            {
-                Name (_HID, "ACPI0010" /* Processor Container Device */)  // _HID: Hardware ID
-                Name (_UID, 0x10)  // _UID: Unique ID
-                Name (_LPI, Package (0x05)  // _LPI: Low Power Idle States
-                {
-                    Zero, 
-                    0x01000000, 
-                    0x02, 
-                    Package (0x0A)
-                    {
-                        0x170C, 
-                        0x0BB8, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        0x20, 
-                        ResourceTemplate ()
-                        {
-                            Register (SystemMemory, 
-                                0x00,               // Bit Width
-                                0x00,               // Bit Offset
-                                0x0000000000000000, // Address
-                                ,)
-                        }, 
-
-                        ResourceTemplate ()
-                        {
-                            Register (SystemMemory, 
-                                0x00,               // Bit Width
-                                0x00,               // Bit Offset
-                                0x0000000000000000, // Address
-                                ,)
-                        }, 
-
-                        "L3Cluster.D2"
-                    }, 
-
-                    Package (0x0A)
-                    {
-                        0x1770, 
-                        0x0CE4, 
-                        One, 
-                        Zero, 
-                        Zero, 
-                        0x02, 
-                        0x40, 
-                        ResourceTemplate ()
-                        {
-                            Register (SystemMemory, 
-                                0x00,               // Bit Width
-                                0x00,               // Bit Offset
-                                0x0000000000000000, // Address
-                                ,)
-                        }, 
-
-                        ResourceTemplate ()
-                        {
-                            Register (SystemMemory, 
-                                0x00,               // Bit Width
-                                0x00,               // Bit Offset
-                                0x0000000000000000, // Address
-                                ,)
-                        }, 
-
-                        "L3Cluster.D4"
-                    }
-                })
-                Device (CPU0)
-                {
-                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
-                    Name (_UID, Zero)  // _UID: Unique ID
-                    Method (_STA, 0, NotSerialized)  // _STA: Status
-                    {
-                        Return (0x0F)
-                    }
-
-                    Name (_LPI, Package (0x07)  // _LPI: Low Power Idle States
-                    {
-                        Zero, 
-                        Zero, 
-                        0x04, 
-                        Package (0x0A)
-                        {
-                            Zero, 
-                            Zero, 
-                            One, 
-                            Zero, 
-                            Zero, 
-                            Zero, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x00000000FFFFFFFF, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoSilver0.C1"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x0190, 
-                            0x64, 
-                            Zero, 
-                            Zero, 
-                            Zero, 
-                            One, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000002, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoSilver0.C2"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x1388, 
-                            0x01F4, 
-                            One, 
-                            One, 
-                            Zero, 
-                            One, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000040000003, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoSilver0.C3"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x13EC, 
-                            0x0226, 
-                            One, 
-                            One, 
-                            Zero, 
-                            0x02, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000040000004, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoSilver0.C4"
-                        }
-                    })
-                }
-
-                Device (CPU1)
-                {
-                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
-                    Name (_UID, One)  // _UID: Unique ID
-                    Method (_STA, 0, NotSerialized)  // _STA: Status
-                    {
-                        Return (0x0F)
-                    }
-
-                    Name (_LPI, Package (0x07)  // _LPI: Low Power Idle States
-                    {
-                        Zero, 
-                        Zero, 
-                        0x04, 
-                        Package (0x0A)
-                        {
-                            Zero, 
-                            Zero, 
-                            One, 
-                            Zero, 
-                            Zero, 
-                            Zero, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x00000000FFFFFFFF, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoSilver1.C1"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x0190, 
-                            0x64, 
-                            Zero, 
-                            Zero, 
-                            Zero, 
-                            One, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000002, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoSilver1.C2"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x1388, 
-                            0x01F4, 
-                            One, 
-                            One, 
-                            Zero, 
-                            One, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000040000003, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoSilver1.C3"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x13EC, 
-                            0x0226, 
-                            One, 
-                            One, 
-                            Zero, 
-                            0x02, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000040000004, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoSilver1.C4"
-                        }
-                    })
-                }
-
-                Device (CPU2)
-                {
-                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
-                    Name (_UID, 0x02)  // _UID: Unique ID
-                    Method (_STA, 0, NotSerialized)  // _STA: Status
-                    {
-                        Return (0x0F)
-                    }
-
-                    Name (_LPI, Package (0x07)  // _LPI: Low Power Idle States
-                    {
-                        Zero, 
-                        Zero, 
-                        0x04, 
-                        Package (0x0A)
-                        {
-                            Zero, 
-                            Zero, 
-                            One, 
-                            Zero, 
-                            Zero, 
-                            Zero, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x00000000FFFFFFFF, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoSilver2.C1"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x0190, 
-                            0x64, 
-                            Zero, 
-                            Zero, 
-                            Zero, 
-                            One, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000002, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoSilver2.C2"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x1388, 
-                            0x01F4, 
-                            One, 
-                            One, 
-                            Zero, 
-                            One, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000040000003, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoSilver2.C3"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x13EC, 
-                            0x0226, 
-                            One, 
-                            One, 
-                            Zero, 
-                            0x02, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000040000004, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoSilver2.C4"
-                        }
-                    })
-                }
-
-                Device (CPU3)
-                {
-                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
-                    Name (_UID, 0x03)  // _UID: Unique ID
-                    Method (_STA, 0, NotSerialized)  // _STA: Status
-                    {
-                        Return (0x0F)
-                    }
-
-                    Name (_LPI, Package (0x07)  // _LPI: Low Power Idle States
-                    {
-                        Zero, 
-                        Zero, 
-                        0x04, 
-                        Package (0x0A)
-                        {
-                            Zero, 
-                            Zero, 
-                            One, 
-                            Zero, 
-                            Zero, 
-                            Zero, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x00000000FFFFFFFF, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoSilver3.C1"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x0190, 
-                            0x64, 
-                            Zero, 
-                            Zero, 
-                            Zero, 
-                            One, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000002, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoSilver3.C2"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x1388, 
-                            0x01F4, 
-                            One, 
-                            One, 
-                            Zero, 
-                            One, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000040000003, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoSilver3.C3"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x13EC, 
-                            0x0226, 
-                            One, 
-                            One, 
-                            Zero, 
-                            0x02, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000040000004, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoSilver3.C4"
-                        }
-                    })
-                }
-
-                Device (CPU4)
-                {
-                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
-                    Name (_UID, 0x04)  // _UID: Unique ID
-                    Method (_STA, 0, NotSerialized)  // _STA: Status
-                    {
-                        Return (0x0F)
-                    }
-
-                    Name (_LPI, Package (0x07)  // _LPI: Low Power Idle States
-                    {
-                        Zero, 
-                        Zero, 
-                        0x04, 
-                        Package (0x0A)
-                        {
-                            Zero, 
-                            Zero, 
-                            One, 
-                            Zero, 
-                            Zero, 
-                            Zero, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x00000000FFFFFFFF, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoGold0.C1"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x0190, 
-                            0x64, 
-                            Zero, 
-                            Zero, 
-                            Zero, 
-                            One, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000002, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoGold0.C2"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x03E8, 
-                            0x028A, 
-                            One, 
-                            One, 
-                            Zero, 
-                            One, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000040000003, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoGold0.C3"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x05DC, 
-                            0x044C, 
-                            One, 
-                            One, 
-                            Zero, 
-                            0x02, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000040000004, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoGold0.C4"
-                        }
-                    })
-                }
-
-                Device (CPU5)
-                {
-                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
-                    Name (_UID, 0x05)  // _UID: Unique ID
-                    Method (_STA, 0, NotSerialized)  // _STA: Status
-                    {
-                        Return (0x0F)
-                    }
-
-                    Name (_LPI, Package (0x07)  // _LPI: Low Power Idle States
-                    {
-                        Zero, 
-                        Zero, 
-                        0x04, 
-                        Package (0x0A)
-                        {
-                            Zero, 
-                            Zero, 
-                            One, 
-                            Zero, 
-                            Zero, 
-                            Zero, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x00000000FFFFFFFF, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoGold1.C1"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x0190, 
-                            0x64, 
-                            Zero, 
-                            Zero, 
-                            Zero, 
-                            One, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000002, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoGold1.C2"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x03E8, 
-                            0x028A, 
-                            One, 
-                            One, 
-                            Zero, 
-                            One, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000040000003, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoGold1.C3"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x05DC, 
-                            0x044C, 
-                            One, 
-                            One, 
-                            Zero, 
-                            0x02, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000040000004, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoGold1.C4"
-                        }
-                    })
-                }
-
-                Device (CPU6)
-                {
-                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
-                    Name (_UID, 0x06)  // _UID: Unique ID
-                    Method (_STA, 0, NotSerialized)  // _STA: Status
-                    {
-                        Return (0x0F)
-                    }
-
-                    Name (_LPI, Package (0x07)  // _LPI: Low Power Idle States
-                    {
-                        Zero, 
-                        Zero, 
-                        0x04, 
-                        Package (0x0A)
-                        {
-                            Zero, 
-                            Zero, 
-                            One, 
-                            Zero, 
-                            Zero, 
-                            Zero, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x00000000FFFFFFFF, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoGold2.C1"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x0190, 
-                            0x64, 
-                            Zero, 
-                            Zero, 
-                            Zero, 
-                            One, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000002, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoGold2.C2"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x03E8, 
-                            0x028A, 
-                            One, 
-                            One, 
-                            Zero, 
-                            One, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000040000003, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoGold2.C3"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x05DC, 
-                            0x044C, 
-                            One, 
-                            One, 
-                            Zero, 
-                            0x02, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000040000004, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoGold2.C4"
-                        }
-                    })
-                }
-
-                Device (CPU7)
-                {
-                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
-                    Name (_UID, 0x07)  // _UID: Unique ID
-                    Method (_STA, 0, NotSerialized)  // _STA: Status
-                    {
-                        Return (0x0F)
-                    }
-
-                    Name (_LPI, Package (0x07)  // _LPI: Low Power Idle States
-                    {
-                        Zero, 
-                        Zero, 
-                        0x04, 
-                        Package (0x0A)
-                        {
-                            Zero, 
-                            Zero, 
-                            One, 
-                            Zero, 
-                            Zero, 
-                            Zero, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x00000000FFFFFFFF, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoGold3.C1"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x0190, 
-                            0x64, 
-                            Zero, 
-                            Zero, 
-                            Zero, 
-                            One, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000002, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoGold3.C2"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x03E8, 
-                            0x028A, 
-                            One, 
-                            One, 
-                            Zero, 
-                            One, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000040000003, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoGold3.C3"
-                        }, 
-
-                        Package (0x0A)
-                        {
-                            0x05DC, 
-                            0x044C, 
-                            One, 
-                            One, 
-                            Zero, 
-                            0x02, 
-                            ResourceTemplate ()
-                            {
-                                Register (FFixedHW, 
-                                    0x20,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000040000004, // Address
-                                    0x03,               // Access Size
-                                    )
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            ResourceTemplate ()
-                            {
-                                Register (SystemMemory, 
-                                    0x00,               // Bit Width
-                                    0x00,               // Bit Offset
-                                    0x0000000000000000, // Address
-                                    ,)
-                            }, 
-
-                            "KryoGold3.C4"
-                        }
-                    })
-                }
-            }
-        }
-
-        Device (QRNG)
-        {
-            Name (_DEP, Package (0x01)  // _DEP: Dependencies
-            {
-                PEP0
-            })
-            Name (_HID, "QCOM02FE")  // _HID: Hardware ID
-            Name (_UID, Zero)  // _UID: Unique ID
-            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
-            {
-                Name (RBUF, ResourceTemplate ()
-                {
-                    Memory32Fixed (ReadWrite,
-                        0x00793000,         // Address Base
-                        0x00001000,         // Address Length
-                        )
-                })
-                Return (RBUF) /* \_SB_.QRNG._CRS.RBUF */
-            }
-        }
-
-        Device (GPS)
-        {
-            Name (_DEP, Package (0x01)  // _DEP: Dependencies
-            {
-                GLNK
-            })
-            Name (_HID, "QCOM02B6")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-            Name (_CID, "ACPIQCOM24B4")  // _CID: Compatible ID
-            Name (_UID, Zero)  // _UID: Unique ID
-        }
-
-        Device (QGP0)
-        {
-            Name (_HID, "QCOM02F4")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-            Name (_UID, Zero)  // _UID: Unique ID
-            Name (_CCA, Zero)  // _CCA: Cache Coherency Attribute
-            Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
-            {
-                Name (RBUF, ResourceTemplate ()
-                {
-                    Memory32Fixed (ReadWrite,
-                        0x00804000,         // Address Base
-                        0x00050000,         // Address Length
-                        )
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x00000119,
-                    }
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x0000011B,
-                    }
-                })
-                Return (RBUF) /* \_SB_.QGP0._CRS.RBUF */
-            }
-
-            Method (GPII, 0, Serialized)
-            {
-                Return (Package (0x02)
-                {
-                    Package (0x03)
-                    {
-                        Zero, 
-                        0x05, 
-                        0x0119
-                    }, 
-
-                    Package (0x03)
-                    {
-                        Zero, 
-                        0x07, 
-                        0x011B
-                    }
-                })
-            }
-        }
-
-        Device (QGP1)
-        {
-            Name (_HID, "QCOM02F4")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-            Name (_UID, One)  // _UID: Unique ID
-            Name (_CCA, Zero)  // _CCA: Cache Coherency Attribute
-            Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
-            {
-                Name (RBUF, ResourceTemplate ()
-                {
-                    Memory32Fixed (ReadWrite,
-                        0x00A04000,         // Address Base
-                        0x00050000,         // Address Length
-                        )
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x00000138,
-                    }
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
-                    {
-                        0x0000013A,
-                    }
-                })
-                Return (RBUF) /* \_SB_.QGP1._CRS.RBUF */
-            }
-
-            Method (GPII, 0, Serialized)
-            {
-                Return (Package (0x02)
-                {
-                    Package (0x03)
-                    {
-                        One, 
-                        One, 
-                        0x0138
-                    }, 
-
-                    Package (0x03)
-                    {
-                        One, 
-                        0x03, 
-                        0x013A
-                    }
-                })
-            }
-        }
-
-        Device (SARM)
-        {
-            Name (_HID, "QCOM0301")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-        }
-
-        Scope (\_SB)
-        {
-            Device (WBDI)
-            {
-                Name (_HID, "SAM0909")  // _HID: Hardware ID
-                Name (_UID, Zero)  // _UID: Unique ID
-                Name (_SUB, "RENEGA0E")  // _SUB: Subsystem ID
-                Name (_DEP, Package (0x02)  // _DEP: Dependencies
-                {
-                    GIO0, 
-                    SCM0
-                })
-                Method (_STA, 0, NotSerialized)  // _STA: Status
-                {
-                    Return (0x0F)
-                }
-
-                Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
-                {
-                    Name (RBUF, ResourceTemplate ()
-                    {
-                        GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionNone,
-                            "\\_SB.GIO0", 0x00, ResourceConsumer, ,
-                            )
-                            {   // Pin list
-                                0x003E
-                            }
-                        GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionNone,
-                            "\\_SB.GIO0", 0x00, ResourceConsumer, ,
-                            )
-                            {   // Pin list
-                                0x003B
-                            }
-                        GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000,
-                            "\\_SB.GIO0", 0x00, ResourceConsumer, ,
-                            )
-                            {   // Pin list
-                                0x003C
-                            }
-                    })
-                    Return (RBUF) /* \_SB_.WBDI._CRS.RBUF */
-                }
-            }
-        }
-
-        Scope (\_SB)
-        {
-            Name (GRST, Zero)
-        }
-
-        Device (SEN2)
-        {
-            Name (_DEP, Package (0x03)  // _DEP: Dependencies
-            {
-                IPC0, 
-                SCSS, 
-                ARPC
-            })
-            Name (_HID, "QCOM0308")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-            Name (_CID, "QCOM02A2")  // _CID: Compatible ID
-        }
-
-        Device (LID0)
-        {
-            Name (_HID, "PNP0C0D" /* Lid Device */)  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-            Name (LIDB, One)
-            Method (_LID, 0, NotSerialized)  // _LID: Lid Status
-            {
-                Return (LIDB) /* \_SB_.LID0.LIDB */
-            }
-        }
-
-        Method (ADDR, 0, NotSerialized)
-        {
-            If ((SVMJ == One))
-            {
-                Return (0x0390B000)
-            }
-            ElseIf ((SVMJ == 0x02))
-            {
-                Return (0x0350B000)
-            }
-        }
-
-        OperationRegion (NM11, SystemMemory, ADDR (), 0x14)
-        Field (NM11, DWordAcc, NoLock, Preserve)
-        {
-            PI1C,   32, 
-            PIN1,   32, 
-            PI1N,   32, 
-            PI1S,   32, 
-            PI1L,   32
-        }
-
-        Method (_MID, 0, Serialized)
-        {
-            Name (NMID, Zero)
-            NMID = PIN1 /* \_SB_.PIN1 */
-            Return (NMID) /* \_SB_._MID.NMID */
-        }
-
-        Scope (\_SB)
-        {
-            Device (AGNT)
-            {
-                Name (_ADR, Zero)  // _ADR: Address
-                Name (_HID, "SAM0603")  // _HID: Hardware ID
-                Name (_CID, "SAM0603")  // _CID: Compatible ID
-                Name (_SUB, "RENEGA0E")  // _SUB: Subsystem ID
-                Name (_UID, One)  // _UID: Unique ID
-                Name (_STA, 0x0F)  // _STA: Status
-            }
-        }
-
-        Method (ADBG, 1, Serialized)
-        {
-        }
-
-        Device (UCP0)
-        {
-            Name (_HID, "QCOM02D0")  // _HID: Hardware ID
-            Name (_DEP, Package (0x03)  // _DEP: Dependencies
-            {
-                PEP0, 
-                PTCC, 
-                URS0
-            })
-            Device (CON0)
-            {
-                Name (_ADR, Zero)  // _ADR: Address
-                Name (_PLD, Package (0x01)  // _PLD: Physical Location of Device
-                {
-                    ToPLD (
-                        PLD_Revision           = 0x2,
-                        PLD_IgnoreColor        = 0x1,
-                        PLD_Red                = 0x0,
-                        PLD_Green              = 0x0,
-                        PLD_Blue               = 0x0,
-                        PLD_Width              = 0x0,
-                        PLD_Height             = 0x0,
-                        PLD_UserVisible        = 0x1,
-                        PLD_Dock               = 0x0,
-                        PLD_Lid                = 0x0,
-                        PLD_Panel              = "BACK",
-                        PLD_VerticalPosition   = "CENTER",
-                        PLD_HorizontalPosition = "LEFT",
-                        PLD_Shape              = "VERTICALRECTANGLE",
-                        PLD_GroupOrientation   = 0x0,
-                        PLD_GroupToken         = 0x0,
-                        PLD_GroupPosition      = 0x1,
-                        PLD_Bay                = 0x0,
-                        PLD_Ejectable          = 0x0,
-                        PLD_EjectRequired      = 0x0,
-                        PLD_CabinetNumber      = 0x0,
-                        PLD_CardCageNumber     = 0x0,
-                        PLD_Reference          = 0x0,
-                        PLD_Rotation           = 0x0,
-                        PLD_Order              = 0x0,
-                        PLD_VerticalOffset     = 0xFFFF,
-                        PLD_HorizontalOffset   = 0xFFFF)
-
-                })
-                Name (_UPC, Package (0x04)  // _UPC: USB Port Capabilities
-                {
-                    One, 
-                    0x09, 
-                    Zero, 
-                    Zero
-                })
-                Name (_DSD, Package (0x02)  // _DSD: Device-Specific Data
-                {
-                    ToUUID ("6b856e62-40f4-4688-bd46-5e888a2260de") /* Unknown UUID */, 
-                    Package (0x0A)
-                    {
-                        Package (0x02)
-                        {
-                            One, 
-                            0x04
-                        }, 
-
-                        Package (0x02)
-                        {
-                            0x02, 
-                            0x03
-                        }, 
-
-                        Package (0x02)
-                        {
-                            0x03, 
-                            Zero
-                        }, 
-
-                        Package (0x02)
-                        {
-                            0x04, 
-                            One
-                        }, 
-
-                        Package (0x02)
-                        {
-                            0x05, 
-                            0x03
-                        }, 
-
-                        Package (0x02)
-                        {
-                            0x06, 
-                            Package (0x01)
-                            {
-                                0x0001905A
-                            }
-                        }, 
-
-                        Package (0x02)
-                        {
-                            0x07, 
-                            Package (0x02)
-                            {
-                                0x0001912C, 
-                                0x0002D0C8
-                            }
-                        }, 
-
-                        Package (0x02)
-                        {
-                            0x08, 
-                            Package (0x02)
-                            {
-                                0xFF01, 
-                                0x3C86
-                            }
-                        }, 
-
-                        Package (0x02)
-                        {
-                            0x09, 
-                            One
-                        }, 
-
-                        Package (0x02)
-                        {
-                            0x0A, 
-                            One
-                        }
-                    }
-                })
-            }
-
-            Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
-            {
-                While (One)
-                {
-                    Name (_T_0, Buffer (One)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                    {
-                         0x00                                             // .
-                    })
-                    CopyObject (ToBuffer (Arg0), _T_0) /* \_SB_.UCP0._DSM._T_0 */
-                    If ((_T_0 == ToUUID ("18de299f-9476-4fc9-b43b-8aeb713ed751") /* Unknown UUID */))
-                    {
-                        While (One)
-                        {
-                            Name (_T_1, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            _T_1 = ToInteger (Arg2)
-                            If ((_T_1 == Zero))
-                            {
-                                While (One)
-                                {
-                                    Name (_T_2, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                                    _T_2 = ToInteger (Arg1)
-                                    If ((_T_2 == Zero))
-                                    {
-                                        Return (Buffer (One)
-                                        {
-                                             0x01                                             // .
-                                        })
-                                        Break
-                                    }
-                                    Else
-                                    {
-                                        Return (Buffer (One)
-                                        {
-                                             0x01                                             // .
-                                        })
-                                        Break
-                                    }
-
-                                    Break
-                                }
-
-                                Return (Buffer (One)
-                                {
-                                     0x00                                             // .
-                                })
-                                Break
-                            }
-                            ElseIf ((_T_1 == One))
-                            {
-                                While (One)
-                                {
-                                    Name (_T_3, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                                    _T_3 = ToInteger (Arg3)
-                                    If ((_T_3 == Zero))
-                                    {
-                                        Return (Package (0x01)
-                                        {
-                                            0x36019050
-                                        })
-                                        Break
-                                    }
-                                    ElseIf ((_T_3 == One))
-                                    {
-                                        Return (Package (0x01)
-                                        {
-                                            0x3601912C
-                                        })
-                                        Break
-                                    }
-                                    Else
-                                    {
-                                        Return (Package (0x01)
-                                        {
-                                            Zero
-                                        })
-                                        Break
-                                    }
-
-                                    Break
-                                }
-                            }
-                            Else
-                            {
-                                Return (Buffer (One)
-                                {
-                                     0x00                                             // .
-                                })
-                                Break
-                            }
-
-                            Break
-                        }
-                    }
-                    Else
-                    {
-                        Return (Buffer (One)
-                        {
-                             0x00                                             // .
-                        })
-                        Break
-                    }
-
-                    Break
+                    })
+                }
+                Else
+                {
+                    Local0 = Arg0
                 }
-            }
-
-            Method (CCOT, 2, NotSerialized)
-            {
-                CCST = Arg0
-                HSFL = Arg1
-            }
 
-            Method (CCVL, 0, NotSerialized)
-            {
-                Return (CCST) /* \_SB_.CCST */
-            }
+                If ((Arg1 > 0x1000))
+                {
+                    Local1 = 0x1000
+                }
+                Else
+                {
+                    Local1 = Arg1
+                }
 
-            Method (HPDS, 0, NotSerialized)
-            {
-                Notify (GPU0, 0x94) // Device-Specific
-            }
+                If (((Local0 + Local1) > SizeOf (Local2)))
+                {
+                    Local1 = (SizeOf (Local2) - Local0)
+                }
 
-            Method (HPDF, 2, NotSerialized)
-            {
-                HPDB = Arg0
-                PINA = Arg1
-                Notify (GPU0, HPDB)
+                CreateField (Local2, (0x08 * Local0), (0x08 * Local1), RBUF)
+                Return (RBUF) /* \_SB_.GPU0._ROM.RBUF */
             }
 
-            Method (HPDV, 0, NotSerialized)
+            Method (PIGC, 2, NotSerialized)
             {
-                Return (HPDB) /* \_SB_.HPDB */
+                Name (RBUF, Buffer (One)
+                {
+                     0x00                                             // .
+                })
+                Return (RBUF) /* \_SB_.GPU0.PIGC.RBUF */
             }
 
-            Method (PINV, 0, NotSerialized)
+            Method (PPCC, 2, NotSerialized)
             {
-                Return (PINA) /* \_SB_.PINA */
+                Name (RBUF, Buffer (One)
+                {
+                     0x00                                             // .
+                })
+                Return (RBUF) /* \_SB_.GPU0.PPCC.RBUF */
             }
-        }
 
-        Name (QUFN, Zero)
-        Name (DPP0, Buffer (One)
-        {
-             0x00                                             // .
-        })
-        Device (URS0)
-        {
-            Method (URSI, 0, NotSerialized)
+            Method (PGCT, 2, NotSerialized)
             {
-                If ((QUFN == Zero))
-                {
-                    Return ("QCOM0304")
-                }
-                Else
+                Name (RBUF, Buffer (One)
                 {
-                    Return ("QCOM0305")
-                }
+                     0x00                                             // .
+                })
+                Return (RBUF) /* \_SB_.GPU0.PGCT.RBUF */
             }
 
-            Alias (URSI, _HID)
-            Name (_CID, "PNP0CA1")  // _CID: Compatible ID
-            Alias (PSUB, _SUB)
-            Name (_UID, Zero)  // _UID: Unique ID
-            Name (_CCA, Zero)  // _CCA: Cache Coherency Attribute
-            Name (_DEP, Package (0x01)  // _DEP: Dependencies
-            {
-                PEP0
-            })
-            Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
-            {
-                Memory32Fixed (ReadWrite,
-                    0x0A600000,         // Address Base
-                    0x000FFFFF,         // Address Length
-                    )
-            })
-            Device (USB0)
+            Method (PLGC, 3, NotSerialized)
             {
-                Name (_ADR, Zero)  // _ADR: Address
-                Name (_S0W, 0x03)  // _S0W: S0 Device Wake State
-                Name (_PLD, Package (0x01)  // _PLD: Physical Location of Device
-                {
-                    ToPLD (
-                        PLD_Revision           = 0x2,
-                        PLD_IgnoreColor        = 0x1,
-                        PLD_Red                = 0x0,
-                        PLD_Green              = 0x0,
-                        PLD_Blue               = 0x0,
-                        PLD_Width              = 0x0,
-                        PLD_Height             = 0x0,
-                        PLD_UserVisible        = 0x1,
-                        PLD_Dock               = 0x0,
-                        PLD_Lid                = 0x0,
-                        PLD_Panel              = "BACK",
-                        PLD_VerticalPosition   = "CENTER",
-                        PLD_HorizontalPosition = "LEFT",
-                        PLD_Shape              = "VERTICALRECTANGLE",
-                        PLD_GroupOrientation   = 0x0,
-                        PLD_GroupToken         = 0x0,
-                        PLD_GroupPosition      = 0x1,
-                        PLD_Bay                = 0x0,
-                        PLD_Ejectable          = 0x0,
-                        PLD_EjectRequired      = 0x0,
-                        PLD_CabinetNumber      = 0x0,
-                        PLD_CardCageNumber     = 0x0,
-                        PLD_Reference          = 0x0,
-                        PLD_Rotation           = 0x0,
-                        PLD_Order              = 0x0,
-                        PLD_VerticalOffset     = 0xFFFF,
-                        PLD_HorizontalOffset   = 0xFFFF)
-
-                })
-                Name (_UPC, Package (0x04)  // _UPC: USB Port Capabilities
+                Name (TBUF, Buffer (One)
                 {
-                    One, 
-                    0x09, 
-                    Zero, 
-                    Zero
+                     0x00                                             // .
                 })
-                Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
+                If ((Arg1 >= SizeOf (TBUF)))
                 {
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, )
-                    {
-                        0x000000A5,
-                    }
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, SharedAndWake, ,, )
-                    {
-                        0x0000017A,
-                    }
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, SharedAndWake, ,, )
-                    {
-                        0x00000206,
-                    }
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, SharedAndWake, ,, )
-                    {
-                        0x00000208,
-                    }
-                    Interrupt (ResourceConsumer, Edge, ActiveHigh, SharedAndWake, ,, )
+                    Return (Buffer (One)
                     {
-                        0x00000209,
-                    }
-                })
-                Method (_STA, 0, NotSerialized)  // _STA: Status
+                         0x00                                             // .
+                    })
+                }
+                Else
                 {
-                    Return (0x0F)
+                    Local1 = Arg1
                 }
 
-                Method (DPM0, 1, NotSerialized)
+                If ((Arg2 > 0x1000))
                 {
-                    DPP0 = Arg0
-                    Notify (PEP0, 0xA0) // Device-Specific
+                    Local2 = 0x1000
                 }
-
-                Method (CCVL, 0, NotSerialized)
+                Else
                 {
-                    Return (CCST) /* \_SB_.CCST */
+                    Local2 = Arg2
                 }
 
-                Method (HSEN, 0, NotSerialized)
+                If (((Local1 + Local2) > SizeOf (TBUF)))
                 {
-                    Return (HSFL) /* \_SB_.HSFL */
+                    Local2 = (SizeOf (TBUF) - Local1)
                 }
 
-                Name (HSEI, ResourceTemplate ()
+                CreateField (TBUF, (0x08 * Local1), (0x08 * Local2), RBUF)
+                Return (RBUF) /* \_SB_.GPU0.PLGC.RBUF */
+            }
+
+            Method (HSIC, 2, NotSerialized)
+            {
+                Name (RBUF, Buffer (One)
                 {
-                    GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionNone,
-                        "\\_SB.GIO0", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x002B
-                        }
+                     0x00                                             // .
                 })
-                Scope (^^GIO0)
+                Return (RBUF) /* \_SB_.GPU0.HSIC.RBUF */
+            }
+
+            Method (PGMT, 2, NotSerialized)
+            {
+                Name (TBUF, Buffer (One)
                 {
-                    OperationRegion (HLEN, GeneralPurposeIo, Zero, One)
+                     0x00                                             // .
+                })
+                If ((Arg0 >= SizeOf (TBUF)))
+                {
+                    Return (Buffer (One)
+                    {
+                         0x00                                             // .
+                    })
                 }
-
-                Field (^^GIO0.HLEN, ByteAcc, NoLock, Preserve)
+                Else
                 {
-                    Connection (HSEI), 
-                    MOD1,   1
+                    Local0 = Arg0
                 }
 
-                Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
+                If ((Arg1 > 0x1000))
                 {
-                    While (One)
-                    {
-                        Name (_T_0, Buffer (One)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                        {
-                             0x00                                             // .
-                        })
-                        CopyObject (ToBuffer (Arg0), _T_0) /* \_SB_.URS0.USB0._DSM._T_0 */
-                        If ((_T_0 == ToUUID ("ce2ee385-00e6-48cb-9f05-2edb927c4899") /* USB Controller */))
-                        {
-                            While (One)
-                            {
-                                Name (_T_1, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                                _T_1 = ToInteger (Arg2)
-                                If ((_T_1 == Zero))
-                                {
-                                    While (One)
-                                    {
-                                        Name (_T_2, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                                        _T_2 = ToInteger (Arg1)
-                                        If ((_T_2 == Zero))
-                                        {
-                                            Return (Buffer (One)
-                                            {
-                                                 0x1D                                             // .
-                                            })
-                                            Break
-                                        }
-                                        Else
-                                        {
-                                            Return (Buffer (One)
-                                            {
-                                                 0x01                                             // .
-                                            })
-                                            Break
-                                        }
-
-                                        Break
-                                    }
-
-                                    Return (Buffer (One)
-                                    {
-                                         0x00                                             // .
-                                    })
-                                    Break
-                                }
-                                ElseIf ((_T_1 == 0x02))
-                                {
-                                    Return (Zero)
-                                    Break
-                                }
-                                ElseIf ((_T_1 == 0x03))
-                                {
-                                    Return (One)
-                                    Break
-                                }
-                                ElseIf ((_T_1 == 0x04))
-                                {
-                                    Return (0x02)
-                                    Break
-                                }
-                                Else
-                                {
-                                    Return (Buffer (One)
-                                    {
-                                         0x00                                             // .
-                                    })
-                                    Break
-                                }
-
-                                Break
-                            }
-                        }
-                        ElseIf ((_T_0 == ToUUID ("a9a82a56-95a1-4b4a-b014-3be47df1b7d5") /* Unknown UUID */))
-                        {
-                            While (One)
-                            {
-                                Name (_T_3, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                                _T_3 = ToInteger (Arg1)
-                                If ((_T_3 == One))
-                                {
-                                    While (One)
-                                    {
-                                        Name (_T_4, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                                        _T_4 = ToInteger (Arg2)
-                                        If ((_T_4 == One))
-                                        {
-                                            ADBG ("MOD1+")
-                                            MOD1 = One
-                                            Return (Buffer (One)
-                                            {
-                                                 0x01                                             // .
-                                            })
-                                        }
-                                        ElseIf ((_T_4 == Zero))
-                                        {
-                                            ADBG ("MOD1-")
-                                            MOD1 = Zero
-                                            Return (Buffer (One)
-                                            {
-                                                 0x01                                             // .
-                                            })
-                                        }
-                                        Else
-                                        {
-                                            Return (Buffer (One)
-                                            {
-                                                 0x00                                             // .
-                                            })
-                                        }
-
-                                        Break
-                                    }
-                                }
-                                Else
-                                {
-                                    Return (Buffer (One)
-                                    {
-                                         0x00                                             // .
-                                    })
-                                }
-
-                                Break
-                            }
-                        }
-                        Else
-                        {
-                            Return (Buffer (One)
-                            {
-                                 0x00                                             // .
-                            })
-                            Break
-                        }
-
-                        Break
-                    }
+                    Local1 = 0x1000
                 }
-
-                Method (PHYC, 0, NotSerialized)
+                Else
                 {
-                    Name (CFG0, Package (0x01)
-                    {
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E2198, 
-                            0x20
-                        }
-                    })
-                    Return (CFG0) /* \_SB_.URS0.USB0.PHYC.CFG0 */
+                    Local1 = Arg1
                 }
 
-                Device (RHUB)
+                If (((Local0 + Local1) > SizeOf (TBUF)))
                 {
-                    Name (_ADR, Zero)  // _ADR: Address
-                    Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
-                    {
-                        While (One)
-                        {
-                            Name (_T_0, Buffer (One)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                            {
-                                 0x00                                             // .
-                            })
-                            CopyObject (ToBuffer (Arg0), _T_0) /* \_SB_.URS0.USB0.RHUB._DSM._T_0 */
-                            If ((_T_0 == ToUUID ("a9a82a56-95a1-4b4a-b014-3be47df1b7d5") /* Unknown UUID */))
-                            {
-                                While (One)
-                                {
-                                    Name (_T_1, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                                    _T_1 = ToInteger (Arg1)
-                                    If ((_T_1 == One))
-                                    {
-                                        While (One)
-                                        {
-                                            Name (_T_2, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                                            _T_2 = ToInteger (Arg2)
-                                            If ((_T_2 == One))
-                                            {
-                                                ADBG ("MOD1++")
-                                                MOD1 = One
-                                                Return (Buffer (One)
-                                                {
-                                                     0x01                                             // .
-                                                })
-                                            }
-                                            ElseIf ((_T_2 == Zero))
-                                            {
-                                                ADBG ("MOD1--")
-                                                MOD1 = Zero
-                                                Return (Buffer (One)
-                                                {
-                                                     0x01                                             // .
-                                                })
-                                            }
-                                            Else
-                                            {
-                                                Return (Buffer (One)
-                                                {
-                                                     0x00                                             // .
-                                                })
-                                            }
-
-                                            Break
-                                        }
-                                    }
-                                    Else
-                                    {
-                                        Return (Buffer (One)
-                                        {
-                                             0x00                                             // .
-                                        })
-                                    }
-
-                                    Break
-                                }
-                            }
-                            Else
-                            {
-                                Return (Buffer (One)
-                                {
-                                     0x00                                             // .
-                                })
-                                Break
-                            }
-
-                            Break
-                        }
-                    }
+                    Local1 = (SizeOf (TBUF) - Local0)
                 }
+
+                CreateField (TBUF, (0x08 * Local0), (0x08 * Local1), RBUF)
+                Return (RBUF) /* \_SB_.GPU0.PGMT.RBUF */
             }
 
-            Device (UFN0)
+            Method (PWGM, 2, NotSerialized)
             {
-                Name (_ADR, One)  // _ADR: Address
-                Name (_S0W, 0x03)  // _S0W: S0 Device Wake State
-                Name (_PLD, Package (0x01)  // _PLD: Physical Location of Device
-                {
-                    ToPLD (
-                        PLD_Revision           = 0x2,
-                        PLD_IgnoreColor        = 0x1,
-                        PLD_Red                = 0x0,
-                        PLD_Green              = 0x0,
-                        PLD_Blue               = 0x0,
-                        PLD_Width              = 0x0,
-                        PLD_Height             = 0x0,
-                        PLD_UserVisible        = 0x1,
-                        PLD_Dock               = 0x0,
-                        PLD_Lid                = 0x0,
-                        PLD_Panel              = "BACK",
-                        PLD_VerticalPosition   = "CENTER",
-                        PLD_HorizontalPosition = "LEFT",
-                        PLD_Shape              = "VERTICALRECTANGLE",
-                        PLD_GroupOrientation   = 0x0,
-                        PLD_GroupToken         = 0x0,
-                        PLD_GroupPosition      = 0x1,
-                        PLD_Bay                = 0x0,
-                        PLD_Ejectable          = 0x0,
-                        PLD_EjectRequired      = 0x0,
-                        PLD_CabinetNumber      = 0x0,
-                        PLD_CardCageNumber     = 0x0,
-                        PLD_Reference          = 0x0,
-                        PLD_Rotation           = 0x0,
-                        PLD_Order              = 0x0,
-                        PLD_VerticalOffset     = 0xFFFF,
-                        PLD_HorizontalOffset   = 0xFFFF)
-
-                })
-                Name (_UPC, Package (0x04)  // _UPC: USB Port Capabilities
+                Name (TBUF, Buffer (One)
                 {
-                    One, 
-                    0x09, 
-                    Zero, 
-                    Zero
+                     0x00                                             // .
                 })
-                Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
+                If ((Arg0 >= SizeOf (TBUF)))
                 {
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, )
-                    {
-                        0x000000A5,
-                    }
-                    Interrupt (ResourceConsumer, Level, ActiveHigh, SharedAndWake, ,, )
+                    Return (Buffer (One)
                     {
-                        0x000000A2,
-                    }
-                })
-                Method (CCVL, 0, NotSerialized)
+                         0x00                                             // .
+                    })
+                }
+                Else
+                {
+                    Local0 = Arg0
+                }
+
+                If ((Arg1 > 0x1000))
                 {
-                    Return (CCST) /* \_SB_.CCST */
+                    Local1 = 0x1000
+                }
+                Else
+                {
+                    Local1 = Arg1
                 }
 
-                Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
+                If (((Local0 + Local1) > SizeOf (TBUF)))
                 {
-                    While (One)
-                    {
-                        Name (_T_0, Buffer (One)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                        {
-                             0x00                                             // .
-                        })
-                        CopyObject (ToBuffer (Arg0), _T_0) /* \_SB_.URS0.UFN0._DSM._T_0 */
-                        If ((_T_0 == ToUUID ("fe56cfeb-49d5-4378-a8a2-2978dbe54ad2") /* Unknown UUID */))
-                        {
-                            While (One)
-                            {
-                                Name (_T_1, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                                _T_1 = ToInteger (Arg2)
-                                If ((_T_1 == Zero))
-                                {
-                                    While (One)
-                                    {
-                                        Name (_T_2, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                                        _T_2 = ToInteger (Arg1)
-                                        If ((_T_2 == Zero))
-                                        {
-                                            Return (Buffer (One)
-                                            {
-                                                 0x03                                             // .
-                                            })
-                                            Break
-                                        }
-                                        Else
-                                        {
-                                            Return (Buffer (One)
-                                            {
-                                                 0x01                                             // .
-                                            })
-                                            Break
-                                        }
+                    Local1 = (SizeOf (TBUF) - Local0)
+                }
 
-                                        Break
-                                    }
+                CreateField (TBUF, (0x08 * Local0), (0x08 * Local1), RBUF)
+                Return (RBUF) /* \_SB_.GPU0.PWGM.RBUF */
+            }
 
-                                    Return (Buffer (One)
-                                    {
-                                         0x00                                             // .
-                                    })
-                                    Break
-                                }
-                                ElseIf ((_T_1 == One))
-                                {
-                                    Return (0x20)
-                                    Break
-                                }
-                                Else
-                                {
-                                    Return (Buffer (One)
-                                    {
-                                         0x00                                             // .
-                                    })
-                                    Break
-                                }
+            Method (PGRT, 2, NotSerialized)
+            {
+                Name (RBUF, Buffer (One)
+                {
+                     0x00                                             // .
+                })
+                Return (RBUF) /* \_SB_.GPU0.PGRT.RBUF */
+            }
 
-                                Break
-                            }
-                        }
-                        ElseIf ((_T_0 == ToUUID ("18de299f-9476-4fc9-b43b-8aeb713ed751") /* Unknown UUID */))
-                        {
-                            While (One)
-                            {
-                                Name (_T_3, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                                _T_3 = ToInteger (Arg2)
-                                If ((_T_3 == Zero))
-                                {
-                                    While (One)
-                                    {
-                                        Name (_T_4, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
-                                        _T_4 = ToInteger (Arg1)
-                                        If ((_T_4 == Zero))
-                                        {
-                                            Return (Buffer (One)
-                                            {
-                                                 0x03                                             // .
-                                            })
-                                            Break
-                                        }
-                                        Else
-                                        {
-                                            Return (Buffer (One)
-                                            {
-                                                 0x01                                             // .
-                                            })
-                                            Break
-                                        }
+            Method (PBRT, 2, NotSerialized)
+            {
+                Name (RBUF, Buffer (One)
+                {
+                     0x00                                             // .
+                })
+                Return (RBUF) /* \_SB_.GPU0.PBRT.RBUF */
+            }
 
-                                        Break
-                                    }
+            Method (PBRC, 2, NotSerialized)
+            {
+                Name (RBUF, Buffer (0x02)
+                {
+                     0x00, 0x00                                       // ..
+                })
+                Return (RBUF) /* \_SB_.GPU0.PBRC.RBUF */
+            }
 
-                                    Return (Buffer (One)
-                                    {
-                                         0x00                                             // .
-                                    })
-                                    Break
-                                }
-                                ElseIf ((_T_3 == One))
-                                {
-                                    Return (0x39)
-                                    Break
-                                }
-                                Else
-                                {
-                                    Return (Buffer (One)
-                                    {
-                                         0x00                                             // .
-                                    })
-                                    Break
-                                }
+            Method (DITH, 2, NotSerialized)
+            {
+                Name (RBUF, Buffer (One)
+                {
+                     0x00                                             // .
+                })
+                Return (RBUF) /* \_SB_.GPU0.DITH.RBUF */
+            }
 
-                                Break
-                            }
-                        }
-                        Else
-                        {
-                            Return (Buffer (One)
-                            {
-                                 0x00                                             // .
-                            })
-                            Break
-                        }
+            Method (BLCP, 1, Serialized)
+            {
+                Name (RBUF, Buffer (0x0100){})
+                Local0 = Zero
+                CreateField (RBUF, (Local0 * 0x08), 0x20, PKHR)
+                Local0 += 0x04
+                CreateField (RBUF, (Local0 * 0x08), 0x08, PKCM)
+                Local0 += One
+                CreateField (RBUF, (Local0 * 0x08), 0x08, PKDS)
+                Local0 += One
+                CreateField (RBUF, (Local0 * 0x08), 0x08, PKUB)
+                Local0 += One
+                CreateField (RBUF, (Local0 * 0x08), 0x08, PKLB)
+                Local0 += One
+                Name (BON, Buffer (0x03)
+                {
+                     0x39, 0x53, 0x24                                 // 9S$
+                })
+                CreateField (RBUF, (Local0 * 0x08), 0x20, PKH2)
+                Local0 += 0x04
+                CreateField (RBUF, (Local0 * 0x08), 0x20, PKP2)
+                PKH2 = SizeOf (BON)
+                PKP2 = BON /* \_SB_.GPU0.BLCP.BON_ */
+                Local0 += SizeOf (BON)
+                CreateDWordField (RBUF, (Local0 * 0x08), EOF)
+                Local1 = (Arg0 * 0x03FF)
+                Local1 /= 0xFF
+                Local2 = (Arg0 * 0x03FF)
+                Local2 /= 0xFF00
+                Local2 &= 0x03
+                PKHR = 0x04
+                PKCM = 0x39
+                PKDS = 0x51
+                PKUB = Local2
+                PKLB = Local1
+                EOF = Zero
+                Return (RBUF) /* \_SB_.GPU0.BLCP.RBUF */
+            }
 
-                        Break
+            Method (ROM2, 3, NotSerialized)
+            {
+                Name (PCFG, Buffer (One)
+                {
+                     0x00                                             // .
+                })
+                While (One)
+                {
+                    If (One)
+                    {
+                        Local2 = PCFG /* \_SB_.GPU0.ROM2.PCFG */
                     }
+
+                    Break
                 }
 
-                Method (PHYC, 0, NotSerialized)
+                If ((Arg0 >= SizeOf (Local2)))
                 {
-                    Name (CFG0, Package (0x12)
+                    Return (Buffer (One)
                     {
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E2210, 
-                            0x23
-                        }, 
-
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E2004, 
-                            0x03
-                        }, 
+                         0x00                                             // .
+                    })
+                }
+                Else
+                {
+                    Local0 = Arg0
+                }
 
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E218C, 
-                            0x7C
-                        }, 
+                If ((Arg1 > 0x1000))
+                {
+                    Local1 = 0x1000
+                }
+                Else
+                {
+                    Local1 = Arg1
+                }
 
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E202C, 
-                            0x80
-                        }, 
+                If (((Local0 + Local1) > SizeOf (Local2)))
+                {
+                    Local1 = (SizeOf (Local2) - Local0)
+                }
 
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E2184, 
-                            0x0A
-                        }, 
+                CreateField (Local2, (0x08 * Local0), (0x08 * Local1), RBUF)
+                Return (RBUF) /* \_SB_.GPU0.ROM2.RBUF */
+            }
 
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E20B4, 
-                            0x19
-                        }, 
+            Method (IGC2, 2, NotSerialized)
+            {
+                Name (RBUF, Buffer (One)
+                {
+                     0x00                                             // .
+                })
+                Return (RBUF) /* \_SB_.GPU0.IGC2.RBUF */
+            }
 
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E2194, 
-                            0x40
-                        }, 
+            Method (PCC2, 2, NotSerialized)
+            {
+                Name (RBUF, Buffer (One)
+                {
+                     0x00                                             // .
+                })
+                Return (RBUF) /* \_SB_.GPU0.PCC2.RBUF */
+            }
 
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E2198, 
-                            0x28
-                        }, 
+            Method (GCT2, 2, NotSerialized)
+            {
+                Name (RBUF, Buffer (One)
+                {
+                     0x00                                             // .
+                })
+                Return (RBUF) /* \_SB_.GPU0.GCT2.RBUF */
+            }
 
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E2214, 
-                            0x21
-                        }, 
+            Method (LGC2, 3, NotSerialized)
+            {
+                Name (TBUF, Buffer (One)
+                {
+                     0x00                                             // .
+                })
+                If ((Arg1 >= SizeOf (TBUF)))
+                {
+                    Return (Buffer (One)
+                    {
+                         0x00                                             // .
+                    })
+                }
+                Else
+                {
+                    Local1 = Arg1
+                }
 
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E2220, 
-                            Zero
-                        }, 
+                If ((Arg2 > 0x1000))
+                {
+                    Local2 = 0x1000
+                }
+                Else
+                {
+                    Local2 = Arg2
+                }
 
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E2224, 
-                            0x58
-                        }, 
+                If (((Local1 + Local2) > SizeOf (TBUF)))
+                {
+                    Local2 = (SizeOf (TBUF) - Local1)
+                }
 
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E2240, 
-                            0x35
-                        }, 
+                CreateField (TBUF, (0x08 * Local1), (0x08 * Local2), RBUF)
+                Return (RBUF) /* \_SB_.GPU0.LGC2.RBUF */
+            }
 
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E2244, 
-                            0x29
-                        }, 
+            Method (HSI2, 2, NotSerialized)
+            {
+                Name (RBUF, Buffer (One)
+                {
+                     0x00                                             // .
+                })
+                Return (RBUF) /* \_SB_.GPU0.HSI2.RBUF */
+            }
 
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E2248, 
-                            0xCA
-                        }, 
+            Method (GMT2, 2, NotSerialized)
+            {
+                Name (TBUF, Buffer (One)
+                {
+                     0x00                                             // .
+                })
+                If ((Arg0 >= SizeOf (TBUF)))
+                {
+                    Return (Buffer (One)
+                    {
+                         0x00                                             // .
+                    })
+                }
+                Else
+                {
+                    Local0 = Arg0
+                }
 
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E224C, 
-                            0x04
-                        }, 
+                If ((Arg1 > 0x1000))
+                {
+                    Local1 = 0x1000
+                }
+                Else
+                {
+                    Local1 = Arg1
+                }
 
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E2250, 
-                            0x03
-                        }, 
+                If (((Local0 + Local1) > SizeOf (TBUF)))
+                {
+                    Local1 = (SizeOf (TBUF) - Local0)
+                }
 
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E223C, 
-                            Zero
-                        }, 
+                CreateField (TBUF, (0x08 * Local0), (0x08 * Local1), RBUF)
+                Return (RBUF) /* \_SB_.GPU0.GMT2.RBUF */
+            }
 
-                        Package (0x03)
-                        {
-                            Zero, 
-                            0x088E2210, 
-                            0x22
-                        }
+            Method (WGM2, 2, NotSerialized)
+            {
+                Name (TBUF, Buffer (One)
+                {
+                     0x00                                             // .
+                })
+                If ((Arg0 >= SizeOf (TBUF)))
+                {
+                    Return (Buffer (One)
+                    {
+                         0x00                                             // .
                     })
-                    Return (CFG0) /* \_SB_.URS0.UFN0.PHYC.CFG0 */
                 }
-            }
-        }
+                Else
+                {
+                    Local0 = Arg0
+                }
 
-        Name (HPDB, Zero)
-        Name (PINA, Zero)
-        Name (CCST, Buffer (One)
-        {
-             0x02                                             // .
-        })
-        Name (HSFL, Buffer (One)
-        {
-             0x00                                             // .
-        })
-        Name (HPDS, Zero)
-        Name (USBC, Buffer (One)
-        {
-             0x0B                                             // .
-        })
-        Name (DPPN, 0x0D)
-        Name (MUXC, Buffer (One)
-        {
-             0x00                                             // .
-        })
-        Name (DPP1, Buffer (One)
-        {
-             0x00                                             // .
-        })
-        Name (SKYD, Buffer (One)
-        {
-             0x01                                             // .
-        })
-        Device (AGR0)
-        {
-            Name (_HID, "ACPI000C" /* Processor Aggregator Device */)  // _HID: Hardware ID
-            Name (_PUR, Package (0x02)  // _PUR: Processor Utilization Request
-            {
-                One, 
-                Zero
-            })
-            Method (_OST, 3, NotSerialized)  // _OST: OSPM Status Indication
-            {
-                ^^PEP0.ROST = Arg2
+                If ((Arg1 > 0x1000))
+                {
+                    Local1 = 0x1000
+                }
+                Else
+                {
+                    Local1 = Arg1
+                }
+
+                If (((Local0 + Local1) > SizeOf (TBUF)))
+                {
+                    Local1 = (SizeOf (TBUF) - Local0)
+                }
+
+                CreateField (TBUF, (0x08 * Local0), (0x08 * Local1), RBUF)
+                Return (RBUF) /* \_SB_.GPU0.WGM2.RBUF */
             }
-        }
 
-        ThermalZone (TZ0)
-        {
-            Name (_HID, "QCOM02B0")  // _HID: Hardware ID
-            Name (_UID, Zero)  // _UID: Unique ID
-            Name (_TZD, Package (0x04)  // _TZD: Thermal Zone Devices
-            {
-                ^SYSM.CLUS.CPU0, 
-                ^SYSM.CLUS.CPU1, 
-                ^SYSM.CLUS.CPU2, 
-                ^SYSM.CLUS.CPU3
-            })
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
+            Method (GRT2, 2, NotSerialized)
             {
-                Return (Package (0x01)
+                Name (RBUF, Buffer (One)
                 {
-                    PEP0
+                     0x00                                             // .
                 })
-            }
-        }
-
-        ThermalZone (TZ1)
-        {
-            Name (_HID, "QCOM02B0")  // _HID: Hardware ID
-            Name (_UID, One)  // _UID: Unique ID
-            Name (_TZD, Package (0x01)  // _TZD: Thermal Zone Devices
-            {
-                PEP0
-            })
-            Name (TPSV, 0x0EF6)
-            Method (_PSV, 0, NotSerialized)  // _PSV: Passive Temperature
-            {
-                Return (TPSV) /* \_SB_.TZ1_.TPSV */
+                Return (RBUF) /* \_SB_.GPU0.GRT2.RBUF */
             }
 
-            Name (_MTL, 0x14)  // _MTL: Minimum Throttle Limit
-            Name (TTC1, Zero)
-            Method (_TC1, 0, NotSerialized)  // _TC1: Thermal Constant 1
+            Method (BRT2, 2, NotSerialized)
             {
-                Return (TTC1) /* \_SB_.TZ1_.TTC1 */
+                Name (RBUF, Buffer (One)
+                {
+                     0x00                                             // .
+                })
+                Return (RBUF) /* \_SB_.GPU0.BRT2.RBUF */
             }
 
-            Name (TTC2, One)
-            Method (_TC2, 0, NotSerialized)  // _TC2: Thermal Constant 2
+            Method (DIT2, 2, NotSerialized)
             {
-                Return (TTC2) /* \_SB_.TZ1_.TTC2 */
+                Name (RBUF, Buffer (One)
+                {
+                     0x00                                             // .
+                })
+                Return (RBUF) /* \_SB_.GPU0.DIT2.RBUF */
             }
 
-            Name (TTSP, 0x32)
-            Method (_TSP, 0, NotSerialized)  // _TSP: Thermal Sampling Period
+            Method (BLC2, 1, NotSerialized)
             {
-                Return (TTSP) /* \_SB_.TZ1_.TTSP */
+                Name (RBUF, Buffer (0x0100){})
+                Return (RBUF) /* \_SB_.GPU0.BLC2.RBUF */
             }
 
-            Name (_TZP, Zero)  // _TZP: Thermal Zone Polling
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
+            Method (ROE1, 3, NotSerialized)
             {
-                Return (Package (0x01)
+                Name (PCFG, Buffer (One)
                 {
-                    PEP0
+                     0x00                                             // .
                 })
-            }
-        }
+                Local2 = PCFG /* \_SB_.GPU0.ROE1.PCFG */
+                If ((Arg0 >= SizeOf (Local2)))
+                {
+                    Return (Buffer (One)
+                    {
+                         0x00                                             // .
+                    })
+                }
+                Else
+                {
+                    Local0 = Arg0
+                }
 
-        ThermalZone (TZ2)
-        {
-            Name (_HID, "QCOM02B1")  // _HID: Hardware ID
-            Name (_UID, Zero)  // _UID: Unique ID
-            Name (_TZD, Package (0x04)  // _TZD: Thermal Zone Devices
-            {
-                ^SYSM.CLUS.CPU4, 
-                ^SYSM.CLUS.CPU5, 
-                ^SYSM.CLUS.CPU6, 
-                ^SYSM.CLUS.CPU7
-            })
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
-            {
-                Return (Package (0x01)
+                If ((Arg1 > 0x1000))
                 {
-                    PEP0
-                })
+                    Local1 = 0x1000
+                }
+                Else
+                {
+                    Local1 = Arg1
+                }
+
+                If (((Local0 + Local1) > SizeOf (Local2)))
+                {
+                    Local1 = (SizeOf (Local2) - Local0)
+                }
+
+                CreateField (Local2, (0x08 * Local0), (0x08 * Local1), RBUF)
+                Return (RBUF) /* \_SB_.GPU0.ROE1.RBUF */
             }
-        }
 
-        ThermalZone (TZ3)
-        {
-            Name (_HID, "QCOM02B1")  // _HID: Hardware ID
-            Name (_UID, One)  // _UID: Unique ID
-            Name (_TZD, Package (0x01)  // _TZD: Thermal Zone Devices
+            Name (_DOD, Package (0x01)  // _DOD: Display Output Devices
             {
-                PEP0
+                0x00024321
             })
-            Name (TPSV, 0x0EF6)
-            Method (_PSV, 0, NotSerialized)  // _PSV: Passive Temperature
+            Method (_STA, 0, NotSerialized)  // _STA: Status
             {
-                Return (TPSV) /* \_SB_.TZ3_.TPSV */
+                Return (0x0F)
             }
 
-            Name (TTC1, Zero)
-            Method (_TC1, 0, NotSerialized)  // _TC1: Thermal Constant 1
+            Method (CHDV, 0, NotSerialized)
             {
-                Return (TTC1) /* \_SB_.TZ3_.TTC1 */
+                Name (CHIF, Package (0x02)
+                {
+                    One, 
+                    Package (0x07)
+                    {
+                        "CHILDDEV", 
+                        Zero, 
+                        0x00024321, 
+                        "QCOM_AVStream_850", 
+                        Zero, 
+                        "Qualcomm Camera AVStream Mini Driver", 
+                        Package (0x04)
+                        {
+                            "COMPATIBLEIDS", 
+                            0x02, 
+                            "VEN_QCOM&DEV__AVSTREAM", 
+                            "QCOM_AVSTREAM"
+                        }
+                    }
+                })
+                Return (CHIF) /* \_SB_.GPU0.CHDV.CHIF */
             }
 
-            Name (TTC2, One)
-            Method (_TC2, 0, NotSerialized)  // _TC2: Thermal Constant 2
+            Method (DPCC, 2, NotSerialized)
             {
-                Return (TTC2) /* \_SB_.TZ3_.TTC2 */
+                Return (CCST) /* \_SB_.CCST */
             }
 
-            Name (TTSP, One)
-            Method (_TSP, 0, NotSerialized)  // _TSP: Thermal Sampling Period
+            Method (DPIN, 2, NotSerialized)
             {
-                Return (TTSP) /* \_SB_.TZ3_.TTSP */
+                Return (PINA) /* \_SB_.PINA */
             }
 
-            Name (_MTL, 0x14)  // _MTL: Minimum Throttle Limit
-            Name (_TZP, Zero)  // _TZP: Thermal Zone Polling
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
+            Method (REGR, 0, NotSerialized)
             {
-                Return (Package (0x01)
+                Name (RBUF, Package (0x1B)
                 {
-                    PEP0
-                })
-            }
-        }
+                    Package (0x02)
+                    {
+                        "ForceMaxPerf", 
+                        Zero
+                    }, 
 
-        ThermalZone (TZ20)
-        {
-            Name (_HID, "QCOM02AB")  // _HID: Hardware ID
-            Name (_UID, Zero)  // _UID: Unique ID
-            Name (_TZD, Package (0x01)  // _TZD: Thermal Zone Devices
-            {
-                GPU0
-            })
-            Name (TPSV, 0x0E60)
-            Method (_PSV, 0, NotSerialized)  // _PSV: Passive Temperature
-            {
-                Return (TPSV) /* \_SB_.TZ20.TPSV */
-            }
+                    Package (0x02)
+                    {
+                        "ForceStablePowerSettings", 
+                        Zero
+                    }, 
 
-            Name (TTC1, One)
-            Method (_TC1, 0, NotSerialized)  // _TC1: Thermal Constant 1
-            {
-                Return (TTC1) /* \_SB_.TZ20.TTC1 */
-            }
+                    Package (0x02)
+                    {
+                        "ForceActive", 
+                        Zero
+                    }, 
 
-            Name (TTC2, 0x02)
-            Method (_TC2, 0, NotSerialized)  // _TC2: Thermal Constant 2
-            {
-                Return (TTC2) /* \_SB_.TZ20.TTC2 */
-            }
+                    Package (0x02)
+                    {
+                        "DeferForceActive", 
+                        Zero
+                    }, 
 
-            Name (TTSP, 0x02)
-            Method (_TSP, 0, NotSerialized)  // _TSP: Thermal Sampling Period
-            {
-                Return (TTSP) /* \_SB_.TZ20.TTSP */
-            }
+                    Package (0x02)
+                    {
+                        "PreventPowerCollapse", 
+                        Zero
+                    }, 
 
-            Name (_TZP, Zero)  // _TZP: Thermal Zone Polling
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
-            {
-                Return (Package (0x01)
-                {
-                    PEP0
-                })
-            }
-        }
+                    Package (0x02)
+                    {
+                        "DisableThermalMitigation", 
+                        Zero
+                    }, 
 
-        ThermalZone (TZ21)
-        {
-            Name (_HID, "QCOM02AC")  // _HID: Hardware ID
-            Name (_UID, Zero)  // _UID: Unique ID
-            Name (_TZD, Package (0x01)  // _TZD: Thermal Zone Devices
-            {
-                GPU0
-            })
-            Name (TPSV, 0x0E60)
-            Method (_PSV, 0, NotSerialized)  // _PSV: Passive Temperature
-            {
-                Return (TPSV) /* \_SB_.TZ21.TPSV */
-            }
+                    Package (0x02)
+                    {
+                        "DisableTzMDSSRestore", 
+                        One
+                    }, 
 
-            Name (TTC1, One)
-            Method (_TC1, 0, NotSerialized)  // _TC1: Thermal Constant 1
-            {
-                Return (TTC1) /* \_SB_.TZ21.TTC1 */
-            }
+                    Package (0x02)
+                    {
+                        "UseLowPTForGfxPerProcess", 
+                        One
+                    }, 
 
-            Name (TTC2, 0x02)
-            Method (_TC2, 0, NotSerialized)  // _TC2: Thermal Constant 2
-            {
-                Return (TTC2) /* \_SB_.TZ21.TTC2 */
-            }
+                    Package (0x02)
+                    {
+                        "DisableCDI", 
+                        One
+                    }, 
 
-            Name (TTSP, 0x02)
-            Method (_TSP, 0, NotSerialized)  // _TSP: Thermal Sampling Period
-            {
-                Return (TTSP) /* \_SB_.TZ21.TTSP */
-            }
+                    Package (0x02)
+                    {
+                        "GPU64bAddrEnabled", 
+                        One
+                    }, 
 
-            Name (_TZP, Zero)  // _TZP: Thermal Zone Polling
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
-            {
-                Return (Package (0x01)
-                {
-                    PEP0
-                })
-            }
-        }
+                    Package (0x02)
+                    {
+                        "MaxPreemptionOffsets", 
+                        0x80
+                    }, 
 
-        ThermalZone (TZ33)
-        {
-            Name (_HID, "QCOM02CB")  // _HID: Hardware ID
-            Name (_UID, One)  // _UID: Unique ID
-            Name (_TZD, Package (0x01)  // _TZD: Thermal Zone Devices
-            {
-                AMSS
-            })
-            Name (TPSV, 0x0E60)
-            Method (_PSV, 0, NotSerialized)  // _PSV: Passive Temperature
-            {
-                Return (TPSV) /* \_SB_.TZ33.TPSV */
-            }
+                    Package (0x02)
+                    {
+                        "MaxRequiredDmaQueueEntry", 
+                        0x08
+                    }, 
 
-            Name (TTC1, One)
-            Method (_TC1, 0, NotSerialized)  // _TC1: Thermal Constant 1
-            {
-                Return (TTC1) /* \_SB_.TZ33.TTC1 */
-            }
+                    Package (0x02)
+                    {
+                        "SupportsSecureInAperture", 
+                        One
+                    }, 
 
-            Name (TTC2, 0x02)
-            Method (_TC2, 0, NotSerialized)  // _TC2: Thermal Constant 2
-            {
-                Return (TTC2) /* \_SB_.TZ33.TTC2 */
-            }
+                    Package (0x02)
+                    {
+                        "ZeroFlagSupportInPTE", 
+                        One
+                    }, 
 
-            Name (TTSP, 0x0A)
-            Method (_TSP, 0, NotSerialized)  // _TSP: Thermal Sampling Period
-            {
-                Return (TTSP) /* \_SB_.TZ33.TTSP */
-            }
+                    Package (0x02)
+                    {
+                        "SupportsCacheCoherency", 
+                        One
+                    }, 
 
-            Name (_TZP, Zero)  // _TZP: Thermal Zone Polling
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
-            {
-                Return (Package (0x01)
-                {
-                    PEP0
-                })
-            }
-        }
+                    Package (0x02)
+                    {
+                        "SupportsSHMBridge", 
+                        Zero
+                    }, 
 
-        ThermalZone (TZ36)
-        {
-            Name (_HID, "QCOM029E")  // _HID: Hardware ID
-            Name (_UID, Zero)  // _UID: Unique ID
-            Name (_TZD, Package (0x09)  // _TZD: Thermal Zone Devices
-            {
-                ^SYSM.CLUS.CPU0, 
-                ^SYSM.CLUS.CPU1, 
-                ^SYSM.CLUS.CPU2, 
-                ^SYSM.CLUS.CPU3, 
-                ^SYSM.CLUS.CPU4, 
-                ^SYSM.CLUS.CPU5, 
-                ^SYSM.CLUS.CPU6, 
-                ^SYSM.CLUS.CPU7, 
-                PMBM
-            })
-            Name (TPSV, 0x0EC4)
-            Method (_PSV, 0, NotSerialized)  // _PSV: Passive Temperature
-            {
-                Return (TPSV) /* \_SB_.TZ36.TPSV */
-            }
+                    Package (0x02)
+                    {
+                        "SecureCarveoutSize", 
+                        0x00200000
+                    }, 
 
-            Name (TTC1, 0x04)
-            Method (_TC1, 0, NotSerialized)  // _TC1: Thermal Constant 1
-            {
-                Return (TTC1) /* \_SB_.TZ36.TTC1 */
-            }
+                    Package (0x02)
+                    {
+                        "UBWCEnable", 
+                        Zero
+                    }, 
 
-            Name (TTC2, 0x03)
-            Method (_TC2, 0, NotSerialized)  // _TC2: Thermal Constant 2
-            {
-                Return (TTC2) /* \_SB_.TZ36.TTC2 */
-            }
+                    Package (0x02)
+                    {
+                        "allowDrmAbove1080p", 
+                        One
+                    }, 
 
-            Name (TTSP, 0x32)
-            Method (_TSP, 0, NotSerialized)  // _TSP: Thermal Sampling Period
-            {
-                Return (TTSP) /* \_SB_.TZ36.TTSP */
-            }
+                    Package (0x02)
+                    {
+                        "ZeroPageLowAddr", 
+                        0x85F00000
+                    }, 
 
-            Name (_TZP, Zero)  // _TZP: Thermal Zone Polling
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
-            {
-                Return (Package (0x02)
-                {
-                    PEP0, 
-                    ADC1
-                })
-            }
-        }
+                    Package (0x02)
+                    {
+                        "ZeroPageHighAddr", 
+                        Zero
+                    }, 
 
-        ThermalZone (TZ37)
-        {
-            Name (_HID, "QCOM029E")  // _HID: Hardware ID
-            Name (_UID, One)  // _UID: Unique ID
-            Name (_TZD, Package (0x02)  // _TZD: Thermal Zone Devices
-            {
-                PEP0, 
-                PMBM
-            })
-            Name (TPSV, 0x0F8C)
-            Method (_PSV, 0, NotSerialized)  // _PSV: Passive Temperature
-            {
-                Return (TPSV) /* \_SB_.TZ37.TPSV */
-            }
+                    Package (0x02)
+                    {
+                        "KeepUefiBuffer", 
+                        One
+                    }, 
 
-            Name (TCRT, 0x1054)
-            Method (_CRT, 0, NotSerialized)  // _CRT: Critical Temperature
-            {
-                Return (TCRT) /* \_SB_.TZ37.TCRT */
-            }
+                    Package (0x06)
+                    {
+                        "GRAPHICS", 
+                        Package (0x02)
+                        {
+                            "ForceActive", 
+                            Zero
+                        }, 
 
-            Name (TTC1, 0x04)
-            Method (_TC1, 0, NotSerialized)  // _TC1: Thermal Constant 1
-            {
-                Return (TTC1) /* \_SB_.TZ37.TTC1 */
-            }
+                        Package (0x02)
+                        {
+                            "EnableSystemCache", 
+                            One
+                        }, 
 
-            Name (TTC2, 0x03)
-            Method (_TC2, 0, NotSerialized)  // _TC2: Thermal Constant 2
-            {
-                Return (TTC2) /* \_SB_.TZ37.TTC2 */
-            }
+                        Package (0x02)
+                        {
+                            "EnableSysCacheForGpuhtw", 
+                            One
+                        }, 
 
-            Name (TTSP, 0x32)
-            Method (_TSP, 0, NotSerialized)  // _TSP: Thermal Sampling Period
-            {
-                Return (TTSP) /* \_SB_.TZ37.TTSP */
-            }
+                        Package (0x0A)
+                        {
+                            "DCVS", 
+                            Package (0x02)
+                            {
+                                "Enable", 
+                                One
+                            }, 
 
-            Name (_TZP, Zero)  // _TZP: Thermal Zone Polling
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
-            {
-                Return (Package (0x02)
-                {
-                    PEP0, 
-                    ADC1
+                            Package (0x02)
+                            {
+                                "IncreaseFilterBw", 
+                                0x00020000
+                            }, 
+
+                            Package (0x02)
+                            {
+                                "DecreaseFilterBw", 
+                                0x3333
+                            }, 
+
+                            Package (0x02)
+                            {
+                                "TargetBusyPct", 
+                                0x55
+                            }, 
+
+                            Package (0x02)
+                            {
+                                "SampleRate", 
+                                0x3C
+                            }, 
+
+                            Package (0x02)
+                            {
+                                "TargetBusyPctOffscreen", 
+                                0x4B
+                            }, 
+
+                            Package (0x02)
+                            {
+                                "SampleRateOffscreen", 
+                                0x14
+                            }, 
+
+                            Package (0x02)
+                            {
+                                "GpuResetValue", 
+                                0x11490C80
+                            }, 
+
+                            Package (0x02)
+                            {
+                                "BusResetValue", 
+                                0x04B0
+                            }
+                        }, 
+
+                        Package (0x06)
+                        {
+                            "A6x", 
+                            Package (0x02)
+                            {
+                                "SleepMode", 
+                                Zero
+                            }, 
+
+                            Package (0x02)
+                            {
+                                "DisableICG", 
+                                Zero
+                            }, 
+
+                            Package (0x02)
+                            {
+                                "DisableGmuCG", 
+                                Zero
+                            }, 
+
+                            Package (0x02)
+                            {
+                                "EnableFallbackToDisableSecureMode", 
+                                Zero
+                            }, 
+
+                            Package (0x02)
+                            {
+                                "DisableCPCrashDump", 
+                                Zero
+                            }
+                        }
+                    }, 
+
+                    Package (0x04)
+                    {
+                        "VIDEO", 
+                        Package (0x02)
+                        {
+                            "ForceActive", 
+                            Zero
+                        }, 
+
+                        Package (0x02)
+                        {
+                            "PreventPowerCollapse", 
+                            Zero
+                        }, 
+
+                        Package (0x02)
+                        {
+                            "EnableSystemCache", 
+                            One
+                        }
+                    }, 
+
+                    Package (0x02)
+                    {
+                        "CRYPTO", 
+                        Package (0x02)
+                        {
+                            "EnableCryptoVA", 
+                            One
+                        }
+                    }, 
+
+                    Package (0x03)
+                    {
+                        "VIDEO_ENCODER", 
+                        Package (0x02)
+                        {
+                            "ForceActive", 
+                            Zero
+                        }, 
+
+                        Package (0x02)
+                        {
+                            "PreventPowerCollapse", 
+                            Zero
+                        }
+                    }, 
+
+                    Package (0x07)
+                    {
+                        "DISPLAY", 
+                        Package (0x02)
+                        {
+                            "DisableMiracast", 
+                            One
+                        }, 
+
+                        Package (0x02)
+                        {
+                            "EnableOEMDriverDependency", 
+                            Zero
+                        }, 
+
+                        Package (0x02)
+                        {
+                            "EnableBridgeDriverDependency", 
+                            Zero
+                        }, 
+
+                        Package (0x02)
+                        {
+                            "DisableRotator", 
+                            Zero
+                        }, 
+
+                        Package (0x02)
+                        {
+                            "DisableMDPBLT", 
+                            One
+                        }, 
+
+                        Package (0x02)
+                        {
+                            "DisableExternal", 
+                            0x03
+                        }
+                    }
                 })
+                Return (RBUF) /* \_SB_.GPU0.REGR.RBUF */
             }
         }
 
-        ThermalZone (TZ38)
+        Device (SCM0)
         {
-            Name (_HID, "QCOM029E")  // _HID: Hardware ID
-            Name (_UID, 0x02)  // _UID: Unique ID
-            Name (_TZD, Package (0x01)  // _TZD: Thermal Zone Devices
-            {
-                PEP0
-            })
-            Method (INVT, 0, NotSerialized)
-            {
-                Return (One)
-            }
-
-            Method (_MTL, 0, NotSerialized)  // _MTL: Minimum Throttle Limit
-            {
-                Return (0x3C)
-            }
-
-            Name (TPSV, 0x0B0E)
-            Method (_PSV, 0, NotSerialized)  // _PSV: Passive Temperature
-            {
-                Return (TPSV) /* \_SB_.TZ38.TPSV */
-            }
-
-            Name (TTC1, 0x04)
-            Method (_TC1, 0, NotSerialized)  // _TC1: Thermal Constant 1
-            {
-                Return (TTC1) /* \_SB_.TZ38.TTC1 */
-            }
+            Name (_HID, "QCOM0214")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+            Name (_UID, Zero)  // _UID: Unique ID
+        }
 
-            Name (TTC2, 0x03)
-            Method (_TC2, 0, NotSerialized)  // _TC2: Thermal Constant 2
+        Device (TREE)
+        {
+            Name (_HID, "QCOM02BB")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+            Name (_UID, Zero)  // _UID: Unique ID
+            Method (MCGT, 0, NotSerialized)
             {
-                Return (TTC2) /* \_SB_.TZ38.TTC2 */
+                Name (TPKG, Package (0x01)
+                {
+                    Package (0x02)
+                    {
+                        Zero, 
+                        Zero
+                    }
+                })
+                DerefOf (TPKG [Zero]) [Zero] = TCMA /* \_SB_.TCMA */
+                DerefOf (TPKG [Zero]) [One] = TCML /* \_SB_.TCML */
+                Return (TPKG) /* \_SB_.TREE.MCGT.TPKG */
             }
+        }
 
-            Name (TTSP, 0x0A)
-            Method (_TSP, 0, NotSerialized)  // _TSP: Thermal Sampling Period
+        Device (SPMI)
+        {
+            Name (_HID, "QCOM0216")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+            Name (_CID, "PNP0CA2")  // _CID: Compatible ID
+            Name (_UID, One)  // _UID: Unique ID
+            Name (_CCA, Zero)  // _CCA: Cache Coherency Attribute
+            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
             {
-                Return (TTSP) /* \_SB_.TZ38.TTSP */
+                Name (RBUF, ResourceTemplate ()
+                {
+                    Memory32Fixed (ReadWrite,
+                        0x0C400000,         // Address Base
+                        0x02800000,         // Address Length
+                        )
+                })
+                Return (RBUF) /* \_SB_.SPMI._CRS.RBUF */
             }
 
-            Name (_TZP, Zero)  // _TZP: Thermal Zone Polling
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
+            Method (CONF, 0, NotSerialized)
             {
-                Return (Package (0x02)
+                Name (XBUF, Buffer (0x1A)
                 {
-                    PEP0, 
-                    ADC1
+                    /* 0000 */  0x00, 0x01, 0x01, 0x01, 0xFF, 0x00, 0x02, 0x00,  // ........
+                    /* 0008 */  0x0A, 0x07, 0x04, 0x07, 0x01, 0xFF, 0x10, 0x01,  // ........
+                    /* 0010 */  0x00, 0x01, 0x0C, 0x40, 0x00, 0x00, 0x02, 0x80,  // ...@....
+                    /* 0018 */  0x00, 0x00                                       // ..
                 })
+                Return (XBUF) /* \_SB_.SPMI.CONF.XBUF */
             }
         }
 
-        ThermalZone (TZ40)
+        Device (GIO0)
         {
-            Name (_HID, "QCOM02AF")  // _HID: Hardware ID
+            Name (_HID, "QCOM0217")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
             Name (_UID, Zero)  // _UID: Unique ID
-            Name (_TZD, Package (0x01)  // _TZD: Thermal Zone Devices
+            Name (HPD1, ResourceTemplate ()
             {
-                COEX
+                GpioIo (Shared, PullNone, 0x0000, 0x0000, IoRestrictionNone,
+                    "\\_SB.GIO0", 0x00, ResourceConsumer, ,
+                    )
+                    {   // Pin list
+                        0x0071
+                    }
             })
-            Name (TPSV, 0x0DFC)
-            Method (_PSV, 0, NotSerialized)  // _PSV: Passive Temperature
+            OperationRegion (HPD2, GeneralPurposeIo, Zero, One)
+            Field (HPD2, ByteAcc, NoLock, Preserve)
             {
-                Return (TPSV) /* \_SB_.TZ40.TPSV */
+                Connection (HPD1), 
+                ESTA,   1
             }
 
-            Name (TTC1, One)
-            Method (_TC1, 0, NotSerialized)  // _TC1: Thermal Constant 1
+            OperationRegion (GPOR, GeneralPurposeIo, Zero, One)
+            Field (GPOR, ByteAcc, NoLock, Preserve)
             {
-                Return (TTC1) /* \_SB_.TZ40.TTC1 */
             }
 
-            Name (TTC2, 0x05)
-            Method (_TC2, 0, NotSerialized)  // _TC2: Thermal Constant 2
+            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
             {
-                Return (TTC2) /* \_SB_.TZ40.TTC2 */
+                Name (RBUF, ResourceTemplate ()
+                {
+                    Memory32Fixed (ReadWrite,
+                        0x03400000,         // Address Base
+                        0x00C00000,         // Address Length
+                        )
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, )
+                    {
+                        0x000000F0,
+                    }
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, )
+                    {
+                        0x000000F0,
+                    }
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, )
+                    {
+                        0x000000F0,
+                    }
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Shared, ,, )
+                    {
+                        0x00000288,
+                    }
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Shared, ,, )
+                    {
+                        0x00000238,
+                    }
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Shared, ,, )
+                    {
+                        0x00000226,
+                    }
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Shared, ,, )
+                    {
+                        0x00000232,
+                    }
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Shared, ,, )
+                    {
+                        0x00000284,
+                    }
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Shared, ,, )
+                    {
+                        0x0000021F,
+                    }
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Shared, ,, )
+                    {
+                        0x00000236,
+                    }
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Shared, ,, )
+                    {
+                        0x0000023D,
+                    }
+                })
+                Return (RBUF) /* \_SB_.GIO0._CRS.RBUF */
             }
 
-            Name (TTSP, 0x1E)
-            Method (_TSP, 0, NotSerialized)  // _TSP: Thermal Sampling Period
+            Method (OFNI, 0, NotSerialized)
             {
-                Return (TTSP) /* \_SB_.TZ40.TTSP */
+                Name (RBUF, Buffer (0x02)
+                {
+                     0x96, 0x00                                       // ..
+                })
+                Return (RBUF) /* \_SB_.GIO0.OFNI.RBUF */
             }
 
-            Name (_TZP, Zero)  // _TZP: Thermal Zone Polling
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
+            Name (GABL, Zero)
+            Method (_REG, 2, NotSerialized)  // _REG: Region Availability
             {
-                Return (Package (0x01)
+                If ((Arg0 == 0x08))
                 {
-                    PEP0
-                })
+                    GABL = Arg1
+                }
             }
+
+            Name (_AEI, Buffer (0x02)  // _AEI: ACPI Event Interrupts
+            {
+                 0x79, 0x00                                       // y.
+            })
         }
 
-        ThermalZone (TZ41)
+        OperationRegion (CP00, SystemMemory, 0x13000000, 0x24)
+        Field (CP00, DWordAcc, NoLock, Preserve)
         {
-            Name (_HID, "QCOM0295")  // _HID: Hardware ID
-            Name (_UID, One)  // _UID: Unique ID
-            Name (_TSP, 0x32)  // _TSP: Thermal Sampling Period
-            Name (_TZP, Zero)  // _TZP: Thermal Zone Polling
+            MVIO,   32, 
+            MV01,   32, 
+            MV02,   32, 
+            MV03,   32, 
+            MV04,   32, 
+            MV11,   32, 
+            MV12,   32, 
+            MV13,   32, 
+            MV14,   32
         }
 
-        ThermalZone (TZ44)
+        OperationRegion (CP01, SystemMemory, 0x01C00000, 0x1004)
+        Field (CP01, DWordAcc, NoLock, Preserve)
         {
-            Name (_HID, "QCOM02CC")  // _HID: Hardware ID
-            Name (_UID, Zero)  // _UID: Unique ID
-            Name (_TZD, Package (0x04)  // _TZD: Thermal Zone Devices
-            {
-                ^SYSM.CLUS.CPU4, 
-                ^SYSM.CLUS.CPU5, 
-                ^SYSM.CLUS.CPU6, 
-                ^SYSM.CLUS.CPU7
-            })
-            Name (TPSV, 0x0E60)
-            Method (_PSV, 0, NotSerialized)  // _PSV: Passive Temperature
-            {
-                Return (TPSV) /* \_SB_.TZ44.TPSV */
-            }
-
-            Name (TTC1, Zero)
-            Method (_TC1, 0, NotSerialized)  // _TC1: Thermal Constant 1
-            {
-                Return (TTC1) /* \_SB_.TZ44.TTC1 */
-            }
-
-            Name (TTC2, One)
-            Method (_TC2, 0, NotSerialized)  // _TC2: Thermal Constant 2
-            {
-                Return (TTC2) /* \_SB_.TZ44.TTC2 */
-            }
-
-            Name (TTSP, One)
-            Method (_TSP, 0, NotSerialized)  // _TSP: Thermal Sampling Period
-            {
-                Return (TTSP) /* \_SB_.TZ44.TTSP */
-            }
-
-            Name (_TZP, Zero)  // _TZP: Thermal Zone Polling
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
-            {
-                Return (Package (0x01)
-                {
-                    PEP0
-                })
-            }
+            PSC0,   32, 
+            Offset (0x20), 
+            PPC0,   32, 
+            PPS0,   32, 
+            Offset (0x1B0), 
+            PLT0,   32, 
+            Offset (0x358), 
+            PSL0,   32, 
+            Offset (0x360), 
+            WBL0,   32, 
+            WBH0,   32, 
+            WLL0,   32, 
+            WLH0,   32, 
+            RBL0,   32, 
+            RBH0,   32, 
+            RLL0,   32, 
+            RLH0,   32, 
+            PPEB,   32, 
+            Offset (0x398), 
+            WBL1,   32, 
+            WBH1,   32, 
+            WLL1,   32, 
+            WLH1,   32, 
+            RBL1,   32, 
+            RBH1,   32, 
+            RLL1,   32, 
+            RLH1,   32, 
+            Offset (0x1000), 
+            PDT0,   32
         }
 
-        ThermalZone (TZ99)
+        OperationRegion (CP02, SystemMemory, 0x01C06000, 0x0188)
+        Field (CP02, DWordAcc, NoLock, Preserve)
         {
-            Name (_HID, "QCOM02B2")  // _HID: Hardware ID
-            Name (_UID, 0x64)  // _UID: Unique ID
-            Name (TCRT, 0x0EF6)
-            Method (_CRT, 0, NotSerialized)  // _CRT: Critical Temperature
-            {
-                Return (TCRT) /* \_SB_.TZ99.TCRT */
-            }
+            Offset (0x0C), 
+            QCB1,   32, 
+            QSEC,   32, 
+            QAP1,   32, 
+            QAP2,   32, 
+            QSP1,   32, 
+            QSP2,   32, 
+            QSS1,   32, 
+            QSS2,   32, 
+            Offset (0x34), 
+            QECE,   32, 
+            QCE1,   32, 
+            QSCC,   32, 
+            QSBE,   32, 
+            Offset (0x48), 
+            QCPI,   32, 
+            Offset (0x5C), 
+            QCED,   32, 
+            QCP0,   32, 
+            Offset (0x68), 
+            QPR0,   32, 
+            Offset (0x70), 
+            QPC0,   32, 
+            Offset (0x80), 
+            QSES,   32, 
+            Offset (0x88), 
+            QCRC,   32, 
+            Offset (0x90), 
+            QCLC,   32, 
+            Offset (0x98), 
+            QC1M,   32, 
+            QC2M,   32, 
+            QC3M,   32, 
+            Offset (0xB0), 
+            QSM0,   32, 
+            Offset (0xB8), 
+            QS1M,   32, 
+            QS2M,   32, 
+            QS3M,   32, 
+            Offset (0xD8), 
+            QIG0,   32, 
+            QIG1,   32, 
+            Offset (0xF0), 
+            QCVT,   32, 
+            QVT1,   32, 
+            QVT2,   32, 
+            Offset (0x11C), 
+            QTT1,   32, 
+            QTT2,   32, 
+            Offset (0x138), 
+            QCCS,   32, 
+            QCHS,   32, 
+            Offset (0x148), 
+            QCD0,   32, 
+            Offset (0x154), 
+            QCCN,   32, 
+            Offset (0x15C), 
+            QCCC,   32, 
+            Offset (0x164), 
+            QMCS,   32, 
+            Offset (0x184), 
+            QCCM,   32
+        }
 
-            Name (TTC1, 0x04)
-            Method (_TC1, 0, NotSerialized)  // _TC1: Thermal Constant 1
-            {
-                Return (TTC1) /* \_SB_.TZ99.TTC1 */
-            }
+        OperationRegion (CP03, SystemMemory, 0x01C06200, 0xA8)
+        Field (CP03, DWordAcc, NoLock, Preserve)
+        {
+            Offset (0x44), 
+            QTOT,   32, 
+            Offset (0x60), 
+            QTDE,   32, 
+            Offset (0x8C), 
+            QTM1,   32, 
+            Offset (0xA4), 
+            QTL2,   32
+        }
 
-            Name (TTC2, 0x03)
-            Method (_TC2, 0, NotSerialized)  // _TC2: Thermal Constant 2
-            {
-                Return (TTC2) /* \_SB_.TZ99.TTC2 */
-            }
+        OperationRegion (CP04, SystemMemory, 0x01C06400, 0x016C)
+        Field (CP04, DWordAcc, NoLock, Preserve)
+        {
+            Offset (0x0C), 
+            QRSH,   32, 
+            Offset (0x14), 
+            QRSG,   32, 
+            Offset (0x34), 
+            QRUS,   32, 
+            Offset (0x3C), 
+            QRFL,   32, 
+            Offset (0x44), 
+            QRPC,   32, 
+            Offset (0xD4), 
+            QRC2,   32, 
+            QRC3,   32, 
+            QRC4,   32, 
+            Offset (0xF8), 
+            QRA1,   32, 
+            QRA2,   32, 
+            QRSE,   32, 
+            QRSC,   32, 
+            Offset (0x10C), 
+            QRDC,   32, 
+            Offset (0x11C), 
+            QRIM,   32, 
+            Offset (0x164), 
+            QRM0,   32, 
+            QRM1,   32
+        }
 
-            Name (TTSP, 0x0A)
-            Method (_TSP, 0, NotSerialized)  // _TSP: Thermal Sampling Period
-            {
-                Return (TTSP) /* \_SB_.TZ99.TTSP */
-            }
+        OperationRegion (CP05, SystemMemory, 0x01C06600, 0x70)
+        Field (CP05, DWordAcc, NoLock, Preserve)
+        {
+            Offset (0x2C), 
+            PMDC,   32, 
+            Offset (0x44), 
+            PAC1,   32, 
+            Offset (0x54), 
+            PMC2,   32, 
+            PMC3,   32, 
+            PMC4,   32, 
+            PMC5,   32
+        }
 
-            Name (_TZP, Zero)  // _TZP: Thermal Zone Polling
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
-            {
-                Return (Package (0x01)
-                {
-                    PEP0
-                })
-            }
+        OperationRegion (CP06, SystemMemory, 0x01C06800, 0x0210)
+        Field (CP06, DWordAcc, NoLock, Preserve)
+        {
+            PPSR,   32, 
+            PPDC,   32, 
+            PCST,   32, 
+            Offset (0x54), 
+            PERD,   32, 
+            Offset (0x6C), 
+            PSC4,   32, 
+            Offset (0xA0), 
+            PDTA,   32, 
+            PLTA,   32, 
+            PLCD,   32, 
+            Offset (0xC4), 
+            PFC1,   32, 
+            PFC2,   32, 
+            PFVL,   32, 
+            PFVH,   32, 
+            PFMC,   32, 
+            Offset (0x174), 
+            PPPS,   32, 
+            Offset (0x1A8), 
+            PSDM,   32, 
+            PODA,   32, 
+            PPSC,   32, 
+            Offset (0x1D8), 
+            PRSL,   32, 
+            PDAL,   32, 
+            PDAM,   32, 
+            Offset (0x20C), 
+            PRC1,   32
         }
 
-        ThermalZone (TZ4)
+        OperationRegion (CP07, SystemMemory, 0x60000000, 0x1000)
+        Field (CP07, DWordAcc, NoLock, Preserve)
         {
-            Name (_HID, "QCOM0299")  // _HID: Hardware ID
-            Name (_UID, Zero)  // _UID: Unique ID
-            Name (_TZD, Package (0x0A)  // _TZD: Thermal Zone Devices
-            {
-                ^SYSM.CLUS.CPU0, 
-                ^SYSM.CLUS.CPU1, 
-                ^SYSM.CLUS.CPU2, 
-                ^SYSM.CLUS.CPU3, 
-                ^SYSM.CLUS.CPU4, 
-                ^SYSM.CLUS.CPU5, 
-                ^SYSM.CLUS.CPU6, 
-                ^SYSM.CLUS.CPU7, 
-                ^GPU0.MON0, 
-                GPU0
-            })
-            Name (TPSV, 0x0E92)
-            Method (_PSV, 0, NotSerialized)  // _PSV: Passive Temperature
-            {
-                Return (TPSV) /* \_SB_.TZ4_.TPSV */
-            }
+            Offset (0x04), 
+            SCR0,   32, 
+            CRI0,   32, 
+            Offset (0x10), 
+            R0B0,   32, 
+            R0B1,   32, 
+            BNR0,   32, 
+            Offset (0x7C), 
+            LCA0,   32, 
+            LCS0,   32, 
+            Offset (0x88), 
+            SLC0,   32, 
+            Offset (0xA0), 
+            LC20,   32, 
+            Offset (0x8BC), 
+            CSW0,   32, 
+            Offset (0x900), 
+            IAV0,   32, 
+            CR10,   32, 
+            CR20,   32, 
+            ILB0,   32, 
+            IUB0,   32, 
+            ILR0,   32, 
+            ILT0,   32, 
+            IUT0,   32, 
+            Offset (0xF24), 
+            ESC0,   32, 
+            EST0,   32, 
+            Offset (0xFC4), 
+            ECS0,   32
+        }
 
-            Name (TTC1, One)
-            Method (_TC1, 0, NotSerialized)  // _TC1: Thermal Constant 1
+        Method (PPU0, 0, Serialized)
+        {
+            Name (TOUT, Zero)
+            PDT0 = 0x04
+            PPDC = One
+            QECE = 0x14
+            QCPI = 0x07
+            QCLC = One
+            QCRC = 0x20
+            QCVT = Zero
+            QVT2 = One
+            QVT1 = 0xC9
+            QTT1 = 0xFF
+            QTT2 = 0x3F
+            QMCS = One
+            QCCN = Zero
+            QCD0 = 0x0A
+            QCED = 0x19
+            QCE1 = 0x90
+            QSM0 = 0x82
+            QS3M = 0x02
+            QS2M = 0xEA
+            QS1M = 0xAB
+            QC3M = Zero
+            QC2M = 0x0D
+            QC1M = 0x04
+            QCHS = Zero
+            QCP0 = 0x06
+            QPR0 = 0x16
+            QPC0 = 0x36
+            QCCM = One
+            QCCC = 0x16
+            QCCS = 0x33
+            QSCC = 0x02
+            QSBE = 0x07
+            QSES = 0x04
+            QIG1 = Zero
+            QIG0 = 0x3F
+            QCB1 = 0x09
+            QSEC = One
+            QSP1 = 0x40
+            QSP2 = One
+            QAP1 = 0x02
+            QAP2 = Zero
+            QSS1 = 0x7E
+            QSS2 = 0x15
+            QTOT = 0x02
+            QTL2 = 0x12
+            QTDE = 0x10
+            QTM1 = 0x06
+            QRSC = 0x03
+            QRSE = 0x1C
+            QRDC = 0x14
+            QRC2 = 0x0E
+            QRC3 = 0x04
+            QRC4 = 0x1A
+            QRUS = 0x4B
+            QRSG = 0x04
+            QRSH = 0x04
+            QRA1 = 0x71
+            QRM0 = 0x59
+            QRM1 = 0x59
+            QRA2 = 0x80
+            QRIM = 0x40
+            QRPC = 0x71
+            QRFL = 0x40
+            PERD = 0x04
+            PMDC = 0x52
+            PMC2 = 0x50
+            PMC4 = 0x1A
+            PMC5 = 0x06
+            PFC2 = 0x83
+            PFVL = 0x09
+            PFVH = 0xA2
+            PFMC = 0x40
+            PFC1 = 0x02
+            PODA = Zero
+            PDTA = One
+            PDAM = Zero
+            PDAL = 0x20
+            PSDM = Zero
+            PLTA = One
+            PLCD = 0x73
+            PRSL = 0xAA
+            PPSC = 0x03
+            PRC1 = 0x0D
+            PSC4 = Zero
+            PAC1 = Zero
+            If ((SIDV >= 0x00020000)){}
+            PPDC = 0x03
+            PPSR = Zero
+            PCST = 0x03
+            Local0 = PPPS /* \_SB_.PPPS */
+            While ((Local0 & 0x40))
             {
-                Return (TTC1) /* \_SB_.TZ4_.TTC1 */
-            }
+                Sleep (One)
+                TOUT++
+                If ((TOUT == 0x0F))
+                {
+                    Break
+                }
 
-            Name (TTC2, One)
-            Method (_TC2, 0, NotSerialized)  // _TC2: Thermal Constant 2
-            {
-                Return (TTC2) /* \_SB_.TZ4_.TTC2 */
+                Local0 = PPPS /* \_SB_.PPPS */
             }
 
-            Name (TTSP, 0x32)
-            Method (_TSP, 0, NotSerialized)  // _TSP: Thermal Sampling Period
+            If ((TOUT == 0x0F))
             {
-                Return (TTSP) /* \_SB_.TZ4_.TTSP */
+                Return (One)
             }
-
-            Name (_MTL, 0x19)  // _MTL: Minimum Throttle Limit
-            Name (_TZP, Zero)  // _TZP: Thermal Zone Polling
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
+            Else
             {
-                Return (Package (0x02)
-                {
-                    PEP0, 
-                    ADC1
-                })
+                Return (Zero)
             }
         }
 
-        ThermalZone (TZ5)
+        Method (LTS0, 0, Serialized)
         {
-            Name (_HID, "QCOM029A")  // _HID: Hardware ID
-            Name (_UID, Zero)  // _UID: Unique ID
-            Name (_TZD, Package (0x08)  // _TZD: Thermal Zone Devices
-            {
-                ^SYSM.CLUS.CPU0, 
-                ^SYSM.CLUS.CPU1, 
-                ^SYSM.CLUS.CPU2, 
-                ^SYSM.CLUS.CPU3, 
-                ^SYSM.CLUS.CPU4, 
-                ^SYSM.CLUS.CPU5, 
-                ^SYSM.CLUS.CPU6, 
-                ^SYSM.CLUS.CPU7
-            })
-            Name (TPSV, 0x0E92)
-            Method (_PSV, 0, NotSerialized)  // _PSV: Passive Temperature
-            {
-                Return (TPSV) /* \_SB_.TZ5_.TPSV */
-            }
-
-            Name (TTC1, One)
-            Method (_TC1, 0, NotSerialized)  // _TC1: Thermal Constant 1
+            Name (TOUT, Zero)
+            Local0 = LC20 /* \_SB_.LC20 */
+            Local0 |= 0x40
+            LC20 = Local0
+            PLT0 = 0x0100
+            Local0 = EST0 /* \_SB_.EST0 */
+            While (((Local0 & 0x0400) != 0x0400))
             {
-                Return (TTC1) /* \_SB_.TZ5_.TTC1 */
-            }
+                Sleep (One)
+                TOUT++
+                If ((TOUT == 0x96))
+                {
+                    Break
+                }
 
-            Name (TTC2, One)
-            Method (_TC2, 0, NotSerialized)  // _TC2: Thermal Constant 2
-            {
-                Return (TTC2) /* \_SB_.TZ5_.TTC2 */
+                Local0 = EST0 /* \_SB_.EST0 */
             }
 
-            Name (TTSP, 0x32)
-            Method (_TSP, 0, NotSerialized)  // _TSP: Thermal Sampling Period
+            If ((TOUT == 0x96))
             {
-                Return (TTSP) /* \_SB_.TZ5_.TTSP */
+                Return (One)
             }
-
-            Name (_TZP, Zero)  // _TZP: Thermal Zone Polling
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
+            Else
             {
-                Return (Package (0x02)
-                {
-                    PEP0, 
-                    ADC1
-                })
+                Return (Zero)
             }
         }
 
-        ThermalZone (TZ6)
+        Method (IAT0, 0, Serialized)
         {
-            Name (_HID, "QCOM029B")  // _HID: Hardware ID
-            Name (_UID, Zero)  // _UID: Unique ID
-            Name (_TZD, Package (0x01)  // _TZD: Thermal Zone Devices
-            {
-                COEX
-            })
-            Name (TPSV, 0x0E92)
-            Method (_PSV, 0, NotSerialized)  // _PSV: Passive Temperature
-            {
-                Return (TPSV) /* \_SB_.TZ6_.TPSV */
-            }
-
-            Name (TTC1, One)
-            Method (_TC1, 0, NotSerialized)  // _TC1: Thermal Constant 1
-            {
-                Return (TTC1) /* \_SB_.TZ6_.TTC1 */
-            }
-
-            Name (TTC2, One)
-            Method (_TC2, 0, NotSerialized)  // _TC2: Thermal Constant 2
-            {
-                Return (TTC2) /* \_SB_.TZ6_.TTC2 */
-            }
-
-            Name (TTSP, 0x32)
-            Method (_TSP, 0, NotSerialized)  // _TSP: Thermal Sampling Period
-            {
-                Return (TTSP) /* \_SB_.TZ6_.TTSP */
-            }
-
-            Name (_TZP, Zero)  // _TZP: Thermal Zone Polling
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
-            {
-                Return (Package (0x02)
-                {
-                    PEP0, 
-                    ADC1
-                })
-            }
+            IAV0 = One
+            ILB0 = 0x60100000
+            IUB0 = Zero
+            ILR0 = 0x601FFFFF
+            ILT0 = 0x01000000
+            IUT0 = Zero
+            CR10 = 0x04
+            CR20 = 0x80000000
+            BNR0 = 0x00010100
         }
 
-        ThermalZone (TZ7)
+        Method (REB0, 2, Serialized)
         {
-            Name (_HID, "QCOM029C")  // _HID: Hardware ID
-            Name (_UID, Zero)  // _UID: Unique ID
-            Name (_TZD, Package (0x08)  // _TZD: Thermal Zone Devices
-            {
-                ^SYSM.CLUS.CPU0, 
-                ^SYSM.CLUS.CPU1, 
-                ^SYSM.CLUS.CPU2, 
-                ^SYSM.CLUS.CPU3, 
-                ^SYSM.CLUS.CPU4, 
-                ^SYSM.CLUS.CPU5, 
-                ^SYSM.CLUS.CPU6, 
-                ^SYSM.CLUS.CPU7
-            })
-            Name (TCRT, 0x0DCA)
-            Method (_CRT, 0, NotSerialized)  // _CRT: Critical Temperature
-            {
-                Return (TCRT) /* \_SB_.TZ7_.TCRT */
-            }
+            Local0 = PSC0 /* \_SB_.PSC0 */
+            Local0 &= 0xFBFFFFFF
+            PSC0 = Local0
+            WBL0 = Arg0
+            WBH0 = Zero
+            WLL0 = Arg1
+            WLH0 = Zero
+            RBL0 = Arg0
+            RBH0 = Zero
+            RLL0 = Arg1
+            RLH0 = Zero
+            Local0 = PSC0 /* \_SB_.PSC0 */
+            Local0 |= 0x04000000
+            PSC0 = Local0
+        }
 
-            Name (TPSV, 0x0DC0)
-            Method (_PSV, 0, NotSerialized)  // _PSV: Passive Temperature
-            {
-                Return (TPSV) /* \_SB_.TZ7_.TPSV */
-            }
+        Method (EEB0, 2, Serialized)
+        {
+            Local0 = PSC0 /* \_SB_.PSC0 */
+            Local0 &= 0xBFFFFFFF
+            PSC0 = Local0
+            WBL1 = Arg0
+            WBH1 = Zero
+            WLL1 = Arg1
+            WLH1 = Zero
+            RBL1 = Arg0
+            RBH1 = Zero
+            RLL1 = Arg1
+            RLH1 = Zero
+            Local0 = PSC0 /* \_SB_.PSC0 */
+            Local0 |= 0x40000000
+            PSC0 = Local0
+        }
 
-            Name (TTC1, One)
-            Method (_TC1, 0, NotSerialized)  // _TC1: Thermal Constant 1
-            {
-                Return (TTC1) /* \_SB_.TZ7_.TTC1 */
-            }
+        Name (E0LT, 0x600FFFFF)
+        Method (MSC0, 0, Serialized)
+        {
+            Local0 = SCR0 /* \_SB_.SCR0 */
+            Local0 |= 0x02
+            SCR0 = Local0
+            PSL0 = 0x01000000
+            Local0 = PPC0 /* \_SB_.PPC0 */
+            Local0 &= 0xFFFFFFDF
+            PPC0 = Local0
+            CSW0 = One
+            Local0 = LCA0 /* \_SB_.LCA0 */
+            Local0 |= 0x00400000
+            Local0 &= 0xFFFFFBFF
+            Local0 |= 0x0800
+            LCA0 = Local0
+            Local0 = CRI0 /* \_SB_.CRI0 */
+            Local0 &= 0xFFFF
+            Local0 |= 0x06040000
+            CRI0 = Local0
+            ECS0 = One
+            R0B0 = Zero
+            R0B1 = Zero
+            ECS0 = Zero
+            CSW0 = Zero
+            PPEB = 0x60000000
+            REB0 (0x60001000, E0LT)
+            EEB0 (0x60101000, 0x601FFFFF)
+        }
 
-            Name (TTC2, One)
-            Method (_TC2, 0, NotSerialized)  // _TC2: Thermal Constant 2
-            {
-                Return (TTC2) /* \_SB_.TZ7_.TTC2 */
-            }
+        Name (G0D3, Zero)
+        OperationRegion (CP08, SystemMemory, 0x01C08000, 0x1004)
+        Field (CP08, DWordAcc, NoLock, Preserve)
+        {
+            PSC1,   32, 
+            Offset (0x20), 
+            PPC1,   32, 
+            PPS1,   32, 
+            Offset (0x1B0), 
+            PLT1,   32, 
+            Offset (0x358), 
+            PSL1,   32, 
+            Offset (0x360), 
+            LBW0,   32, 
+            HBW0,   32, 
+            LLW0,   32, 
+            HLW0,   32, 
+            LBR0,   32, 
+            HBR0,   32, 
+            LLR0,   32, 
+            HLR0,   32, 
+            PEB1,   32, 
+            Offset (0x398), 
+            LBW1,   32, 
+            HBW1,   32, 
+            LLW1,   32, 
+            HLW1,   32, 
+            LBR1,   32, 
+            HBR1,   32, 
+            LLR1,   32, 
+            HLR1,   32, 
+            Offset (0x1000), 
+            PDT1,   32
+        }
 
-            Name (TTSP, 0x32)
-            Method (_TSP, 0, NotSerialized)  // _TSP: Thermal Sampling Period
-            {
-                Return (TTSP) /* \_SB_.TZ7_.TTSP */
-            }
+        OperationRegion (CP09, SystemMemory, 0x01C0A000, 0x026C)
+        Field (CP09, DWordAcc, NoLock, Preserve)
+        {
+            Offset (0x14), 
+            HSEC,   32, 
+            HAP1,   32, 
+            HAP2,   32, 
+            HSP1,   32, 
+            HSP2,   32, 
+            HSS1,   32, 
+            HSS2,   32, 
+            Offset (0x34), 
+            HSM1,   32, 
+            HSM2,   32, 
+            Offset (0x54), 
+            HECE,   32, 
+            HCE1,   32, 
+            HSCC,   32, 
+            HSBE,   32, 
+            HPLE,   32, 
+            HCPI,   32, 
+            C1M0,   32, 
+            C2M0,   32, 
+            C3M0,   32, 
+            C1M1,   32, 
+            C2M1,   32, 
+            C3M1,   32, 
+            Offset (0xB4), 
+            HCM0,   32, 
+            HCM1,   32, 
+            Offset (0xC0), 
+            HPR0,   32, 
+            HPR1,   32, 
+            HPR2,   32, 
+            HPC0,   32, 
+            HPC1,   32, 
+            HPC2,   32, 
+            Offset (0xDC), 
+            HSES,   32, 
+            Offset (0xF0), 
+            HRC2,   32, 
+            Offset (0xF8), 
+            HCLC,   32, 
+            Offset (0x100), 
+            HRM0,   32, 
+            Offset (0x108), 
+            HRM1,   32, 
+            Offset (0x11C), 
+            S1M0,   32, 
+            S2M0,   32, 
+            S3M0,   32, 
+            S1M1,   32, 
+            S2M1,   32, 
+            S3M1,   32, 
+            Offset (0x150), 
+            G0M0,   32, 
+            Offset (0x158), 
+            G0M1,   32, 
+            Offset (0x178), 
+            HCVT,   32, 
+            Offset (0x1CC), 
+            HCCS,   32, 
+            HCHS,   32, 
+            Offset (0x1E0), 
+            HCDV,   32, 
+            Offset (0x1E8), 
+            HCCE,   32, 
+            Offset (0x1F0), 
+            HCCC,   32, 
+            Offset (0x1FC), 
+            HMCS,   32, 
+            Offset (0x21C), 
+            HDM1,   32, 
+            Offset (0x224), 
+            HCCM,   32, 
+            HVD1,   32, 
+            HVD2,   32
+        }
 
-            Name (_TZP, Zero)  // _TZP: Thermal Zone Polling
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
-            {
-                Return (Package (0x02)
-                {
-                    PEP0, 
-                    ADC1
-                })
-            }
+        OperationRegion (CP10, SystemMemory, 0x01C0A800, 0x02F0)
+        Field (CP10, DWordAcc, NoLock, Preserve)
+        {
+            Offset (0x0C), 
+            L0C0,   32, 
+            L0C1,   32, 
+            L0C2,   32, 
+            L0TE,   32, 
+            Offset (0x60), 
+            L0BM,   32, 
+            L0LM,   32, 
+            Offset (0x7C), 
+            L0PR,   32, 
+            Offset (0xC0), 
+            L0L0,   32, 
+            L0L1,   32, 
+            L0L2,   32, 
+            Offset (0xD0), 
+            L0R1,   32, 
+            L0R2,   32, 
+            L0M0,   32, 
+            L0M1,   32, 
+            L0M2,   32, 
+            Offset (0xFC), 
+            L0CD,   32, 
+            L0VD,   32, 
+            Offset (0x108), 
+            L0X0,   32, 
+            Offset (0x114), 
+            L0TT,   32, 
+            L0OT,   32, 
+            L0RT,   32, 
+            L0ET,   32, 
+            L0VG,   32, 
+            L0DG,   32, 
+            Offset (0x130), 
+            L0EG,   32, 
+            L0OG,   32, 
+            L0PG,   32, 
+            L0IN,   32, 
+            Offset (0x154), 
+            L0EI,   32, 
+            Offset (0x160), 
+            L0DI,   32, 
+            Offset (0x168), 
+            L0B0,   32, 
+            L0B1,   32, 
+            Offset (0x178), 
+            L0T1,   32, 
+            Offset (0x180), 
+            L0RC,   32, 
+            L0F0,   32, 
+            L0F1,   32, 
+            L0F2,   32, 
+            L0S0,   32, 
+            L0S1,   32, 
+            L0S2,   32, 
+            L0SC,   32, 
+            Offset (0x1A4), 
+            L0RB,   32, 
+            Offset (0x1C0), 
+            L0P0,   32, 
+            L0P1,   32, 
+            L0P2,   32, 
+            Offset (0x230), 
+            L0SE,   32, 
+            L0SN,   32, 
+            L0SD,   32, 
+            Offset (0x2A4), 
+            L0DC,   32, 
+            L0ST,   32, 
+            L0RE,   32, 
+            L0PC,   32, 
+            Offset (0x2B8), 
+            L0N0,   32, 
+            Offset (0x2C0), 
+            L0ER,   32, 
+            L0HI,   32, 
+            Offset (0x2CC), 
+            L0RR,   32
         }
 
-        ThermalZone (TZ8)
+        OperationRegion (CP11, SystemMemory, 0x01C0B000, 0x02F0)
+        Field (CP11, DWordAcc, NoLock, Preserve)
         {
-            Name (_HID, "QCOM029D")  // _HID: Hardware ID
-            Name (_UID, Zero)  // _UID: Unique ID
-            Name (_TZD, Package (0x0A)  // _TZD: Thermal Zone Devices
-            {
-                ^SYSM.CLUS.CPU0, 
-                ^SYSM.CLUS.CPU1, 
-                ^SYSM.CLUS.CPU2, 
-                ^SYSM.CLUS.CPU3, 
-                ^SYSM.CLUS.CPU4, 
-                ^SYSM.CLUS.CPU5, 
-                ^SYSM.CLUS.CPU6, 
-                ^SYSM.CLUS.CPU7, 
-                ^GPU0.MON0, 
-                GPU0
-            })
-            Name (TPSV, 0x0E92)
-            Method (_PSV, 0, NotSerialized)  // _PSV: Passive Temperature
-            {
-                Return (TPSV) /* \_SB_.TZ8_.TPSV */
-            }
+            Offset (0x0C), 
+            L1C0,   32, 
+            L1C1,   32, 
+            L1C2,   32, 
+            L1TE,   32, 
+            Offset (0x60), 
+            L1BM,   32, 
+            L1LM,   32, 
+            Offset (0x7C), 
+            L1PR,   32, 
+            Offset (0xC0), 
+            L1L0,   32, 
+            L1L1,   32, 
+            L1L2,   32, 
+            Offset (0xD0), 
+            L1R1,   32, 
+            L1R2,   32, 
+            L1M0,   32, 
+            L1M1,   32, 
+            L1M2,   32, 
+            Offset (0xFC), 
+            L1CD,   32, 
+            L1VD,   32, 
+            Offset (0x108), 
+            L1X0,   32, 
+            Offset (0x114), 
+            L1TT,   32, 
+            L1OT,   32, 
+            L1RT,   32, 
+            L1ET,   32, 
+            L1VG,   32, 
+            L1DG,   32, 
+            Offset (0x130), 
+            L1EG,   32, 
+            L1OG,   32, 
+            L1PG,   32, 
+            L1IN,   32, 
+            Offset (0x154), 
+            L1EI,   32, 
+            Offset (0x160), 
+            L1DI,   32, 
+            Offset (0x168), 
+            L1B0,   32, 
+            L1B1,   32, 
+            Offset (0x178), 
+            L1T1,   32, 
+            Offset (0x180), 
+            L1RC,   32, 
+            L1F0,   32, 
+            L1F1,   32, 
+            L1F2,   32, 
+            L1S0,   32, 
+            L1S1,   32, 
+            L1S2,   32, 
+            L1SC,   32, 
+            Offset (0x1A4), 
+            L1RB,   32, 
+            Offset (0x1C0), 
+            L1P0,   32, 
+            L1P1,   32, 
+            L1P2,   32, 
+            Offset (0x230), 
+            L1SE,   32, 
+            L1SN,   32, 
+            L1SD,   32, 
+            Offset (0x2A4), 
+            L1DC,   32, 
+            L1ST,   32, 
+            L1RE,   32, 
+            L1PC,   32, 
+            Offset (0x2B8), 
+            L1N0,   32, 
+            Offset (0x2C0), 
+            L1ER,   32, 
+            L1HI,   32, 
+            Offset (0x2CC), 
+            L1RR,   32
+        }
 
-            Name (TTC1, One)
-            Method (_TC1, 0, NotSerialized)  // _TC1: Thermal Constant 1
-            {
-                Return (TTC1) /* \_SB_.TZ8_.TTC1 */
-            }
+        OperationRegion (CP12, SystemMemory, 0x01C0B800, 0x02DC)
+        Field (CP12, DWordAcc, NoLock, Preserve)
+        {
+            HPSR,   32, 
+            HPDC,   32, 
+            HSTC,   32, 
+            Offset (0x2C), 
+            HTM3,   32, 
+            Offset (0x40), 
+            HTP3,   32, 
+            Offset (0x54), 
+            HTM6,   32, 
+            Offset (0x68), 
+            HTP6,   32, 
+            Offset (0x15C), 
+            HPSG,   32, 
+            Offset (0x174), 
+            HTRC,   32, 
+            Offset (0x2AC), 
+            HPST,   32
+        }
 
-            Name (TTC2, One)
-            Method (_TC2, 0, NotSerialized)  // _TC2: Thermal Constant 2
-            {
-                Return (TTC2) /* \_SB_.TZ8_.TTC2 */
-            }
+        OperationRegion (CP13, SystemMemory, 0x40000000, 0x1000)
+        Field (CP13, DWordAcc, NoLock, Preserve)
+        {
+            Offset (0x04), 
+            SCR1,   32, 
+            CRI1,   32, 
+            Offset (0x10), 
+            R1B0,   32, 
+            R1B1,   32, 
+            BNR1,   32, 
+            Offset (0x7C), 
+            LCA1,   32, 
+            LCS1,   32, 
+            SCA1,   32, 
+            SLC1,   32, 
+            Offset (0xA0), 
+            LC21,   32, 
+            Offset (0x154), 
+            P1PR,   32, 
+            Offset (0x710), 
+            GPLC,   32, 
+            Offset (0x80C), 
+            G32C,   32, 
+            Offset (0x8A8), 
+            GEQC,   32, 
+            GMDC,   32, 
+            Offset (0x8BC), 
+            CSW1,   32, 
+            Offset (0x900), 
+            IAV1,   32, 
+            CR11,   32, 
+            CR21,   32, 
+            ILB1,   32, 
+            IUB1,   32, 
+            ILR1,   32, 
+            ILT1,   32, 
+            IUT1,   32, 
+            Offset (0xF24), 
+            ESC1,   32, 
+            EST1,   32, 
+            Offset (0xFC4), 
+            ECS1,   32
+        }
 
-            Name (TTSP, 0x32)
-            Method (_TSP, 0, NotSerialized)  // _TSP: Thermal Sampling Period
-            {
-                Return (TTSP) /* \_SB_.TZ8_.TTSP */
-            }
+        OperationRegion (CP14, SystemMemory, 0x03971000, 0x10)
+        Field (CP14, DWordAcc, NoLock, Preserve)
+        {
+            C113,   32, 
+            I113,   32, 
+            N113,   32, 
+            S113,   32
+        }
 
-            Name (_TZP, Zero)  // _TZP: Thermal Zone Polling
-            Name (_MTL, 0x19)  // _MTL: Minimum Throttle Limit
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
-            {
-                Return (Package (0x02)
-                {
-                    PEP0, 
-                    ADC1
-                })
-            }
+        OperationRegion (CP15, SystemMemory, 0x0016B000, 0x1020)
+        Field (CP15, DWordAcc, NoLock, Preserve)
+        {
+            GP0B,   32, 
+            Offset (0x101C), 
+            G0PB,   32
         }
 
-        ThermalZone (TZ9)
+        OperationRegion (CP16, SystemMemory, 0x0018D000, 0x1030)
+        Field (CP16, DWordAcc, NoLock, Preserve)
         {
-            Name (_HID, "QCOM029F")  // _HID: Hardware ID
-            Name (_UID, Zero)  // _UID: Unique ID
-            Name (_TZD, Package (0x0A)  // _TZD: Thermal Zone Devices
-            {
-                ^SYSM.CLUS.CPU0, 
-                ^SYSM.CLUS.CPU1, 
-                ^SYSM.CLUS.CPU2, 
-                ^SYSM.CLUS.CPU3, 
-                ^SYSM.CLUS.CPU4, 
-                ^SYSM.CLUS.CPU5, 
-                ^SYSM.CLUS.CPU6, 
-                ^SYSM.CLUS.CPU7, 
-                ^GPU0.MON0, 
-                GPU0
-            })
-            Name (TPSV, 0x0E92)
-            Method (_PSV, 0, NotSerialized)  // _PSV: Passive Temperature
-            {
-                Return (TPSV) /* \_SB_.TZ9_.TPSV */
-            }
+            GP1B,   32, 
+            Offset (0x1014), 
+            G1LB,   32, 
+            Offset (0x101C), 
+            G1PB,   32, 
+            G1NB,   32
+        }
 
-            Name (TTC1, One)
-            Method (_TC1, 0, NotSerialized)  // _TC1: Thermal Constant 1
+        Method (PPU1, 0, Serialized)
+        {
+            Name (TOUT, Zero)
+            PDT1 = 0x04
+            HPDC = 0x03
+            HSES = 0x27
+            HSEC = One
+            HSP1 = 0x31
+            HSP2 = One
+            HSS1 = 0xDE
+            HSS2 = 0x07
+            HSM1 = 0x4C
+            HSM2 = 0x06
+            HECE = 0x18
+            HCE1 = 0xB0
+            C1M0 = 0x8C
+            C2M0 = 0x20
+            C1M1 = 0x14
+            C2M1 = 0x34
+            HCM0 = 0x06
+            HCM1 = 0x06
+            HPR0 = 0x16
+            HPR1 = 0x16
+            HPC0 = 0x36
+            HPC1 = 0x36
+            HRC2 = 0x05
+            HCLC = 0x42
+            HRM0 = 0x82
+            HRM1 = 0x68
+            S1M0 = 0x55
+            S2M0 = 0x55
+            S3M0 = 0x03
+            S1M1 = 0xAB
+            S2M1 = 0xAA
+            S3M1 = 0x02
+            G0M0 = 0x3F
+            G0M1 = 0x3F
+            HCVT = 0x10
+            HCCS = Zero
+            HCHS = 0x30
+            HCDV = 0x04
+            HCCE = 0x73
+            HCCC = 0x1C
+            HMCS = 0x15
+            HDM1 = 0x04
+            HCCM = One
+            HVD1 = 0x22
+            HVD2 = Zero
+            L0C0 = Zero
+            L0TE = 0x0D
+            L0BM = One
+            L0LM = 0x3A
+            L0PR = 0x2F
+            L0L0 = 0x09
+            L0L1 = 0x09
+            L0L2 = 0x1A
+            L0R1 = One
+            L0R2 = 0x07
+            L0M0 = 0x31
+            L0M1 = 0x31
+            L0M2 = 0x03
+            L0CD = 0x02
+            L0VD = One
+            L0X0 = 0x12
+            L0TT = 0x25
+            L0OT = Zero
+            L0RT = 0x05
+            L0ET = One
+            L0VG = 0x26
+            L0DG = 0x12
+            L0EG = 0x04
+            L0OG = 0x04
+            L0PG = 0x09
+            L0EI = 0x15
+            L0DI = 0x32
+            L0B0 = 0x7F
+            L0B1 = 0x07
+            L0T1 = 0x04
+            L0RC = 0x70
+            L0F0 = 0x08
+            L0F1 = 0x08
+            L0F2 = 0x09
+            L0S0 = 0x04
+            L0S1 = 0x04
+            L0S2 = 0x02
+            L0SC = 0x0C
+            L0RB = 0x02
+            L0P0 = 0x5C
+            L0P1 = 0x3E
+            L0P2 = 0x3F
+            L0SE = 0x21
+            L0SN = 0xA0
+            L0SD = 0x08
+            L0DC = One
+            L0RE = 0xC3
+            L0PC = Zero
+            L0N0 = 0x8C
+            L0ER = 0x7F
+            L0HI = 0x2A
+            L0C1 = 0x0C
+            L0C2 = Zero
+            L0RR = 0x02
+            L0IN = 0x20
+            L1C0 = Zero
+            L1TE = 0x0D
+            L1BM = One
+            L1LM = 0x3A
+            L1PR = 0x2F
+            L1L0 = 0x09
+            L1L1 = 0x09
+            L1L2 = 0x1A
+            L1R1 = One
+            L1R2 = 0x07
+            L1M0 = 0x31
+            L1M1 = 0x31
+            L1M2 = 0x03
+            L1CD = 0x02
+            L1VD = One
+            L1X0 = 0x12
+            L1TT = 0x25
+            L1OT = Zero
+            L1RT = 0x05
+            L1ET = One
+            L1VG = 0x26
+            L1DG = 0x12
+            L1EG = 0x04
+            L1OG = 0x04
+            L1PG = 0x09
+            L1EI = 0x15
+            L1DI = 0x32
+            L1B0 = 0x7F
+            L1B1 = 0x07
+            L1T1 = 0x04
+            L1RC = 0x70
+            L1F0 = 0x08
+            L1F1 = 0x08
+            L1F2 = 0x09
+            L1S0 = 0x04
+            L1S1 = 0x04
+            L1S2 = 0x02
+            L1SC = 0x0C
+            L1RB = 0x02
+            L1P0 = 0x5C
+            L1P1 = 0x3E
+            L1P2 = 0x3F
+            L1SE = 0x21
+            L1SN = 0xA0
+            L1SD = 0x08
+            L1DC = One
+            L1RE = 0xC3
+            L1PC = Zero
+            L1N0 = 0x8C
+            L1ER = 0x7F
+            L1HI = 0x2A
+            L1C1 = 0x0C
+            L1C2 = Zero
+            L1RR = 0x02
+            L1IN = 0x20
+            HPSG = 0x3F
+            HTRC = 0x58
+            HTM3 = 0x19
+            HTP3 = 0x07
+            HTM6 = 0x17
+            HTP6 = 0x09
+            If ((SIDV >= 0x00020000)){}
+            HPSR = Zero
+            L0ST = One
+            L1ST = One
+            HSTC = One
+            Local0 = HPST /* \_SB_.HPST */
+            While ((Local0 & 0x40))
             {
-                Return (TTC1) /* \_SB_.TZ9_.TTC1 */
-            }
+                Sleep (One)
+                TOUT++
+                If ((TOUT == 0x0F))
+                {
+                    Break
+                }
 
-            Name (TTC2, One)
-            Method (_TC2, 0, NotSerialized)  // _TC2: Thermal Constant 2
-            {
-                Return (TTC2) /* \_SB_.TZ9_.TTC2 */
+                Local0 = HPST /* \_SB_.HPST */
             }
 
-            Name (TTSP, 0x32)
-            Method (_TSP, 0, NotSerialized)  // _TSP: Thermal Sampling Period
+            If ((TOUT == 0x0F))
             {
-                Return (TTSP) /* \_SB_.TZ9_.TTSP */
+                Return (One)
             }
-
-            Name (_TZP, Zero)  // _TZP: Thermal Zone Polling
-            Name (_MTL, 0x19)  // _MTL: Minimum Throttle Limit
-            Method (_DEP, 0, NotSerialized)  // _DEP: Dependencies
+            Else
             {
-                Return (Package (0x02)
-                {
-                    PEP0, 
-                    ADC1
-                })
+                Return (Zero)
             }
         }
 
-        Name (HWNH, Zero)
-        Name (HWNL, Zero)
-        Device (HWN1)
+        Method (LTS1, 0, Serialized)
         {
-            Name (_HID, "QCOM02A9")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-            Method (_STA, 0, NotSerialized)  // _STA: Status
+            Name (TOUT, Zero)
+            Local0 = G32C /* \_SB_.G32C */
+            Local0 &= 0xFFFFE0FF
+            Local0 |= 0x0100
+            G32C = Local0
+            GMDC = 0x000155A0
+            Local0 = GEQC /* \_SB_.GEQC */
+            Local0 &= 0xFFFFFFEF
+            GEQC = Local0
+            CSW1 = One
+            P1PR = 0x77777777
+            CSW1 = Zero
+            Local0 = GPLC /* \_SB_.GPLC */
+            Local0 &= 0xFFC0F0FF
+            Local0 |= 0x00030300
+            GPLC = Local0
+            PLT1 = 0x0100
+            Local0 = EST1 /* \_SB_.EST1 */
+            While (((Local0 & 0x0400) != 0x0400))
             {
-                If ((HWNH == Zero))
-                {
-                    Return (Zero)
-                }
-                Else
+                Sleep (One)
+                TOUT++
+                If ((TOUT == 0x96))
                 {
-                    Return (0x0F)
+                    Break
                 }
-            }
 
-            Name (_DEP, Package (0x01)  // _DEP: Dependencies
-            {
-                PMIC
-            })
-            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
-            {
-                Name (RBUF, ResourceTemplate ()
-                {
-                    GpioInt (Level, ActiveHigh, Exclusive, PullNone, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x0190
-                        }
-                })
-                Return (RBUF) /* \_SB_.HWN1._CRS.RBUF */
+                Local0 = EST1 /* \_SB_.EST1 */
             }
 
-            Method (HAPI, 0, NotSerialized)
+            If ((TOUT == 0x96))
             {
-                Name (CFG0, Package (0x03)
-                {
-                    One, 
-                    One, 
-                    One
-                })
-                Return (CFG0) /* \_SB_.HWN1.HAPI.CFG0 */
+                Return (One)
             }
-
-            Method (HAPC, 0, NotSerialized)
+            Else
             {
-                Name (CFG0, Package (0x16)
-                {
-                    Zero, 
-                    0x0984, 
-                    Zero, 
-                    One, 
-                    One, 
-                    One, 
-                    One, 
-                    Zero, 
-                    0x04, 
-                    One, 
-                    0x03, 
-                    0x14, 
-                    One, 
-                    0x03, 
-                    Zero, 
-                    Zero, 
-                    0x06, 
-                    Zero, 
-                    Zero, 
-                    0x0535, 
-                    0x03, 
-                    One
-                })
-                Return (CFG0) /* \_SB_.HWN1.HAPC.CFG0 */
+                Return (Zero)
             }
         }
 
-        Device (HWN0)
+        Method (IAT1, 0, Serialized)
         {
-            Name (_HID, "QCOM02A8")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-            Name (_UID, Zero)  // _UID: Unique ID
-            Method (_STA, 0, NotSerialized)  // _STA: Status
-            {
-                If ((^^HWNL == Zero))
-                {
-                    Return (Zero)
-                }
-                Else
-                {
-                    Return (0x0F)
-                }
-            }
-
-            Method (HWNL, 0, NotSerialized)
-            {
-                Name (CFG0, Package (0x10)
-                {
-                    One, 
-                    0x03, 
-                    0x019B, 
-                    0x14, 
-                    0x20, 
-                    0x02, 
-                    0x40, 
-                    0x03, 
-                    0x80, 
-                    0x04, 
-                    One, 
-                    One, 
-                    One, 
-                    0x03, 
-                    One, 
-                    One
-                })
-                Return (CFG0) /* \_SB_.HWN0.HWNL.CFG0 */
-            }
+            IAV1 = One
+            ILB1 = 0x40100000
+            IUB1 = Zero
+            ILR1 = 0x401FFFFF
+            ILT1 = 0x01000000
+            IUT1 = Zero
+            CR11 = 0x04
+            CR21 = 0x80000000
+            BNR1 = 0x00010100
         }
 
-        Device (CONT)
+        Method (REB1, 2, Serialized)
         {
-            Name (_HID, "CONT1234")  // _HID: Hardware ID
-            Name (_CID, "PNP0C60" /* Display Sensor Device */)  // _CID: Compatible ID
+            Local0 = PSC1 /* \_SB_.PSC1 */
+            Local0 &= 0xFBFFFFFF
+            PSC1 = Local0
+            LBW0 = Arg0
+            HBW0 = Zero
+            LLW0 = Arg1
+            HLW0 = Zero
+            LBR0 = Arg0
+            HBR0 = Zero
+            LLR0 = Arg1
+            HLR0 = Zero
+            Local0 = PSC1 /* \_SB_.PSC1 */
+            Local0 |= 0x04000000
+            PSC1 = Local0
         }
 
-        Device (POWR)
+        Method (EEB1, 2, Serialized)
         {
-            Name (_HID, "POWR1234")  // _HID: Hardware ID
-            Name (_CID, "PNP0C40" /* Standard Button Controller */)  // _CID: Compatible ID
+            Local0 = PSC1 /* \_SB_.PSC1 */
+            Local0 &= 0xBFFFFFFF
+            PSC1 = Local0
+            LBW1 = Arg0
+            HBW1 = Zero
+            LLW1 = Arg1
+            HLW1 = Zero
+            LBR1 = Arg0
+            HBR1 = Zero
+            LLR1 = Arg1
+            HLR1 = Zero
+            Local0 = PSC1 /* \_SB_.PSC1 */
+            Local0 |= 0x40000000
+            PSC1 = Local0
         }
 
-        Device (SVBI)
+        Name (E1LT, 0x400FFFFF)
+        Method (MSC1, 0, Serialized)
         {
-            Name (_HID, "SAMM0901")  // _HID: Hardware ID
-            Name (_SUB, "RENEGA0E")  // _SUB: Subsystem ID
+            Local0 = SCR1 /* \_SB_.SCR1 */
+            Local0 |= 0x02
+            SCR1 = Local0
+            PSL1 = 0x20000000
+            Local0 = PPC1 /* \_SB_.PPC1 */
+            Local0 &= 0xFFFFFFDF
+            PPC1 = Local0
+            CSW1 = One
+            Local0 = LCA1 /* \_SB_.LCA1 */
+            Local0 |= 0x00400000
+            Local0 |= 0x0C00
+            LCA1 = Local0
+            Local0 = CRI1 /* \_SB_.CRI1 */
+            Local0 &= 0xFFFF
+            Local0 |= 0x06040000
+            CRI1 = Local0
+            Local0 = SCA1 /* \_SB_.SCA1 */
+            Local0 &= 0xFFFFFFBF
+            SCA1 = Local0
+            CSW1 = Zero
+            ECS1 = One
+            R1B0 = Zero
+            R1B1 = Zero
+            ECS1 = Zero
+            PEB1 = 0x40000000
+            REB1 (0x40001000, E1LT)
+            EEB1 (0x40101000, 0x401FFFFF)
         }
 
-        Device (TSC1)
+        Name (G1D3, Zero)
+        Device (IPC0)
         {
-            Name (_HID, "TEST3330")  // _HID: Hardware ID
-            Name (_HRV, One)  // _HRV: Hardware Revision
-            Name (_ADR, Zero)  // _ADR: Address
-            Name (_UID, One)  // _UID: Unique ID
-            Name (_DEP, Package (0x03)  // _DEP: Dependencies
+            Name (_DEP, Package (0x01)  // _DEP: Dependencies
             {
-                PEP0, 
-                GIO0, 
-                IC13
+                GLNK
             })
-            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
-            {
-                Name (RBUF, ResourceTemplate ()
-                {
-                    //I2cSerialBusV2 (0x0020, ControllerInitiated, 0x00061A80,
-                    I2cSerialBusV2 (0x0001, ControllerInitiated, 0x00061A80,
-                        AddressingMode7Bit, "\\_SB.IC13",
-                        0x00, ResourceConsumer, , Exclusive,
-                        )
-                    GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullUp, 0x0000,
-                        "\\_SB.GIO0", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x007D
-                        }
-                    //GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionNone,
-                    //    "\\_SB.GIO0", 0x00, ResourceConsumer, ,
-                    //    )
-                    //    {   // Pin list
-                    //        0x0063
-                    //    }
-                })
-                Return (RBUF) /* \_SB_.TSC1._CRS.RBUF */
-            }
-
-            Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
-            {
-                While (One)
-                {
-                    Name (_T_0, Buffer (0x01)  // _T_x: Emitted by ASL Compiler
-                    {
-                         0x00                                             // .
-                    })
-                    CopyObject (ToBuffer (Arg0), _T_0) /* \_SB_.TSC1._DSM._T_0 */
-                    If ((_T_0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
-                    {
-                        While (One)
-                        {
-                            Name (_T_1, 0x00)  // _T_x: Emitted by ASL Compiler
-                            _T_1 = ToInteger (Arg2)
-                            If ((_T_1 == Zero))
-                            {
-                                While (One)
-                                {
-                                    Name (_T_2, 0x00)  // _T_x: Emitted by ASL Compiler
-                                    _T_2 = ToInteger (Arg1)
-                                    If ((_T_2 == One))
-                                    {
-                                        Return (Buffer (One)
-                                        {
-                                             0x03                                             // .
-                                        })
-                                    }
-                                    Else
-                                    {
-                                        Return (Buffer (One)
-                                        {
-                                             0x00                                             // .
-                                        })
-                                    }
-
-                                    Break
-                                }
-                            }
-                            ElseIf ((_T_1 == One))
-                            {
-                                Debug = "Method _DSM Function HID"
-                                Return (0x20)
-                            }
-                            Else
-                            {
-                            }
+            Name (_HID, "QCOM021C")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+        }
 
-                            Break
-                        }
+        Device (GLNK)
+        {
+            Name (_DEP, Package (0x01)  // _DEP: Dependencies
+            {
+                RPEN
+            })
+            Name (_HID, "QCOM02F9")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+            Name (_UID, Zero)  // _UID: Unique ID
+            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
+            {
+                Name (RBUF, ResourceTemplate ()
+                {
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
+                    {
+                        0x000001E3,
                     }
-                    Else
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
                     {
-                        Return (Buffer (One)
-                        {
-                             0x00                                             // .
-                        })
+                        0x000000BE,
                     }
-
-                    Break
-                }
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
+                    {
+                        0x000000CC,
+                    }
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
+                    {
+                        0x00000260,
+                    }
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
+                    {
+                        0x000001E1,
+                    }
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
+                    {
+                        0x000000BC,
+                    }
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
+                    {
+                        0x000000CA,
+                    }
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
+                    {
+                        0x0000025E,
+                    }
+                })
+                Return (RBUF) /* \_SB_.GLNK._CRS.RBUF */
             }
+        }
 
-            Name (PGID, Buffer (0x0A)
+        Device (ARPC)
+        {
+            Name (_DEP, Package (0x03)  // _DEP: Dependencies
             {
-                "\\_SB.TSC1"
+                MMU0, 
+                GLNK, 
+                SCM0
             })
-            Name (DBUF, Buffer (DBFL){})
-            CreateByteField (DBUF, Zero, STAT)
-            CreateByteField (DBUF, 0x02, DVAL)
-            CreateField (DBUF, 0x18, 0xA0, DEID)
-            Method (_S1D, 0, NotSerialized)  // _S1D: S1 Device State
-            {
-                Return (0x03)
-            }
+            Name (_HID, "QCOM0297")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+        }
 
-            Method (_S2D, 0, NotSerialized)  // _S2D: S2 Device State
+        Device (ARPD)
+        {
+            Name (_DEP, Package (0x02)  // _DEP: Dependencies
             {
-                Return (0x03)
-            }
+                ADSP, 
+                ARPC
+            })
+            Name (_HID, "QCOM02F3")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+        }
 
-            Method (_S3D, 0, NotSerialized)  // _S3D: S3 Device State
+        Device (RFS0)
+        {
+            Name (_DEP, Package (0x02)  // _DEP: Dependencies
             {
-                Return (0x03)
+                IPC0, 
+                UFS0
+            })
+            Name (_HID, "QCOM0235")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
+            {
+                Name (RBUF, ResourceTemplate ()
+                {
+                    Memory32Fixed (ReadWrite,
+                        0x88888888,         // Address Base
+                        0x99999999,         // Address Length
+                        _Y00)
+                    Memory32Fixed (ReadWrite,
+                        0x11111111,         // Address Base
+                        0x22222222,         // Address Length
+                        _Y01)
+                    Memory32Fixed (ReadWrite,
+                        0x33333333,         // Address Base
+                        0x44444444,         // Address Length
+                        _Y02)
+                })
+                CreateDWordField (RBUF, \_SB.RFS0._CRS._Y00._BAS, RMTA)  // _BAS: Base Address
+                CreateDWordField (RBUF, \_SB.RFS0._CRS._Y00._LEN, RMTL)  // _LEN: Length
+                CreateDWordField (RBUF, \_SB.RFS0._CRS._Y01._BAS, RFMA)  // _BAS: Base Address
+                CreateDWordField (RBUF, \_SB.RFS0._CRS._Y01._LEN, RFML)  // _LEN: Length
+                CreateDWordField (RBUF, \_SB.RFS0._CRS._Y02._BAS, RFAA)  // _BAS: Base Address
+                CreateDWordField (RBUF, \_SB.RFS0._CRS._Y02._LEN, RFAL)  // _LEN: Length
+                RMTA = RMTB /* \_SB_.RMTB */
+                RMTL = RMTX /* \_SB_.RMTX */
+                RFMA = RFMB /* \_SB_.RFMB */
+                RFML = RFMS /* \_SB_.RFMS */
+                RFAA = RFAB /* \_SB_.RFAB */
+                RFAL = RFAS /* \_SB_.RFAS */
+                Return (RBUF) /* \_SB_.RFS0._CRS.RBUF */
             }
 
-            Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
+            Method (_STA, 0, NotSerialized)  // _STA: Status
             {
-                DEID = Buffer (ESNL){}
-                DVAL = Zero
-                DEID = PGID /* \_SB_.TSC1.PGID */
-                If (^^ABD.AVBL)
-                {
-                    ^^PEP0.FLD0 = DBUF /* \_SB_.TSC1.DBUF */
-                }
+                Return (0x0B)
             }
+        }
 
-            Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
+        Device (IPA)
+        {
+            Name (_DEP, Package (0x06)  // _DEP: Dependencies
             {
-                DEID = Buffer (ESNL){}
-                DVAL = 0x03
-                DEID = PGID /* \_SB_.TSC1.PGID */
-                If (^^ABD.AVBL)
+                PEP0, 
+                RPEN, 
+                PILC, 
+                MMU0, 
+                GSI, 
+                GLNK
+            })
+            Name (_HID, "QCOM02B3")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+            Name (_UID, Zero)  // _UID: Unique ID
+            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
+            {
+                Return (ResourceTemplate ()
                 {
-                    ^^PEP0.FLD0 = DBUF /* \_SB_.TSC1.DBUF */
-                }
+                    Memory32Fixed (ReadWrite,
+                        0x01E40000,         // Address Base
+                        0x0001FFFF,         // Address Length
+                        )
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
+                    {
+                        0x00000157,
+                    }
+                })
             }
         }
 
-        Device (BTNS)
+        Device (GSI)
         {
-            Name (_HID, "ACPI0011" /* Generic Buttons Device */)  // _HID: Hardware ID
+            Name (_DEP, Package (0x01)  // _DEP: Dependencies
+            {
+                PEP0
+            })
+            Name (_HID, "QCOM02E7")  // _HID: Hardware ID
             Alias (PSUB, _SUB)
             Name (_UID, Zero)  // _UID: Unique ID
             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
             {
                 Name (RBUF, ResourceTemplate ()
                 {
-                    GpioInt (Edge, ActiveBoth, Exclusive, PullDown, 0x0010,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x0000
-                        }
-                    GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        )
-                        {   // Pin list
-                            0x0085
-                        }
-                    GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullDown, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
+                    Memory32Fixed (ReadWrite,
+                        0x01E00000,         // Address Base
+                        0x00030000,         // Address Length
                         )
-                        {   // Pin list
-                            0x0084
-                        }
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
+                    {
+                        0x000001D0,
+                    }
                 })
-                Return (RBUF) /* \_SB_.BTNS._CRS.RBUF */
+                Return (RBUF) /* \_SB_.GSI_._CRS.RBUF */
             }
+        }
 
-            Name (_DSD, Package (0x02)  // _DSD: Device-Specific Data
+        Device (QDIG)
+        {
+            Name (_DEP, Package (0x01)  // _DEP: Dependencies
             {
-                ToUUID ("fa6bd625-9ce8-470d-a2c7-b3ca36c4282e") /* Generic Buttons Device */, 
-                Package (0x06)
+                GLNK
+            })
+            Name (_HID, "QCOM0225")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+        }
+
+        Device (QCDB)
+        {
+            Name (_HID, "QCOM0298")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+        }
+
+        Device (SYSM)
+        {
+            Name (_HID, "ACPI0010" /* Processor Container Device */)  // _HID: Hardware ID
+            Name (_UID, 0x00100000)  // _UID: Unique ID
+            Name (_LPI, Package (0x05)  // _LPI: Low Power Idle States
+            {
+                Zero, 
+                0x01000000, 
+                0x02, 
+                Package (0x0A)
                 {
-                    Package (0x05)
+                    0x251C, 
+                    0x1770, 
+                    Zero, 
+                    0x20, 
+                    Zero, 
+                    Zero, 
+                    0x3300, 
+                    ResourceTemplate ()
                     {
-                        Zero
-                        One, 
-                        Zero, 
-                        One, 
-                        0x0D
+                        Register (SystemMemory
+                            0x00,               // Bit Width
+                            0x00,               // Bit Offset
+                            0x0000000000000000, // Address
+                            ,)
                     }, 
 
-                    Package (0x05)
+                    ResourceTemplate ()
                     {
-                        One
-                        Zero, 
-                        One, 
-                        One, 
-                        0x81
+                        Register (SystemMemory
+                            0x00,               // Bit Width
+                            0x00,               // Bit Offset
+                            0x0000000000000000, // Address
+                            ,)
                     }, 
 
-                    Package (0x05)
-                    {
-                        One, 
-                        One, 
-                        One, 
-                        0x0C, 
-                        0xE9
-                    }, 
+                    "platform.F1"
+                }, 
 
-                    Package (0x05)
+                Package (0x0A)
+                {
+                    0x2710, 
+                    0x19C8, 
+                    One, 
+                    0x20, 
+                    Zero, 
+                    Zero, 
+                    0xC300, 
+                    ResourceTemplate ()
                     {
-                        One
-                        0x02, 
-                        One, 
-                        0x0C, 
-                        0xEA
+                        Register (SystemMemory
+                            0x00,               // Bit Width
+                            0x00,               // Bit Offset
+                            0x0000000000000000, // Address
+                            ,)
                     }, 
 
-                    Package (0x05)
+                    ResourceTemplate ()
                     {
-                        One
-                        0x03, 
-                        One, 
-                        0x90, 
-                        0x20
+                        Register (SystemMemory
+                            0x00,               // Bit Width
+                            0x00,               // Bit Offset
+                            0x0000000000000000, // Address
+                            ,)
                     }, 
 
-                    Package (0x05)
-                    {
-                        One, 
-                        0x04, 
-                        One, 
-                        0x90, 
-                        0x21
-                    }
+                    "platform.F2"
                 }
             })
-        }
-
-        Device (QDCI)
-        {
-            Name (_DEP, Package (0x01)  // _DEP: Dependencies
-            {
-                GLNK
-            })
-            Name (_HID, "QCOM0224")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-        }
-
-        Include ("wcnss_bt.asl")
-
-        Device (ADC1)
-        {
-            Name (_DEP, Package (0x02)  // _DEP: Dependencies
-            {
-                SPMI, 
-                PMIC
-            })
-            Name (_HID, "QCOM0221")  // _HID: Hardware ID
-            Alias (PSUB, _SUB)
-            Name (_UID, Zero)  // _UID: Unique ID
-            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
+            Device (CLUS)
             {
-                Name (INTB, ResourceTemplate ()
+                Name (_HID, "ACPI0010" /* Processor Container Device */)  // _HID: Hardware ID
+                Name (_UID, 0x10)  // _UID: Unique ID
+                Name (_LPI, Package (0x05)  // _LPI: Low Power Idle States
                 {
-                    GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        RawDataBuffer (0x01)  // Vendor Data
+                    Zero, 
+                    0x01000000, 
+                    0x02, 
+                    Package (0x0A)
+                    {
+                        0x170C, 
+                        0x0BB8, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        Zero, 
+                        0x20, 
+                        ResourceTemplate ()
                         {
-                            0x02
-                        })
-                        {   // Pin list
-                            0x0020
-                        }
-                    GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        RawDataBuffer (0x01)  // Vendor Data
+                            Register (SystemMemory, 
+                                0x00,               // Bit Width
+                                0x00,               // Bit Offset
+                                0x0000000000000000, // Address
+                                ,)
+                        }, 
+
+                        ResourceTemplate ()
                         {
-                            0x02
-                        })
-                        {   // Pin list
-                            0x0028
-                        }
-                    GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullUp, 0x0000,
-                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
-                        RawDataBuffer (0x01)  // Vendor Data
+                            Register (SystemMemory, 
+                                0x00,               // Bit Width
+                                0x00,               // Bit Offset
+                                0x0000000000000000, // Address
+                                ,)
+                        }, 
+
+                        "L3Cluster.D2"
+                    }, 
+
+                    Package (0x0A)
+                    {
+                        0x1770, 
+                        0x0CE4, 
+                        One, 
+                        Zero, 
+                        Zero, 
+                        0x02, 
+                        0x40, 
+                        ResourceTemplate ()
                         {
-                            0x02
-                        })
-                        {   // Pin list
-                            0x0168
-                        }
-                })
-                Name (NAM, Buffer (0x0A)
-                {
-                    "\\_SB.SPMI"
-                })
-                Name (VUSR, Buffer (0x0C)
-                {
-                    /* 0000 */  0x8E, 0x13, 0x00, 0x01, 0x00, 0xC1, 0x02, 0x00,  // ........
-                    /* 0008 */  0x31, 0x01, 0x00, 0x00                           // 1...
-                })
-                Name (VBTM, Buffer (0x0C)
-                {
-                    /* 0000 */  0x8E, 0x13, 0x00, 0x01, 0x00, 0xC1, 0x02, 0x00,  // ........
-                    /* 0008 */  0x34, 0x01, 0x00, 0x00                           // 4...
+                            Register (SystemMemory, 
+                                0x00,               // Bit Width
+                                0x00,               // Bit Offset
+                                0x0000000000000000, // Address
+                                ,)
+                        }, 
+
+                        ResourceTemplate ()
+                        {
+                            Register (SystemMemory, 
+                                0x00,               // Bit Width
+                                0x00,               // Bit Offset
+                                0x0000000000000000, // Address
+                                ,)
+                        }, 
+
+                        "L3Cluster.D4"
+                    }
                 })
-                Name (FGRR, Buffer (0x0C)
+                Device (CPU0)
                 {
-                    /* 0000 */  0x8E, 0x13, 0x00, 0x01, 0x00, 0xC1, 0x02, 0x02,  // ........
-                    /* 0008 */  0x45, 0x01, 0x00, 0x00                           // E...
-                })
-                Concatenate (VUSR, NAM, Local1)
-                Concatenate (VBTM, NAM, Local2)
-                Concatenate (FGRR, NAM, Local3)
-                Concatenate (Local1, Local2, Local4)
-                Concatenate (Local3, INTB, Local5)
-                Concatenate (Local4, Local5, Local0)
-                Return (Local0)
-            }
+                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
+                    Name (_UID, Zero)  // _UID: Unique ID
+                    Method (_STA, 0, NotSerialized)  // _STA: Status
+                    {
+                        Return (0x0F)
+                    }
+
+                    Name (_LPI, Package (0x07)  // _LPI: Low Power Idle States
+                    {
+                        Zero, 
+                        Zero, 
+                        0x04, 
+                        Package (0x0A)
+                        {
+                            Zero, 
+                            Zero, 
+                            One, 
+                            Zero, 
+                            Zero, 
+                            Zero, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x00000000FFFFFFFF, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
+
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
+
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
+
+                            "KryoSilver0.C1"
+                        }, 
+
+                        Package (0x0A)
+                        {
+                            0x0190, 
+                            0x64, 
+                            Zero, 
+                            Zero, 
+                            Zero, 
+                            One, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000002, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
+
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
+
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-            Method (ADDV, 0, NotSerialized)
-            {
-                Return (Package (0x03)
-                {
-                    One, 
-                    One, 
-                    One
-                })
-            }
+                            "KryoSilver0.C2"
+                        }, 
 
-            Method (GENP, 0, NotSerialized)
-            {
-                Return (Package (0x0A)
-                {
-                    Zero, 
-                    0x4000, 
-                    0x001C9C38, 
-                    0x0007A120, 
-                    0x11, 
-                    Zero, 
-                    Zero, 
-                    0x0300, 
-                    0x0100, 
-                    0x08
-                })
-            }
+                        Package (0x0A)
+                        {
+                            0x1388, 
+                            0x01F4, 
+                            One, 
+                            One, 
+                            Zero, 
+                            One, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000040000003, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-            Method (PTCF, 1, NotSerialized)
-            {
-                Local0 = (Arg0 >> One)
-                Local0 -= 0x00042B08
-                Return (Local0)
-            }
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-            Method (PTCI, 1, NotSerialized)
-            {
-                Local0 = (Arg0 + 0x00042B08)
-                Local0 <<= One
-                Return (Local0)
-            }
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-            Method (VGIO, 0, NotSerialized)
-            {
-                Return (Package (0x08)
-                {
-                    Package (0x02)
-                    {
-                        0x08, 
-                        Buffer (0x04)
-                        {
-                             0x12, 0x32, 0x52, 0x72                           // .2Rr
-                        }
-                    }, 
+                            "KryoSilver0.C3"
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x09, 
-                        Buffer (0x04)
+                        Package (0x0A)
                         {
-                             0x13, 0x33, 0x53, 0x73                           // .3Ss
-                        }
-                    }, 
+                            0x13EC, 
+                            0x0226, 
+                            One, 
+                            One, 
+                            Zero, 
+                            0x02, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000040000004, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x0A
-                        Buffer (0x04)
-                        {
-                             0x14, 0x34, 0x54, 0x74                           // .4Tt
-                        }
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x0B
-                        Buffer (0x04)
-                        {
-                             0x15, 0x35, 0x55, 0x75                           // .5Uu
-                        }
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x0C, 
-                        Buffer (0x04)
-                        {
-                             0x16, 0x36, 0x56, 0x76                           // .6Vv
+                            "KryoSilver0.C4"
                         }
-                    }, 
+                    })
+                }
 
-                    Package (0x02)
+                Device (CPU1)
+                {
+                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
+                    Name (_UID, One)  // _UID: Unique ID
+                    Method (_STA, 0, NotSerialized)  // _STA: Status
                     {
-                        0x15, 
-                        Buffer (0x05)
-                        {
-                             0x17, 0x37, 0x57, 0x77, 0x97                     // .7Ww.
-                        }
-                    }, 
+                        Return (0x0F)
+                    }
 
-                    Package (0x02)
+                    Name (_LPI, Package (0x07)  // _LPI: Low Power Idle States
                     {
-                        0x16, 
-                        Buffer (0x05)
+                        Zero, 
+                        Zero, 
+                        0x04, 
+                        Package (0x0A)
                         {
-                             0x18, 0x38, 0x58, 0x78, 0x98                     // .8Xx.
-                        }
-                    }, 
+                            Zero, 
+                            Zero, 
+                            One, 
+                            Zero, 
+                            Zero, 
+                            Zero, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x00000000FFFFFFFF, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x17, 
-                        Buffer (0x05)
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
+
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
+
+                            "KryoSilver1.C1"
+                        }, 
+
+                        Package (0x0A)
                         {
-                             0x19, 0x39, 0x59, 0x79, 0x99                     // .9Yy.
-                        }
-                    }
-                })
-            }
+                            0x0190, 
+                            0x64, 
+                            Zero, 
+                            Zero, 
+                            Zero, 
+                            One, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000002, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-            Method (VTGN, 0, NotSerialized)
-            {
-                Return (Package (0x09)
-                {
-                    0x02, 
-                    0x02, 
-                    0x4000, 
-                    0x001C9C38, 
-                    Zero, 
-                    Zero, 
-                    0x0300, 
-                    0x0100, 
-                    0x08
-                })
-            }
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-            Method (GENF, 0, NotSerialized)
-            {
-                Return (Package (0x0D)
-                {
-                    0xFFFFFFE2, 
-                    0x61, 
-                    0xFFFFFFCE, 
-                    0xA0, 
-                    0x03FF, 
-                    0x002625A0, 
-                    0x01F4, 
-                    0x04, 
-                    0x0334, 
-                    0x004C4B40, 
-                    0x02, 
-                    One, 
-                    0x0D
-                })
-            }
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-            Method (FCHN, 0, NotSerialized)
-            {
-                Return (Package (0x0C)
-                {
-                    Package (0x08)
-                    {
-                        "BATT_ID_OHMS", 
-                        One, 
-                        One, 
-                        Zero, 
-                        One, 
-                        One, 
-                        One, 
-                        Zero
-                    }, 
+                            "KryoSilver1.C2"
+                        }, 
 
-                    Package (0x08)
-                    {
-                        "BATT_ID_OHMS_FRESH", 
-                        0x02, 
-                        One, 
-                        Zero, 
-                        One, 
-                        One, 
-                        One, 
-                        Zero
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x1388, 
+                            0x01F4, 
+                            One, 
+                            One, 
+                            Zero, 
+                            One, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000040000003, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x08)
-                    {
-                        "BATT_THERM", 
-                        0x06, 
-                        One, 
-                        Zero, 
-                        One, 
-                        One, 
-                        0x03, 
-                        Zero
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x08)
-                    {
-                        "AUX_THERM", 
-                        0x07, 
-                        One, 
-                        Zero, 
-                        One, 
-                        One, 
-                        0x03, 
-                        Zero
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x08)
-                    {
-                        "SKIN_THERM", 
-                        Zero, 
-                        One, 
-                        Zero, 
-                        One, 
-                        One, 
-                        0x03, 
-                        Zero
-                    }, 
+                            "KryoSilver1.C3"
+                        }, 
 
-                    Package (0x08)
-                    {
-                        "PMIC_TEMP2", 
-                        0x0C, 
-                        One, 
-                        Zero, 
-                        0x03, 
-                        0x02, 
-                        0x02, 
-                        FGDT
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x13EC, 
+                            0x0226, 
+                            One, 
+                            One, 
+                            Zero, 
+                            0x02, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000040000004, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x08)
-                    {
-                        "CHG_TEMP", 
-                        0x0D, 
-                        One, 
-                        Zero, 
-                        0x03, 
-                        0x02, 
-                        0x02, 
-                        FGCT
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x08)
-                    {
-                        "USB_IN", 
-                        0x08, 
-                        One, 
-                        Zero, 
-                        One, 
-                        0x08, 
-                        Zero, 
-                        Zero
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x08)
-                    {
-                        "USB_IN_I", 
-                        0x09, 
-                        One, 
-                        Zero, 
-                        One, 
-                        One, 
-                        0x04, 
-                        Zero
-                    }, 
+                            "KryoSilver1.C4"
+                        }
+                    })
+                }
 
-                    Package (0x08)
+                Device (CPU2)
+                {
+                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
+                    Name (_UID, 0x02)  // _UID: Unique ID
+                    Method (_STA, 0, NotSerialized)  // _STA: Status
                     {
-                        "DC_IN", 
-                        0x0A, 
-                        One, 
-                        Zero, 
-                        One, 
-                        0x08, 
-                        Zero, 
-                        Zero
-                    }, 
+                        Return (0x0F)
+                    }
 
-                    Package (0x08)
+                    Name (_LPI, Package (0x07)  // _LPI: Low Power Idle States
                     {
-                        "DC_IN_I", 
-                        0x0B, 
-                        One, 
                         Zero, 
-                        One, 
-                        One, 
+                        Zero, 
                         0x04, 
-                        Zero
-                    }, 
+                        Package (0x0A)
+                        {
+                            Zero, 
+                            Zero, 
+                            One, 
+                            Zero, 
+                            Zero, 
+                            Zero, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x00000000FFFFFFFF, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x08)
-                    {
-                        "FG_GPIO", 
-                        0x0E, 
-                        Zero, 
-                        Zero, 
-                        One, 
-                        0x02, 
-                        Zero, 
-                        Zero
-                    }
-                })
-            }
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-            Method (FGDT, 0, NotSerialized)
-            {
-                Return (Package (0x02)
-                {
-                    Package (0x02)
-                    {
-                        0x01C2, 
-                        0xFFFF3CB0
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x0366, 
-                        0x00027100
-                    }
-                })
-            }
+                            "KryoSilver2.C1"
+                        }, 
 
-            Method (FGCT, 0, NotSerialized)
-            {
-                Return (Package (0x02)
-                {
-                    Package (0x02)
-                    {
-                        0x0633, 
-                        0xFFFF3CB0
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x0190, 
+                            0x64, 
+                            Zero, 
+                            Zero, 
+                            Zero, 
+                            One, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000002, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
+
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x0318
-                        0x00027100
-                    }
-                })
-            }
-        }
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-        Scope (ADC1)
-        {
-            Method (CHAN, 0, NotSerialized)
-            {
-                Name (CBUF, Package (0x08)
-                {
-                    Package (0x0D)
-                    {
-                        "VPH_PWR", 
-                        0x83, 
-                        Zero, 
-                        Zero, 
-                        0x02, 
-                        0x02, 
-                        One, 
-                        0x03, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero
-                    }, 
+                            "KryoSilver2.C2"
+                        }, 
 
-                    Package (0x0D)
-                    {
-                        "VCOIN", 
-                        0x85, 
-                        Zero, 
-                        Zero, 
-                        0x02, 
-                        0x02, 
-                        One, 
-                        0x03, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x1388, 
+                            0x01F4, 
+                            One, 
+                            One, 
+                            Zero, 
+                            One, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000040000003, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x0D)
-                    {
-                        "PMIC_THERM", 
-                        0x06, 
-                        Zero, 
-                        Zero, 
-                        0x02, 
-                        0x02, 
-                        One, 
-                        One, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        PTCF,
-                        0x02
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x0D)
-                    {
-                        "XO_THERM", 
-                        0x4C, 
-                        0x08, 
-                        Zero, 
-                        0x02, 
-                        One, 
-                        One, 
-                        One, 
-                        0x02, 
-                        0x000186A0, 
-                        XTTB, 
-                        Zero, 
-                        Zero
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x0D)
-                    {
-                        "XO_THERM_GPS", 
-                        0x4C, 
-                        0x08, 
-                        0x02, 
-                        0x02, 
-                        One, 
-                        One, 
-                        One, 
-                        0x02, 
-                        0x000186A0, 
-                        XTTB, 
-                        Zero, 
-                        Zero
-                    }, 
+                            "KryoSilver2.C3"
+                        }, 
 
-                    Package (0x0D)
-                    {
-                        "SYS_THERM1", 
-                        0x4D, 
-                        One, 
-                        Zero, 
-                        0x02, 
-                        One, 
-                        One, 
-                        One, 
-                        0x02, 
-                        0x000186A0, 
-                        SYTB, 
-                        Zero, 
-                        Zero
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x13EC, 
+                            0x0226, 
+                            One, 
+                            One, 
+                            Zero, 
+                            0x02, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000040000004, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x0D)
-                    {
-                        "PA_THERM", 
-                        0x4F, 
-                        One, 
-                        Zero, 
-                        0x02, 
-                        One, 
-                        One, 
-                        One, 
-                        0x02, 
-                        0x000186A0, 
-                        SYTB, 
-                        Zero, 
-                        Zero
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x0D)
-                    {
-                        "PA_THERM1", 
-                        0x50, 
-                        One, 
-                        Zero, 
-                        0x02, 
-                        One, 
-                        One, 
-                        One, 
-                        0x02, 
-                        0x000186A0, 
-                        SYTB, 
-                        Zero, 
-                        Zero
-                    }
-                })
-                Return (CBUF) /* \_SB_.ADC1.CHAN.CBUF */
-            }
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-            Method (SYTB, 0, NotSerialized)
-            {
-                Return (Package (0x22)
-                {
-                    Package (0x02)
-                    {
-                        0x0040DD78, 
-                        0xFFFFFFD8
-                    }, 
+                            "KryoSilver2.C4"
+                        }
+                    })
+                }
 
-                    Package (0x02)
+                Device (CPU3)
+                {
+                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
+                    Name (_UID, 0x03)  // _UID: Unique ID
+                    Method (_STA, 0, NotSerialized)  // _STA: Status
                     {
-                        0x002DD9E4, 
-                        0xFFFFFFDD
-                    }, 
+                        Return (0x0F)
+                    }
 
-                    Package (0x02)
+                    Name (_LPI, Package (0x07)  // _LPI: Low Power Idle States
                     {
-                        0x0020CA24, 
-                        0xFFFFFFE2
-                    }, 
+                        Zero, 
+                        Zero, 
+                        0x04, 
+                        Package (0x0A)
+                        {
+                            Zero, 
+                            Zero, 
+                            One, 
+                            Zero, 
+                            Zero, 
+                            Zero, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x00000000FFFFFFFF, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x0017B588, 
-                        0xFFFFFFE7
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x001152C4, 
-                        0xFFFFFFEC
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x000CC8A8, 
-                        0xFFFFFFF1
-                    }, 
+                            "KryoSilver3.C1"
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x000985E4, 
-                        0xFFFFFFF6
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x0190, 
+                            0x64, 
+                            Zero, 
+                            Zero, 
+                            Zero, 
+                            One, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000002, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x0007286C, 
-                        0xFFFFFFFB
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x00056D10, 
-                        Zero
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x000425B8, 
-                        0x05
-                    }, 
+                            "KryoSilver3.C2"
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x000331F8, 
-                        0x0A
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x1388, 
+                            0x01F4, 
+                            One, 
+                            One, 
+                            Zero, 
+                            One, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000040000003, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x00027AC4, 
-                        0x0F
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x0001F018, 
-                        0x14
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x000186A0, 
-                        0x19
-                    }, 
+                            "KryoSilver3.C3"
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x00013560, 
-                        0x1E
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x13EC, 
+                            0x0226, 
+                            One, 
+                            One, 
+                            Zero, 
+                            0x02, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000040000004, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0xF6E0, 
-                        0x23
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0xC60C, 
-                        0x28
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x9FC4, 
-                        0x2D
-                    }, 
+                            "KryoSilver3.C4"
+                        }
+                    })
+                }
 
-                    Package (0x02)
+                Device (CPU4)
+                {
+                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
+                    Name (_UID, 0x04)  // _UID: Unique ID
+                    Method (_STA, 0, NotSerialized)  // _STA: Status
                     {
-                        0x81B0, 
-                        0x32
-                    }, 
+                        Return (0x0F)
+                    }
 
-                    Package (0x02)
+                    Name (_LPI, Package (0x07)  // _LPI: Low Power Idle States
                     {
-                        0x69DC, 
-                        0x37
-                    }, 
+                        Zero, 
+                        Zero, 
+                        0x04, 
+                        Package (0x0A)
+                        {
+                            Zero, 
+                            Zero, 
+                            One, 
+                            Zero, 
+                            Zero, 
+                            Zero, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x00000000FFFFFFFF, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x56B8, 
-                        0x3C
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x477C, 
-                        0x41
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x3B60, 
-                        0x46
-                    }, 
+                            "KryoGold0.C1"
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x3138, 
-                        0x4B
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x0190, 
+                            0x64, 
+                            Zero, 
+                            Zero, 
+                            Zero, 
+                            One, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000002, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x2968, 
-                        0x50
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x22BA, 
-                        0x55
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x1D4C, 
-                        0x5A
-                    }, 
+                            "KryoGold0.C2"
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x18D8, 
-                        0x5F
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x03E8, 
+                            0x028A, 
+                            One, 
+                            One, 
+                            Zero, 
+                            One, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000040000003, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x1522, 
-                        0x64
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x120C, 
-                        0x69
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x0F82, 
-                        0x6E
-                    }, 
+                            "KryoGold0.C3"
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x0D5C, 
-                        0x73
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x05DC, 
+                            0x044C, 
+                            One, 
+                            One, 
+                            Zero, 
+                            0x02, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000040000004, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x0B86, 
-                        0x78
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x0A00, 
-                        0x7D
-                    }
-                })
-            }
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-            Method (XTTB, 0, NotSerialized)
-            {
-                Return (Package (0xA8)
+                            "KryoGold0.C4"
+                        }
+                    })
+                }
+
+                Device (CPU5)
                 {
-                    Package (0x02)
+                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
+                    Name (_UID, 0x05)  // _UID: Unique ID
+                    Method (_STA, 0, NotSerialized)  // _STA: Status
                     {
-                        0x0040DC21, 
-                        0xFFFF6000
-                    }, 
+                        Return (0x0F)
+                    }
 
-                    Package (0x02)
+                    Name (_LPI, Package (0x07)  // _LPI: Low Power Idle States
                     {
-                        0x003C74E5, 
-                        0xFFFF6400
-                    }, 
+                        Zero, 
+                        Zero, 
+                        0x04, 
+                        Package (0x0A)
+                        {
+                            Zero, 
+                            Zero, 
+                            One, 
+                            Zero, 
+                            Zero, 
+                            Zero, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x00000000FFFFFFFF, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x0038611B, 
-                        0xFFFF6800
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x00349A1A, 
-                        0xFFFF6C00
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x003119CB, 
-                        0xFFFF7000
-                    }, 
+                            "KryoGold1.C1"
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x002DDA9A, 
-                        0xFFFF7400
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x0190, 
+                            0x64, 
+                            Zero, 
+                            Zero, 
+                            Zero, 
+                            One, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000002, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x002AD76C, 
-                        0xFFFF7800
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x00280B95, 
-                        0xFFFF7C00
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x002572CA, 
-                        0xFFFF8000
-                    }, 
+                            "KryoGold1.C2"
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x0023091E, 
-                        0xFFFF8400
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x03E8, 
+                            0x028A, 
+                            One, 
+                            One, 
+                            Zero, 
+                            One, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000040000003, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x0020CAF4, 
-                        0xFFFF8800
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x001EB4FE, 
-                        0xFFFF8C00
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x001CC430, 
-                        0xFFFF9000
-                    }, 
+                            "KryoGold1.C3"
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x001AF5BE, 
-                        0xFFFF9400
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x05DC, 
+                            0x044C, 
+                            One, 
+                            One, 
+                            Zero, 
+                            0x02, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000040000004, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x00194716, 
-                        0xFFFF9800
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x0017B5DC, 
-                        0xFFFF9C00
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x00163FE3, 
-                        0xFFFFA000
-                    }, 
+                            "KryoGold1.C4"
+                        }
+                    })
+                }
 
-                    Package (0x02)
+                Device (CPU6)
+                {
+                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
+                    Name (_UID, 0x06)  // _UID: Unique ID
+                    Method (_STA, 0, NotSerialized)  // _STA: Status
                     {
-                        0x0014E329, 
-                        0xFFFFA400
-                    }, 
+                        Return (0x0F)
+                    }
 
-                    Package (0x02)
+                    Name (_LPI, Package (0x07)  // _LPI: Low Power Idle States
                     {
-                        0x00139DD6, 
-                        0xFFFFA800
-                    }, 
+                        Zero, 
+                        Zero, 
+                        0x04, 
+                        Package (0x0A)
+                        {
+                            Zero, 
+                            Zero, 
+                            One, 
+                            Zero, 
+                            Zero, 
+                            Zero, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x00000000FFFFFFFF, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x00126E37, 
-                        0xFFFFAC00
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x001152BA, 
-                        0xFFFFB000
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x001049ED, 
-                        0xFFFFB400
-                    }, 
+                            "KryoGold2.C1"
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x000F527B, 
-                        0xFFFFB800
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x0190, 
+                            0x64, 
+                            Zero, 
+                            Zero, 
+                            Zero, 
+                            One, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000002, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x000E6B27, 
-                        0xFFFFBC00
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x000D92CE, 
-                        0xFFFFC000
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x000CC863, 
-                        0xFFFFC400
-                    }, 
+                            "KryoGold2.C2"
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x000C0AED, 
-                        0xFFFFC800
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x03E8, 
+                            0x028A, 
+                            One, 
+                            One, 
+                            Zero, 
+                            One, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000040000003, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x000B5985, 
-                        0xFFFFCC00
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x000AB357, 
-                        0xFFFFD000
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x000A179D, 
-                        0xFFFFD400
-                    }, 
+                            "KryoGold2.C3"
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x000985A0, 
-                        0xFFFFD800
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x05DC, 
+                            0x044C, 
+                            One, 
+                            One, 
+                            Zero, 
+                            0x02, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000040000004, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x0008FCB6, 
-                        0xFFFFDC00
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x00087C44, 
-                        0xFFFFE000
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x000803B7, 
-                        0xFFFFE400
-                    }, 
+                            "KryoGold2.C4"
+                        }
+                    })
+                }
 
-                    Package (0x02)
+                Device (CPU7)
+                {
+                    Name (_HID, "ACPI0007" /* Processor Device */)  // _HID: Hardware ID
+                    Name (_UID, 0x07)  // _UID: Unique ID
+                    Method (_STA, 0, NotSerialized)  // _STA: Status
                     {
-                        0x00079288, 
-                        0xFFFFE800
-                    }, 
+                        Return (0x0F)
+                    }
 
-                    Package (0x02)
+                    Name (_LPI, Package (0x07)  // _LPI: Low Power Idle States
                     {
-                        0x0007283A, 
-                        0xFFFFEC00
-                    }, 
+                        Zero, 
+                        Zero, 
+                        0x04, 
+                        Package (0x0A)
+                        {
+                            Zero, 
+                            Zero, 
+                            One, 
+                            Zero, 
+                            Zero, 
+                            Zero, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x00000000FFFFFFFF, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x0006C458, 
-                        0xFFFFF000
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x00066678, 
-                        0xFFFFF400
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x00060E33, 
-                        0xFFFFF800
-                    }, 
+                            "KryoGold3.C1"
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x0005BB2D, 
-                        0xFFFFFC00
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x0190, 
+                            0x64, 
+                            Zero, 
+                            Zero, 
+                            Zero, 
+                            One, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000002, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x00056D0E, 
-                        Zero
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x00052387, 
-                        0x0400
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x0004DE4C, 
-                        0x0800
-                    }, 
+                            "KryoGold3.C2"
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x00049D17, 
-                        0x0C00
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x03E8, 
+                            0x028A, 
+                            One, 
+                            One, 
+                            Zero, 
+                            One, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000040000003, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x00045FA6, 
-                        0x1000
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x000425BE, 
-                        0x1400
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x0003EF25, 
-                        0x1800
-                    }, 
+                            "KryoGold3.C3"
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x0003BBA6, 
-                        0x1C00
-                    }, 
+                        Package (0x0A)
+                        {
+                            0x05DC, 
+                            0x044C, 
+                            One, 
+                            One, 
+                            Zero, 
+                            0x02, 
+                            ResourceTemplate ()
+                            {
+                                Register (FFixedHW, 
+                                    0x20,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000040000004, // Address
+                                    0x03,               // Access Size
+                                    )
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x00038B11, 
-                        0x2000
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x00035D37, 
-                        0x2400
-                    }, 
+                            ResourceTemplate ()
+                            {
+                                Register (SystemMemory, 
+                                    0x00,               // Bit Width
+                                    0x00,               // Bit Offset
+                                    0x0000000000000000, // Address
+                                    ,)
+                            }, 
 
-                    Package (0x02)
-                    {
-                        0x000331EE, 
-                        0x2800
-                    }, 
+                            "KryoGold3.C4"
+                        }
+                    })
+                }
+            }
+        }
 
-                    Package (0x02)
-                    {
-                        0x0003090E, 
-                        0x2C00
-                    }, 
+        Device (QRNG)
+        {
+            Name (_DEP, Package (0x01)  // _DEP: Dependencies
+            {
+                PEP0
+            })
+            Name (_HID, "QCOM02FE")  // _HID: Hardware ID
+            Name (_UID, Zero)  // _UID: Unique ID
+            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
+            {
+                Name (RBUF, ResourceTemplate ()
+                {
+                    Memory32Fixed (ReadWrite,
+                        0x00793000,         // Address Base
+                        0x00001000,         // Address Length
+                        )
+                })
+                Return (RBUF) /* \_SB_.QRNG._CRS.RBUF */
+            }
+        }
 
-                    Package (0x02)
-                    {
-                        0x0002E270, 
-                        0x3000
-                    }, 
+        Device (GPS)
+        {
+            Name (_DEP, Package (0x01)  // _DEP: Dependencies
+            {
+                GLNK
+            })
+            Name (_HID, "QCOM02B6")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+            Name (_CID, "ACPIQCOM24B4")  // _CID: Compatible ID
+            Name (_UID, Zero)  // _UID: Unique ID
+        }
 
-                    Package (0x02)
+        Device (QGP0)
+        {
+            Name (_HID, "QCOM02F4")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+            Name (_UID, Zero)  // _UID: Unique ID
+            Name (_CCA, Zero)  // _CCA: Cache Coherency Attribute
+            Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
+            {
+                Name (RBUF, ResourceTemplate ()
+                {
+                    Memory32Fixed (ReadWrite,
+                        0x00804000,         // Address Base
+                        0x00050000,         // Address Length
+                        )
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
                     {
-                        0x0002BDF2, 
-                        0x3400
-                    }, 
-
-                    Package (0x02)
+                        0x00000119,
+                    }
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
                     {
-                        0x00029B74, 
-                        0x3800
-                    }, 
+                        0x0000011B,
+                    }
+                })
+                Return (RBUF) /* \_SB_.QGP0._CRS.RBUF */
+            }
 
-                    Package (0x02)
+            Method (GPII, 0, Serialized)
+            {
+                Return (Package (0x02)
+                {
+                    Package (0x03)
                     {
-                        0x00027AD7, 
-                        0x3C00
+                        Zero, 
+                        0x05, 
+                        0x0119
                     }, 
 
-                    Package (0x02)
+                    Package (0x03)
                     {
-                        0x00025BFE, 
-                        0x4000
-                    }, 
+                        Zero, 
+                        0x07, 
+                        0x011B
+                    }
+                })
+            }
+        }
 
-                    Package (0x02)
+        Device (QGP1)
+        {
+            Name (_HID, "QCOM02F4")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+            Name (_UID, One)  // _UID: Unique ID
+            Name (_CCA, Zero)  // _CCA: Cache Coherency Attribute
+            Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
+            {
+                Name (RBUF, ResourceTemplate ()
+                {
+                    Memory32Fixed (ReadWrite,
+                        0x00A04000,         // Address Base
+                        0x00050000,         // Address Length
+                        )
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
                     {
-                        0x00023ECE, 
-                        0x4400
-                    }, 
-
-                    Package (0x02)
+                        0x00000138,
+                    }
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
                     {
-                        0x0002232F, 
-                        0x4800
-                    }, 
+                        0x0000013A,
+                    }
+                })
+                Return (RBUF) /* \_SB_.QGP1._CRS.RBUF */
+            }
 
-                    Package (0x02)
+            Method (GPII, 0, Serialized)
+            {
+                Return (Package (0x02)
+                {
+                    Package (0x03)
                     {
-                        0x00020909, 
-                        0x4C00
+                        One, 
+                        One, 
+                        0x0138
                     }, 
 
-                    Package (0x02)
+                    Package (0x03)
                     {
-                        0x0001F046, 
-                        0x5000
-                    }, 
+                        One, 
+                        0x03, 
+                        0x013A
+                    }
+                })
+            }
+        }
 
-                    Package (0x02)
-                    {
-                        0x0001D8D2, 
-                        0x5400
-                    }, 
+        Device (SARM)
+        {
+            Name (_HID, "QCOM0301")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+        }
 
-                    Package (0x02)
-                    {
-                        0x0001C298, 
-                        0x5800
-                    }, 
+        Scope (\_SB)
+        {
+            Device (WBDI)
+            {
+                Name (_HID, "SAM0909")  // _HID: Hardware ID
+                Name (_UID, Zero)  // _UID: Unique ID
+                Name (_SUB, "RENEGA0E")  // _SUB: Subsystem ID
+                Name (_DEP, Package (0x02)  // _DEP: Dependencies
+                {
+                    GIO0, 
+                    SCM0
+                })
+                Method (_STA, 0, NotSerialized)  // _STA: Status
+                {
+                    Return (0x0F)
+                }
 
-                    Package (0x02)
+                Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
+                {
+                    Name (RBUF, ResourceTemplate ()
                     {
-                        0x0001AD88, 
-                        0x5C00
-                    }, 
+                        GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionNone,
+                            "\\_SB.GIO0", 0x00, ResourceConsumer, ,
+                            )
+                            {   // Pin list
+                                0x003E
+                            }
+                        GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionNone,
+                            "\\_SB.GIO0", 0x00, ResourceConsumer, ,
+                            )
+                            {   // Pin list
+                                0x003B
+                            }
+                        GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000,
+                            "\\_SB.GIO0", 0x00, ResourceConsumer, ,
+                            )
+                            {   // Pin list
+                                0x003C
+                            }
+                    })
+                    Return (RBUF) /* \_SB_.WBDI._CRS.RBUF */
+                }
+            }
+        }
 
-                    Package (0x02)
-                    {
-                        0x00019990, 
-                        0x6000
-                    }, 
+        Scope (\_SB)
+        {
+            Name (GRST, Zero)
+        }
 
-                    Package (0x02)
-                    {
-                        0x000186A0, 
-                        0x6400
-                    }, 
+        Device (SEN2)
+        {
+            Name (_DEP, Package (0x03)  // _DEP: Dependencies
+            {
+                IPC0, 
+                SCSS, 
+                ARPC
+            })
+            Name (_HID, "QCOM0308")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+            Name (_CID, "QCOM02A2")  // _CID: Compatible ID
+        }
 
-                    Package (0x02)
-                    {
-                        0x000174AA, 
-                        0x6800
-                    }, 
+        Device (LID0)
+        {
+            Name (_HID, "PNP0C0D" /* Lid Device */)  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+            Name (LIDB, One)
+            Method (_LID, 0, NotSerialized)  // _LID: Lid Status
+            {
+                Return (LIDB) /* \_SB_.LID0.LIDB */
+            }
+        }
 
-                    Package (0x02)
-                    {
-                        0x0001639E, 
-                        0x6C00
-                    }, 
+        Method (ADDR, 0, NotSerialized)
+        {
+            If ((SVMJ == One))
+            {
+                Return (0x0390B000)
+            }
+            ElseIf ((SVMJ == 0x02))
+            {
+                Return (0x0350B000)
+            }
+        }
 
-                    Package (0x02)
-                    {
-                        0x00015371, 
-                        0x7000
-                    }, 
+        OperationRegion (NM11, SystemMemory, ADDR (), 0x14)
+        Field (NM11, DWordAcc, NoLock, Preserve)
+        {
+            PI1C,   32, 
+            PIN1,   32, 
+            PI1N,   32, 
+            PI1S,   32, 
+            PI1L,   32
+        }
 
-                    Package (0x02)
-                    {
-                        0x00014415, 
-                        0x7400
-                    }, 
+        Method (_MID, 0, Serialized)
+        {
+            Name (NMID, Zero)
+            NMID = PIN1 /* \_SB_.PIN1 */
+            Return (NMID) /* \_SB_._MID.NMID */
+        }
+
+        Scope (\_SB)
+        {
+            Device (AGNT)
+            {
+                Name (_ADR, Zero)  // _ADR: Address
+                Name (_HID, "SAM0603")  // _HID: Hardware ID
+                Name (_CID, "SAM0603")  // _CID: Compatible ID
+                Name (_SUB, "RENEGA0E")  // _SUB: Subsystem ID
+                Name (_UID, One)  // _UID: Unique ID
+                Name (_STA, 0x0F)  // _STA: Status
+            }
+        }
+
+        Method (ADBG, 1, Serialized)
+        {
+        }
+
+        Device (UCP0)
+        {
+            Name (_HID, "QCOM02D0")  // _HID: Hardware ID
+            Name (_DEP, Package (0x03)  // _DEP: Dependencies
+            {
+                PEP0, 
+                PTCC, 
+                URS0
+            })
+            Device (CON0)
+            {
+                Name (_ADR, Zero)  // _ADR: Address
+                Name (_PLD, Package (0x01)  // _PLD: Physical Location of Device
+                {
+                    ToPLD (
+                        PLD_Revision           = 0x2,
+                        PLD_IgnoreColor        = 0x1,
+                        PLD_Red                = 0x0,
+                        PLD_Green              = 0x0,
+                        PLD_Blue               = 0x0,
+                        PLD_Width              = 0x0,
+                        PLD_Height             = 0x0,
+                        PLD_UserVisible        = 0x1,
+                        PLD_Dock               = 0x0,
+                        PLD_Lid                = 0x0,
+                        PLD_Panel              = "BACK",
+                        PLD_VerticalPosition   = "CENTER",
+                        PLD_HorizontalPosition = "LEFT",
+                        PLD_Shape              = "VERTICALRECTANGLE",
+                        PLD_GroupOrientation   = 0x0,
+                        PLD_GroupToken         = 0x0,
+                        PLD_GroupPosition      = 0x1,
+                        PLD_Bay                = 0x0,
+                        PLD_Ejectable          = 0x0,
+                        PLD_EjectRequired      = 0x0,
+                        PLD_CabinetNumber      = 0x0,
+                        PLD_CardCageNumber     = 0x0,
+                        PLD_Reference          = 0x0,
+                        PLD_Rotation           = 0x0,
+                        PLD_Order              = 0x0,
+                        PLD_VerticalOffset     = 0xFFFF,
+                        PLD_HorizontalOffset   = 0xFFFF)
 
-                    Package (0x02)
+                })
+                Name (_UPC, Package (0x04)  // _UPC: USB Port Capabilities
+                {
+                    One, 
+                    0x09, 
+                    Zero, 
+                    Zero
+                })
+                Name (_DSD, Package (0x02)  // _DSD: Device-Specific Data
+                {
+                    ToUUID ("6b856e62-40f4-4688-bd46-5e888a2260de") /* Unknown UUID */, 
+                    Package (0x0A)
                     {
-                        0x00013580, 
-                        0x7800
-                    }, 
+                        Package (0x02)
+                        {
+                            One, 
+                            0x04
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x000127A6
-                        0x7C00
-                    }, 
+                        Package (0x02)
+                        {
+                            0x02
+                            0x03
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x00011A7C
-                        0x8000
-                    }, 
+                        Package (0x02)
+                        {
+                            0x03
+                            Zero
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x00010DFA
-                        0x8400
-                    }, 
+                        Package (0x02)
+                        {
+                            0x04
+                            One
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x00010216
-                        0x8800
-                    }, 
+                        Package (0x02)
+                        {
+                            0x05
+                            0x03
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0xF6C8, 
-                        0x8C00
-                    }, 
+                        Package (0x02)
+                        {
+                            0x06, 
+                            Package (0x01)
+                            {
+                                0x0001905A
+                            }
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0xEC07, 
-                        0x9000
-                    }, 
+                        Package (0x02)
+                        {
+                            0x07, 
+                            Package (0x02)
+                            {
+                                0x0001912C, 
+                                0x0002D0C8
+                            }
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0xE1CC, 
-                        0x9400
-                    }, 
+                        Package (0x02)
+                        {
+                            0x08, 
+                            Package (0x02)
+                            {
+                                0xFF01, 
+                                0x3C86
+                            }
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0xD810
-                        0x9800
-                    }, 
+                        Package (0x02)
+                        {
+                            0x09
+                            One
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0xCECC, 
-                        0x9C00
-                    }, 
+                        Package (0x02)
+                        {
+                            0x0A, 
+                            One
+                        }
+                    }
+                })
+            }
 
-                    Package (0x02)
+            Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
+            {
+                While (One)
+                {
+                    Name (_T_0, Buffer (One)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
                     {
-                        0xC5F9, 
-                        0xA000
-                    }, 
-
-                    Package (0x02)
+                         0x00                                             // .
+                    })
+                    CopyObject (ToBuffer (Arg0), _T_0) /* \_SB_.UCP0._DSM._T_0 */
+                    If ((_T_0 == ToUUID ("18de299f-9476-4fc9-b43b-8aeb713ed751") /* Unknown UUID */))
                     {
-                        0xBD93, 
-                        0xA400
-                    }, 
+                        While (One)
+                        {
+                            Name (_T_1, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
+                            _T_1 = ToInteger (Arg2)
+                            If ((_T_1 == Zero))
+                            {
+                                While (One)
+                                {
+                                    Name (_T_2, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
+                                    _T_2 = ToInteger (Arg1)
+                                    If ((_T_2 == Zero))
+                                    {
+                                        Return (Buffer (One)
+                                        {
+                                             0x01                                             // .
+                                        })
+                                        Break
+                                    }
+                                    Else
+                                    {
+                                        Return (Buffer (One)
+                                        {
+                                             0x01                                             // .
+                                        })
+                                        Break
+                                    }
 
-                    Package (0x02)
-                    {
-                        0xB592, 
-                        0xA800
-                    }, 
+                                    Break
+                                }
 
-                    Package (0x02)
-                    {
-                        0xADF2, 
-                        0xAC00
-                    }, 
+                                Return (Buffer (One)
+                                {
+                                     0x00                                             // .
+                                })
+                                Break
+                            }
+                            ElseIf ((_T_1 == One))
+                            {
+                                While (One)
+                                {
+                                    Name (_T_3, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
+                                    _T_3 = ToInteger (Arg3)
+                                    If ((_T_3 == Zero))
+                                    {
+                                        Return (Package (0x01)
+                                        {
+                                            0x36019050
+                                        })
+                                        Break
+                                    }
+                                    ElseIf ((_T_3 == One))
+                                    {
+                                        Return (Package (0x01)
+                                        {
+                                            0x3601912C
+                                        })
+                                        Break
+                                    }
+                                    Else
+                                    {
+                                        Return (Package (0x01)
+                                        {
+                                            Zero
+                                        })
+                                        Break
+                                    }
 
-                    Package (0x02)
-                    {
-                        0xA6AE, 
-                        0xB000
-                    }, 
+                                    Break
+                                }
+                            }
+                            Else
+                            {
+                                Return (Buffer (One)
+                                {
+                                     0x00                                             // .
+                                })
+                                Break
+                            }
 
-                    Package (0x02)
+                            Break
+                        }
+                    }
+                    Else
                     {
-                        0x9FC1, 
-                        0xB400
-                    }, 
+                        Return (Buffer (One)
+                        {
+                             0x00                                             // .
+                        })
+                        Break
+                    }
 
-                    Package (0x02)
-                    {
-                        0x9927, 
-                        0xB800
-                    }, 
+                    Break
+                }
+            }
 
-                    Package (0x02)
-                    {
-                        0x92DB, 
-                        0xBC00
-                    }, 
+            Method (CCOT, 2, NotSerialized)
+            {
+                CCST = Arg0
+                HSFL = Arg1
+            }
 
-                    Package (0x02)
-                    {
-                        0x8CD9, 
-                        0xC000
-                    }, 
+            Method (CCVL, 0, NotSerialized)
+            {
+                Return (CCST) /* \_SB_.CCST */
+            }
 
-                    Package (0x02)
-                    {
-                        0x871E, 
-                        0xC400
-                    }, 
+            Method (HPDS, 0, NotSerialized)
+            {
+                Notify (GPU0, 0x94) // Device-Specific
+            }
 
-                    Package (0x02)
-                    {
-                        0x81A6, 
-                        0xC800
-                    }, 
+            Method (HPDF, 2, NotSerialized)
+            {
+                HPDB = Arg0
+                PINA = Arg1
+                Notify (GPU0, HPDB)
+            }
 
-                    Package (0x02)
-                    {
-                        0x7C6D, 
-                        0xCC00
-                    }, 
+            Method (HPDV, 0, NotSerialized)
+            {
+                Return (HPDB) /* \_SB_.HPDB */
+            }
 
-                    Package (0x02)
-                    {
-                        0x7771, 
-                        0xD000
-                    }, 
+            Method (PINV, 0, NotSerialized)
+            {
+                Return (PINA) /* \_SB_.PINA */
+            }
+        }
 
-                    Package (0x02)
-                    {
-                        0x72AE, 
-                        0xD400
-                    }, 
+        Name (QUFN, Zero)
+        Name (DPP0, Buffer (One)
+        {
+             0x00                                             // .
+        })
+        Device (URS0)
+        {
+            Method (URSI, 0, NotSerialized)
+            {
+                If ((QUFN == Zero))
+                {
+                    Return ("QCOM0304")
+                }
+                Else
+                {
+                    Return ("QCOM0305")
+                }
+            }
 
-                    Package (0x02)
-                    {
-                        0x6E22, 
-                        0xD800
-                    }, 
+            Alias (URSI, _HID)
+            Name (_CID, "PNP0CA1")  // _CID: Compatible ID
+            Alias (PSUB, _SUB)
+            Name (_UID, Zero)  // _UID: Unique ID
+            Name (_CCA, Zero)  // _CCA: Cache Coherency Attribute
+            Name (_DEP, Package (0x01)  // _DEP: Dependencies
+            {
+                PEP0
+            })
+            Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
+            {
+                Memory32Fixed (ReadWrite,
+                    0x0A600000,         // Address Base
+                    0x000FFFFF,         // Address Length
+                    )
+            })
+            Device (USB0)
+            {
+                Name (_ADR, Zero)  // _ADR: Address
+                Name (_S0W, 0x03)  // _S0W: S0 Device Wake State
+                Name (_PLD, Package (0x01)  // _PLD: Physical Location of Device
+                {
+                    ToPLD (
+                        PLD_Revision           = 0x2,
+                        PLD_IgnoreColor        = 0x1,
+                        PLD_Red                = 0x0,
+                        PLD_Green              = 0x0,
+                        PLD_Blue               = 0x0,
+                        PLD_Width              = 0x0,
+                        PLD_Height             = 0x0,
+                        PLD_UserVisible        = 0x1,
+                        PLD_Dock               = 0x0,
+                        PLD_Lid                = 0x0,
+                        PLD_Panel              = "BACK",
+                        PLD_VerticalPosition   = "CENTER",
+                        PLD_HorizontalPosition = "LEFT",
+                        PLD_Shape              = "VERTICALRECTANGLE",
+                        PLD_GroupOrientation   = 0x0,
+                        PLD_GroupToken         = 0x0,
+                        PLD_GroupPosition      = 0x1,
+                        PLD_Bay                = 0x0,
+                        PLD_Ejectable          = 0x0,
+                        PLD_EjectRequired      = 0x0,
+                        PLD_CabinetNumber      = 0x0,
+                        PLD_CardCageNumber     = 0x0,
+                        PLD_Reference          = 0x0,
+                        PLD_Rotation           = 0x0,
+                        PLD_Order              = 0x0,
+                        PLD_VerticalOffset     = 0xFFFF,
+                        PLD_HorizontalOffset   = 0xFFFF)
 
-                    Package (0x02)
+                })
+                Name (_UPC, Package (0x04)  // _UPC: USB Port Capabilities
+                {
+                    One, 
+                    0x09, 
+                    Zero, 
+                    Zero
+                })
+                Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
+                {
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, )
                     {
-                        0x69CA, 
-                        0xDC00
-                    }, 
-
-                    Package (0x02)
+                        0x000000A5,
+                    }
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, SharedAndWake, ,, )
                     {
-                        0x65A4, 
-                        0xE000
-                    }, 
-
-                    Package (0x02)
+                        0x0000017A,
+                    }
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, SharedAndWake, ,, )
                     {
-                        0x61AC, 
-                        0xE400
-                    }, 
-
-                    Package (0x02)
+                        0x00000206,
+                    }
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, SharedAndWake, ,, )
                     {
-                        0x5DE1, 
-                        0xE800
-                    }, 
-
-                    Package (0x02)
+                        0x00000208,
+                    }
+                    Interrupt (ResourceConsumer, Edge, ActiveHigh, SharedAndWake, ,, )
                     {
-                        0x5A40, 
-                        0xEC00
-                    }, 
+                        0x00000209,
+                    }
+                })
+                Method (_STA, 0, NotSerialized)  // _STA: Status
+                {
+                    Return (0x0F)
+                }
 
-                    Package (0x02)
-                    {
-                        0x56C8, 
-                        0xF000
-                    }, 
+                Method (DPM0, 1, NotSerialized)
+                {
+                    DPP0 = Arg0
+                    Notify (PEP0, 0xA0) // Device-Specific
+                }
 
-                    Package (0x02)
-                    {
-                        0x5377, 
-                        0xF400
-                    }, 
+                Method (CCVL, 0, NotSerialized)
+                {
+                    Return (CCST) /* \_SB_.CCST */
+                }
 
-                    Package (0x02)
-                    {
-                        0x504A, 
-                        0xF800
-                    }, 
+                Method (HSEN, 0, NotSerialized)
+                {
+                    Return (HSFL) /* \_SB_.HSFL */
+                }
 
-                    Package (0x02)
-                    {
-                        0x4D40, 
-                        0xFC00
-                    }, 
+                Name (HSEI, ResourceTemplate ()
+                {
+                    GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionNone,
+                        "\\_SB.GIO0", 0x00, ResourceConsumer, ,
+                        )
+                        {   // Pin list
+                            0x002B
+                        }
+                })
+                Scope (^^GIO0)
+                {
+                    OperationRegion (HLEN, GeneralPurposeIo, Zero, One)
+                }
 
-                    Package (0x02)
-                    {
-                        0x4A57
-                        0x00010000
-                    }, 
+                Field (^^GIO0.HLEN, ByteAcc, NoLock, Preserve)
+                {
+                    Connection (HSEI)
+                    MOD1,   1
+                }
 
-                    Package (0x02)
+                Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
+                {
+                    While (One)
                     {
-                        0x478E, 
-                        0x00010400
-                    }, 
+                        Name (_T_0, Buffer (One)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
+                        {
+                             0x00                                             // .
+                        })
+                        CopyObject (ToBuffer (Arg0), _T_0) /* \_SB_.URS0.USB0._DSM._T_0 */
+                        If ((_T_0 == ToUUID ("ce2ee385-00e6-48cb-9f05-2edb927c4899") /* USB Controller */))
+                        {
+                            While (One)
+                            {
+                                Name (_T_1, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
+                                _T_1 = ToInteger (Arg2)
+                                If ((_T_1 == Zero))
+                                {
+                                    While (One)
+                                    {
+                                        Name (_T_2, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
+                                        _T_2 = ToInteger (Arg1)
+                                        If ((_T_2 == Zero))
+                                        {
+                                            Return (Buffer (One)
+                                            {
+                                                 0x1D                                             // .
+                                            })
+                                            Break
+                                        }
+                                        Else
+                                        {
+                                            Return (Buffer (One)
+                                            {
+                                                 0x01                                             // .
+                                            })
+                                            Break
+                                        }
 
-                    Package (0x02)
-                    {
-                        0x44E4, 
-                        0x00010800
-                    }, 
+                                        Break
+                                    }
 
-                    Package (0x02)
-                    {
-                        0x4256, 
-                        0x00010C00
-                    }, 
+                                    Return (Buffer (One)
+                                    {
+                                         0x00                                             // .
+                                    })
+                                    Break
+                                }
+                                ElseIf ((_T_1 == 0x02))
+                                {
+                                    Return (Zero)
+                                    Break
+                                }
+                                ElseIf ((_T_1 == 0x03))
+                                {
+                                    Return (One)
+                                    Break
+                                }
+                                ElseIf ((_T_1 == 0x04))
+                                {
+                                    Return (0x02)
+                                    Break
+                                }
+                                Else
+                                {
+                                    Return (Buffer (One)
+                                    {
+                                         0x00                                             // .
+                                    })
+                                    Break
+                                }
 
-                    Package (0x02)
-                    {
-                        0x3FE3, 
-                        0x00011000
-                    }, 
+                                Break
+                            }
+                        }
+                        ElseIf ((_T_0 == ToUUID ("a9a82a56-95a1-4b4a-b014-3be47df1b7d5") /* Unknown UUID */))
+                        {
+                            While (One)
+                            {
+                                Name (_T_3, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
+                                _T_3 = ToInteger (Arg1)
+                                If ((_T_3 == One))
+                                {
+                                    While (One)
+                                    {
+                                        Name (_T_4, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
+                                        _T_4 = ToInteger (Arg2)
+                                        If ((_T_4 == One))
+                                        {
+                                            ADBG ("MOD1+")
+                                            MOD1 = One
+                                            Return (Buffer (One)
+                                            {
+                                                 0x01                                             // .
+                                            })
+                                        }
+                                        ElseIf ((_T_4 == Zero))
+                                        {
+                                            ADBG ("MOD1-")
+                                            MOD1 = Zero
+                                            Return (Buffer (One)
+                                            {
+                                                 0x01                                             // .
+                                            })
+                                        }
+                                        Else
+                                        {
+                                            Return (Buffer (One)
+                                            {
+                                                 0x00                                             // .
+                                            })
+                                        }
 
-                    Package (0x02)
-                    {
-                        0x3D8B, 
-                        0x00011400
-                    }, 
+                                        Break
+                                    }
+                                }
+                                Else
+                                {
+                                    Return (Buffer (One)
+                                    {
+                                         0x00                                             // .
+                                    })
+                                }
 
-                    Package (0x02)
-                    {
-                        0x3B4C, 
-                        0x00011800
-                    }, 
+                                Break
+                            }
+                        }
+                        Else
+                        {
+                            Return (Buffer (One)
+                            {
+                                 0x00                                             // .
+                            })
+                            Break
+                        }
 
-                    Package (0x02)
-                    {
-                        0x3924, 
-                        0x00011C00
-                    }, 
+                        Break
+                    }
+                }
 
-                    Package (0x02)
+                Method (PHYC, 0, NotSerialized)
+                {
+                    Name (CFG0, Package (0x01)
                     {
-                        0x3713, 
-                        0x00012000
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E2198, 
+                            0x20
+                        }
+                    })
+                    Return (CFG0) /* \_SB_.URS0.USB0.PHYC.CFG0 */
+                }
 
-                    Package (0x02)
+                Device (RHUB)
+                {
+                    Name (_ADR, Zero)  // _ADR: Address
+                    Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
                     {
-                        0x3518, 
-                        0x00012400
-                    }, 
+                        While (One)
+                        {
+                            Name (_T_0, Buffer (One)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
+                            {
+                                 0x00                                             // .
+                            })
+                            CopyObject (ToBuffer (Arg0), _T_0) /* \_SB_.URS0.USB0.RHUB._DSM._T_0 */
+                            If ((_T_0 == ToUUID ("a9a82a56-95a1-4b4a-b014-3be47df1b7d5") /* Unknown UUID */))
+                            {
+                                While (One)
+                                {
+                                    Name (_T_1, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
+                                    _T_1 = ToInteger (Arg1)
+                                    If ((_T_1 == One))
+                                    {
+                                        While (One)
+                                        {
+                                            Name (_T_2, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
+                                            _T_2 = ToInteger (Arg2)
+                                            If ((_T_2 == One))
+                                            {
+                                                ADBG ("MOD1++")
+                                                MOD1 = One
+                                                Return (Buffer (One)
+                                                {
+                                                     0x01                                             // .
+                                                })
+                                            }
+                                            ElseIf ((_T_2 == Zero))
+                                            {
+                                                ADBG ("MOD1--")
+                                                MOD1 = Zero
+                                                Return (Buffer (One)
+                                                {
+                                                     0x01                                             // .
+                                                })
+                                            }
+                                            Else
+                                            {
+                                                Return (Buffer (One)
+                                                {
+                                                     0x00                                             // .
+                                                })
+                                            }
 
-                    Package (0x02)
-                    {
-                        0x3332, 
-                        0x00012800
-                    }, 
+                                            Break
+                                        }
+                                    }
+                                    Else
+                                    {
+                                        Return (Buffer (One)
+                                        {
+                                             0x00                                             // .
+                                        })
+                                    }
 
-                    Package (0x02)
-                    {
-                        0x3160, 
-                        0x00012C00
-                    }, 
+                                    Break
+                                }
+                            }
+                            Else
+                            {
+                                Return (Buffer (One)
+                                {
+                                     0x00                                             // .
+                                })
+                                Break
+                            }
 
-                    Package (0x02)
-                    {
-                        0x2FA0, 
-                        0x00013000
-                    }, 
+                            Break
+                        }
+                    }
+                }
+            }
 
-                    Package (0x02)
-                    {
-                        0x2DF2, 
-                        0x00013400
-                    }, 
+            Device (UFN0)
+            {
+                Name (_ADR, One)  // _ADR: Address
+                Name (_S0W, 0x03)  // _S0W: S0 Device Wake State
+                Name (_PLD, Package (0x01)  // _PLD: Physical Location of Device
+                {
+                    ToPLD (
+                        PLD_Revision           = 0x2,
+                        PLD_IgnoreColor        = 0x1,
+                        PLD_Red                = 0x0,
+                        PLD_Green              = 0x0,
+                        PLD_Blue               = 0x0,
+                        PLD_Width              = 0x0,
+                        PLD_Height             = 0x0,
+                        PLD_UserVisible        = 0x1,
+                        PLD_Dock               = 0x0,
+                        PLD_Lid                = 0x0,
+                        PLD_Panel              = "BACK",
+                        PLD_VerticalPosition   = "CENTER",
+                        PLD_HorizontalPosition = "LEFT",
+                        PLD_Shape              = "VERTICALRECTANGLE",
+                        PLD_GroupOrientation   = 0x0,
+                        PLD_GroupToken         = 0x0,
+                        PLD_GroupPosition      = 0x1,
+                        PLD_Bay                = 0x0,
+                        PLD_Ejectable          = 0x0,
+                        PLD_EjectRequired      = 0x0,
+                        PLD_CabinetNumber      = 0x0,
+                        PLD_CardCageNumber     = 0x0,
+                        PLD_Reference          = 0x0,
+                        PLD_Rotation           = 0x0,
+                        PLD_Order              = 0x0,
+                        PLD_VerticalOffset     = 0xFFFF,
+                        PLD_HorizontalOffset   = 0xFFFF)
 
-                    Package (0x02)
+                })
+                Name (_UPC, Package (0x04)  // _UPC: USB Port Capabilities
+                {
+                    One, 
+                    0x09, 
+                    Zero, 
+                    Zero
+                })
+                Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
+                {
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, )
                     {
-                        0x2C56, 
-                        0x00013800
-                    }, 
-
-                    Package (0x02)
+                        0x000000A5,
+                    }
+                    Interrupt (ResourceConsumer, Level, ActiveHigh, SharedAndWake, ,, )
                     {
-                        0x2ACA, 
-                        0x00013C00
-                    }, 
+                        0x000000A2,
+                    }
+                })
+                Method (CCVL, 0, NotSerialized)
+                {
+                    Return (CCST) /* \_SB_.CCST */
+                }
 
-                    Package (0x02)
+                Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
+                {
+                    While (One)
                     {
-                        0x294E, 
-                        0x00014000
-                    }, 
+                        Name (_T_0, Buffer (One)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
+                        {
+                             0x00                                             // .
+                        })
+                        CopyObject (ToBuffer (Arg0), _T_0) /* \_SB_.URS0.UFN0._DSM._T_0 */
+                        If ((_T_0 == ToUUID ("fe56cfeb-49d5-4378-a8a2-2978dbe54ad2") /* Unknown UUID */))
+                        {
+                            While (One)
+                            {
+                                Name (_T_1, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
+                                _T_1 = ToInteger (Arg2)
+                                If ((_T_1 == Zero))
+                                {
+                                    While (One)
+                                    {
+                                        Name (_T_2, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
+                                        _T_2 = ToInteger (Arg1)
+                                        If ((_T_2 == Zero))
+                                        {
+                                            Return (Buffer (One)
+                                            {
+                                                 0x03                                             // .
+                                            })
+                                            Break
+                                        }
+                                        Else
+                                        {
+                                            Return (Buffer (One)
+                                            {
+                                                 0x01                                             // .
+                                            })
+                                            Break
+                                        }
 
-                    Package (0x02)
-                    {
-                        0x27E1, 
-                        0x00014400
-                    }, 
+                                        Break
+                                    }
 
-                    Package (0x02)
-                    {
-                        0x2682, 
-                        0x00014800
-                    }, 
+                                    Return (Buffer (One)
+                                    {
+                                         0x00                                             // .
+                                    })
+                                    Break
+                                }
+                                ElseIf ((_T_1 == One))
+                                {
+                                    Return (0x20)
+                                    Break
+                                }
+                                Else
+                                {
+                                    Return (Buffer (One)
+                                    {
+                                         0x00                                             // .
+                                    })
+                                    Break
+                                }
 
-                    Package (0x02)
-                    {
-                        0x2531, 
-                        0x00014C00
-                    }, 
+                                Break
+                            }
+                        }
+                        ElseIf ((_T_0 == ToUUID ("18de299f-9476-4fc9-b43b-8aeb713ed751") /* Unknown UUID */))
+                        {
+                            While (One)
+                            {
+                                Name (_T_3, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
+                                _T_3 = ToInteger (Arg2)
+                                If ((_T_3 == Zero))
+                                {
+                                    While (One)
+                                    {
+                                        Name (_T_4, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
+                                        _T_4 = ToInteger (Arg1)
+                                        If ((_T_4 == Zero))
+                                        {
+                                            Return (Buffer (One)
+                                            {
+                                                 0x03                                             // .
+                                            })
+                                            Break
+                                        }
+                                        Else
+                                        {
+                                            Return (Buffer (One)
+                                            {
+                                                 0x01                                             // .
+                                            })
+                                            Break
+                                        }
 
-                    Package (0x02)
-                    {
-                        0x23ED, 
-                        0x00015000
-                    }, 
+                                        Break
+                                    }
 
-                    Package (0x02)
-                    {
-                        0x22B6, 
-                        0x00015400
-                    }, 
+                                    Return (Buffer (One)
+                                    {
+                                         0x00                                             // .
+                                    })
+                                    Break
+                                }
+                                ElseIf ((_T_3 == One))
+                                {
+                                    Return (0x39)
+                                    Break
+                                }
+                                Else
+                                {
+                                    Return (Buffer (One)
+                                    {
+                                         0x00                                             // .
+                                    })
+                                    Break
+                                }
 
-                    Package (0x02)
-                    {
-                        0x218B, 
-                        0x00015800
-                    }, 
+                                Break
+                            }
+                        }
+                        Else
+                        {
+                            Return (Buffer (One)
+                            {
+                                 0x00                                             // .
+                            })
+                            Break
+                        }
 
-                    Package (0x02)
-                    {
-                        0x206B, 
-                        0x00015C00
-                    }, 
+                        Break
+                    }
+                }
 
-                    Package (0x02)
+                Method (PHYC, 0, NotSerialized)
+                {
+                    Name (CFG0, Package (0x12)
                     {
-                        0x1F57, 
-                        0x00016000
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E2210, 
+                            0x23
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x1E4D, 
-                        0x00016400
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E2004, 
+                            0x03
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x1D4D, 
-                        0x00016800
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E218C, 
+                            0x7C
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x1C56, 
-                        0x00016C00
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E202C, 
+                            0x80
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x1B69, 
-                        0x00017000
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E2184, 
+                            0x0A
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x1A85, 
-                        0x00017400
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E20B4, 
+                            0x19
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x19AA, 
-                        0x00017800
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E2194, 
+                            0x40
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x18D6, 
-                        0x00017C00
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E2198, 
+                            0x28
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x180B, 
-                        0x00018000
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E2214, 
+                            0x21
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x1747, 
-                        0x00018400
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E2220, 
+                            Zero
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x168A, 
-                        0x00018800
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E2224, 
+                            0x58
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x15D4, 
-                        0x00018C00
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E2240, 
+                            0x35
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x1524, 
-                        0x00019000
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E2244, 
+                            0x29
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x147B, 
-                        0x00019400
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E2248, 
+                            0xCA
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x13D8, 
-                        0x00019800
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E224C, 
+                            0x04
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x133B, 
-                        0x00019C00
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E2250, 
+                            0x03
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x12A3, 
-                        0x0001A000
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E223C, 
+                            Zero
+                        }, 
 
-                    Package (0x02)
-                    {
-                        0x1211, 
-                        0x0001A400
-                    }, 
+                        Package (0x03)
+                        {
+                            Zero, 
+                            0x088E2210, 
+                            0x22
+                        }
+                    })
+                    Return (CFG0) /* \_SB_.URS0.UFN0.PHYC.CFG0 */
+                }
+            }
+        }
 
-                    Package (0x02)
-                    {
-                        0x1184, 
-                        0x0001A800
-                    }, 
+        Name (HPDB, Zero)
+        Name (PINA, Zero)
+        Name (CCST, Buffer (One)
+        {
+             0x02                                             // .
+        })
+        Name (HSFL, Buffer (One)
+        {
+             0x00                                             // .
+        })
+        Name (HPDS, Zero)
+        Name (USBC, Buffer (One)
+        {
+             0x0B                                             // .
+        })
+        Name (DPPN, 0x0D)
+        Name (MUXC, Buffer (One)
+        {
+             0x00                                             // .
+        })
+        Name (DPP1, Buffer (One)
+        {
+             0x00                                             // .
+        })
+        Name (SKYD, Buffer (One)
+        {
+             0x01                                             // .
+        })
+        
+        Include("cust_thermal_zones.asl")
 
-                    Package (0x02)
-                    {
-                        0x10FC, 
-                        0x0001AC00
-                    }, 
+        Name (HWNH, Zero)
+        Name (HWNL, Zero)
+        Device (HWN1)
+        {
+            Name (_HID, "QCOM02A9")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+            Method (_STA, 0, NotSerialized)  // _STA: Status
+            {
+                If ((HWNH == Zero))
+                {
+                    Return (Zero)
+                }
+                Else
+                {
+                    Return (0x0F)
+                }
+            }
 
-                    Package (0x02)
-                    {
-                        0x1079, 
-                        0x0001B000
-                    }, 
+            Name (_DEP, Package (0x01)  // _DEP: Dependencies
+            {
+                PMIC
+            })
+            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
+            {
+                Name (RBUF, ResourceTemplate ()
+                {
+                    GpioInt (Level, ActiveHigh, Exclusive, PullNone, 0x0000,
+                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
+                        )
+                        {   // Pin list
+                            0x0190
+                        }
+                })
+                Return (RBUF) /* \_SB_.HWN1._CRS.RBUF */
+            }
 
-                    Package (0x02)
-                    {
-                        0x0FFA, 
-                        0x0001B400
-                    }, 
+            Method (HAPI, 0, NotSerialized)
+            {
+                Name (CFG0, Package (0x03)
+                {
+                    One, 
+                    One, 
+                    One
+                })
+                Return (CFG0) /* \_SB_.HWN1.HAPI.CFG0 */
+            }
 
-                    Package (0x02)
-                    {
-                        0x0F80, 
-                        0x0001B800
-                    }, 
+            Method (HAPC, 0, NotSerialized)
+            {
+                Name (CFG0, Package (0x16)
+                {
+                    Zero, 
+                    0x0984, 
+                    Zero, 
+                    One, 
+                    One, 
+                    One, 
+                    One, 
+                    Zero, 
+                    0x04, 
+                    One, 
+                    0x03, 
+                    0x14, 
+                    One, 
+                    0x03, 
+                    Zero, 
+                    Zero, 
+                    0x06, 
+                    Zero, 
+                    Zero, 
+                    0x0535, 
+                    0x03, 
+                    One
+                })
+                Return (CFG0) /* \_SB_.HWN1.HAPC.CFG0 */
+            }
+        }
 
-                    Package (0x02)
-                    {
-                        0x0F0A, 
-                        0x0001BC00
-                    }, 
+        Device (HWN0)
+        {
+            Name (_HID, "QCOM02A8")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+            Name (_UID, Zero)  // _UID: Unique ID
+            Method (_STA, 0, NotSerialized)  // _STA: Status
+            {
+                If ((^^HWNL == Zero))
+                {
+                    Return (Zero)
+                }
+                Else
+                {
+                    Return (0x0F)
+                }
+            }
 
-                    Package (0x02)
-                    {
-                        0x0E98, 
-                        0x0001C000
-                    }, 
+            Method (HWNL, 0, NotSerialized)
+            {
+                Name (CFG0, Package (0x10)
+                {
+                    One, 
+                    0x03, 
+                    0x019B, 
+                    0x14, 
+                    0x20, 
+                    0x02, 
+                    0x40, 
+                    0x03, 
+                    0x80, 
+                    0x04, 
+                    One, 
+                    One, 
+                    One, 
+                    0x03, 
+                    One, 
+                    One
+                })
+                Return (CFG0) /* \_SB_.HWN0.HWNL.CFG0 */
+            }
+        }
 
-                    Package (0x02)
-                    {
-                        0x0E2A, 
-                        0x0001C400
-                    }, 
+        Device (CONT)
+        {
+            Name (_HID, "CONT1234")  // _HID: Hardware ID
+            Name (_CID, "PNP0C60" /* Display Sensor Device */)  // _CID: Compatible ID
+        }
 
-                    Package (0x02)
-                    {
-                        0x0DBF, 
-                        0x0001C800
-                    }, 
+        Device (POWR)
+        {
+            Name (_HID, "POWR1234")  // _HID: Hardware ID
+            Name (_CID, "PNP0C40" /* Standard Button Controller */)  // _CID: Compatible ID
+        }
 
-                    Package (0x02)
-                    {
-                        0x0D59, 
-                        0x0001CC00
-                    }, 
+        Device (SVBI)
+        {
+            Name (_HID, "SAMM0901")  // _HID: Hardware ID
+            Name (_SUB, "RENEGA0E")  // _SUB: Subsystem ID
+        }
 
-                    Package (0x02)
-                    {
-                        0x0CF5, 
-                        0x0001D000
-                    }, 
+        Device (TSC1)
+        {
+            Name (_HID, "TEST3330")  // _HID: Hardware ID
+            Name (_HRV, One)  // _HRV: Hardware Revision
+            Name (_ADR, Zero)  // _ADR: Address
+            Name (_UID, One)  // _UID: Unique ID
+            Name (_DEP, Package (0x03)  // _DEP: Dependencies
+            {
+                PEP0, 
+                GIO0, 
+                IC13
+            })
+            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
+            {
+                Name (RBUF, ResourceTemplate ()
+                {
+                    //I2cSerialBusV2 (0x0020, ControllerInitiated, 0x00061A80,
+                    I2cSerialBusV2 (0x0001, ControllerInitiated, 0x00061A80,
+                        AddressingMode7Bit, "\\_SB.IC13",
+                        0x00, ResourceConsumer, , Exclusive,
+                        )
+                    GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullUp, 0x0000,
+                        "\\_SB.GIO0", 0x00, ResourceConsumer, ,
+                        )
+                        {   // Pin list
+                            0x007D
+                        }
+                    //GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionNone,
+                    //    "\\_SB.GIO0", 0x00, ResourceConsumer, ,
+                    //    )
+                    //    {   // Pin list
+                    //        0x0063
+                    //    }
+                })
+                Return (RBUF) /* \_SB_.TSC1._CRS.RBUF */
+            }
 
-                    Package (0x02)
+            Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
+            {
+                While (One)
+                {
+                    Name (_T_0, Buffer (0x01)  // _T_x: Emitted by ASL Compiler
                     {
-                        0x0C95, 
-                        0x0001D400
-                    }, 
-
-                    Package (0x02)
+                         0x00                                             // .
+                    })
+                    CopyObject (ToBuffer (Arg0), _T_0) /* \_SB_.TSC1._DSM._T_0 */
+                    If ((_T_0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
                     {
-                        0x0C39, 
-                        0x0001D800
-                    }, 
+                        While (One)
+                        {
+                            Name (_T_1, 0x00)  // _T_x: Emitted by ASL Compiler
+                            _T_1 = ToInteger (Arg2)
+                            If ((_T_1 == Zero))
+                            {
+                                While (One)
+                                {
+                                    Name (_T_2, 0x00)  // _T_x: Emitted by ASL Compiler
+                                    _T_2 = ToInteger (Arg1)
+                                    If ((_T_2 == One))
+                                    {
+                                        Return (Buffer (One)
+                                        {
+                                             0x03                                             // .
+                                        })
+                                    }
+                                    Else
+                                    {
+                                        Return (Buffer (One)
+                                        {
+                                             0x00                                             // .
+                                        })
+                                    }
 
-                    Package (0x02)
-                    {
-                        0x0BDF, 
-                        0x0001DC00
-                    }, 
+                                    Break
+                                }
+                            }
+                            ElseIf ((_T_1 == One))
+                            {
+                                Debug = "Method _DSM Function HID"
+                                Return (0x20)
+                            }
+                            Else
+                            {
+                            }
 
-                    Package (0x02)
+                            Break
+                        }
+                    }
+                    Else
                     {
-                        0x0B88, 
-                        0x0001E000
-                    }, 
+                        Return (Buffer (One)
+                        {
+                             0x00                                             // .
+                        })
+                    }
 
-                    Package (0x02)
-                    {
-                        0x0B34, 
-                        0x0001E400
-                    }, 
+                    Break
+                }
+            }
 
-                    Package (0x02)
-                    {
-                        0x0AE3, 
-                        0x0001E800
-                    }, 
+            Name (PGID, Buffer (0x0A)
+            {
+                "\\_SB.TSC1"
+            })
+            Name (DBUF, Buffer (DBFL){})
+            CreateByteField (DBUF, Zero, STAT)
+            CreateByteField (DBUF, 0x02, DVAL)
+            CreateField (DBUF, 0x18, 0xA0, DEID)
+            Method (_S1D, 0, NotSerialized)  // _S1D: S1 Device State
+            {
+                Return (0x03)
+            }
 
-                    Package (0x02)
-                    {
-                        0x0A95, 
-                        0x0001EC00
-                    }, 
+            Method (_S2D, 0, NotSerialized)  // _S2D: S2 Device State
+            {
+                Return (0x03)
+            }
 
-                    Package (0x02)
-                    {
-                        0x0A49, 
-                        0x0001F000
-                    }, 
+            Method (_S3D, 0, NotSerialized)  // _S3D: S3 Device State
+            {
+                Return (0x03)
+            }
 
-                    Package (0x02)
-                    {
-                        0x0A00, 
-                        0x0001F400
-                    }, 
+            Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
+            {
+                DEID = Buffer (ESNL){}
+                DVAL = Zero
+                DEID = PGID /* \_SB_.TSC1.PGID */
+                If (^^ABD.AVBL)
+                {
+                    ^^PEP0.FLD0 = DBUF /* \_SB_.TSC1.DBUF */
+                }
+            }
 
-                    Package (0x02)
-                    {
-                        0x09B9, 
-                        0x0001F800
-                    }, 
+            Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
+            {
+                DEID = Buffer (ESNL){}
+                DVAL = 0x03
+                DEID = PGID /* \_SB_.TSC1.PGID */
+                If (^^ABD.AVBL)
+                {
+                    ^^PEP0.FLD0 = DBUF /* \_SB_.TSC1.DBUF */
+                }
+            }
+        }
 
-                    Package (0x02)
-                    {
-                        0x0974, 
-                        0x0001FC00
-                    }
+        Device (BTNS)
+        {
+            Name (_HID, "ACPI0011" /* Generic Buttons Device */)  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
+            Name (_UID, Zero)  // _UID: Unique ID
+            Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
+            {
+                Name (RBUF, ResourceTemplate ()
+                {
+                    GpioInt (Edge, ActiveBoth, Exclusive, PullDown, 0x0010,
+                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
+                        )
+                        {   // Pin list
+                            0x0000
+                        }
+                    GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0000,
+                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
+                        )
+                        {   // Pin list
+                            0x0085
+                        }
+                    GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullDown, 0x0000,
+                        "\\_SB.PM01", 0x00, ResourceConsumer, ,
+                        )
+                        {   // Pin list
+                            0x0084
+                        }
                 })
+                Return (RBUF) /* \_SB_.BTNS._CRS.RBUF */
             }
 
-            Method (VTCH, 0, NotSerialized)
+            Name (_DSD, Package (0x02)  // _DSD: Device-Specific Data
             {
-                Return (Package (0x05)
+                ToUUID ("fa6bd625-9ce8-470d-a2c7-b3ca36c4282e") /* Generic Buttons Device */, 
+                Package (0x06)
                 {
-                    Package (0x10)
+                    Package (0x05)
                     {
-                        "VPH_PWR", 
-                        0x83, 
                         Zero, 
                         One, 
                         Zero, 
-                        0x02, 
                         One, 
-                        0x03, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        0x15F9
+                        0x0D
                     }, 
 
-                    Package (0x10)
+                    Package (0x05)
                     {
-                        "PMIC_THERM", 
-                        0x06, 
-                        Zero, 
-                        Zero, 
+                        One, 
                         Zero, 
-                        0x02, 
                         One, 
                         One, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        PTCF,
-                        PTCI,
-                        0x02, 
-                        0xFFFF3CB0, 
-                        0x000249F0
+                        0x81
                     }, 
 
-                    Package (0x10)
+                    Package (0x05)
                     {
-                        "SYS_THERM1", 
-                        0x4D, 
-                        One, 
-                        Zero, 
-                        Zero, 
                         One, 
                         One, 
                         One, 
-                        0x02, 
-                        0x000186A0, 
-                        SYTB, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        0xFFFFFFD8, 
-                        0x7D
+                        0x0C, 
+                        0xE9
                     }, 
 
-                    Package (0x10)
+                    Package (0x05)
                     {
-                        "PA_THERM", 
-                        0x4F, 
-                        One, 
-                        Zero, 
-                        Zero, 
-                        One, 
-                        One, 
                         One, 
                         0x02, 
-                        0x000186A0, 
-                        SYTB, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        0xFFFFFFD8, 
-                        0x7D
+                        One, 
+                        0x0C, 
+                        0xEA
                     }, 
 
-                    Package (0x10)
+                    Package (0x05)
                     {
-                        "PA_THERM1", 
-                        0x50, 
                         One, 
-                        Zero, 
-                        Zero, 
+                        0x03, 
                         One, 
+                        0x90, 
+                        0x20
+                    }, 
+
+                    Package (0x05)
+                    {
                         One, 
+                        0x04, 
                         One, 
-                        0x02, 
-                        0x000186A0, 
-                        SYTB, 
-                        Zero, 
-                        Zero, 
-                        Zero, 
-                        0xFFFFFFD8, 
-                        0x7D
+                        0x90, 
+                        0x21
                     }
-                })
-            }
+                }
+            })
+        }
 
-            Method (VTMT, 0, NotSerialized)
+        Device (QDCI)
+        {
+            Name (_DEP, Package (0x01)  // _DEP: Dependencies
             {
-                Return (Package (0x03)
-                {
-                    0x0B, 
-                    One, 
-                    0x05
-                })
-            }
+                GLNK
+            })
+            Name (_HID, "QCOM0224")  // _HID: Hardware ID
+            Alias (PSUB, _SUB)
         }
+
+        Include ("wcnss_bt.asl")
+
+        Include("adc.asl")
     }
 
     Name (WAKP, Package (0x02)
diff --git a/perseus/adc.asl b/perseus/adc.asl
new file mode 100644 (file)
index 0000000..01b979e
--- /dev/null
@@ -0,0 +1,707 @@
+/*============================================================================
+  FILE:         adc.asl
+
+  OVERVIEW:     This file contains the board-specific configuration info for
+                ADC1 - qcadc analog-to-digital converter (ADC): ACPI device
+                definitions, common settings, etc.
+
+  DEPENDENCIES: None
+
+============================================================================*/
+/*----------------------------------------------------------------------------
+ * QCADC
+ * -------------------------------------------------------------------------*/
+
+Device(ADC1)
+{
+   /*----------------------------------------------------------------------------
+    * Dependencies
+    * -------------------------------------------------------------------------*/
+   Name(_DEP, Package(0x2)
+   {
+      \_SB_.SPMI,
+      \_SB_.PMIC
+   })
+
+   /*----------------------------------------------------------------------------
+    * HID
+    * -------------------------------------------------------------------------*/
+   Name(_HID, "QCOM0221")
+   Alias(\_SB.PSUB, _SUB)
+   Name(_UID, 0)
+
+   /*----------------------------------------------------------------------------
+    * ADC Resources
+    * -------------------------------------------------------------------------*/
+   Method(_CRS)
+   {
+      /*
+       * Interrupts
+       */
+      Name (INTB, ResourceTemplate()
+      {
+         // VAdc - EOC
+         // ID = {slave id}{perph id}{int} = {0}{0011 0001}{000} = 0x188
+         GpioInt(Edge, ActiveHigh, ExclusiveAndWake, PullUp, 0, "\\_SB.PM01", , , , RawDataBuffer(){0x2}) {32} // 0x188 - PM_INT__VADC_HC1_USR__EOC
+
+         // VAdc TM - All interrupts
+         // ID = {slave id}{perph id}{int} = {0}{0011 0100}{000} = 0x1A0
+         GpioInt(Edge, ActiveHigh, ExclusiveAndWake, PullUp, 0, "\\_SB.PM01", , , , RawDataBuffer(){0x2}) {40} // 0x1A0 - PM_INT__VADC_HC7_BTM__THR
+
+         // FgAdc - All interrupts
+         // ID = {slave id}{perph id}{int} = {10}{0100 0101}{000} = 0x1228
+         GpioInt(Edge, ActiveHigh, ExclusiveAndWake, PullUp, 0, "\\_SB.PM01", , , , RawDataBuffer(){0x2}) {360} // 0x1228 - PM_INT__FG_ADC__BT_ID
+      })
+
+      /*
+       * SPMI peripherals
+       */
+      Name(NAM, Buffer() {"\\_SB.SPMI"})
+
+      // VAdc
+      Name(VUSR, Buffer()
+      {
+            0x8E,       // SPB Descriptor
+            0x13, 0x00, // Length including NAM above
+            0x01,       // +0x00 SPB Descriptor Revision
+            0x00,       // +0x01 Resource Source Index
+            0xC1,       // +0x02 Bus type - vendor defined values are in the range 0xc0-0xff
+            0x02,       // +0x03 Consumer + controller initiated
+            0x00, 0x31, // +0x04 Type specific flags . Slave id, Upper8 bit address
+            0x01,       // +0x06 Type specific revision
+            0x00, 0x00  // +0x07 type specific data length
+                        // +0x09 - 0xd bytes for NULL-terminated NAM
+                        // Length = 0x13
+      })
+
+      // VAdc TM
+      Name(VBTM, Buffer()
+      {
+            0x8E,       // SPB Descriptor
+            0x13, 0x00, // Length including NAM above
+            0x01,       // +0x00 SPB Descriptor Revision
+            0x00,       // +0x01 Resource Source Index
+            0xC1,       // +0x02 Bus type - vendor defined values are in the range 0xc0-0xff
+            0x02,       // +0x03 Consumer + controller initiated
+            0x00, 0x34, // +0x04 Type specific flags . Slave id, Upper8 bit address
+            0x01,       // +0x06 Type specific revision
+            0x00, 0x00  // +0x07 type specific data length
+                        // +0x09 - 0xd bytes for NULL-terminated NAM
+                        // Length = 0x13
+      })
+
+      // FgAdc
+      Name(FGRR, Buffer()
+      {
+            0x8E,       // SPB Descriptor
+            0x13, 0x00, // Length including NAM above
+            0x01,       // +0x00 SPB Descriptor Revision
+            0x00,       // +0x01 Resource Source Index
+            0xC1,       // +0x02 Bus type - vendor defined values are in the range 0xc0-0xff
+            0x02,       // +0x03 Consumer + controller initiated
+            0x02, 0x45, // +0x04 Type specific flags . Slave id, Upper8 bit address
+            0x01,       // +0x06 Type specific revision
+            0x00, 0x00  // +0x07 type specific data length
+                        // +0x09 - 0xd bytes for NULL-terminated NAM
+                        // Length = 0x13
+      })
+
+      // Name(END, Buffer() {0x79, 0x00})
+
+      // {VUSR, NAM, VBTM, NAM, FGRR, NAM, INTB}
+      // {Local1, Local2, Local3, INTB}
+      // {Local4, Local5}
+      // {Local0}
+      Concatenate(VUSR, NAM, Local1)
+      Concatenate(VBTM, NAM, Local2)
+      Concatenate(FGRR, NAM, Local3)
+      Concatenate(Local1, Local2, Local4)
+      Concatenate(Local3, INTB, Local5)
+      Concatenate(Local4, Local5, Local0)
+
+      Return(Local0)
+   }
+
+   /*----------------------------------------------------------------------------
+    * Device configuration
+    * -------------------------------------------------------------------------*/
+   /*
+    * General ADC properties
+    *
+    * bHasVAdc:
+    *    Whether or not TM is supported.
+    *    0 - Not supported
+    *    1 - Supported
+    *
+    * bHasTM:
+    *    Whether or not TM is supported.
+    *    0 - Not supported
+    *    1 - Supported
+    *
+    * bHasFgAdc:
+    *    Whether or not FGADC is supported.
+    *    0 - Not supported
+    *    1 - Supported
+    *
+    */
+   Method (ADDV)
+   {
+      Return (Package()
+      {
+         /* .bHasVAdc  = */ 1,
+         /* .bHasTM    = */ 1,
+         /* .bHasFgAdc = */ 1,
+      })
+   }
+
+   /*----------------------------------------------------------------------------
+    * Voltage ADC (VADC) Configuration
+    * -------------------------------------------------------------------------*/
+   /*
+    * General VADC properties
+    *
+    * bUsesInterrupts:
+    *    End-of-conversion interrupt mode.
+    *    0 - Polling mode
+    *    1 - Interrupt mode
+    *
+    * uFullScale_code:
+    *    Full-scale ADC code.
+    *
+    * uFullScale_uV:
+    *    Full-scale ADC voltage in uV.
+    *
+    * uReadTimeout_us:
+    *    Timeout for reading ADC channels in us.
+    *
+    * uLDOSettlingTime_us:
+    *    LDO settling time in us.
+    *
+    * ucMasterID:
+    *    Master ID to send the interrupt to.
+    *
+    * ucPmicDevice:
+    *    PMIC which has the VAdc.
+    *
+    * usMinDigRev:
+    *    Minimum digital version <major> <minor>
+    *
+    * usMinAnaRev:
+    *    Minimum analog version <major> <minor>
+    *
+    * ucPerphType:
+    *    ADC peripheral type.
+    *
+    */
+   Method (GENP)
+   {
+      Return (Package()
+      {
+         /* .bUsesInterrupts     = */ 0,
+         /* .uFullScale_code     = */ 0x4000,
+         /* .uFullScale_uV       = */ 1875000,
+         /* .uReadTimeout_us     = */ 500000,
+         /* .uLDOSettlingTime_us = */ 17,
+         /* .ucMasterID          = */ 0,
+         /* .ucPmicDevice        = */ 0,
+         /* .usMinDigRev         = */ 0x300,
+         /* .usMinAnaRev         = */ 0x100,
+         /* .ucPerphType         = */ 0x8,
+      })
+   }
+
+   /*===========================================================================
+
+     FUNCTION        PTCF
+
+     DESCRIPTION     Scales the ADC result from millivolts to 0.001 degrees
+                     Celsius using the PMIC thermistor conversion equation.
+
+     DEPENDENCIES    None
+
+     PARAMETERS      Arg0 [in]  ADC result data (uMicroVolts)
+
+     RETURN VALUE    Scaled result in mDegC
+
+     SIDE EFFECTS    None
+
+   ===========================================================================*/
+   Method (PTCF, 1)
+   {
+      /*
+       * Divide by two to convert from microvolt reading to micro-Kelvin.
+       *
+       * Subtract 273160 to convert the temperature from Kelvin to
+       * 0.001 degrees Celsius.
+       */
+      ShiftRight (Arg0, 1, Local0)
+      Subtract (Local0, 273160, Local0)
+      Return (Local0)
+   }
+
+   /*===========================================================================
+
+     FUNCTION        PTCI
+
+     DESCRIPTION     Inverse of PTCF - scaled PMIC temperature to microvolts.
+
+     DEPENDENCIES    None
+
+     PARAMETERS      Arg0 [in]  temperature in mDegC
+
+     RETURN VALUE    ADC result data (uMicroVolts)
+
+     SIDE EFFECTS    None
+
+   ===========================================================================*/
+   Method (PTCI, 1)
+   {
+      Add (Arg0, 273160, Local0)
+      ShiftLeft (Local0, 1, Local0)
+      Return (Local0)
+   }
+
+   /*
+    * VADC channel to GPIO mapping
+    *
+    */
+   Method (VGIO)
+   {
+      Return (Package()
+      {
+         Package()
+         {
+            /* .GPIO        = */ 8,
+            /* .aucChannels = */ Buffer(){0x12, 0x32, 0x52, 0x72},
+         },
+
+         Package()
+         {
+            /* .GPIO        = */ 9,
+            /* .aucChannels = */ Buffer(){0x13, 0x33, 0x53, 0x73},
+         },
+
+         Package()
+         {
+            /* .GPIO        = */ 10,
+            /* .aucChannels = */ Buffer(){0x14, 0x34, 0x54, 0x74},
+         },
+
+         Package()
+         {
+            /* .GPIO        = */ 11,
+            /* .aucChannels = */ Buffer(){0x15, 0x35, 0x55, 0x75},
+         },
+
+         Package()
+         {
+            /* .GPIO        = */ 12,
+            /* .aucChannels = */ Buffer(){0x16, 0x36, 0x56, 0x76},
+         },
+
+         Package()
+         {
+            /* .GPIO        = */ 21,
+            /* .aucChannels = */ Buffer(){0x17, 0x37, 0x57, 0x77, 0x97},
+         },
+
+         Package()
+         {
+            /* .GPIO        = */ 22,
+            /* .aucChannels = */ Buffer(){0x18, 0x38, 0x58, 0x78, 0x98},
+         },
+
+         Package()
+         {
+            /* .GPIO        = */ 23,
+            /* .aucChannels = */ Buffer(){0x19, 0x39, 0x59, 0x79, 0x99},
+         },
+      })
+   }
+
+   /*----------------------------------------------------------------------------
+    * Voltage ADC Threshold Monitor (VADCTM) Configuration
+    * -------------------------------------------------------------------------*/
+   /*
+    * General VADCTM properties
+    *
+    * eAverageMode:
+    *   Obtains N ADC readings and averages them together.
+    *   0 - VADCTM_AVERAGE_1_SAMPLE
+    *   1 - VADCTM_AVERAGE_2_SAMPLES
+    *   2 - VADCTM_AVERAGE_4_SAMPLES
+    *   3 - VADCTM_AVERAGE_8_SAMPLES
+    *   4 - VADCTM_AVERAGE_16_SAMPLES
+    *
+    * eDecimationRatio:
+    *    The decimation ratio.
+    *    0 - VADCTM_DECIMATION_RATIO_256
+    *    1 - VADCTM_DECIMATION_RATIO_512
+    *    2 - VADCTM_DECIMATION_RATIO_1024
+    *
+    * uFullScale_code:
+    *    Full-scale ADC code.
+    *
+    * uFullScale_uV:
+    *    Full-scale ADC voltage in uV.
+    *
+    * ucMasterID:
+    *    Master ID to send the interrupt to.
+    *
+    * ucPmicDevice:
+    *    PMIC which has the VAdc.
+    *
+    * usMinDigRev:
+    *    Minimum digital version <major> <minor>
+    *
+    * usMinAnaRev:
+    *    Minimum analog version <major> <minor>
+    *
+    * ucPerphType:
+    *    ADC peripheral type.
+    *
+    */
+   Method (VTGN)
+   {
+      Return (Package()
+      {
+         /* .eAverageMode        = */ 2,
+         /* .eDecimationRatio    = */ 2,
+         /* .uFullScale_code     = */ 0x4000,
+         /* .uFullScale_uV       = */ 1875000,
+         /* .ucMasterID          = */ 0,
+         /* .ucPmicDevice        = */ 0,
+         /* .usMinDigRev         = */ 0x300,
+         /* .usMinAnaRev         = */ 0x100,
+         /* .ucPerphType         = */ 0x8,
+      })
+   }
+
+   /*----------------------------------------------------------------------------
+    * Fuel Gauge ADC (FGADC) Configuration
+    * -------------------------------------------------------------------------*/
+   /*
+    * General FGADC properties
+    *
+    * skinTempThreshRange:
+    *    Range for skin temperature thresholds
+    *
+    * chgTempThreshRange:
+    *    Range for charger temperature thresholds
+    *
+    * uFullScale_code:
+    *    Full scale ADC value in code.
+    *
+    * uFullScale_uV:
+    *    Full scale ADC value in microvolts.
+    *
+    * uMicroVoltsPerMilliAmps:
+    *    Microvolts per milliamp scaling factor.
+    *
+    * uCodePerKelvin:
+    *    Code per Kelvin scaling factor.
+    *
+    * uBattIdClipThresh:
+    *    Max code for a BATT ID channel.
+    *
+    * uMaxWaitTimeus:
+    *    Maximum time to wait for a reading to complete in microseconds.
+    *
+    * uSlaveId:
+    *    PMIC slave ID.
+    *
+    * ucPmicDevice:
+    *    PMIC which has the VAdc.
+    *
+    * ucPerphType:
+    *    ADC peripheral type.
+    *
+    */
+   Method (GENF)
+   {
+      Return (Package()
+      {
+         /* .skinTempThreshRange.nMin = */ 0xFFFFFFE2,  // -30
+         /* .skinTempThreshRange.nMax = */ 97,
+         /* .chgTempThreshRange.nMin  = */ 0xFFFFFFCE,  // -50
+         /* .chgTempThreshRange.nMax  = */ 160,
+         /* .uFullScale_code          = */ 0x3ff,
+         /* .uFullScale_uV            = */ 2500000,
+         /* .uMicroVoltsPerMilliAmps  = */ 500,
+         /* .uCodePerKelvin           = */ 4,
+         /* .uBattIdClipThresh        = */ 820,
+         /* .uMaxWaitTimeUs           = */ 5000000,
+         /* .uSlaveId                 = */ 2,
+         /* .ucPmicDevice             = */ 1,
+         /* .ucPerphType              = */ 0xD,
+      })
+   }
+
+   /*
+    * FGADC Channel Configuration Table
+    *
+    * The following table is the list of channels the FGADC can read. Below is
+    * a description of each field:
+    *
+    * sName:
+    *    Appropriate string name for the channel from AdcInputs.h.
+    *
+    * eChannel:
+    *    Which channel.
+    *    0 - FGADC_CHAN_SKIN_TEMP
+    *    1 - FGADC_CHAN_BATT_ID
+    *    2 - FGADC_CHAN_BATT_ID_FRESH
+    *    3 - FGADC_CHAN_BATT_ID_5
+    *    4 - FGADC_CHAN_BATT_ID_15
+    *    5 - FGADC_CHAN_BATT_ID_150
+    *    6 - FGADC_CHAN_BATT_THERM
+    *    7 - FGADC_CHAN_AUX_THERM
+    *    8 - FGADC_CHAN_USB_IN_V
+    *    9 - FGADC_CHAN_USB_IN_I
+    *    10 - FGADC_CHAN_DC_IN_V
+    *    11 - FGADC_CHAN_DC_IN_I
+    *    12 - FGADC_CHAN_DIE_TEMP
+    *    13 - FGADC_CHAN_CHARGER_TEMP
+    *    14 - FGADC_CHAN_GPIO
+    *
+    * eEnable:
+    *    Whether or not to enable the channel.
+    *    0 - FGADC_DISABLE
+    *    1 - FGADC_ENABLE
+    *
+    * ucTriggers:
+    *    Mask of triggers. Use 0x0 for default trigger configuration.
+    *
+    * scalingFactor.num:
+    *    Numerator of the channel scaling
+    *
+    * scalingFactor.den:
+    *    Denominator of the channel scaling
+    *
+    * eScaling:
+    *    The scaling method to use.
+    *    0 - FGADC_SCALE_TO_MILLIVOLTS
+    *    1 - FGADC_SCALE_BATT_ID_TO_OHMS
+    *    2 - FGADC_SCALE_INTERPOLATE_FROM_MILLIVOLTS (requires uInterpolationTableName)
+    *    3 - FGADC_SCALE_THERMISTOR
+    *    4 - FGADC_SCALE_CURRENT_TO_MILLIAMPS
+    *
+    * uInterpolationTableName:
+    *    The name of the lookup table in ACPI that will be interpolated to obtain
+    *    a physical value. Note that the physical value (which has default units
+    *    of millivolts unless custom scaling function is used) is passed as the
+    *    input. This value corresponds to the first column of the table. The
+    *    scaled output appears in the physical adc result.
+    *    0 - No interpolation table
+    *    WXYZ - Where 'WXYZ' is the interpolation table name
+    *
+    */
+   Method (FCHN)
+   {
+      Return (Package()
+      {
+         /* BATT_ID_OHMS (BATT_ID pin) */
+         Package()
+         {
+            /* .sName                   = */ "BATT_ID_OHMS",
+            /* .eChannel                = */ 1,
+            /* .eEnable                 = */ 1,
+            /* .ucTriggers              = */ 0x0,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScaling                = */ 1,
+            /* .uInterpolationTableName = */ 0,
+         },
+
+         /* BATT_ID_OHMS_FRESH (BATT_ID pin) */
+         Package()
+         {
+            /* .sName                   = */ "BATT_ID_OHMS_FRESH",
+            /* .eChannel                = */ 2,
+            /* .eEnable                 = */ 1,
+            /* .ucTriggers              = */ 0x0,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScaling                = */ 1,
+            /* .uInterpolationTableName = */ 0,
+         },
+
+         /* BATT_THERM (BATT_THERM pin) */
+         Package()
+         {
+            /* .sName                   = */ "BATT_THERM",
+            /* .eChannel                = */ 6,
+            /* .eEnable                 = */ 1,
+            /* .ucTriggers              = */ 0x0,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScaling                = */ 3,
+            /* .uInterpolationTableName = */ 0,
+         },
+
+         /* AUX_THERM (AUX_THERM pin) */
+         Package()
+         {
+            /* .sName                   = */ "AUX_THERM",
+            /* .eChannel                = */ 7,
+            /* .eEnable                 = */ 1,
+            /* .ucTriggers              = */ 0x0,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScaling                = */ 3,
+            /* .uInterpolationTableName = */ 0,
+         },
+
+         /* SKIN_THERM (AUX_THERM pin) */
+         Package()
+         {
+            /* .sName                   = */ "SKIN_THERM",
+            /* .eChannel                = */ 0,
+            /* .eEnable                 = */ 1,
+            /* .ucTriggers              = */ 0x0,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScaling                = */ 3,
+            /* .uInterpolationTableName = */ 0,
+         },
+
+         /* PMIC_TEMP2 (internal sensor) */
+         Package()
+         {
+            /* .sName                   = */ "PMIC_TEMP2",
+            /* .eChannel                = */ 12,
+            /* .eEnable                 = */ 1,
+            /* .ucTriggers              = */ 0x0,
+            /* .scalingFactor.num       = */ 3,
+            /* .scalingFactor.den       = */ 2,
+            /* .eScaling                = */ 2,
+            /* .uInterpolationTableName = */ FGDT,
+         },
+
+         /* CHG_TEMP (internal sensor) */
+         Package()
+         {
+            /* .sName                   = */ "CHG_TEMP",
+            /* .eChannel                = */ 13,
+            /* .eEnable                 = */ 1,
+            /* .ucTriggers              = */ 0x0,
+            /* .scalingFactor.num       = */ 3,
+            /* .scalingFactor.den       = */ 2,
+            /* .eScaling                = */ 2,
+            /* .uInterpolationTableName = */ FGCT,
+         },
+
+         /* USB_IN (USB_IN pin) */
+         Package()
+         {
+            /* .sName                   = */ "USB_IN",
+            /* .eChannel                = */ 8,
+            /* .eEnable                 = */ 1,
+            /* .ucTriggers              = */ 0x0,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 8,
+            /* .eScaling                = */ 0,
+            /* .uInterpolationTableName = */ 0,
+         },
+
+         /* USB_IN_I (USB_IN pin) */
+         Package()
+         {
+            /* .sName                   = */ "USB_IN_I",
+            /* .eChannel                = */ 9,
+            /* .eEnable                 = */ 1,
+            /* .ucTriggers              = */ 0x0,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScaling                = */ 4,
+            /* .uInterpolationTableName = */ 0,
+         },
+
+         /* DC_IN (DC_IN pin) */
+         Package()
+         {
+            /* .sName                   = */ "DC_IN",
+            /* .eChannel                = */ 10,
+            /* .eEnable                 = */ 1,
+            /* .ucTriggers              = */ 0x0,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 8,
+            /* .eScaling                = */ 0,
+            /* .uInterpolationTableName = */ 0,
+         },
+
+         /* DC_IN_I (DC_IN pin) */
+         Package()
+         {
+            /* .sName                   = */ "DC_IN_I",
+            /* .eChannel                = */ 11,
+            /* .eEnable                 = */ 1,
+            /* .ucTriggers              = */ 0x0,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScaling                = */ 4,
+            /* .uInterpolationTableName = */ 0,
+         },
+
+         /* FG_GPIO */
+         Package()
+         {
+            /* .sName                   = */ "FG_GPIO",
+            /* .eChannel                = */ 14,
+            /* .eEnable                 = */ 0,
+            /* .ucTriggers              = */ 0x0,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 2,
+            /* .eScaling                = */ 0,
+            /* .uInterpolationTableName = */ 0,
+         },
+      })
+   }
+
+   /*
+    * Die temperature sensor scaling table
+    *
+    * The first column in the table is sensor voltage in millivolts and the
+    * second column is the temperature in milli degrees C.
+    *
+    * Scaling equation:
+    *
+    *    milliDegC = (uV - 600000) / 2 + 25000
+    *
+    */
+   Method (FGDT)
+   {
+      Return (Package()
+      {
+         Package(){ 450, 0xFFFF3CB0}, // -50000
+         Package(){ 870, 160000}
+      })
+   }
+
+   /*
+    * NOTE: CHG_TEMP on PMI8998 uses fab-dependent scaling in the driver.
+    * This is the default scaling if no fab-dependent scaling is found.
+    * It corresponds to GF.
+    */
+   /*
+    * Charger temperature sensor scaling table
+    *
+    * The first column in the table is sensor voltage in millivolts and the
+    * second column is the temperature in milli degrees C.
+    *
+    * Scaling equation:
+    *
+    *    milliDegC = (1303168 - uV) / 3.784 + 25000
+    *
+    */
+   Method (FGCT)
+   {
+      Return (Package()
+      {
+         Package(){ 1587, 0xFFFF3CB0}, // -50000
+         Package(){  792, 160000}
+      })
+   }
+}
+
+Include("cust_adc.asl")
diff --git a/perseus/cust_adc.asl b/perseus/cust_adc.asl
new file mode 100644 (file)
index 0000000..4f188a1
--- /dev/null
@@ -0,0 +1,898 @@
+/*============================================================================
+  FILE:         cust_adc.asl
+
+  OVERVIEW:     This file contains the board-specific configuration info for
+                ADC1 - qcadc analog-to-digital converter (ADC): channel
+                configurations, scaling functions, look-up tables, etc.
+
+  DEPENDENCIES: None
+
+============================================================================*/
+/*----------------------------------------------------------------------------
+ * QCADC
+ * -------------------------------------------------------------------------*/
+
+Scope(\_SB.ADC1)
+{
+   /*----------------------------------------------------------------------------
+    * Voltage ADC (VADC) Configuration
+    * -------------------------------------------------------------------------*/
+   /*
+    * VADC Channel Configuration Table
+    *
+    * The following table is the list of channels the ADC can read. Channels may
+    * be added or removed. Below is a description of each field:
+    *
+    * sName:
+    *    Appropriate string name for the channel from AdcInputs.h.
+    *
+    * uAdcHardwareChannel:
+    *    AMUX channel.
+    *
+    * eSettlingDelay:
+    *    Holdoff time to allow the voltage to settle before reading the channel.
+    *    0 - VADC_SETTLING_DELAY_0_US
+    *    1 - VADC_SETTLING_DELAY_100_US
+    *    2 - VADC_SETTLING_DELAY_200_US
+    *    3 - VADC_SETTLING_DELAY_300_US
+    *    4 - VADC_SETTLING_DELAY_400_US
+    *    5 - VADC_SETTLING_DELAY_500_US
+    *    6 - VADC_SETTLING_DELAY_600_US
+    *    7 - VADC_SETTLING_DELAY_700_US
+    *    8 - VADC_SETTLING_DELAY_800_US
+    *    9 - VADC_SETTLING_DELAY_900_US
+    *    10 - VADC_SETTLING_DELAY_1_MS
+    *    11 - VADC_SETTLING_DELAY_2_MS
+    *    12 - VADC_SETTLING_DELAY_4_MS
+    *    13 - VADC_SETTLING_DELAY_6_MS
+    *    14 - VADC_SETTLING_DELAY_8_MS
+    *    15 - VADC_SETTLING_DELAY_10_MS
+    *
+    * eAverageMode:
+    *   Obtains N ADC readings and averages them together.
+    *   0 - VADC_AVERAGE_1_SAMPLE
+    *   1 - VADC_AVERAGE_2_SAMPLES
+    *   2 - VADC_AVERAGE_4_SAMPLES
+    *   3 - VADC_AVERAGE_8_SAMPLES
+    *   4 - VADC_AVERAGE_16_SAMPLES
+    *
+    * eDecimationRatio:
+    *    The decimation ratio.
+    *    0 - VADC_DECIMATION_RATIO_256
+    *    1 - VADC_DECIMATION_RATIO_512
+    *    2 - VADC_DECIMATION_RATIO_1024
+    *
+    * eCalMethod:
+    *    Calibration method.
+    *    0 - VADC_CAL_METHOD_NO_CAL
+    *    1 - VADC_CAL_METHOD_RATIOMETRIC
+    *    2 - VADC_CAL_METHOD_ABSOLUTE
+    *
+    * scalingFactor.num:
+    *    Numerator of the channel scaling
+    *
+    * scalingFactor.den:
+    *    Denominator of the channel scaling
+    *
+    * eScalingMethod:
+    *    The scaling method to use.
+    *    0 - VADC_SCALE_TO_MILLIVOLTS
+    *    1 - VADC_SCALE_INTERPOLATE_FROM_MILLIVOLTS (requires uInterpolationTableName)
+    *    2 - VADC_SCALE_THERMISTOR (requires uPullUp and uInterpolationTableName)
+    *
+    * uPullUp:
+    *    The pull up resistor value. Use with eScalingMethod == VADC_SCALE_THERMISTOR,
+    *    otherwise, 0.
+    *
+    * uInterpolationTableName:
+    *    The name of the lookup table in ACPI that will be interpolated to obtain
+    *    a physical value. Note that the physical value (which has default units
+    *    of millivolts unless custom scaling function is used) is passed as the
+    *    input. This value corresponds to the first column of the table. The
+    *    scaled output appears in the physical adc result.
+    *    0 - No interpolation table
+    *    WXYZ - Where 'WXYZ' is the interpolation table name
+    *
+    * uScalingFunctionName:
+    *    The name of the function to call in the ACPI table to perform custom
+    *    scaling. The input to the custom scaling function is defined by
+    *    eScalingFunctionInput. The output of the custom scaling function is
+    *    the physical value.
+    *    0 - No scaling function
+    *    WXYZ - Where 'WXYZ' is the scaling function name
+    *
+    *    Note: if both a custon scaling function & interpolation table are used
+    *    the custom scaling function is called first.
+    *
+    * eScalingFunctionInput:
+    *    Defines which ADC result is passed to the custom scaling function.
+    *    0 - VADC_SCALING_FUNCTION_INPUT_PHYSICAL
+    *    1 - VADC_SCALING_FUNCTION_INPUT_PERCENT
+    *    2 - VADC_SCALING_FUNCTION_INPUT_MICROVOLTS
+    *    3 - VADC_SCALING_FUNCTION_INPUT_CODE
+    *
+    */
+   Method (CHAN)
+   {
+      Return (Package()
+      {
+         /* VPH_PWR (VPH_PWR_SNS pin) */
+         Package()
+         {
+            /* .sName                   = */ "VPH_PWR",
+            /* .uAdcHardwareChannel     = */ 0x83,
+            /* .eSettlingDelay          = */ 0,
+            /* .eAverageMode            = */ 0,
+            /* .eDecimationRatio        = */ 2,
+            /* .eCalMethod              = */ 2,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 3,
+            /* .eScalingMethod          = */ 0,
+            /* .uPullUp                 = */ 0,
+            /* .uInterpolationTableName = */ 0,
+            /* .uScalingFunctionName    = */ 0,
+            /* .eScalingFunctionInput   = */ 0,
+         },
+
+         /* VCOIN (VCOIN pin) */
+         Package()
+         {
+            /* .sName                   = */ "VCOIN",
+            /* .uAdcHardwareChannel     = */ 0x85,
+            /* .eSettlingDelay          = */ 0,
+            /* .eAverageMode            = */ 0,
+            /* .eDecimationRatio        = */ 2,
+            /* .eCalMethod              = */ 2,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 3,
+            /* .eScalingMethod          = */ 0,
+            /* .uPullUp                 = */ 0,
+            /* .uInterpolationTableName = */ 0,
+            /* .uScalingFunctionName    = */ 0,
+            /* .eScalingFunctionInput   = */ 0,
+         },
+
+         /* PMIC_TEMP1 (internal sensor) */
+         Package()
+         {
+            /* .sName                   = */ "PMIC_THERM",
+            /* .uAdcHardwareChannel     = */ 0x6,
+            /* .eSettlingDelay          = */ 0,
+            /* .eAverageMode            = */ 0,
+            /* .eDecimationRatio        = */ 2,
+            /* .eCalMethod              = */ 2,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScalingMethod          = */ 0,
+            /* .uPullUp                 = */ 0,
+            /* .uInterpolationTableName = */ 0,
+            /* .uScalingFunctionName    = */ PTCF,
+            /* .eScalingFunctionInput   = */ 2,
+         },
+
+         /* XO_THERM (XO_THERM pin) */
+         Package()
+         {
+            /* .sName                   = */ "XO_THERM",
+            /* .uAdcHardwareChannel     = */ 0x4c,
+            /* .eSettlingDelay          = */ 8,
+            /* .eAverageMode            = */ 0,
+            /* .eDecimationRatio        = */ 2,
+            /* .eCalMethod              = */ 1,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScalingMethod          = */ 2,
+            /* .uPullUp                 = */ 100000,
+            /* .uInterpolationTableName = */ XTTB,
+            /* .uScalingFunctionName    = */ 0,
+            /* .eScalingFunctionInput   = */ 0,
+         },
+
+         /* XO_THERM_GPS (XO_THERM pin) */
+         Package()
+         {
+            /* .sName                   = */ "XO_THERM_GPS",
+            /* .uAdcHardwareChannel     = */ 0x4c,
+            /* .eSettlingDelay          = */ 8,
+            /* .eAverageMode            = */ 2,
+            /* .eDecimationRatio        = */ 2,
+            /* .eCalMethod              = */ 1,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScalingMethod          = */ 2,
+            /* .uPullUp                 = */ 100000,
+            /* .uInterpolationTableName = */ XTTB,
+            /* .uScalingFunctionName    = */ 0,
+            /* .eScalingFunctionInput   = */ 0,
+         },
+
+         /* SYS_THERM1 (AMUX_1 pin) */
+         Package()
+         {
+            /* .sName                   = */ "SYS_THERM1",
+            /* .uAdcHardwareChannel     = */ 0x4d,
+            /* .eSettlingDelay          = */ 1,
+            /* .eAverageMode            = */ 0,
+            /* .eDecimationRatio        = */ 2,
+            /* .eCalMethod              = */ 1,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScalingMethod          = */ 2,
+            /* .uPullUp                 = */ 100000,
+            /* .uInterpolationTableName = */ SYTB,
+            /* .uScalingFunctionName    = */ 0,
+            /* .eScalingFunctionInput   = */ 0,
+         },
+
+         /* SYS_THERM2 (AMUX_2 pin) */
+         Package()
+         {
+            /* .sName                   = */ "SYS_THERM2",
+            /* .uAdcHardwareChannel     = */ 0x4e,
+            /* .eSettlingDelay          = */ 1,
+            /* .eAverageMode            = */ 0,
+            /* .eDecimationRatio        = */ 2,
+            /* .eCalMethod              = */ 1,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScalingMethod          = */ 2,
+            /* .uPullUp                 = */ 100000,
+            /* .uInterpolationTableName = */ SYTB,
+            /* .uScalingFunctionName    = */ 0,
+            /* .eScalingFunctionInput   = */ 0,
+         },
+
+         /* PA_THERM (AMUX_3 pin) */
+         Package()
+         {
+            /* .sName                   = */ "PA_THERM",
+            /* .uAdcHardwareChannel     = */ 0x4f,
+            /* .eSettlingDelay          = */ 1,
+            /* .eAverageMode            = */ 0,
+            /* .eDecimationRatio        = */ 2,
+            /* .eCalMethod              = */ 1,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScalingMethod          = */ 2,
+            /* .uPullUp                 = */ 100000,
+            /* .uInterpolationTableName = */ SYTB,
+            /* .uScalingFunctionName    = */ 0,
+            /* .eScalingFunctionInput   = */ 0,
+         },
+
+         /* PA_THERM1 (AMUX_4 pin) */
+         Package()
+         {
+            /* .sName                   = */ "PA_THERM1",
+            /* .uAdcHardwareChannel     = */ 0x50,
+            /* .eSettlingDelay          = */ 1,
+            /* .eAverageMode            = */ 0,
+            /* .eDecimationRatio        = */ 2,
+            /* .eCalMethod              = */ 1,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScalingMethod          = */ 2,
+            /* .uPullUp                 = */ 100000,
+            /* .uInterpolationTableName = */ SYTB,
+            /* .uScalingFunctionName    = */ 0,
+            /* .eScalingFunctionInput   = */ 0,
+         },
+
+         /* SYS_THERM3 (AMUX_5 pin) */
+         Package()
+         {
+            /* .sName                   = */ "SYS_THERM3",
+            /* .uAdcHardwareChannel     = */ 0x51,
+            /* .eSettlingDelay          = */ 1,
+            /* .eAverageMode            = */ 0,
+            /* .eDecimationRatio        = */ 2,
+            /* .eCalMethod              = */ 1,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScalingMethod          = */ 2,
+            /* .uPullUp                 = */ 100000,
+            /* .uInterpolationTableName = */ SYTB,
+            /* .uScalingFunctionName    = */ 0,
+            /* .eScalingFunctionInput   = */ 0,
+         },
+      })
+   }
+
+   /*
+    * System Thermistor Table
+    *
+    * The first column in the table is thermistor resistance R_T in ohms
+    * and the second column is the temperature in degrees C.
+    *
+    *               VDD ___
+    *                      |
+    *                      >
+    *                P_PU  <
+    *                      >
+    *                      |
+    *                      |
+    *                      |- - - V_T
+    *                      |
+    *                      >
+    *                R_T   <   100 kOhms (NTCG104EF104FB)
+    *                      >
+    *                      |
+    *                      |
+    *                     Gnd
+    *
+    */
+   Method (SYTB)
+   {
+      Return (Package()
+      {
+         Package(){4251000, 0xFFFFFFD8}, // -40
+         Package(){3004900, 0xFFFFFFDD}, // -35
+         Package(){2148900, 0xFFFFFFE2}, // -30
+         Package(){1553800, 0xFFFFFFE7}, // -25
+         Package(){1135300, 0xFFFFFFEC}, // -20
+         Package(){ 837800, 0xFFFFFFF1}, // -15
+         Package(){ 624100, 0xFFFFFFF6}, // -10
+         Package(){ 469100, 0xFFFFFFFB}, // -5
+         Package(){ 355600,   0},
+         Package(){ 271800,   5},
+         Package(){ 209400,  10},
+         Package(){ 162500,  15},
+         Package(){ 127000,  20},
+         Package(){ 100000,  25},
+         Package(){  79200,  30},
+         Package(){  63200,  35},
+         Package(){  50700,  40},
+         Package(){  40900,  45},
+         Package(){  33200,  50},
+         Package(){  27100,  55},
+         Package(){  22200,  60},
+         Package(){  18300,  65},
+         Package(){  15200,  70},
+         Package(){  12600,  75},
+         Package(){  10600,  80},
+         Package(){   8890,  85},
+         Package(){   7500,  90},
+         Package(){   6360,  95},
+         Package(){   5410, 100},
+         Package(){   4620, 105},
+         Package(){   3970, 110},
+         Package(){   3420, 115},
+         Package(){   2950, 120},
+         Package(){   2560, 125}
+      })
+   }
+
+   /*
+    * XO Thermistor Table
+    *
+    * This lookup table is used to convert the XO thermistor reading to temperature
+    * in degrees C multiplied by a factor of 1024.
+    *
+    * The first column in the table is thermistor resistance R_T in ohms
+    *
+    * The second column is the temperature in degrees Celsius multiplied by a factor
+    * of 1024.
+    *
+    *               VDD ___
+    *                      |
+    *                      >
+    *                P_PU  <   100 kOhms
+    *                      >
+    *                      |
+    *                      |
+    *                      |- - - V_T
+    *                      |
+    *                      >
+    *                R_T   <   100 kOhms (NTCG104EF104FB)
+    *                      >
+    *                      |
+    *                      |
+    *                     Gnd
+    *
+    */
+   Method (XTTB)
+   {
+      Return (Package()
+      {
+         Package(){4250657, 0xFFFF6000}, // -40960
+         Package(){3962085, 0xFFFF6400}, // -39936
+         Package(){3694875, 0xFFFF6800}, // -38912
+         Package(){3447322, 0xFFFF6C00}, // -37888
+         Package(){3217867, 0xFFFF7000}, // -36864
+         Package(){3005082, 0xFFFF7400}, // -35840
+         Package(){2807660, 0xFFFF7800}, // -34816
+         Package(){2624405, 0xFFFF7C00}, // -33792
+         Package(){2454218, 0xFFFF8000}, // -32768
+         Package(){2296094, 0xFFFF8400}, // -31744
+         Package(){2149108, 0xFFFF8800}, // -30720
+         Package(){2012414, 0xFFFF8C00}, // -29696
+         Package(){1885232, 0xFFFF9000}, // -28672
+         Package(){1766846, 0xFFFF9400}, // -27648
+         Package(){1656598, 0xFFFF9800}, // -26624
+         Package(){1553884, 0xFFFF9C00}, // -25600
+         Package(){1458147, 0xFFFFA000}, // -24576
+         Package(){1368873, 0xFFFFA400}, // -23552
+         Package(){1285590, 0xFFFFA800}, // -22528
+         Package(){1207863, 0xFFFFAC00}, // -21504
+         Package(){1135290, 0xFFFFB000}, // -20480
+         Package(){1067501, 0xFFFFB400}, // -19456
+         Package(){1004155, 0xFFFFB800}, // -18432
+         Package(){ 944935, 0xFFFFBC00}, // -17408
+         Package(){ 889550, 0xFFFFC000}, // -16384
+         Package(){ 837731, 0xFFFFC400}, // -15360
+         Package(){ 789229, 0xFFFFC800}, // -14336
+         Package(){ 743813, 0xFFFFCC00}, // -13312
+         Package(){ 701271, 0xFFFFD000}, // -12288
+         Package(){ 661405, 0xFFFFD400}, // -11264
+         Package(){ 624032, 0xFFFFD800}, // -10240
+         Package(){ 588982, 0xFFFFDC00}, //  -9216
+         Package(){ 556100, 0xFFFFE000}, //  -8192
+         Package(){ 525239, 0xFFFFE400}, //  -7168
+         Package(){ 496264, 0xFFFFE800}, //  -6144
+         Package(){ 469050, 0xFFFFEC00}, //  -5120
+         Package(){ 443480, 0xFFFFF000}, //  -4096
+         Package(){ 419448, 0xFFFFF400}, //  -3072
+         Package(){ 396851, 0xFFFFF800}, //  -2048
+         Package(){ 375597, 0xFFFFFC00}, //  -1024
+         Package(){ 355598,      0},
+         Package(){ 336775,   1024},
+         Package(){ 319052,   2048},
+         Package(){ 302359,   3072},
+         Package(){ 286630,   4096},
+         Package(){ 271806,   5120},
+         Package(){ 257829,   6144},
+         Package(){ 244646,   7168},
+         Package(){ 232209,   8192},
+         Package(){ 220471,   9216},
+         Package(){ 209390,  10240},
+         Package(){ 198926,  11264},
+         Package(){ 189040,  12288},
+         Package(){ 179698,  13312},
+         Package(){ 170868,  14336},
+         Package(){ 162519,  15360},
+         Package(){ 154622,  16384},
+         Package(){ 147150,  17408},
+         Package(){ 140079,  18432},
+         Package(){ 133385,  19456},
+         Package(){ 127046,  20480},
+         Package(){ 121042,  21504},
+         Package(){ 115352,  22528},
+         Package(){ 109960,  23552},
+         Package(){ 104848,  24576},
+         Package(){ 100000,  25600},
+         Package(){  95402,  26624},
+         Package(){  91038,  27648},
+         Package(){  86897,  28672},
+         Package(){  82965,  29696},
+         Package(){  79232,  30720},
+         Package(){  75686,  31744},
+         Package(){  72316,  32768},
+         Package(){  69114,  33792},
+         Package(){  66070,  34816},
+         Package(){  63176,  35840},
+         Package(){  60423,  36864},
+         Package(){  57804,  37888},
+         Package(){  55312,  38912},
+         Package(){  52940,  39936},
+         Package(){  50681,  40960},
+         Package(){  48531,  41984},
+         Package(){  46482,  43008},
+         Package(){  44530,  44032},
+         Package(){  42670,  45056},
+         Package(){  40897,  46080},
+         Package(){  39207,  47104},
+         Package(){  37595,  48128},
+         Package(){  36057,  49152},
+         Package(){  34590,  50176},
+         Package(){  33190,  51200},
+         Package(){  31853,  52224},
+         Package(){  30577,  53248},
+         Package(){  29358,  54272},
+         Package(){  28194,  55296},
+         Package(){  27082,  56320},
+         Package(){  26020,  57344},
+         Package(){  25004,  58368},
+         Package(){  24033,  59392},
+         Package(){  23104,  60416},
+         Package(){  22216,  61440},
+         Package(){  21367,  62464},
+         Package(){  20554,  63488},
+         Package(){  19776,  64512},
+         Package(){  19031,  65536},
+         Package(){  18318,  66560},
+         Package(){  17636,  67584},
+         Package(){  16982,  68608},
+         Package(){  16355,  69632},
+         Package(){  15755,  70656},
+         Package(){  15180,  71680},
+         Package(){  14628,  72704},
+         Package(){  14099,  73728},
+         Package(){  13592,  74752},
+         Package(){  13106,  75776},
+         Package(){  12640,  76800},
+         Package(){  12192,  77824},
+         Package(){  11762,  78848},
+         Package(){  11350,  79872},
+         Package(){  10954,  80896},
+         Package(){  10574,  81920},
+         Package(){  10209,  82944},
+         Package(){   9858,  83968},
+         Package(){   9521,  84992},
+         Package(){   9197,  86016},
+         Package(){   8886,  87040},
+         Package(){   8587,  88064},
+         Package(){   8299,  89088},
+         Package(){   8023,  90112},
+         Package(){   7757,  91136},
+         Package(){   7501,  92160},
+         Package(){   7254,  93184},
+         Package(){   7017,  94208},
+         Package(){   6789,  95232},
+         Package(){   6570,  96256},
+         Package(){   6358,  97280},
+         Package(){   6155,  98304},
+         Package(){   5959,  99328},
+         Package(){   5770, 100352},
+         Package(){   5588, 101376},
+         Package(){   5412, 102400},
+         Package(){   5243, 103424},
+         Package(){   5080, 104448},
+         Package(){   4923, 105472},
+         Package(){   4771, 106496},
+         Package(){   4625, 107520},
+         Package(){   4484, 108544},
+         Package(){   4348, 109568},
+         Package(){   4217, 110592},
+         Package(){   4090, 111616},
+         Package(){   3968, 112640},
+         Package(){   3850, 113664},
+         Package(){   3736, 114688},
+         Package(){   3626, 115712},
+         Package(){   3519, 116736},
+         Package(){   3417, 117760},
+         Package(){   3317, 118784},
+         Package(){   3221, 119808},
+         Package(){   3129, 120832},
+         Package(){   3039, 121856},
+         Package(){   2952, 122880},
+         Package(){   2868, 123904},
+         Package(){   2787, 124928},
+         Package(){   2709, 125952},
+         Package(){   2633, 126976},
+         Package(){   2560, 128000},
+         Package(){   2489, 129024},
+         Package(){   2420, 130048}
+      })
+   }
+
+   /*----------------------------------------------------------------------------
+    * Voltage ADC Threshold Monitor (VADCTM) Configuration
+    * -------------------------------------------------------------------------*/
+   /*
+    * VADCTM Measurement Configuration Table
+    *
+    * The following is a list of periodic measurements that the VADCTM
+    * can periodically monitor. Thresholds for these measurements are set
+    * in software.
+    *
+    * sName:
+    *    Appropriate string name for the channel from AdcInputs.h.
+    *
+    * uAdcHardwareChannel:
+    *    AMUX channel.
+    *
+    * eSettlingDelay:
+    *    Holdoff time to allow the voltage to settle before reading the channel.
+    *    0 - VADCTM_SETTLING_DELAY_0_US
+    *    1 - VADCTM_SETTLING_DELAY_100_US
+    *    2 - VADCTM_SETTLING_DELAY_200_US
+    *    3 - VADCTM_SETTLING_DELAY_300_US
+    *    4 - VADCTM_SETTLING_DELAY_400_US
+    *    5 - VADCTM_SETTLING_DELAY_500_US
+    *    6 - VADCTM_SETTLING_DELAY_600_US
+    *    7 - VADCTM_SETTLING_DELAY_700_US
+    *    8 - VADCTM_SETTLING_DELAY_800_US
+    *    9 - VADCTM_SETTLING_DELAY_900_US
+    *    10 - VADCTM_SETTLING_DELAY_1_MS
+    *    11 - VADCTM_SETTLING_DELAY_2_MS
+    *    12 - VADCTM_SETTLING_DELAY_4_MS
+    *    13 - VADCTM_SETTLING_DELAY_6_MS
+    *    14 - VADCTM_SETTLING_DELAY_8_MS
+    *    15 - VADCTM_SETTLING_DELAY_10_MS
+    *
+    * eMeasIntervalTimeSelect:
+    *    The interval timer to use for the measurement period.
+    *    0 - VADCTM_MEAS_INTERVAL_TIME1
+    *    1 - VADCTM_MEAS_INTERVAL_TIME2
+    *    2 - VADCTM_MEAS_INTERVAL_TIME3
+    *
+    * bAlwaysOn:
+    *    Keep the measurement always sampling even if no thresholds are set.
+    *    0 - FALSE
+    *    1 - TRUE
+    *
+    * eCalMethod:
+    *    Calibration method.
+    *    0 - VADC_CAL_METHOD_NO_CAL
+    *    1 - VADC_CAL_METHOD_RATIOMETRIC
+    *    2 - VADC_CAL_METHOD_ABSOLUTE
+    *
+    * scalingFactor.num:
+    *    Numerator of the channel scaling
+    *
+    * scalingFactor.den:
+    *    Denominator of the channel scaling
+    *
+    * eScalingMethod:
+    *    The scaling method to use.
+    *    0 - VADC_SCALE_TO_MILLIVOLTS
+    *    1 - VADC_SCALE_INTERPOLATE_FROM_MILLIVOLTS (requires uInterpolationTableName)
+    *    2 - VADC_SCALE_THERMISTOR (requires uPullUp and uInterpolationTableName)
+    *
+    * uPullUp:
+    *    The pull up resistor value. Use with eScalingMethod == VADC_SCALE_THERMISTOR,
+    *    otherwise, 0.
+    *
+    * uInterpolationTableName:
+    *    The name of the lookup table in ACPI that will be interpolated to obtain
+    *    a physical value. Note that the physical value (which has default units
+    *    of millivolts unless custom scaling function is used) is passed as the
+    *    input. This value corresponds to the first column of the table. The
+    *    scaled output appears in the physical adc result.
+    *    0 - No interpolation table
+    *    WXYZ - Where 'WXYZ' is the interpolation table name
+    *
+    * uScalingFunctionName:
+    *    The name of the function to call in the ACPI table to perform custom
+    *    scaling. The input to the custom scaling function is defined by
+    *    eScalingFunctionInput. The output of the custom scaling function is
+    *    the physical value.
+    *    0 - No scaling function
+    *    WXYZ - Where 'WXYZ' is the scaling function name
+    *
+    *    Note: if both a custon scaling function & interpolation table are used
+    *    the custom scaling function is called first.
+    *
+    * uInverseFunctionName:
+    *    The name of the inverse scaling for uScalingFunctionName.
+    *    0 - No scaling function
+    *    WXYZ - Where 'WXYZ' is the scaling function name
+    *
+    * eScalingFunctionInput:
+    *    Defines which ADC result is passed to the custom scaling function.
+    *    0 - VADC_SCALING_FUNCTION_INPUT_PHYSICAL
+    *    1 - VADC_SCALING_FUNCTION_INPUT_PERCENT
+    *    2 - VADC_SCALING_FUNCTION_INPUT_MICROVOLTS
+    *    3 - VADC_SCALING_FUNCTION_INPUT_CODE
+    *
+    * nPhysicalMin:
+    *    Minimum threshold value in physical units.
+    *
+    * nPhysicalMax:
+    *    Maximum threshold value in physical units.
+    *
+    */
+   Method (VTCH)
+   {
+      Return (Package()
+      {
+         /* VPH_PWR (VPH_PWR_SNS pin) */
+         Package()
+         {
+            /* .sName                   = */ "VPH_PWR",
+            /* .uAdcHardwareChannel     = */ 0x83,
+            /* .eSettlingDelay          = */ 0,
+            /* .eMeasIntervalTimeSelect = */ 1,
+            /* .bAlwaysOn               = */ 0,
+            /* .eCalMethod              = */ 2,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 3,
+            /* .eScalingMethod          = */ 0,
+            /* .uPullUp                 = */ 0,
+            /* .uInterpolationTableName = */ 0,
+            /* .uScalingFunctionName    = */ 0,
+            /* .uInverseFunctionName    = */ 0,
+            /* .eScalingFunctionInput   = */ 0,
+            /* .nPhysicalMin            = */ 0,
+            /* .nPhysicalMax            = */ 5625,
+         },
+
+         /* PMIC_TEMP1 (internal sensor) */
+         Package()
+         {
+            /* .sName                   = */ "PMIC_THERM",
+            /* .uAdcHardwareChannel     = */ 0x6,
+            /* .eSettlingDelay          = */ 0,
+            /* .eMeasIntervalTimeSelect = */ 0,
+            /* .bAlwaysOn               = */ 0,
+            /* .eCalMethod              = */ 2,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScalingMethod          = */ 0,
+            /* .uPullUp                 = */ 0,
+            /* .uInterpolationTableName = */ 0,
+            /* .uScalingFunctionName    = */ PTCF,
+            /* .uInverseFunctionName    = */ PTCI,
+            /* .eScalingFunctionInput   = */ 2,
+            /* .nPhysicalMin            = */ 0xFFFF3CB0,  // -50000
+            /* .nPhysicalMax            = */ 150000,
+         },
+
+         /* SYS_THERM1 (AMUX_1 pin) */
+         Package()
+         {
+            /* .sName                   = */ "SYS_THERM1",
+            /* .uAdcHardwareChannel     = */ 0x4d,
+            /* .eSettlingDelay          = */ 1,
+            /* .eMeasIntervalTimeSelect = */ 0,
+            /* .bAlwaysOn               = */ 0,
+            /* .eCalMethod              = */ 1,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScalingMethod          = */ 2,
+            /* .uPullUp                 = */ 100000,
+            /* .uInterpolationTableName = */ SYTB,
+            /* .uScalingFunctionName    = */ 0,
+            /* .uInverseFunctionName    = */ 0,
+            /* .eScalingFunctionInput   = */ 0,
+            /* .nPhysicalMin            = */ 0xFFFFFFD8,  // -40
+            /* .nPhysicalMax            = */ 125,
+         },
+
+         /* SYS_THERM2 (AMUX_2 pin) */
+         Package()
+         {
+            /* .sName                   = */ "SYS_THERM2",
+            /* .uAdcHardwareChannel     = */ 0x4e,
+            /* .eSettlingDelay          = */ 1,
+            /* .eMeasIntervalTimeSelect = */ 0,
+            /* .bAlwaysOn               = */ 0,
+            /* .eCalMethod              = */ 1,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScalingMethod          = */ 2,
+            /* .uPullUp                 = */ 100000,
+            /* .uInterpolationTableName = */ SYTB,
+            /* .uScalingFunctionName    = */ 0,
+            /* .uInverseFunctionName    = */ 0,
+            /* .eScalingFunctionInput   = */ 0,
+            /* .nPhysicalMin            = */ 0xFFFFFFD8,  // -40
+            /* .nPhysicalMax            = */ 125,
+         },
+
+         /* PA_THERM (AMUX_3 pin) */
+         Package()
+         {
+            /* .sName                   = */ "PA_THERM",
+            /* .uAdcHardwareChannel     = */ 0x4f,
+            /* .eSettlingDelay          = */ 1,
+            /* .eMeasIntervalTimeSelect = */ 0,
+            /* .bAlwaysOn               = */ 0,
+            /* .eCalMethod              = */ 1,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScalingMethod          = */ 2,
+            /* .uPullUp                 = */ 100000,
+            /* .uInterpolationTableName = */ SYTB,
+            /* .uScalingFunctionName    = */ 0,
+            /* .uInverseFunctionName    = */ 0,
+            /* .eScalingFunctionInput   = */ 0,
+            /* .nPhysicalMin            = */ 0xFFFFFFD8,  // -40
+            /* .nPhysicalMax            = */ 125,
+         },
+
+         /* PA_THERM1 (AMUX_4 pin) */
+         Package()
+         {
+            /* .sName                   = */ "PA_THERM1",
+            /* .uAdcHardwareChannel     = */ 0x50,
+            /* .eSettlingDelay          = */ 1,
+            /* .eMeasIntervalTimeSelect = */ 0,
+            /* .bAlwaysOn               = */ 0,
+            /* .eCalMethod              = */ 1,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScalingMethod          = */ 2,
+            /* .uPullUp                 = */ 100000,
+            /* .uInterpolationTableName = */ SYTB,
+            /* .uScalingFunctionName    = */ 0,
+            /* .uInverseFunctionName    = */ 0,
+            /* .eScalingFunctionInput   = */ 0,
+            /* .nPhysicalMin            = */ 0xFFFFFFD8,  // -40
+            /* .nPhysicalMax            = */ 125,
+         },
+
+         /* SYS_THERM3 (AMUX_5 pin) */
+         Package()
+         {
+            /* .sName                   = */ "SYS_THERM3",
+            /* .uAdcHardwareChannel     = */ 0x51,
+            /* .eSettlingDelay          = */ 1,
+            /* .eMeasIntervalTimeSelect = */ 0,
+            /* .bAlwaysOn               = */ 0,
+            /* .eCalMethod              = */ 1,
+            /* .scalingFactor.num       = */ 1,
+            /* .scalingFactor.den       = */ 1,
+            /* .eScalingMethod          = */ 2,
+            /* .uPullUp                 = */ 100000,
+            /* .uInterpolationTableName = */ SYTB,
+            /* .uScalingFunctionName    = */ 0,
+            /* .uInverseFunctionName    = */ 0,
+            /* .eScalingFunctionInput   = */ 0,
+            /* .nPhysicalMin            = */ 0xFFFFFFD8,  // -40
+            /* .nPhysicalMax            = */ 125,
+         },
+      })
+   }
+
+   /*
+    * General VADCTM measurement timer properties
+    *
+    * eMeasIntervalTime1:
+    *    Interval timer 1 periodic value.
+    *    0 - VADCTM_MEAS_INTERVAL_TIME1_0_MS
+    *    1 - VADCTM_MEAS_INTERVAL_TIME1_1P0_MS
+    *    2 - VADCTM_MEAS_INTERVAL_TIME1_2P0_MS
+    *    3 - VADCTM_MEAS_INTERVAL_TIME1_3P9_MS
+    *    4 - VADCTM_MEAS_INTERVAL_TIME1_7P8_MS
+    *    5 - VADCTM_MEAS_INTERVAL_TIME1_15P6_MS
+    *    6 - VADCTM_MEAS_INTERVAL_TIME1_31P1_MS
+    *    7 - VADCTM_MEAS_INTERVAL_TIME1_62P5_MS
+    *    8 - VADCTM_MEAS_INTERVAL_TIME1_125_MS
+    *    9 - VADCTM_MEAS_INTERVAL_TIME1_250_MS
+    *    10 - VADCTM_MEAS_INTERVAL_TIME1_500_MS
+    *    11 - VADCTM_MEAS_INTERVAL_TIME1_1000_MS
+    *    12 - VADCTM_MEAS_INTERVAL_TIME1_2000_MS
+    *    13 - VADCTM_MEAS_INTERVAL_TIME1_4000_MS
+    *    14 - VADCTM_MEAS_INTERVAL_TIME1_8000_MS
+    *    15 - VADCTM_MEAS_INTERVAL_TIME1_16000_MS
+    *
+    * eMeasIntervalTime2:
+    *    Interval timer 2 periodic value.
+    *    0 - VADCTM_MEAS_INTERVAL_TIME2_0_MS
+    *    1 - VADCTM_MEAS_INTERVAL_TIME2_100_MS
+    *    2 - VADCTM_MEAS_INTERVAL_TIME2_200_MS
+    *    3 - VADCTM_MEAS_INTERVAL_TIME2_300_MS
+    *    4 - VADCTM_MEAS_INTERVAL_TIME2_400_MS
+    *    5 - VADCTM_MEAS_INTERVAL_TIME2_500_MS
+    *    6 - VADCTM_MEAS_INTERVAL_TIME2_600_MS
+    *    7 - VADCTM_MEAS_INTERVAL_TIME2_700_MS
+    *    8 - VADCTM_MEAS_INTERVAL_TIME2_800_MS
+    *    9 - VADCTM_MEAS_INTERVAL_TIME2_900_MS
+    *    10 - VADCTM_MEAS_INTERVAL_TIME2_1000_MS
+    *    11 - VADCTM_MEAS_INTERVAL_TIME2_1100_MS
+    *    12 - VADCTM_MEAS_INTERVAL_TIME2_1200_MS
+    *    13 - VADCTM_MEAS_INTERVAL_TIME2_1300_MS
+    *    14 - VADCTM_MEAS_INTERVAL_TIME2_1400_MS
+    *    15 - VADCTM_MEAS_INTERVAL_TIME2_1500_MS
+    *
+    * eMeasIntervalTime3:
+    *    Interval timer 3 periodic value.
+    *    0 - VADCTM_MEAS_INTERVAL_TIME3_0_S
+    *    1 - VADCTM_MEAS_INTERVAL_TIME3_1_S
+    *    2 - VADCTM_MEAS_INTERVAL_TIME3_2_S
+    *    3 - VADCTM_MEAS_INTERVAL_TIME3_3_S
+    *    4 - VADCTM_MEAS_INTERVAL_TIME3_4_S
+    *    5 - VADCTM_MEAS_INTERVAL_TIME3_5_S
+    *    6 - VADCTM_MEAS_INTERVAL_TIME3_6_S
+    *    7 - VADCTM_MEAS_INTERVAL_TIME3_7_S
+    *    8 - VADCTM_MEAS_INTERVAL_TIME3_8_S
+    *    9 - VADCTM_MEAS_INTERVAL_TIME3_9_S
+    *    10 - VADCTM_MEAS_INTERVAL_TIME3_10_S
+    *    11 - VADCTM_MEAS_INTERVAL_TIME3_11_S
+    *    12 - VADCTM_MEAS_INTERVAL_TIME3_12_S
+    *    13 - VADCTM_MEAS_INTERVAL_TIME3_13_S
+    *    14 - VADCTM_MEAS_INTERVAL_TIME3_14_S
+    *    15 - VADCTM_MEAS_INTERVAL_TIME3_15_S
+    *
+    */
+   Method (VTMT)
+   {
+      Return (Package()
+      {
+         /* .eMeasIntervalTime1  = */ 11,  // 1000 ms
+         /* .eMeasIntervalTime2  = */ 1,   // 100 ms
+         /* .eMeasIntervalTime3  = */ 5,   // 5000 ms
+      })
+   }
+}
diff --git a/perseus/cust_pmic_batt.asl b/perseus/cust_pmic_batt.asl
new file mode 100644 (file)
index 0000000..7b0fcf7
--- /dev/null
@@ -0,0 +1,50 @@
+// This file contains the Power Management IC (PMIC)
+// customer-modifiable ACPI configurations.
+// 
+
+//******************************************
+//Configs for Battery Manager Device: PMBT
+//******************************************
+//--------------------
+//PMBT: Method(BBAT)
+//--------------------
+Name(BFCC, 13100)             //* (mWh), Full Charge Capacity  
+Name(PCT1, 5)                 //* (% of FCC),  Default Alert 1  
+Name(PCT2, 9)                 //* (% of FCC),  Default Alert 2  
+
+//--------------------
+//PMBT: Method(BMNR)
+//--------------------
+Name(CUST, "850_MTP")        //* cust file identifier  
+
+//--------------------
+//PMBT: Method(BPLT)
+//--------------------
+Name(VNOM, 3800)              //* (mV), Nominal Battery Voltage  
+Name(VLOW, 3300)              //* (mV), Low Battery Voltage   
+Name(EMPT, 3200)              //* (mV), VCutOff  
+Name(DCMA, 900)               //* (mA), DC Current  
+Name(BOCP, 4500)              //* (mA), OCP current used in BCL  
+Name(BVLO, 3000)              //* (mV), BCL low Vbatt  
+Name(BLOP, 20)                //* (%), BCL Low batt percent notification  
+Name(BNOP, 22)                //* (%), BCL normal batt percent notification  
+Name(IFGD, 50)                //* (mA), FG Iterm delta;  (iterm + this value) determines when FG report 100% 
+Name(VFGD, 50)                //* (mV), CC to CV Vdelta; (Vfloat - this value) determine when FG report 100% 
+
+//--------------------------------
+//PMBT: Method(BJTA)/Method(BAT1)
+//--------------------------------
+Name(VDD1, 4350)              //* (mV), Battery-1: Float Voltage (Standard Zone)
+Name(FCC1, 2100)              //* (mA), Battery-1: Full Charge Current (Standard Zone)
+Name(HCLI, 0)                 //* (degree C), hard-cold temperature limit
+Name(SCLI, 10)                //* (degree C), soft-cold temperature limit
+Name(SHLI, 45)                //* (degree C), soft-hot temperature limit
+Name(HHLI, 55)                //* (degree C), hard-hot temperature limit
+Name(FVC1, 105)               //* (mV), Float voltage compensation, when battery in JEITA soft-limit
+Name(CCC1, 1000)              //* (mA), Charge current compensation, when battery in JEITA soft-limit
+//--------------------
+//PMBT: Method(CTMC)
+//--------------------
+Name(RID2, 15000)            //* (Ohm), min RID for NORMAL category: 15K  
+Name(RID3, 140000)           //* (Ohm), max RID for NORMAL category: 140K
diff --git a/perseus/cust_thermal_zones.asl b/perseus/cust_thermal_zones.asl
new file mode 100644 (file)
index 0000000..f4b9f45
--- /dev/null
@@ -0,0 +1,570 @@
+//
+        //CPU Aggregator Device -- Required for Thermal Parking
+        Device(AGR0)
+        {
+            Name(_HID, "ACPI000C")
+            Name(_PUR, Package() {1, 0})
+            Method(_OST, 0x3, NotSerialized)
+            {
+                Store(Arg2, \_SB_.PEP0.ROST)
+            }
+        }
+
+        //---------------------------------------------------------------------
+        //
+        //        Thermal Zones for QC reference hardware     
+        //
+        //TZ0 - TZ39 are thermal zones developed by QC for reference hardware
+        //and can be modified by the OEMs.
+        //---------------------------------------------------------------------
+
+        //---------------------------------------------------------------------
+        //        Thermal Zones(0-19) for CPU sensors
+        //24AD - Little CPU virtual sensor
+        //24AE - Big CPU virtual sensor
+               // This thermal zone is only used for temperature logging for little CPUs
+               // as you may notice that _PSV, _TC1, _TC2, _TSP params are removed.
+               // This is the passive cooling mechanism by dialing down frequency is now
+               // done actively by hardware.
+        //---------------------------------------------------------------------
+        ThermalZone (TZ0) {
+            Name (_HID, "QCOM02B0")
+            Name (_UID, 0)
+            Name(_TZD, Package (){\_SB.SYSM.CLUS.CPU0, \_SB.SYSM.CLUS.CPU1, \_SB.SYSM.CLUS.CPU2, \_SB.SYSM.CLUS.CPU3})
+                       Method(_DEP) {
+                Return (Package() {\_SB.PEP0})
+            }
+        } // end of TZ0
+
+        //Regular Thermal Zone for Little CPU TSENS to Park cores at 110C
+        ThermalZone (TZ1) {
+            Name (_HID, "QCOM02B0")
+            Name (_UID, 1)
+            Name(_TZD, Package (){\_SB.PEP0})
+                       Name(TPSV, 3830)
+               Method(_PSV) { Return (\_SB.TZ1.TPSV) }
+                       Name(_MTL, 20)          // minimum throttle limit
+                       //Control how aggressively the thermal manager applies thermal 
+                       //throttling performance against temperature change.
+                       Name(TTC1, 0)
+                       Method(_TC1) { Return (\_SB.TZ1.TTC1) }
+                       
+                       // _TC2 Controls how aggressively the thermal manager applies thermal 
+                       // throttling performance against temperature delta between the 
+                       // current temperature and _PSV.
+                       // once the temp goes above _PSV, we like to have aggressive 
+                       // throttling based on  how far above the temp is above the threshold.
+                       // Since that is controlled via _TC2, we like it to be high.
+                       // please refer to the ACPI spec 6.0 to understand the significance of 
+                       // _TC2 or take a look at the explanation at the top of this file.
+                       Name(TTC2, 1)
+                       Method(_TC2) { Return (\_SB.TZ1.TTC2) }
+                       
+                       // Appropriate temperature sampling interval for the zone in tenths 
+                       // of a second. The thermal manager uses this interval to determine 
+                       // how often it should evaluate the thermal throttling performance. 
+                       // Must be greater than zero. For more information, see Thermal 
+                       // throttling algorithm on msdn page
+                       // https://msdn.microsoft.com/en-us/library/windows/hardware/mt643928(v=vs.85).aspx                     
+            Name(TTSP, 50)
+                       Method(_TSP) { Return (\_SB.TZ1.TTSP) }
+                       
+                       // This optional object evaluates to a recommended polling frequency 
+                       // (in tenths of seconds) for this thermal zone. A value of zero indicates
+            // that OSPM does not need to poll the temperature of this thermal zone in 
+                       // order to detect temperature changes (the hardware is capable of 
+                       // generating asynchronous notifications).
+                       // TZP should be marked 0 for all thermal zones as our TSENS sensors 
+                       // generate interrupts to complete thermal IOCTL read call.
+            Name(_TZP, 0) 
+
+                       Method(_DEP) {
+                Return (Package() {\_SB.PEP0})
+            }
+        } // end of TZ1
+
+               // This thermal zone is only used for temperature logging for Big CPUs
+               // as you may notice that _PSV, _TC1, _TC2, _TSP params are removed.
+               // This is the passive cooling mechanism by dialing down frequency is now
+               // done actively by hardware.
+        ThermalZone (TZ2) {
+            Name (_HID, "QCOM02B1")
+            Name (_UID, 0)
+            Name(_TZD, Package (){\_SB.SYSM.CLUS.CPU4, \_SB.SYSM.CLUS.CPU5, \_SB.SYSM.CLUS.CPU6, \_SB.SYSM.CLUS.CPU7})
+                       Method(_DEP) {
+                Return (Package() {\_SB.PEP0})
+            }
+        } // end of TZ2
+
+        //Regular Thermal Zone for BigCPU TSENS to Park cores at 110C
+        ThermalZone (TZ3) {
+            Name (_HID, "QCOM02B1")
+            Name (_UID, 1)
+            Name(_TZD, Package (){\_SB.PEP0})
+                       
+                       Name(TPSV, 3830)
+               Method(_PSV) { Return (\_SB.TZ3.TPSV) }                 
+                       Name(TTC1, 0)
+                       Method(_TC1) { Return (\_SB.TZ3.TTC1) }
+                       Name(TTC2, 1)
+                       Method(_TC2) { Return (\_SB.TZ3.TTC2) }
+            Name(TTSP, 1)
+                       Method(_TSP) { Return (\_SB.TZ3.TTSP) }
+            Name(_MTL, 20)     // minimum throttle limit
+            Name(_TZP, 0)
+
+                       Method(_DEP) {
+                Return (Package() {\_SB.PEP0})
+            }
+        } // end of TZ3
+
+        //---------------------------------------------------------------------
+        //        Thermal Zones(20-21) for GPU TSENS
+        //
+        // \_SB.GPU0 should be used for GPU thermal mitigation, and 
+        // \_SB.GPU0.AVS0 should be used for MDSS/Video thermal mitigation.
+        // Currently there is no handling for Video thermal mitigation.
+        // When needed, Video will be added to GPU0.AVS0 interface.
+        //---------------------------------------------------------------------
+        //Thermal zone for TSENS11 dial back GPUs at 95C
+        ThermalZone (TZ20) {
+            Name (_HID, "QCOM02AB")
+            Name (_UID, 0)
+            Name(_TZD, Package (){\_SB.GPU0})
+            Name(TPSV, 3680)
+               Method(_PSV) { Return (\_SB.TZ20.TPSV) }        
+            Name(TTC1, 1)
+                       Method(_TC1) { Return (\_SB.TZ20.TTC1) }
+          // For non-cpu devices, tc2 should be atleast 5, please refer to the 
+          // explanation at the top of the file or msdn link for thermal guide.
+            Name(TTC2, 2)
+                       Method(_TC2) { Return (\_SB.TZ20.TTC2) }
+            // For non-cpu devices, _tsp should be 20 or 30
+            Name(TTSP, 2)
+                       Method(_TSP) { Return (\_SB.TZ20.TTSP) }
+            Name(_TZP, 0)
+                       Method(_DEP) {
+                Return (Package() {\_SB.PEP0})
+            }
+        } // end of TZ20
+
+        //Thermal zone for TSENS12 to dial back GPUs at 95C
+        ThermalZone (TZ21) {
+            Name (_HID, "QCOM02AC")
+            Name (_UID, 0)
+            Name(_TZD, Package (){\_SB.GPU0})
+            Name(TPSV, 3680)
+               Method(_PSV) { Return (\_SB.TZ21.TPSV) }
+                       Name(TTC1, 1)
+                       Method(_TC1) { Return (\_SB.TZ21.TTC1) }
+            Name(TTC2, 2)
+                       Method(_TC2) { Return (\_SB.TZ21.TTC2) }
+                       Name(TTSP, 2)
+                       Method(_TSP) { Return (\_SB.TZ21.TTSP) }
+            Name(_TZP, 0)
+                       Method(_DEP) {
+                Return (Package() {\_SB.PEP0})
+            }
+        } // end of TZ21
+
+        //---------------------------------------------------------------------
+        //        Thermal Zones for QDSP TSENS
+        //4/16/15: TODO waiting to get a new HID assigned for TSENS17
+        //---------------------------------------------------------------------
+        //Thermall zone for TSENS14 dial back MSM at 95C
+        //ThermalZone (TZ31) {
+            //Name (_HID, "QCOM02AE")
+            //Name (_UID, 0)
+            //Name(_TZD, Package (){
+                //\_SB.SYSM.CLUS.CPU0, \_SB.SYSM.CLUS.CPU1, \_SB.SYSM.CLUS.CPU2, \_SB.SYSM.CLUS.CPU3,
+                //\_SB.PEP0, \_SB.GPU0.MON0, \_SB.GPU0})
+            //Method(_PSV) { Return (3680) }
+            //Name(_TC1, 1)
+            //Name(_TC2, 2)
+            //Name(_TSP, 10)
+            //Name(_TZP, 0)
+                       //Method(_DEP) {
+            //    Return (Package() {\_SB.PEP0})
+            //}
+        //} // end of TZ31
+
+        //---------------------------------------------------------------------
+        //        Thermal Zones for Camera TSENS
+        //---------------------------------------------------------------------
+        //Thermal zone for TSENS17 to dial back MSM at 95C
+        // ThermalZone (TZ32) {
+        //     Name (_HID, "QCOM02C9")
+        //     Name (_UID, 0)
+        //     Name(_TZD, Package (){\_SB.GPU0.AVS0})
+        //     Name(TPSV, 3680)
+        //     Method(_PSV) { Return (\_SB.TZ32.TPSV) }
+        //     Name(TTC1, 1)
+        //     Method(_TC1) { Return (\_SB.TZ32.TTC1) }
+        //   // For non-cpu devices, tc2 should be atleast 5, please refer to the 
+        //   // explanation at the top of the file or msdn link for thermal guide.
+        //     Name(TTC2, 2) 
+        //     Method(_TC2) { Return (\_SB.TZ32.TTC2) }
+        //     // For non-cpu devices, _tsp should be 20 or 30
+        //     Name(TTSP, 10) 
+        //     Method(_TSP) { Return (\_SB.TZ32.TTSP) }           
+        //     Name(_TZP, 0)
+        //     Method(_DEP) {
+        //         Return (Package() {\_SB.PEP0})
+        //     }
+        // } // end of TZ32
+
+        ThermalZone (TZ33) {
+            Name (_HID, "QCOM02CB")
+            Name (_UID, 1)
+            Name(_TZD, Package (){\_SB.AMSS})
+                       
+                       Name(TPSV, 3680)
+               Method(_PSV) { Return (\_SB.TZ33.TPSV) }
+                       
+                       Name(TTC1, 1)
+               Method(_TC1) { Return (\_SB.TZ33.TTC1) }                
+                       
+                       Name(TTC2, 2)
+               Method(_TC2) { Return (\_SB.TZ33.TTC2) }
+                       
+                       Name(TTSP, 10)
+               Method(_TSP) { Return (\_SB.TZ33.TTSP) }           
+            
+            Name(_TZP, 0)
+            Method(_DEP) {
+            Return (Package() {\_SB.PEP0})
+            }
+        }
+
+        //---------------------------------------------------------------------
+        //        Thermal Zones for MDSS TENS (Display Subsystem)
+        // Only the MDP Blt engine and Rotator engines on the MDSS are cooled 
+        // using this interface. Display cooling is not supported currently.
+        //---------------------------------------------------------------------
+        //Thermal zone for TSENS18 to dial back MSM at 95C
+        //ThermalZone (TZ34) {
+            //Name (_HID, "QCOM02CA")
+            //Name (_UID, 0)
+            //Name(_TZD, Package (){\_SB.GPU0.AVS0})
+            //Method(_PSV) { Return (3680) }
+            //Name(_TC1, 1)
+            //Name(_TC2, 2)
+            //Name(_TSP, 10)
+            //Name(_TZP, 0)
+                       //Method(_DEP) {
+            //    Return (Package() {\_SB.PEP0})
+            //}
+        //} // end of TZ34
+
+        //---------------------------------------------------------------------
+        //        Thermal Zones for ADC Channels 
+        //---------------------------------------------------------------------
+        //Thermal zone for PMIC_THERM
+        ThermalZone (TZ36) {
+            Name (_HID, "QCOM029E")
+            Name (_UID, 0)
+            Name(_TZD, Package (){
+                \_SB.SYSM.CLUS.CPU0, \_SB.SYSM.CLUS.CPU1, \_SB.SYSM.CLUS.CPU2, \_SB.SYSM.CLUS.CPU3,
+                               \_SB.SYSM.CLUS.CPU4, \_SB.SYSM.CLUS.CPU5, \_SB.SYSM.CLUS.CPU6, \_SB.SYSM.CLUS.CPU7,
+                \_SB.PMBM})
+                               
+                       Name(TPSV, 3780)
+               Method(_PSV) { Return (\_SB.TZ36.TPSV) }
+                       
+                       Name(TTC1, 4)
+               Method(_TC1) { Return (\_SB.TZ36.TTC1) }
+            
+                       Name(TTC2, 3)
+               Method(_TC2) { Return (\_SB.TZ36.TTC2) }
+                       
+                       Name(TTSP, 50)
+               Method(_TSP) { Return (\_SB.TZ36.TTSP) }
+            
+            Name(_TZP, 0)
+            Method(_DEP) {
+                Return (Package() {\_SB.PEP0, \_SB.ADC1})
+            }
+        } // end of TZ36
+
+        //Thermal zone for PMIC_THERM
+        ThermalZone (TZ37) {
+            Name (_HID, "QCOM029E")
+            Name (_UID, 1)
+            Name(_TZD, Package (){             
+                \_SB.PEP0, \_SB.PMBM})
+                       Name(TPSV, 3980)
+               Method(_PSV) { Return (\_SB.TZ37.TPSV) }            
+                       Name(TCRT, 4180)
+               Method(_CRT) { Return (\_SB.TZ37.TCRT) }
+                       Name(TTC1, 4)
+               Method(_TC1) { Return (\_SB.TZ37.TTC1) }
+                       Name(TTC2, 3)
+               Method(_TC2) { Return (\_SB.TZ37.TTC2) }            
+                       Name(TTSP, 50)
+               Method(_TSP) { Return (\_SB.TZ37.TTSP) }
+                       
+            Name(_TZP, 0)
+            Method(_DEP) {
+                Return (Package() {\_SB.PEP0, \_SB.ADC1})
+            }
+        } // end of TZ37
+               
+       //Example: Inverse Thermal zone for PMIC_THERM
+        ThermalZone (TZ38) {
+            Name (_HID, "QCOM029E")
+            Name (_UID, 2)  //Update UID on addition of new thermal zone with same HID
+            Name(_TZD, Package (){             
+                \_SB.PEP0})
+                   Method(INVT) { Return (1) }
+               Method(_MTL) { Return (60) }
+                       Name(TPSV, 2830)
+               Method(_PSV) { Return (\_SB.TZ38.TPSV) }
+                       Name(TTC1, 4)
+               Method(_TC1) { Return (\_SB.TZ38.TTC1) }
+                       Name(TTC2, 3)
+               Method(_TC2) { Return (\_SB.TZ38.TTC2) }
+                       Name(TTSP, 10)
+               Method(_TSP) { Return (\_SB.TZ38.TTSP) }
+            Name(_TZP, 0)
+            Method(_DEP) {
+                Return (Package() {\_SB.PEP0, \_SB.ADC1})
+            }
+        } // end of TZ38
+               
+        //------------------------------------------------------------------------
+        //        Thermal Zones for Wlan
+        //------------------------------------------------------------------------
+        //Thermal zone for iHelium, Wlan MAC&PHY on SOC
+        ThermalZone (TZ40) {
+            Name (_HID, "QCOM02AF")
+            Name (_UID, 0)
+            Name(_TZD, Package (){\_SB.COEX})
+                       
+                       Name(TPSV, 3580)
+               Method(_PSV) { Return (\_SB.TZ40.TPSV) }
+                       Name(TTC1, 1)
+               Method(_TC1) { Return (\_SB.TZ40.TTC1) }
+                       Name(TTC2, 5) // For non-cpu devices, tc2 should be atleast 5
+               Method(_TC2) { Return (\_SB.TZ40.TTC2) }                        
+                       Name(TTSP, 30) // For non-cpu devices, _tsp should be 20 or 30
+               Method(_TSP) { Return (\_SB.TZ40.TTSP) }
+                       
+            Name(_TZP, 0)
+            Method(_DEP) {
+                Return (Package() {\_SB.PEP0})
+            }
+        } // end of TZ40
+        //Thermal zone for Cherokee, Wlan radio on WCN3990
+        ThermalZone (TZ41) {
+            Name (_HID, "QCOM0295")//virtual sensor by wlan WMI thermal interface
+            Name (_UID, 1)
+            //Name(_TZD, Package (){\_SB.COEX})       // Temperature report only
+            //Method(_PSV) { Return (4030) }
+            //Name(_TC1, 4)
+            //Name(_TC2, 3)
+            Name(_TSP, 50)
+            Name(_TZP, 0)
+        } // end of TZ41
+               
+               //------------------------------------------------------------------------
+        //        Thermal Zones for DDR/POP
+        //------------------------------------------------------------------------
+        //Thermal zone for DDR
+               //Thermal zone for TSENS20 to dial back Big CPU's at 95C
+               
+               ThermalZone (TZ44) {
+            Name (_HID, "QCOM02CC")
+            Name (_UID, 0)
+            Name(_TZD, Package (){\_SB.SYSM.CLUS.CPU4, \_SB.SYSM.CLUS.CPU5, \_SB.SYSM.CLUS.CPU6, \_SB.SYSM.CLUS.CPU7})                 
+                       Name(TPSV, 3680)
+                       Method(_PSV) { Return (\_SB.TZ44.TPSV) }                        
+                       Name(TTC1, 0)
+                       Method(_TC1) { Return (\_SB.TZ44.TTC1) }
+                       Name(TTC2, 1)
+                       Method(_TC2) { Return (\_SB.TZ44.TTC2) }
+                       Name(TTSP, 1)
+                       Method(_TSP) { Return (\_SB.TZ44.TTSP) }            
+            Name(_TZP, 0)
+            Method(_DEP) {
+            Return (Package() {\_SB.PEP0})
+            }
+        } // end of TZ44
+
+    //---------------------------------------------------------------------
+    //
+    //                QC Recommended thermal limits starts
+    //
+    //TZ80 - TZ98 represent the thermal zones corresponding to QC 
+    //recommended thermal limits. These thermal zones must not be removed
+    //or tampered with.
+    //---------------------------------------------------------------------
+        //Thermal zone for TSENS2 at 70C to match the LA thermal limits
+        //ThermalZone (TZ80) {
+            //Name (_HID, "QCOM2472")
+            //Name (_UID, 0)
+            //Name(_TZD, Package (){
+            //    \_SB.SYSM.CLUS.CPU0, \_SB.SYSM.CLUS.CPU1, \_SB.SYSM.CLUS.CPU2, \_SB.SYSM.CLUS.CPU3,
+            //Method(_PSV) { Return (3430) }
+            //Name(_TC1, 1)
+            //Name(_TC2, 2)                                   
+            //Name(_TSP, 10)                                  
+            //Name(_TZP, 0) 
+                       //Method(_DEP) {
+            //    Return (Package() {\_SB.PEP0})
+            //}                        
+        //} // end of TZ80
+
+        //Thermal zone near for TSENS2 to shutdown the system at 85C to match LA
+        //thermal limits
+        //ThermalZone (TZ81) {
+            //Name (_HID, "QCOM2472")
+            //Name (_UID, 1)
+            //Name(_TZD, Package (){
+            //    \_SB.SYSM.CLUS.CPU0, \_SB.SYSM.CLUS.CPU1, \_SB.SYSM.CLUS.CPU2, \_SB.SYSM.CLUS.CPU3,
+            //    \_SB.PEP0})
+            //Method(_PSV) { Return (3530) }
+            //Method(_CRT) { Return (3580) }
+            //Name(_TC1, 1)
+            //Name(_TC2, 2)
+            //Name(_TSP, 10)
+            //Name(_TZP, 0)
+                       //Method(_DEP) {
+            //    Return (Package() {\_SB.PEP0})
+            //}
+        //} // end of TZ81
+
+    //Entry for BCL thermal zone
+    ThermalZone (TZ98) {
+        Name (_HID, "QCOM0294")
+        Name (_UID, 0)
+        Name(_TZD, Package (){
+            \_SB.GPU0.MON0, \_SB.GPU0})
+                       
+               Name(TPSV, 3630)
+           Method(_PSV) { Return (\_SB.TZ98.TPSV) }
+               Name(TTC1, 1)
+           Method(_TC1) { Return (\_SB.TZ98.TTC1) }            
+        //Method(_CRT) { Return (5630) }
+               Name(TTC2, 5)
+           Method(_TC2) { Return (\_SB.TZ98.TTC2) }        
+               Name(TTSP, 20)
+           Method(_TSP) { Return (\_SB.TZ98.TTSP) }
+               
+        Name(_TZP, 0)
+               Method(_DEP) {
+            Return (Package(0x2) {\_SB.PEP0,\_SB_.BCL1})
+        }
+    } // end of TZ98
+               
+        //---------------------------------------------------------------------
+        //            Critical Thermal Zones for ALL TSENS
+        //This sensor aggregates all the on chip TSENS into a single sensor
+        //for ACPI thermal manager. By having a critical thermal zone on this
+        //"virtual sensor" we don't have to add a critical thermal zone on every
+        //sensor and hence reduce the number of thermal zones.
+        //---------------------------------------------------------------------
+        //Critical Thermal zone on MSM virtual sensor to shutdown entire system
+        //at 110C.
+        ThermalZone (TZ99) {
+            Name (_HID, "QCOM02B2")
+            Name (_UID, 100)
+                       
+                       Name(TCRT, 3830)
+               Method(_CRT) { Return (\_SB.TZ99.TCRT) }
+                       Name(TTC1, 4)
+               Method(_TC1) { Return (\_SB.TZ99.TTC1) }            
+                       Name(TTC2, 3)
+               Method(_TC2) { Return (\_SB.TZ99.TTC2) }
+                       Name(TTSP, 10)
+               Method(_TSP) { Return (\_SB.TZ99.TTSP) }            
+            Name(_TZP, 0)
+                       
+                       Method(_DEP) {
+                Return (Package() {\_SB.PEP0})
+            }
+        } // end of TZ99
+
+    //---------------------------------------------------------------------
+    //        QC Recommended thermal limits ends
+    //---------------------------------------------------------------------     
+
+    //---------------------------------------------------------------------
+    //
+    //        Sample Thermal Zones  for OEMs TZ40 - TZ79
+    //
+    //Sample TSENS thermal zone that can be added on any TSENS
+    //---------------------------------------------------------------------
+        //ThermalZone (TZ40) {
+            //Name (_HID, "QCOM2470")
+            //Name (_UID, 0)
+            //Name(_TZD, Package (){
+            //\_SB.SYSM.CLUS.CPU0, \_SB.SYSM.CLUS.CPU1, \_SB.SYSM.CLUS.CPU2, \_SB.SYSM.CLUS.CPU3,\_SB.SYSM.CLUS.CPU4, \_SB.SYSM.CLUS.CPU5,
+            //\_SB.PEP0, <Your cooling device>})
+            //Method(_PSV) { Return (3730) }
+            //Method(_CRT) { Return (3780) }
+            //Name(_TC1, 1)
+            //Name(_TC2, 2)
+            //Name(_TSP, 10) //Sampling rate of 1sec
+            //Name(_TZP, 0)
+                       //Method(_DEP) {
+            //    Return (Package() {\_SB.PEP0})
+            //}
+        //} // end of TZ40
+
+        //ThermalZone (TZ41) {
+            //Name (_HID, "QCOM2470")
+            //Name (_UID, 0)
+            //Name(_TZD, Package (){
+            //\_SB.SYSM.CLUS.CPU0, \_SB.SYSM.CLUS.CPU1, \_SB.SYSM.CLUS.CPU2, \_SB.SYSM.CLUS.CPU3,\_SB.SYSM.CLUS.CPU4, \_SB.SYSM.CLUS.CPU5,
+            //\_SB.PEP0, <Your cooling device>})
+            //Method(_PSV) { Return (3730) }
+            //Method(_CRT) { Return (3780) }
+            //Name(_TC1, 1)
+            //Name(_TC2, 2)
+            //Name(_TSP, 50) //Sampling rate of 5sec
+            //Name(_TZP, 0)
+                       //Method(_DEP) {
+            //    Return (Package() {\_SB.PEP0})
+            //}
+        //} // end of TZ41
+        
+        
+        //--------------------------------------------------------------------------//
+        //
+        //        Sample VADC Thermal zones for OEMs
+        //
+        //Following are sample thermal zones that use the off chip ADC thermistors
+        //they are all currently using CPUs as a cooling device for a lack of better
+        //option. The OEMs should change this.
+        //--------------------------------------------------------------------------//
+
+        //Thermal zone for SYS_THERM2
+        // ThermalZone (TZ51) {
+            // Name (_HID, "QCOM248D")
+            // Name (_UID, 0)
+            // Name(_TZD, Package (){
+            //\_SB.SYSM.CLUS.CPU0, \_SB.SYSM.CLUS.CPU1, \_SB.SYSM.CLUS.CPU2, \_SB.SYSM.CLUS.CPU3,\_SB.SYSM.CLUS.CPU4, \_SB.SYSM.CLUS.CPU5,})
+            // Method(_PSV) { Return (3830) }
+            //Name(_TC1, 4)
+            //Name(_TC2, 3)
+            // Name(_TSP, 50)
+            //Name(_TZP, 0)
+                       //Method(_DEP) {
+            //    Return (Package() {\_SB.PEP0})
+            //}
+        // } // end of TZ51
+
+        //Thermal zone for PA_THERM1
+        // ThermalZone (TZ52) {
+            // Name (_HID, "QCOM248E")
+            // Name (_UID, 0)
+            // Name(_TZD, Package (){\_SB.SYSM.CLUS.CPU0, \_SB.SYSM.CLUS.CPU1, \_SB.SYSM.CLUS.CPU2, \_SB.SYSM.CLUS.CPU3})
+            // Method(_PSV) { Return (3430) }
+            // Name(_TC1, 4)
+            // Name(_TC2, 3)
+            // Name(_TSP, 50)
+            // Name(_TZP, 0)
+                       //Method(_DEP) {
+            //    Return (Package() {\_SB.PEP0})
+            //}
+        // } // end of TZ52
diff --git a/perseus/pmic_batt.asl b/perseus/pmic_batt.asl
new file mode 100644 (file)
index 0000000..82c2a72
--- /dev/null
@@ -0,0 +1,526 @@
+//
+// This file contains the Power Management IC (PMIC)
+// ACPI device definitions, configuration and look-up tables.
+//
+
+Include("cust_pmic_batt.asl")
+
+    //
+    // PMIC Battery Manger Driver
+    //
+    Device (PMBT) {
+        Name (_HID, "QCOM0264")
+            Name (_SUB, "RENEGA0E")
+            Name (_DEP, Package(0x2) {
+                \_SB_.PMIC,
+                \_SB_.ADC1,
+                //\_SB_.PEIC
+            })
+
+        Method (_STA) {
+            Return (0xB)    // Device is installable, functional & should not be visible in OSPM/Device Manager
+        }
+
+        Method (_CRS, 0x0, NotSerialized) {
+        Name (RBUF, ResourceTemplate ()
+        {
+            //GpioInt(Edge, ActiveBoth, Shared, PullUp, 0, "\\_SB.PM01",,,,) {208} // 0x80 - PM_INT__SCHG_CHGR__CHGR_ERROR_RT_STS - Charger Error Interrupt
+            //GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {336} // 0x210 - PM_INT__FG_BCL__IBT_HI - IBAT greater than threshold Interrupt.
+            //GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {337} // 0x211 - PM_INT__FG_BCL__IBT_THI - VBatt less than threshold Interrupt
+            //GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {352} // 0x220 - PM_INT__FG_MEM_IF__IMA_RDY - MEMIF access Interrupt
+            //GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {215} // 0x87 - PM_INT__SCHG_CHGR__CHGR_7 - Termination Current Interrupt
+            //GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {209} // 0x81 - PM_INT__SCHG_CHGR__CHARGING_STATE_CHANGE - Charger Inhibit Interrupt
+            GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {329} // 0x209 - PM_INT__FG_BATT_INFO__VBT_LOW - VBAT_LOW Interrupt
+            //GpioInt(Edge, ActiveBoth, Shared, PullUp, 0, "\\_SB.PM01",,,,) {240} // 0xA0 - PM_INT__SCHG_DC__DCIN_COLLAPSE - Qi Wireless Charger Interrupt
+            GpioInt(Edge, ActiveHigh, Exclusive, PullUp, 0, "\\_SB.PM01",,,,) {331} // 0x20B - PM_INT__FG_BATT_INFO__BT_MISS - BATT_MISSING Interrupt
+            GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {237} // 0x9D - PM_INT__SCHG_USB__USBIN_SOURCE_CHANGE - AICL_DONE IRQ (Rising Only)
+            //GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {232} // 0x98 - PM_INT__SCHG_USB__USBIN_COLLAPSE - USB_UV IRQ (Rising Only)
+            //GpioInt(Edge, ActiveHigh, Exclusive, PullUp, 0, "\\_SB.PM01",,,,) {322} // 0x202 - PM_INT__FG_BATT_SOC__BSOC_DELTA - FULL_SOC Interrupt
+            //GpioInt(Edge, ActiveHigh, Exclusive, PullUp, 0, "\\_SB.PM01",,,,) {323} // 0x203 - PM_INT__FG_BATT_SOC__MSOC_DELTA - EMPTY_SOC Interrupt
+            // GpioInt(Edge, ActiveHigh, Exclusive, PullUp, 0, "\\_SB.PM01",,,,) {213} // 0x85 - PM_INT__SCHG_CHGR__FG_FVCAL_QUALIFIED - FVCAL_QUALIFIED IRQ
+            GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {224} // 0x90 - PM_INT__SCHG_BATIF__BAT_TEMP - Jeita limit interrupt
+
+        })
+        Return (RBUF)
+        }
+
+                 //ACPI methods for Battery Manager Device
+                Method (BMNR) {
+                        Name (CFG0,
+                        Package(){
+                        1,               //* 0: Select Platform: 0- No HW, 1- SMChg+FGGge, 2- SMB3pChg+SMB3pGge, 3- LBChg+VMBMS
+                        0,               //* 1: Error State Handling: 0- Don�t Shutdown, 1- Shutdown
+                        1,               //* 2: Listen to BatteryClass: 0- No 1- Yes
+                        0,               //* 3: Test Mode Power Flag: 0- Discharging, 1- PowerOnline+Charging
+                        "CUST_PMIC"      //* 4: cust_pmic config identifier
+                        })
+                        Store(CUST, Index(CFG0, 4))
+                        Return (CFG0)
+                }
+
+                //ACPI methods for Timer
+                Method (BTIM) {
+                        Name (CFG0,
+                        Package(){
+                        30000,       // Charging Heartbeat Timer
+                        10000,       // Charging Tolerable Delay
+                        300000,      // Discharging Heartbeat Timer
+                        120000,      // Discharging Tolerable Delay
+                        0,           // Poll Timer , 0=Timer not used.
+                        0,           // Poll Tolerable Delay
+                        28080000,    // Charging Timeout (TDone) Timer
+                        0,           // Charging Timeout(TDone) Tolerable Delay
+                        })
+                        Return (CFG0)
+                }
+
+
+                //ACPI methods for Battery Info
+                Method (BBAT) {
+                        Name (CFG0,
+                        Package(){
+                        1,                      //* 0: Battery Technology
+                        0x4C494F4E,             //* 1: Battery Chemistry: hex(LION)
+                        0xFFFFFFFF,             //* 2: BFCC: (mWh), Design Capacity
+                        0xFFFFFFFF,             //* 3: BFCC: (mWh), Full Charge Capacity
+                        0xFFFFFFFF,             //* 4: PCT1: (% of FCC),  Default Alert 1
+                        0xFFFFFFFF,             //* 5: PCT2: (% of FCC), Default Alert 2
+                        "QCOMBATT01",           //* 6: Device Name
+                        "Qualcomm",             //* 7: Manufacture Name
+                        "QCOMBAT01_07012011",   //* 8: Battery Unique ID
+                        "07012011",             //* 9: Battery Serial Number
+                        19,                     //* 10: Battery Manufacture Date
+                        04,                     //* 11: Battery Manufacture Month
+                        2014                    //* 12: Battery Manufacture Year
+                        })
+                        //Local2 = Default Alert1 = PCT1 * BFCC / 100
+                        Multiply(PCT1,BFCC,Local0)
+                        Divide(Local0, 100, Local1, Local2)
+                        //Local3 = Default Alert2 = PCT2 * BFCC / 100
+                        Multiply(PCT2,BFCC,Local0)
+                        Divide(Local0, 100, Local1, Local3)
+                        Store(BFCC, Index(CFG0, 2))
+                        Store(BFCC, Index(CFG0, 3))
+                        Store(Local2, Index(CFG0, 4))
+                        Store(Local3, Index(CFG0, 5))
+                        Return (CFG0)
+                }
+
+                //ACPI methods for Proprietary chargers
+                Method (BPCH) {
+                        Name (CFG0,
+                        Package(){
+                        3000,       // QC2.0 charger current = 3000mA
+                        3000,       // QC3.0 charger current = 3000mA
+                        1500        // Invalid Wall charger current = 1500mA
+                        })
+                        Return (CFG0)
+                }
+
+                //ACPI methods for foldback chargers
+                Method (BFCH) {
+                        Name (CFG0,
+                        Package(){
+                        1,      // Feature enable/disable
+                        5,      // No of consecutive times charger attach/detach
+                        5000,   // msecs, Time elapsed between attach/detach
+                        900,    // mA, Current setting for foldback charger
+                        })
+                        Return (CFG0)
+                }
+
+                //ACPI methods for coin cell charger
+                Method (BCCC) {
+                        Name (CFG0,
+                        Package(){
+                        1,      //Enable coin cell charger; 1 = enable, 0 = disable
+                        0,      // RSET, 0=2K1, 1=1K7, 2=1K2, 3 = 0K8
+                        0       // VSET, 0=2V5, 1=3V2, 2=3V1, 3=3V0
+                        })
+                        Return (CFG0)
+                }
+
+                //ACPI methods for Recharge/Maintenance Mode
+                Method (BRCH) {
+                        Name (CFG0,
+                        Package(){
+                        100,         // Delta V Recharge threshold = 100mV
+                        0            // Delta V Recharge Reduction below Normal= 0mV
+                        })
+                        Return (CFG0)
+                }
+
+                //ACPI methods for Qi Charging
+                Method (_BQI) {
+                        Name (CFG0,
+                        Package(){
+                        0,
+                        })
+                        Return (CFG0)
+                }
+
+                //ACPI methods for Interrupt Name
+                Method (BIRQ) {
+                        Name (CFG0,
+                        Package(){
+                        //"ChgError",      // Charger Error
+                        //"BclIrq1",       // IBAT greater than threshold IRQ
+                        //"BclIrq2",       // VBAT less than threshold IRQ
+                        //"MEMIFaccess",   // MEMIF access granted IRQ
+                        //"TccReached",    // Termination Current IRQ
+                        //"ChargerInhibit" // Charger Inhibit IRQ
+                        "VbatLow",         // VBAT LOW IRQ
+                        //"QiWlcDet",      // Qi charging
+                        "BattMissing",     // BATT_MISSING IRQ
+                        "AiclDone",        // AICL Done
+                        //"UsbUv",         // USB UV
+                        //"SOCFull",       // SOC Full IRQ
+                        //"SOCEmpty",      // SOC Empty IRQ
+                        //"FvCal",         // FVCAl IRQ
+                        "JeitaLimit"       // JEITA limit IRQ
+                        })
+                        Return (CFG0)
+                }
+                //ACPI methods for Platform File
+                Method (BPLT) {
+                        Name (CFG0,
+                        Package(){
+                        1024,        //* 0: ACPI Version
+                        0xFFFFFFFF,  //* 1: VNOM: (mV), Nominal Battery Voltage
+                        0xFFFFFFFF,  //* 2: VLOW: (mV), Low Battery Voltage
+                        0xFFFFFFFF,  //* 3: EMPT: (mV), VcutOff
+                        0xFFFFFFFF,  //* 4: DCMA: (mA), DC Current
+                        1,           //* 5: ChargePath Priority: Select 0 for DC, 1 for USB
+                        50,          //* 6: RSLOW for maxFlashCurrentPrediction
+                        50,          //* 7: RPARA for maxFlashCurrentPrediction
+                        5000,        //* 8: VINFLASH for maxFlashCurrentPrediction
+                        8,           //* 9: FlashParam for maxFlashCurrentPrediction
+                        1,           //* 10: AFP Mode Supported
+                        80,          //* 11:  AFP Trigger Max Battery Temp (+80 deg C)
+                        0xFFFFFFEC,  //* 12: AFP Trigger Min Battery Temp (-20 deg C)
+                        72,          //* 13: Watchdog timer in secs
+                        100,         //* 14: Charger iterm 100 mA for now
+                        30,          //* 15: SRAM logging timer
+                        5,           //* 16: VBATT average Window Size
+                        6,           //* 17: Emergency Shutdown Initial SOC
+                        500,         //* 18: SoC convergent point
+                        126,         //* 19: LM_Threshold
+                        400,         //* 20: MH_Threshold
+                        0xFFFFFFFF,  //* 21: BOCP: (mA), OCP current used in BCL
+                        750,         //* 22: soc (75%) below which no soc linearization even in CV charging
+                        1,           //* 23: BMD - Battery Missing Detection Source when source is attached: BATT_ID (1=BATT_ID, 4=HW Misssing Algorithm)
+                        2,           //* 24: ibat src sensing : 0 for batfet and 1 for external sensing
+                        50,          //* 25: IFGD: (mA), FG Iterm delta;  (iterm + this value) determines when FG report 100%
+                        10,          //* 26: VFGD: (mV), CC to CV Vdelta; (Vfloat - this value) determine when FG report 100%
+                        1,           //* 27: 0 - disable SOC linearization; 1 (nonzero): enable SOC linearization
+                        0xFFFFFFEC,  //* 28: (Celcius), Temperature threshold do have different SOC slope limiter
+                        10,          //* 29: (milli%) - SOC slope limiter when charging and at lower temperature than threshold
+                        10,          //* 30: (milli%) - SOC slope limiter when charging and at higher temperature than threshold
+                        10,          //* 31: (milli%) - SOC slope limiter when discharging and at lower temperature than threshold
+                        10,          //* 32: (milli%) - SOC slope limiter when discharging and at higher temperature than threshold
+                        1,           //* 33: 0 - disable FCC learning; 1 (nonzero): enable FCC leearning
+                        150,         //* 34: maximum starting SOC (in tenth percent)at which FCC learning would be turned on during charging
+                        100,         //* 35: maximum allowable decrement (in tenth percent) of battery capacity in FCC learning
+                        5,           //* 36: maximum allowable increment (in tenth percent) of battery capacity in FCC learning
+                        10,          //* 37: battery temperature in degree C below which switch to low temp ESR update steps
+                        0x02,        //* 38: ESR update step tight, (2 * 0.001953 = 0.0039 = 0.4% max change each update)
+                        0x33,        //* 39: ESR update step broad, (51* 0.001953 = 0.099603 = 10% max change each update)
+                        0x02,        //* 40: ESR update step tight at low temp (below 10 degree, 0.4% max change each update)
+                        0x0A,        //* 41: ESR update step broad at low temp (below 10 degree, 2% max change each update)
+                        0,           //* 42: mOhm, RConn
+                        0,           //* 43: Type C Thermal Mitigation Enable
+                        70,          //* 44: Temperature to arm mitigation (degree C)
+                        50,          //* 45: ICL adjustment (percent)
+                        60           //* 46: Temperature to disarm mitigation (degree C)
+                        })
+                        Store(VNOM, Index(CFG0, 1))
+                        Store(VLOW, Index(CFG0, 2))
+                        Store(EMPT, Index(CFG0, 3))
+                        Store(DCMA, Index(CFG0, 4))
+                        Store(BOCP, Index(CFG0, 21))
+                        Store(IFGD, Index(CFG0, 25))
+                        Store(VFGD, Index(CFG0, 26))
+                        Return (CFG0)
+                }
+
+                //ACPI methods for Platform File
+                Method (BPTM) {
+                        Name (CFG0,
+                        Package(){
+                        15000,          // Emergency Timer
+                        0,              // Emergency Tolerable Delay
+                        })
+                        Return (CFG0)
+                }
+
+                //*****************************************************
+                //  Battery Charge Table 1 (BCT1)
+                //  Notes: used in Method(BJTA) & Method (BAT1)
+                //*****************************************************
+                Name (BCT1, Package(){
+                        4350,           //* 0: VDD1: (mV), Float Voltage (FV)
+                        2100,           //* 1: FCC1: (mA), Full Charge Current (FCC)
+                        0,              //* 2: HCLI: (C) hard cold limit - at which temperature charging will be disabled
+                        10,             //* 3: SCLI: (C) soft cold limit - at which temperature charge current/float voltage will be reduced to JEITA compensated value
+                        45,             //* 4: SHLI: (C) soft hot limit - at which temperature float voltage/charge current will be reduced to JEITA compensated value
+                        55,             //* 5: HHLI: (C) hard hot limit - at which temperature charging will be disabled
+                        105,            //* 6: FVC1: (mV) Float Voltage compensation (amount of FV reduction) when in battery hot-soft limit
+                        0,              //* 7: (mV) Float Voltage compensation (amount of FV reduction) when in battery cold-soft limit
+                                        //* notes: put 0 value to disable
+                                        //* These values (10 vs 11) should be the same when HW JEITA is enabled
+                        0,              //* 8: (mA) Charge Current compensation (amount of CC reduction) when in battery hot-soft limit
+                        1000,           //* 9: CCC1: (mA) Charge Current compensation (amount of CC reduction) when in battery cold-soft limit
+                                        //* notes: put 0 value to disable
+                                        //* These values (12 vs 13) should be the same when HW JEITA is enabled
+                })
+
+                //ACPI methods for JEITA
+                Method (BJTA) {
+                        Name (CFG0,
+                        Package(){
+                        2,                      //* 0: Select JEITA Configuration: 0- No JEITA, 1- SW JEITA, 2- HW JEITA
+                        2,                      //* 1: Temperature Hysteresis (in deg C)
+                        Package(0xa){0,0,0,0,0,0,0,0,0,0}
+                                                //* 2: Structure for default charge table
+                        })
+                        Store(VDD1, Index(\_SB_.PMBT.BCT1, 0))
+                        Store(FCC1, Index(\_SB_.PMBT.BCT1, 1))
+                        Store(HCLI, Index(\_SB_.PMBT.BCT1, 2))
+                        Store(SCLI, Index(\_SB_.PMBT.BCT1, 3))
+                        Store(SHLI, Index(\_SB_.PMBT.BCT1, 4))
+                        Store(HHLI, Index(\_SB_.PMBT.BCT1, 5))
+                        Store(FVC1, Index(\_SB_.PMBT.BCT1, 6))
+                        Store(CCC1, Index(\_SB_.PMBT.BCT1, 9))
+
+            //Use BCT1 as the Default Charge Table
+            Store(\_SB_.PMBT.BCT1, Index(CFG0, 2))
+                        Return (CFG0)
+                }
+
+        //ACPI methods for Battery-1 (Ascent 860-82209-0000 3450mAh)
+        Method (BAT1)
+        {
+                        Name (CFG0,
+            Package(){
+                0,                      //* 0: Battery Category: 0-NORMAL, 1-SMART
+                0xFFFFFFEC,             //* 1: min operating battery temp (-20 deg C)
+                65,                     //* 2: max operating battery temp (+65 deg C)
+                Package(4){0,0,0,0},    //* 3: 128-bit battery info for future expansion
+                Package(0xa){0,0,0,0,0,0,0,0,0,0}
+                                        //* 4: Structure for charge table
+            })
+
+                        //assign Charge Table to BCT1
+                        //Notes: 1) If the default charge table and desire charge table are different,
+                        //          Create another table (ex: BCT2) with the same structure as BCT1 and modify BCT1 below with the new table name
+                        //       2) Method(BJTA) is parsed before this(BAT1) method in Battmngr module
+                        //          Method(BJTA) may be updating BCT1 parameters using configuration from cust_pmic_batt.asl (refer to BJTA method details)
+                        //          If BAT1 desires different value to be used (than what used in BJTA), pls change/update relevant parameter(s) here.
+            Store(\_SB_.PMBT.BCT1, Index(CFG0, 4))
+
+            Return (CFG0)
+        }
+
+                //ACPI methods for Battery Error Handling
+                Method (BEHC)
+                {
+                        //Actions for Battery Error Handling
+                        //  0x0 - Do Nothing
+                        //  0x1 - Reload Charge Table
+                        //  0x2 - Error Shutdown
+                        //  0x4 - Emergency Shutdown
+                        //  0x8 - Enter Test Mode
+                        Name (CFG0,
+                        Package(){
+                1,      // 1-Feature Enable, 0-Feature Disable
+                0x8,    //Action(s) for DEBUG state -> Enter Test Mode
+                0x1,    //Action(s) for NORMAL state -> Reload Charge Table
+                0x0,    //Action(s) for SMART_AUTHENTICATED state -> Do nothing
+                0x0,    //Action(s) for UNKNOWN state -> Do nothing
+                0x2,    //Action(s) for NOT_PRESENT state -> Error Shutdown
+                0x2,    //Action(s) for INVALID state -> Error Shutdown
+                0x4             //Action(s) for OUT_OP_RANGE state -> AFP for out of operational range
+                        })
+                        Return (CFG0)
+                }
+
+                //ACPI methods for Charge Table Management Configuration
+                Method (CTMC)
+                {
+                        Name (CFG0,
+                                Package(){
+                                        2000,         //* 0: min RID for DEBUG category: 2K
+                                        14000,        //* 1: max RID for DEBUG category: 14K
+                                        0xFFFFFFFF,   //* 2: RID2: min RID for NORMAL category: 15K
+                                        0xFFFFFFFF,   //* 3: RID3: max RID for NORMAL category: 140K
+                                        240000,       //* 4: min RID for SMART category: 240K
+                                        450000,       //* 5: max RID for SMART category: 450K
+                                        1,            //* 6: Number of charging table
+                        })
+                            Store(RID2, Index(CFG0, 2))
+                            Store(RID3, Index(CFG0, 3))
+                        Return (CFG0)
+                }
+
+        //ACPI methods for Parallel Charging
+        Method (BMPC) {
+            Name (CFG0,
+            Package(){
+                0,          //* 0: Feaature Enable. 1: Enabled, 0: Disable
+                1,          //* 1: Input Power Disctribution (HW) configuration: 0: MID-MID, 1: USBIN-USBIN
+                7000,       //* 2: (mW) Input Power Threshold to decide if parallel charging to be enabled or not
+                            //*    Note: Not applicable for MID-MID configuration
+                1000,       //* 3: (mA) Charge Current Threshold to decide if parallel charging to be enabled or not
+                50,         //* 4: (%)  Slave Charger Initial Power Distribution
+                60,         //* 5: (mV) Slave Charger Float Voltage Headroom
+                500,        //* 6: (mA) Slave Charger Charge Current Done Threshold
+                90,         //* 7: Slave Charger Minimum Efficiency
+                0,          //* 8: Slave Charger HW ID. 0: SMB1380/1
+                70,         //* 9: (%)Slave Charger Max Power Distribution: 70%
+                0,          //* 10: (%)Slave Charger Min Power Distribution: 0%
+                Package(0x4)//* 11: Thermal Balancing Configuration
+                {
+                    5,      //11.1: (C)Temperature Difference to trigger thermal balancing. 0 to disable the feature
+                    5,      //11.2: (%)Step to redistrubute the power
+                    120,    //11.3: (Sec)Minimum Wait Time for each redistribution attempt
+                    5,      //11.4: (C)Temperature Margin for Master Charger
+                }
+            })
+            Return (CFG0)
+        }
+    }
+
+    //
+    // PMIC Battery Miniclass Driver
+    //
+    Device (PMBM) {
+        Name (_HID, "QCOM0263")
+        Name (_SUB, "RENEGA0E")
+            Name (_DEP, Package(0x1)
+            {
+               \_SB_.PMBT
+            })
+
+            Method (_CRS, 0x0, NotSerialized) {
+               Name (RBUF, ResourceTemplate () {
+               })
+               Return (RBUF)
+            }
+
+            Method (_STA) {
+                Return (0xB)    // Device is installable, functional & should not be visible in OSPM/Device Manager
+            }
+        }
+
+//
+//FGBCL Driver
+//
+Device (BCL1) {
+    Name (_HID, "QCOM02D6")
+    Name (_SUB, "RENEGA0E")
+    Name (_DEP, Package(0x1)
+    {
+       \_SB_.PMIC
+    })
+
+        Method (_STA) {
+        Return (0xB)    // Device is installable, functional & should not be visible in OSPM/Device Manager
+    }
+
+    Method (_CRS, 0x0, NotSerialized) {
+       Name (RBUF, ResourceTemplate () {
+            GpioInt(Edge, ActiveBoth, Shared, PullUp, 0, "\\_SB.PM01",,,,RawDataBuffer(){0x08}) {64} // 0x1E8 - PM_INT__BCL_COMP__VCOMP_LOW0 - VCOMP_LOW0 IRQ
+            GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {65} // 0x1E9 - PM_INT__BCL_COMP__VCOMP_LOW1 - VCOMP_LOW1 IRQ
+            GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {66} // 0x1EA - PM_INT__BCL_COMP__VCOMP_LOW2 - VCOMP_LOW2 IRQ
+            GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {67} // 0x1EB - PM_INT__BCL_COMP__VCOMP_HI - VCOMP_HI IRQ
+            //GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {68} // 0x1EC - PM_INT__BCL_COMP__SYS_OK - SYS_OK IRQ
+            //GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {72} // 0x1F0 - PM_INT__BCL_PLM__VCOMP_LVL0_PLM - LVL0_PLM IRQ
+            //GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {74} // 0x1F2 -PM_INT__BCL_PLM__VCOMP_LVL2_PLM - LVL2_PLM IRQ
+            GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {75} // 0x1F3 - PM_INT__BCL_PLM__VCOMP_BA - BAN alarm IRQ
+            GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {336} // 0x210 - PM_INT__FG_BCL__IBT_HI - ibatt high IRQ
+            GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {337} // 0x211 - PM_INT__FG_BCL__IBT_THI - ibatt too high IRQ
+            GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {339} // 0x213 - PM_INT__FG_BCL__VBT_LO_CMP - vbatt low irq
+            GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {340} // 0x214 - PM_INT__FG_BCL__VBT_TLO_CMP - vbatt too low irq
+            GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {324} // 0x204 - PM_INT__FG_BATT_SOC__MSOC_LOW - MSOC_Low Interrupt
+            GpioInt(Edge, ActiveHigh, Shared, PullUp, 0, "\\_SB.PM01",,,,) {326} // 0x206 - PM_INT__FG_BATT_SOC__MSOC_HIGH - MSOC_HI Interrupt
+            GpioInt(Edge, ActiveBoth, Shared, PullUp, 0, "\\_SB.PM01",,,,RawDataBuffer(){0x08}) {344} // 0x218 - PM_INT__FG_LMH__LMH_LVL0 - LMH_LVL0 IRQ
+            GpioInt(Edge, ActiveBoth, Shared, PullUp, 0, "\\_SB.PM01",,,,RawDataBuffer(){0x08}) {345} // 0x219 - PM_INT__FG_LMH__LMH_LVL1 - LMH_LVL1 IRQ
+            GpioInt(Edge, ActiveBoth, Shared, PullUp, 0, "\\_SB.PM01",,,,RawDataBuffer(){0x08}) {346} // 0x21A - PM_INT__FG_LMH__LMH_LVL2 - LMH_LVL2 IRQ
+
+       })
+       Return (RBUF)
+    }
+         //ACPI methods for FGBCL device
+                Method (BCLS) {
+                        Name (CFG0,
+                        Package(){
+                        3,           //* FGBCL ACPI revision
+                        7,           //* 0: BCL disabled, 1: vph_pwr bcl enabled, 2: fg vbatt enabled, 4: fg ibatt enabled
+                        5000,        //* battery ocp current
+                        80,          //* ibatt high threshold is set to 80 for 80% of OCP
+                        90,          //* ibatt too high is set to 90 for 90% of OCP
+                        2800,        //* vbatt low is set to 2800 mV
+                        2600,        //* vbatt too low is set to 2600 mV
+                        3200,        //* vcomp_low0 threshold is 3200 mv
+                        2750,        //* vcomp_low1 threshold is 2750 mv
+                        2500,        //* vcomp_low2 threshold is 2500 mV
+                        10,          //* poll timer for battery soc polling.
+                        1,           //* 1- enable battery percent notification. 0-disable battery percent notification
+                        2000,        //* debug board Min battery ID in Ohm
+                        14000        //* debug board Max battery ID in Ohm
+                        })
+                        Return (CFG0)
+                }
+                //ACPI methods for Interrupt Name
+                Method (BCLQ) {
+                        Name (CFG0,
+                        Package(){
+                                "VCOMP_LOW0",     // vcomp_low0 IRQ
+                                "VCOMP_LOW1",     // vcomp_low1 IRQ
+                                "VCOMP_LOW2",     // vcomp_low2 IRQ
+                                "VCOMP_HI",       // vcomp_hi IRQ
+                                //"SYS_OK",       // sys_ok irq
+                                //"LVL0_PLM",     // LVL0_PLM IRQ
+                                //"LVL1_PLM"      // LVL1_PLM IRQ
+                                //"LVL2_PLM",     // LVL2_PLM IRQ
+                                "BAN_ALARM",      // BAN_ALARM IRQ
+                                "IBATT_HI",       // IBATT HIGH IRQ
+                                "IBATT_THI",      // IBATT TOO HIGH IRQ
+                                "VBATT_LOW",      // VBATT_LOW IRQ
+                                "VBATT_TLOW",     // VBATT TOO LOW IRQ
+                                "MSOC_LOW",       // monotonic soc low IRQ
+                                "MSOC_HI",        // monotonic soc high IRQ
+                                "LMH_LVL0",       // LMH_LVL0 IRQ
+                                "LMH_LVL1",       // LMH_LVL1 IRQ
+                                "LMH_LVL2",       // LMH_LVL2 IRQ
+                        })
+                        Return (CFG0)
+                }
+}
+
+//
+//PMIC Type-C Controler Driver (PMICTCC) Driver
+//
+Device(PTCC)
+{
+    Name (_HID, "QCOM02E6")
+    Name (_SUB, "RENEGA0E")
+    Name (_DEP, Package(0x1) {\_SB_.PMIC})
+    Method (_CRS, 0x0, NotSerialized) {
+      Name (RBUF, ResourceTemplate () {
+        GpioInt(Edge, ActiveHigh, SharedAndWake, PullNone, 0, "\\_SB.PM01",,,,) {239} // 0x9F - PM_INT__SCHG_USB__TYPE_C_OR_RID_DETECTION_CHANGE - CC State Changed IRQ
+        GpioInt(Edge, ActiveHigh, SharedAndWake, PullNone, 0, "\\_SB.PM01",,,,) {270} // 0xBE - PM_INT__USB_PD__MESSAGE_RX_DISCARDED - Message RX Discarded IRQ
+        GpioInt(Edge, ActiveHigh, SharedAndWake, PullNone, 0, "\\_SB.PM01",,,,) {269} // 0xBD - PM_INT__USB_PD__MESSAGE_TX_DISCARDED - Message TX Discarded IRQ
+        GpioInt(Edge, ActiveHigh, SharedAndWake, PullNone, 0, "\\_SB.PM01",,,,) {268} // 0xBC - PM_INT__USB_PD__MESSAGE_TX_FAILED - Message TX Failed IRQ
+        GpioInt(Edge, ActiveHigh, SharedAndWake, PullNone, 0, "\\_SB.PM01",,,,) {267} // 0xBB - PM_INT__USB_PD__MESSAGE_RECEIVED - Message Received IRQ
+        GpioInt(Edge, ActiveHigh, SharedAndWake, PullNone, 0, "\\_SB.PM01",,,,) {266} // 0xBA - PM_INT__USB_PD__MESSAGE_SENT - Message Sent IRQ
+        GpioInt(Edge, ActiveHigh, SharedAndWake, PullNone, 0, "\\_SB.PM01",,,,) {265} // 0xB9 - PM_INT__USB_PD__SIGNAL_RECEIVED - Singal Received IRQ
+        GpioInt(Edge, ActiveHigh, SharedAndWake, PullNone, 0, "\\_SB.PM01",,,,) {264} // 0xB8 - PM_INT__USB_PD__SIGNAL_SENT - Signal Sent IRQ
+        GpioInt(Edge, ActiveHigh, Exclusive, PullUp, 0, "\\_SB.PM01",,,,) {217} // 0x89 - PM_INT__SCHG_OTG__OTG_OVERCURRENT - OTG_OC_IRQ
+        GpioInt(Edge, ActiveBoth, Exclusive, PullUp, 0, "\\_SB.PM01",,,,) {263} // 0xB7 - PM_INT__SCHG_MISC__SWITCHER_POWER_OK - SWITCHER_POWER_OK (CHG_MISC)
+        GpioInt(Edge, ActiveHigh, Exclusive, PullUp, 0, "\\_SB.PM01",,,,) {235} // 0x9B - PM_INT__SCHG_USB__USBIN_OV - USBIN_OV (CHG_USB)
+        // GpioIo (Exclusive, PullUp, 0, 0, , "\\_SB.PM01", , , , ) {493} // 0x668 - PM_INT__PM2_GPIO14__GPIO_IN_STS - GPIO14B � For Type-C Debug Accessory Mode
+      })
+      Return (RBUF)
+    }
+}
diff --git a/perseus/thz.asl b/perseus/thz.asl
new file mode 100644 (file)
index 0000000..a3a3a39
--- /dev/null
@@ -0,0 +1,557 @@
+//
+// The Driver for Dynamically Changing Thresholds
+// of Thermal Zones
+//
+
+Method(THTZ, 0x4, NotSerialized)
+{
+
+ // Switch based on thermal zone number 
+ Switch(toInteger(Arg0)) 
+ {
+    Case(1) 
+       {
+               Switch(toInteger(Arg3))
+               {
+                       Case(0) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ1.TPSV)
+                                       Notify(\_SB.TZ1, 0x81)
+                               }
+                               Return(\_SB.TZ1._PSV)
+                       }                               
+                       
+                       Case(2) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ1.TTSP)
+                                       Notify(\_SB.TZ1, 0x81)
+                               }
+                               Return(\_SB.TZ1._TSP)
+                       }
+                       
+                       Case(3) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ1.TTC1)
+                                       Notify(\_SB.TZ1, 0x81)
+                               }
+                               Return(\_SB.TZ1._TC1)
+                       }
+                       
+                       Case(4) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ1.TTC2)
+                                       Notify(\_SB.TZ1, 0x81)
+                               }
+                               Return(\_SB.TZ1._TC2)
+                       }
+                       
+                       Default 
+                       {
+                   Return(0xFFFF)
+            }
+               }
+       }
+
+    Case(3) 
+       {
+               Switch(toInteger(Arg3))
+               {
+                       Case(0) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ3.TPSV)
+                                       Notify(\_SB.TZ3, 0x81)
+                               }
+                               Return(\_SB.TZ3._PSV)
+                       }                               
+                       
+                       Case(2) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ3.TTSP)
+                                       Notify(\_SB.TZ3, 0x81)
+                               }
+                               Return(\_SB.TZ3._TSP)
+                       }
+                       
+                       Case(3) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ3.TTC1)
+                                       Notify(\_SB.TZ3, 0x81)
+                               }
+                               Return(\_SB.TZ3._TC1)
+                       }
+                       
+                       Case(4) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ3.TTC2)
+                                       Notify(\_SB.TZ3, 0x81)
+                               }
+                               Return(\_SB.TZ3._TC2)
+                       }
+                       
+                       Default 
+                       {
+                   Return(0xFFFF)
+            }
+               }
+    }
+
+    Case(20) 
+       {
+               Switch(toInteger(Arg3))
+               {
+                       Case(0) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ20.TPSV)
+                                       Notify(\_SB.TZ20, 0x81)
+                               }
+                               Return(\_SB.TZ20._PSV)
+                       }                               
+                       
+                       Case(2) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ20.TTSP)
+                                       Notify(\_SB.TZ20, 0x81)
+                               }
+                               Return(\_SB.TZ20._TSP)
+                       }
+                       
+                       Case(3) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ20.TTC1)
+                                       Notify(\_SB.TZ20, 0x81)
+                               }
+                               Return(\_SB.TZ20._TC1)
+                       }
+                       
+                       Case(4) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ20.TTC2)
+                                       Notify(\_SB.TZ20, 0x81)
+                               }
+                               Return(\_SB.TZ20._TC2)
+                       }
+                       
+                       Default 
+                       {
+                   Return(0xFFFF)
+            }
+               }
+    }
+
+    Case(21) 
+       {
+               Switch(toInteger(Arg3))
+               {
+                       Case(0) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ21.TPSV)
+                                       Notify(\_SB.TZ21, 0x81)
+                               }
+                               Return(\_SB.TZ21._PSV)
+                       }                               
+                       
+                       Case(2) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ21.TTSP)
+                                       Notify(\_SB.TZ21, 0x81)
+                               }
+                               Return(\_SB.TZ21._TSP)
+                       }
+                       
+                       Case(3) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ21.TTC1)
+                                       Notify(\_SB.TZ21, 0x81)
+                               }
+                               Return(\_SB.TZ21._TC1)
+                       }
+                       
+                       Case(4) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ21.TTC2)
+                                       Notify(\_SB.TZ21, 0x81)
+                               }
+                               Return(\_SB.TZ21._TC2)
+                       }
+                       
+                       Default 
+                       {
+                   Return(0xFFFF)
+            }
+               }
+    }
+
+    Case(33) {
+               Switch(toInteger(Arg3))
+               {
+                       Case(0) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ33.TPSV)
+                                       Notify(\_SB.TZ33, 0x81)
+                               }
+                               Return(\_SB.TZ33._PSV)
+                       }                               
+                       
+                       Case(2) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ33.TTSP)
+                                       Notify(\_SB.TZ33, 0x81)
+                               }
+                               Return(\_SB.TZ33._TSP)
+                       }
+                       
+                       Case(3) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ33.TTC1)
+                                       Notify(\_SB.TZ33, 0x81)
+                               }
+                               Return(\_SB.TZ33._TC1)
+                       }
+                       
+                       Case(4) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ33.TTC2)
+                                       Notify(\_SB.TZ33, 0x81)
+                               }
+                               Return(\_SB.TZ33._TC2)
+                       }
+                       
+                       Default 
+                       {
+                   Return(0xFFFF)
+            }
+               }
+    }      
+
+    Case(36) {
+               Switch(toInteger(Arg3))
+               {
+                       Case(0) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ36.TPSV)
+                                       Notify(\_SB.TZ36, 0x81)
+                               }
+                               Return(\_SB.TZ36._PSV)
+                       }                               
+                       
+                       Case(2) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ36.TTSP)
+                                       Notify(\_SB.TZ36, 0x81)
+                               }
+                               Return(\_SB.TZ36._TSP)
+                       }
+                       
+                       Case(3) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ36.TTC1)
+                                       Notify(\_SB.TZ36, 0x81)
+                               }
+                               Return(\_SB.TZ36._TC1)
+                       }
+                       
+                       Case(4) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ36.TTC2)
+                                       Notify(\_SB.TZ36, 0x81)
+                               }
+                               Return(\_SB.TZ36._TC2)
+                       }
+                       
+                       Default 
+                       {
+                   Return(0xFFFF)
+            }
+               }
+    }
+
+    Case(37) {
+               Switch(toInteger(Arg3))
+               {
+                       Case(0) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ37.TPSV)
+                                       Notify(\_SB.TZ37, 0x81)
+                               }
+                               Return(\_SB.TZ37._PSV)
+                       }
+                       
+                       Case(1) 
+                       {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ37.TCRT)
+                                       Notify(\_SB.TZ37, 0x81)
+                               }
+                               Return(\_SB.TZ37._CRT)
+                       }
+                       
+                       Case(2) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ37.TTSP)
+                                       Notify(\_SB.TZ37, 0x81)
+                               }
+                               Return(\_SB.TZ37._TSP)
+                       }
+                       
+                       Case(3) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ37.TTC1)
+                                       Notify(\_SB.TZ37, 0x81)
+                               }
+                               Return(\_SB.TZ37._TC1)
+                       }
+                       
+                       Case(4) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ37.TTC2)
+                                       Notify(\_SB.TZ37, 0x81)
+                               }
+                               Return(\_SB.TZ37._TC2)
+                       }
+                       
+                       Default 
+                       {
+                   Return(0xFFFF)
+            }
+               }
+    }
+       
+       Case(38) {
+               Switch(toInteger(Arg3))
+               {
+                       Case(0) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ38.TPSV)
+                                       Notify(\_SB.TZ38, 0x81)
+                               }
+                               Return(\_SB.TZ38._PSV)
+                       }
+                       
+                       Default 
+                       {
+                   Return(0xFFFF)
+            }
+               }
+    }
+
+    Case(40) {
+               Switch(toInteger(Arg3))
+               {
+                       Case(0) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ40.TPSV)
+                                       Notify(\_SB.TZ40, 0x81)
+                               }
+                               Return(\_SB.TZ40._PSV)
+                       }                               
+                       
+                       Case(2) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ40.TTSP)
+                                       Notify(\_SB.TZ40, 0x81)
+                               }
+                               Return(\_SB.TZ40._TSP)
+                       }
+                       
+                       Case(3) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ40.TTC1)
+                                       Notify(\_SB.TZ40, 0x81)
+                               }
+                               Return(\_SB.TZ40._TC1)
+                       }
+                       
+                       Case(4) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ40.TTC2)
+                                       Notify(\_SB.TZ40, 0x81)
+                               }
+                               Return(\_SB.TZ40._TC2)
+                       }
+                       
+                       Default 
+                       {
+                   Return(0xFFFF)
+            }
+               }
+    }
+       
+       Case(44) {
+               Switch(toInteger(Arg3))
+               {
+                       Case(0) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ44.TPSV)
+                                       Notify(\_SB.TZ44, 0x81)
+                               }
+                               Return(\_SB.TZ44._PSV)
+                       }                               
+                       
+                       Case(2) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ44.TTSP)
+                                       Notify(\_SB.TZ44, 0x81)
+                               }
+                               Return(\_SB.TZ44._TSP)
+                       }
+                       
+                       Case(3) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ44.TTC1)
+                                       Notify(\_SB.TZ44, 0x81)
+                               }
+                               Return(\_SB.TZ44._TC1)
+                       }
+                       
+                       Case(4) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ44.TTC2)
+                                       Notify(\_SB.TZ44, 0x81)
+                               }
+                               Return(\_SB.TZ44._TC2)
+                       }
+                       
+                       Default 
+                       {
+                   Return(0xFFFF)
+            }
+               }
+    }
+       
+       Case(98) 
+       {
+               Switch(toInteger(Arg3))
+               {
+                       Case(0) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ98.TPSV)
+                                       Notify(\_SB.TZ98, 0x81)
+                               }
+                               Return(\_SB.TZ98._PSV)
+                       }
+                       
+                       Case(2) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ98.TTSP)
+                                       Notify(\_SB.TZ98, 0x81)
+                               }
+                               Return(\_SB.TZ98._TSP)
+                       }
+                       
+                       Case(3) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ98.TTC1)
+                                       Notify(\_SB.TZ98, 0x81)
+                               }
+                               Return(\_SB.TZ98._TC1)
+                       }
+                       
+                       Case(4) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ98.TTC2)
+                                       Notify(\_SB.TZ98, 0x81)
+                               }
+                               Return(\_SB.TZ98._TC2)
+                       }
+                       
+                       Default 
+                       {
+                   Return(0xFFFF)
+            }
+               }
+    }
+
+    Case(99) 
+       {
+               Switch(toInteger(Arg3))
+               {                               
+            Case(1) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ99.TCRT)
+                                       Notify(\_SB.TZ99, 0x81)
+                               }
+                               Return(\_SB.TZ99._CRT)
+                       }                                                               
+                       
+                       Case(2) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ99.TTSP)
+                                       Notify(\_SB.TZ99, 0x81)
+                               }
+                               Return(\_SB.TZ99._TSP)
+                       }
+                       
+                       Case(3) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ99.TTC1)
+                                       Notify(\_SB.TZ99, 0x81)
+                               }
+                               Return(\_SB.TZ99._TC1)
+                       }
+                       
+                       Case(4) {
+                               If(Arg2) 
+                               {
+                                       Store(Arg1, \_SB.TZ99.TTC2)
+                                       Notify(\_SB.TZ99, 0x81)
+                               }
+                               Return(\_SB.TZ99._TC2)
+                       }
+                       
+                       Default 
+                       {
+                   Return(0xFFFF)
+            }
+               }
+    }
+
+    Default {
+           Return(0xFFFF)
+    }
+       }
+}