From 1051d5a50db487607082335836ce81d629b6e561 Mon Sep 17 00:00:00 2001 From: Marijan Limov Date: Sat, 20 Feb 2021 16:25:08 +0100 Subject: [PATCH] Add USB support for some devices, reform folder structure and make all devices use same DXEs Also some other minor changes to build.sh --- .gitignore | 3 +- build.sh | 4 +- device_specific/generic.dtb | 1 + sdm845Pkg/AcpiTables/845/DSDT.aml | Bin 0 -> 267604 bytes sdm845Pkg/AcpiTables/845/DSDT.dsl | 74642 ++++++++++++++++ sdm845Pkg/Binary/845/AdcDxe/AdcDxe.depex | 1 + sdm845Pkg/Binary/845/AdcDxe/AdcDxe.efi | Bin 0 -> 40960 bytes .../Binary/845/ButtonsDxe/ButtonsDxe.depex | Bin 0 -> 72 bytes .../Binary/845/ButtonsDxe/ButtonsDxe.efi | Bin 0 -> 45056 bytes sdm845Pkg/Binary/845/CPRDxe/CPRDxe.depex | 1 + sdm845Pkg/Binary/845/CPRDxe/CPRDxe.efi | Bin 0 -> 57344 bytes sdm845Pkg/Binary/845/ChipInfo/ChipInfo.depex | 1 + sdm845Pkg/Binary/845/ChipInfo/ChipInfo.efi | Bin 0 -> 40960 bytes sdm845Pkg/Binary/845/ClockDxe/ClockDxe.depex | 1 + sdm845Pkg/Binary/845/ClockDxe/ClockDxe.efi | Bin 0 -> 266240 bytes sdm845Pkg/Binary/845/CmdDbDxe/CmdDbDxe.depex | 1 + sdm845Pkg/Binary/845/CmdDbDxe/CmdDbDxe.efi | Bin 0 -> 32768 bytes sdm845Pkg/Binary/845/DALSys/DALSys.depex | 1 + sdm845Pkg/Binary/845/DALSys/DALSys.efi | Bin 0 -> 294912 bytes sdm845Pkg/Binary/845/DALTLMM/.depex | 1 + sdm845Pkg/Binary/845/DALTLMM/DALTLMM.depex | 1 + sdm845Pkg/Binary/845/DALTLMM/DALTLMM.efi | Bin 0 -> 45056 bytes .../EmuVariableRuntimeDxe.depex | 1 + .../EmuVariableRuntimeDxe.efi | Bin 0 -> 40960 bytes sdm845Pkg/Binary/845/EnvDxe/EnvDxe.depex | 1 + sdm845Pkg/Binary/845/EnvDxe/EnvDxe.efi | Bin 0 -> 69632 bytes sdm845Pkg/Binary/845/GlinkDxe/GlinkDxe.depex | 1 + sdm845Pkg/Binary/845/HALIOMMU/HALIOMMU.depex | Bin 0 -> 234 bytes sdm845Pkg/Binary/845/HALIOMMU/HALIOMMU.efi | Bin 0 -> 45056 bytes .../845/HWIODxeDriver/HWIODxeDriver.depex | 1 + .../845/HWIODxeDriver/HWIODxeDriver.efi | Bin 0 -> 32768 bytes sdm845Pkg/Binary/845/I2C/I2C.depex | Bin 0 -> 72 bytes sdm845Pkg/Binary/845/I2C/I2C.efi | Bin 0 -> 36864 bytes sdm845Pkg/Binary/845/NpaDxe/NpaDxe.depex | 1 + sdm845Pkg/Binary/845/NpaDxe/NpaDxe.efi | Bin 0 -> 73728 bytes sdm845Pkg/Binary/845/PdcDxe/PdcDxe.depex | 1 + sdm845Pkg/Binary/845/PdcDxe/PdcDxe.efi | Bin 0 -> 32768 bytes .../PlatformInfoDxeDriver.depex | 1 + .../PlatformInfoDxeDriver.efi | Bin 0 -> 28672 bytes sdm845Pkg/Binary/845/PmicDxe/PmicDxe.depex | 1 + sdm845Pkg/Binary/845/PmicDxe/PmicDxe.efi | Bin 0 -> 200704 bytes .../QcomChargerDxeLA/QcomChargerDxeLA.depex | 1 + .../845/QcomChargerDxeLA/QcomChargerDxeLA.efi | Bin 0 -> 159744 bytes sdm845Pkg/Binary/845/QdssDxe/QdssDxe.depex | 1 + .../845/RealTimeClock/RealTimeClock.depex | 1 + .../845/RealTimeClock/RealTimeClock.efi | Bin 0 -> 32768 bytes sdm845Pkg/Binary/845/RpmhDxe/RpmhDxe.depex | 1 + sdm845Pkg/Binary/845/RpmhDxe/RpmhDxe.efi | Bin 0 -> 61440 bytes sdm845Pkg/Binary/845/SPI/SPI.depex | Bin 0 -> 72 bytes sdm845Pkg/Binary/845/SPMI/SPMI.depex | 1 + sdm845Pkg/Binary/845/SPMI/SPMI.efi | Bin 0 -> 40960 bytes sdm845Pkg/Binary/845/SdccDxe/SdccDxe.depex | Bin 0 -> 36 bytes sdm845Pkg/Binary/845/SdccDxe/SdccDxe.efi | Bin 0 -> 118784 bytes .../Binary/845/SerialDxe/SerialDxe.depex | 1 + sdm845Pkg/Binary/845/SerialDxe/SerialDxe.efi | Bin 0 -> 20480 bytes sdm845Pkg/Binary/845/SerialDxe/SerialDxeL.efi | Bin 0 -> 24576 bytes sdm845Pkg/Binary/845/SmemDxe/SmemDxe.depex | 1 + sdm845Pkg/Binary/845/SmemDxe/SmemDxe.efi | Bin 0 -> 36864 bytes sdm845Pkg/Binary/845/UFSDxe/UFSDxe.depex | 1 + sdm845Pkg/Binary/845/UFSDxe/UFSDxe.efi | Bin 0 -> 114688 bytes sdm845Pkg/Binary/845/ULogDxe/ULogDxe.depex | 1 + sdm845Pkg/Binary/845/ULogDxe/ULogDxe.efi | Bin 0 -> 73728 bytes .../845/UsbConfigDxe/UsbConfigDxe.depex | 1 + .../Binary/845/UsbConfigDxe/UsbConfigDxe.efi | Bin 0 -> 90112 bytes .../845/UsbDeviceDxe/UsbDeviceDxe.depex | 1 + .../Binary/845/UsbDeviceDxe/UsbDeviceDxe.efi | Bin 0 -> 45056 bytes .../Binary/845/UsbInitDxe/UsbInitDxe.depex | 1 + .../Binary/845/UsbInitDxe/UsbInitDxe.efi | Bin 0 -> 28672 bytes .../Binary/845/UsbMsdDxe/UsbMsdDxe.depex | 1 + sdm845Pkg/Binary/845/UsbMsdDxe/UsbMsdDxe.efi | Bin 0 -> 49152 bytes .../845/UsbPwrCtrlDxe/UsbPwrCtrlDxe.depex | 1 + .../845/UsbPwrCtrlDxe/UsbPwrCtrlDxe.efi | Bin 0 -> 45056 bytes .../845/UsbfnDwc3Dxe/UsbfnDwc3Dxe.depex | Bin 0 -> 288 bytes .../Binary/845/UsbfnDwc3Dxe/UsbfnDwc3Dxe.efi | Bin 0 -> 102400 bytes sdm845Pkg/Devices/845.fdf | 612 + sdm845Pkg/{ => Devices}/beryllium.dsc | 52 +- sdm845Pkg/Devices/beryllium.fdf | 612 + sdm845Pkg/{ => Devices}/dipper.dsc | 38 +- sdm845Pkg/{ => Devices}/dipper.fdf | 686 +- sdm845Pkg/{ => Devices}/enchilada.dsc | 38 +- sdm845Pkg/{ => Devices}/enchilada.fdf | 686 +- sdm845Pkg/{ => Devices}/fajita.dsc | 38 +- sdm845Pkg/{ => Devices}/fajita.fdf | 686 +- sdm845Pkg/Devices/generic.dsc | 19 + sdm845Pkg/{ => Devices}/perseus.dsc | 2 +- sdm845Pkg/{ => Devices}/perseus.fdf | 4 +- sdm845Pkg/{ => Devices}/polaris.dsc | 38 +- sdm845Pkg/{ => Devices}/polaris.fdf | 4 +- .../{ => Drivers}/SimpleFbDxe/SimpleFbDxe.c | 0 .../{ => Drivers}/SimpleFbDxe/SimpleFbDxe.inf | 0 sdm845Pkg/{ => Drivers}/sdm845Dxe/sdm845Dxe.c | 0 sdm845Pkg/{ => Drivers}/sdm845Dxe/sdm845Dxe.h | 0 .../{ => Drivers}/sdm845Dxe/sdm845Dxe.inf | 0 sdm845Pkg/beryllium.fdf | 337 - sdm845Pkg/sdm845Pkg.dsc | 8 +- 95 files changed, 77063 insertions(+), 1477 deletions(-) create mode 100644 device_specific/generic.dtb create mode 100644 sdm845Pkg/AcpiTables/845/DSDT.aml create mode 100644 sdm845Pkg/AcpiTables/845/DSDT.dsl create mode 100644 sdm845Pkg/Binary/845/AdcDxe/AdcDxe.depex create mode 100644 sdm845Pkg/Binary/845/AdcDxe/AdcDxe.efi create mode 100644 sdm845Pkg/Binary/845/ButtonsDxe/ButtonsDxe.depex create mode 100644 sdm845Pkg/Binary/845/ButtonsDxe/ButtonsDxe.efi create mode 100644 sdm845Pkg/Binary/845/CPRDxe/CPRDxe.depex create mode 100644 sdm845Pkg/Binary/845/CPRDxe/CPRDxe.efi create mode 100644 sdm845Pkg/Binary/845/ChipInfo/ChipInfo.depex create mode 100644 sdm845Pkg/Binary/845/ChipInfo/ChipInfo.efi create mode 100644 sdm845Pkg/Binary/845/ClockDxe/ClockDxe.depex create mode 100644 sdm845Pkg/Binary/845/ClockDxe/ClockDxe.efi create mode 100644 sdm845Pkg/Binary/845/CmdDbDxe/CmdDbDxe.depex create mode 100644 sdm845Pkg/Binary/845/CmdDbDxe/CmdDbDxe.efi create mode 100644 sdm845Pkg/Binary/845/DALSys/DALSys.depex create mode 100644 sdm845Pkg/Binary/845/DALSys/DALSys.efi create mode 100644 sdm845Pkg/Binary/845/DALTLMM/.depex create mode 100644 sdm845Pkg/Binary/845/DALTLMM/DALTLMM.depex create mode 100644 sdm845Pkg/Binary/845/DALTLMM/DALTLMM.efi create mode 100644 sdm845Pkg/Binary/845/EmuVariableRuntimeDxe/EmuVariableRuntimeDxe.depex create mode 100644 sdm845Pkg/Binary/845/EmuVariableRuntimeDxe/EmuVariableRuntimeDxe.efi create mode 100644 sdm845Pkg/Binary/845/EnvDxe/EnvDxe.depex create mode 100644 sdm845Pkg/Binary/845/EnvDxe/EnvDxe.efi create mode 100644 sdm845Pkg/Binary/845/GlinkDxe/GlinkDxe.depex create mode 100644 sdm845Pkg/Binary/845/HALIOMMU/HALIOMMU.depex create mode 100644 sdm845Pkg/Binary/845/HALIOMMU/HALIOMMU.efi create mode 100644 sdm845Pkg/Binary/845/HWIODxeDriver/HWIODxeDriver.depex create mode 100644 sdm845Pkg/Binary/845/HWIODxeDriver/HWIODxeDriver.efi create mode 100644 sdm845Pkg/Binary/845/I2C/I2C.depex create mode 100644 sdm845Pkg/Binary/845/I2C/I2C.efi create mode 100644 sdm845Pkg/Binary/845/NpaDxe/NpaDxe.depex create mode 100644 sdm845Pkg/Binary/845/NpaDxe/NpaDxe.efi create mode 100644 sdm845Pkg/Binary/845/PdcDxe/PdcDxe.depex create mode 100644 sdm845Pkg/Binary/845/PdcDxe/PdcDxe.efi create mode 100644 sdm845Pkg/Binary/845/PlatformInfoDxeDriver/PlatformInfoDxeDriver.depex create mode 100644 sdm845Pkg/Binary/845/PlatformInfoDxeDriver/PlatformInfoDxeDriver.efi create mode 100644 sdm845Pkg/Binary/845/PmicDxe/PmicDxe.depex create mode 100644 sdm845Pkg/Binary/845/PmicDxe/PmicDxe.efi create mode 100644 sdm845Pkg/Binary/845/QcomChargerDxeLA/QcomChargerDxeLA.depex create mode 100644 sdm845Pkg/Binary/845/QcomChargerDxeLA/QcomChargerDxeLA.efi create mode 100644 sdm845Pkg/Binary/845/QdssDxe/QdssDxe.depex create mode 100644 sdm845Pkg/Binary/845/RealTimeClock/RealTimeClock.depex create mode 100644 sdm845Pkg/Binary/845/RealTimeClock/RealTimeClock.efi create mode 100644 sdm845Pkg/Binary/845/RpmhDxe/RpmhDxe.depex create mode 100644 sdm845Pkg/Binary/845/RpmhDxe/RpmhDxe.efi create mode 100644 sdm845Pkg/Binary/845/SPI/SPI.depex create mode 100644 sdm845Pkg/Binary/845/SPMI/SPMI.depex create mode 100644 sdm845Pkg/Binary/845/SPMI/SPMI.efi create mode 100644 sdm845Pkg/Binary/845/SdccDxe/SdccDxe.depex create mode 100644 sdm845Pkg/Binary/845/SdccDxe/SdccDxe.efi create mode 100644 sdm845Pkg/Binary/845/SerialDxe/SerialDxe.depex create mode 100644 sdm845Pkg/Binary/845/SerialDxe/SerialDxe.efi create mode 100644 sdm845Pkg/Binary/845/SerialDxe/SerialDxeL.efi create mode 100644 sdm845Pkg/Binary/845/SmemDxe/SmemDxe.depex create mode 100644 sdm845Pkg/Binary/845/SmemDxe/SmemDxe.efi create mode 100644 sdm845Pkg/Binary/845/UFSDxe/UFSDxe.depex create mode 100644 sdm845Pkg/Binary/845/UFSDxe/UFSDxe.efi create mode 100644 sdm845Pkg/Binary/845/ULogDxe/ULogDxe.depex create mode 100644 sdm845Pkg/Binary/845/ULogDxe/ULogDxe.efi create mode 100644 sdm845Pkg/Binary/845/UsbConfigDxe/UsbConfigDxe.depex create mode 100644 sdm845Pkg/Binary/845/UsbConfigDxe/UsbConfigDxe.efi create mode 100644 sdm845Pkg/Binary/845/UsbDeviceDxe/UsbDeviceDxe.depex create mode 100644 sdm845Pkg/Binary/845/UsbDeviceDxe/UsbDeviceDxe.efi create mode 100644 sdm845Pkg/Binary/845/UsbInitDxe/UsbInitDxe.depex create mode 100644 sdm845Pkg/Binary/845/UsbInitDxe/UsbInitDxe.efi create mode 100644 sdm845Pkg/Binary/845/UsbMsdDxe/UsbMsdDxe.depex create mode 100644 sdm845Pkg/Binary/845/UsbMsdDxe/UsbMsdDxe.efi create mode 100644 sdm845Pkg/Binary/845/UsbPwrCtrlDxe/UsbPwrCtrlDxe.depex create mode 100644 sdm845Pkg/Binary/845/UsbPwrCtrlDxe/UsbPwrCtrlDxe.efi create mode 100644 sdm845Pkg/Binary/845/UsbfnDwc3Dxe/UsbfnDwc3Dxe.depex create mode 100644 sdm845Pkg/Binary/845/UsbfnDwc3Dxe/UsbfnDwc3Dxe.efi create mode 100644 sdm845Pkg/Devices/845.fdf rename sdm845Pkg/{ => Devices}/beryllium.dsc (92%) create mode 100644 sdm845Pkg/Devices/beryllium.fdf rename sdm845Pkg/{ => Devices}/dipper.dsc (89%) rename sdm845Pkg/{ => Devices}/dipper.fdf (96%) rename sdm845Pkg/{ => Devices}/enchilada.dsc (89%) rename sdm845Pkg/{ => Devices}/enchilada.fdf (96%) rename sdm845Pkg/{ => Devices}/fajita.dsc (89%) rename sdm845Pkg/{ => Devices}/fajita.fdf (96%) create mode 100644 sdm845Pkg/Devices/generic.dsc rename sdm845Pkg/{ => Devices}/perseus.dsc (91%) rename sdm845Pkg/{ => Devices}/perseus.fdf (99%) rename sdm845Pkg/{ => Devices}/polaris.dsc (89%) rename sdm845Pkg/{ => Devices}/polaris.fdf (99%) rename sdm845Pkg/{ => Drivers}/SimpleFbDxe/SimpleFbDxe.c (100%) rename sdm845Pkg/{ => Drivers}/SimpleFbDxe/SimpleFbDxe.inf (100%) rename sdm845Pkg/{ => Drivers}/sdm845Dxe/sdm845Dxe.c (100%) rename sdm845Pkg/{ => Drivers}/sdm845Dxe/sdm845Dxe.h (100%) rename sdm845Pkg/{ => Drivers}/sdm845Dxe/sdm845Dxe.inf (100%) delete mode 100644 sdm845Pkg/beryllium.fdf diff --git a/.gitignore b/.gitignore index 6ca6ee1..e6be9f0 100644 --- a/.gitignore +++ b/.gitignore @@ -6,4 +6,5 @@ uefi-*.img.gz-dtb workspace *.dll ramdisk -sdm845Pkg/Drivers/LogoDxe/Logo.bmp \ No newline at end of file +sdm845Pkg/Drivers/LogoDxe/Logo.bmp +.vscode \ No newline at end of file diff --git a/build.sh b/build.sh index aa9f0fb..437a654 100755 --- a/build.sh +++ b/build.sh @@ -33,10 +33,12 @@ function _build(){ make -C "${_EDK2}/BaseTools" -j "$(nproc)"||exit "$?" # based on the instructions from edk2-platform rm -f "boot_${DEVICE}.img" uefi_img "uefi-${DEVICE}.img.gz" "uefi-${DEVICE}.img.gz-dtb" - build -s -n 0 -a AARCH64 -t GCC5 -p "sdm845Pkg/${DEVICE}.dsc"||return "$?" + build -s -n 0 -a AARCH64 -t GCC5 -p "sdm845Pkg/Devices/${DEVICE}.dsc"||return "$?" gzip -c < workspace/Build/sdm845Pkg/DEBUG_GCC5/FV/SDM845PKG_UEFI.fd > "uefi-${DEVICE}.img.gz"||return "$?" cat "uefi-${DEVICE}.img.gz" "device_specific/${DEVICE}.dtb" > "uefi-${DEVICE}.img.gz-dtb"||return "$?" abootimg --create "boot-${DEVICE}.img" -k "uefi-${DEVICE}.img.gz-dtb" -r ramdisk||return "$?" + mv "uefi-${DEVICE}.img.gz" "workspace/" + mv "uefi-${DEVICE}.img.gz-dtb" "workspace/" echo "Build done: boot-${DEVICE}.img" set +x } diff --git a/device_specific/generic.dtb b/device_specific/generic.dtb new file mode 100644 index 0000000..938179b --- /dev/null +++ b/device_specific/generic.dtb @@ -0,0 +1 @@ +Dummy \ No newline at end of file diff --git a/sdm845Pkg/AcpiTables/845/DSDT.aml b/sdm845Pkg/AcpiTables/845/DSDT.aml new file mode 100644 index 0000000000000000000000000000000000000000..1e28071b7a8b45ebd87502088a43aef1c35b3af5 GIT binary patch literal 267604 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
{)CV1;iz&EgnS3A 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 literal 0 HcmV?d00001 diff --git a/sdm845Pkg/AcpiTables/845/DSDT.dsl b/sdm845Pkg/AcpiTables/845/DSDT.dsl new file mode 100644 index 0000000..abcc73c --- /dev/null +++ b/sdm845Pkg/AcpiTables/845/DSDT.dsl @@ -0,0 +1,74642 @@ +/* + * Intel ACPI Component Architecture + * AML/ASL+ Disassembler version 20180105 (64-bit version) + * Copyright (c) 2000 - 2018 Intel Corporation + * + * Disassembling to symbolic ASL+ operators + * + * Disassembly of dsdt_850.aml, Sat Mar 9 21:03:12 2019 + * + * Original Table Header: + * Signature "DSDT" + * Length 0x000443A2 (279458) + * Revision 0x02 + * Checksum 0x0D + * OEM ID "QCOMM " + * OEM Table ID "SDM850 " + * OEM Revision 0x00000003 (3) + * Compiler ID "MSFT" + * Compiler Version 0x05000000 (83886080) + */ + +DefinitionBlock ("", "DSDT", 2, "QCOMM ", "SDM850 ", 0x00000003) +{ + External (_SB_.TZ98, UnknownObj) + External (_SB_.TZ98._PSV, IntObj) + External (_SB_.TZ98._TC1, IntObj) + External (_SB_.TZ98._TC2, IntObj) + External (_SB_.TZ98._TSP, IntObj) + External (_SB_.TZ98.TPSV, UnknownObj) + External (_SB_.TZ98.TTC1, UnknownObj) + External (_SB_.TZ98.TTC2, UnknownObj) + External (_SB_.TZ98.TTSP, UnknownObj) + External (BFCC, IntObj) + External (BOCP, IntObj) + External (CUST, IntObj) + External (DCMA, IntObj) + External (EMPT, IntObj) + External (IFGD, IntObj) + External (PCT1, UnknownObj) + External (PCT2, UnknownObj) + External (RID2, IntObj) + External (RID3, IntObj) + External (TRUU, UnknownObj) + External (VFGD, IntObj) + External (VLOW, IntObj) + External (VNOM, IntObj) + + Scope (\_SB) + { + Name (PSUB, "C153144D") + Name (SOID, 0xFFFFFFFF) // Holds the Chip Id + Name (SIDS, "899800000000000") // Holds the Chip ID translated to a string + Name (SIDV, 0xFFFFFFFF) // Holds the Chip Version as (major<<16)|(minor&0xffff) + Name (SVMJ, 0xFFFF) // Holds the major Chip Version + Name (SVMI, 0xFFFF) // Holds the minor Chip Version + Name (SDFE, 0xFFFF) // Holds the Chip Family enum + Name (SFES, "899800000000000") // Holds the Chip Family translated to a string + Name (SIDM, 0x0000000FFFFFFFFF) // Holds the Modem Support bit field + Name (SOSN, 0xAAAAAAAABBBBBBBB) + Name (RMTB, 0x99500000) + Name (RMTX, 0x00A00000) + Name (RFMB, 0x99F00000) + Name (RFMS, 0x00010000) + Name (RFAB, 0x99F10000) + Name (RFAS, 0x00010000) + Name (TCMA, 0x8B500000) + Name (TCML, 0x00A00000) + Name (SOSI, 0xDEADBEEFFFFFFFFF) + Name (MDID, 0xFFFFFFFF) + Device (UFS0) + { + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.PEP0 + }) + //Name (_HID, "NOPE1234") // _HID: Hardware ID + Name (_HID, "QCOM24A5") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_CID, "ACPIQCOM24A5") // _CID: Compatible ID + //Name (_CID, "ACPINOPE1234") // _CID: Compatible ID + Name (_UID, Zero) // _UID: Unique ID + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x01D84000, // Address Base + 0x00014000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x00000129, + } + }) + Return (RBUF) /* \_SB_.UFS0._CRS.RBUF */ + } + + Device (DEV0) + { + Method (_ADR, 0, NotSerialized) // _ADR: Address + { + Return (0x08) + } + + Method (_RMV, 0, NotSerialized) // _RMV: Removal Status + { + Return (Zero) + } + } + } + +#if 0 + Device (SDC2) + { + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.GIO0 + }) + Name (_HID, "QCOM2466") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_CID, "ACPIQCOM2466") // _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, + 0x08804000, // Address Base + 0x00001000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x000000EC, + } + GpioInt (Edge, ActiveBoth, SharedAndWake, PullUp, 0x7530, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x00C0 + } + GpioIo (Shared, PullUp, 0x0000, 0x0000, IoRestrictionNone, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x007E + } + }) + Return (RBUF) /* \_SB_.SDC2._CRS.RBUF */ + } + + Method (_DIS, 0, NotSerialized) // _DIS: Disable Device + { + } + + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + } +#endif + + Device (ABD) + { + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.PEP0 + }) + Name (_HID, "QCOM0242") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, Zero) // _UID: Unique ID + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0B) + } + + OperationRegion (ROP1, GenericSerialBus, Zero, 0x0100) + Name (AVBL, Zero) + Method (_REG, 2, NotSerialized) // _REG: Region Availability + { + If ((Arg0 == 0x09)) + { + AVBL = Arg1 + } + } + } + + Name (ESNL, 0x14) // Exsoc name limit 20 characters + Name (DBFL, 0x17) // buffer Length, should be ESNL+3 + Device (PMIC) + { + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.SPMI + }) + Name (_HID, "QCOM0266") // _HID: Hardware ID + Name (_CID, "PNP0CA3") // _CID: Compatible ID + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0B) + } + + Method (PMCF, 0, NotSerialized) + { + Name (CFG0, Package (0x04) + { + // PMIC Info + 0x03, // Number of PMICs, must match the number of info packages + Package (0x02) + { + Zero, + One + }, + + Package (0x02) + { + 0x02, + 0x03 + }, + + Package (0x02) + { + 0x04, + 0x05 + } + }) + Return (CFG0) /* \_SB_.PMIC.PMCF.CFG0 */ + } + } + + Device (PM01) + { + Name (_HID, "QCOM0269") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, One) // _UID: Unique ID + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.PMIC + }) + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0B) + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + // + // QGIC Interrupt Resource + // + // Register for SPMI interrupt 513 + // + Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, ) + { + 0x00000201, + } + }) + Return (RBUF) /* \_SB_.PM01._CRS.RBUF */ + } + + // _DSM method to mark PM01's ActiveBoth interrupts + 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_.PM01._DSM._T_0 */ + If ((_T_0 == ToUUID ("4f248f40-d5e2-499f-834c-27758ea1cd3f") /* GPIO Controller */)) + { + While (One) + { + Name (_T_1, 0x00) // _T_x: Emitted by ASL Compiler + _T_1 = ToInteger (Arg2) + If ((_T_1 == Zero)) + { + Return (Buffer (One) + { + 0x03 // . + }) + } + ElseIf ((_T_1 == One)) + { + Return (Package (0x02) + { + Zero, + One + }) + } + Else + { + } + + Break + } + } + Else + { + Return (Buffer (One) + { + 0x00 // . + }) + } + + Break + } + } + } + + // + // PMIC Apps Driver + // + Device (PMAP) + { + Name (_HID, "QCOM0268") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_DEP, Package (0x03) // _DEP: Dependencies + { + \_SB.PMIC, + \_SB.ABD, + \_SB.SCM0 + }) + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0B) + } + + //PMAP is dependent on ABD for operation region access + + // Get pseudo SPB controller port which is used to handle the ACPI operation region access + Method (GEPT, 0, NotSerialized) + { + Name (BUFF, Buffer (0x04){}) + CreateByteField (BUFF, Zero, STAT) + CreateWordField (BUFF, 0x02, DATA) + DATA = 0x02 + Return (DATA) /* \_SB_.PMAP.GEPT.DATA */ + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, Buffer (0x02) + { + 0x79, 0x00 // y. + }) + Return (RBUF) /* \_SB_.PMAP._CRS.RBUF */ + } + } + + Device (PRTC) + { + Name (_HID, "ACPI000E" /* Time and Alarm Device */) // _HID: Hardware ID + /*Name (_DEP, Package (0x01) // _DEP: Dependencies + { + \_SB.PMAP // PRTC is dependent on PMAP which implements the RTC Functions + })*/ + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0B) + } + + //Get the capabilities of the time and alarm device + Method (_GCP, 0, NotSerialized) // _GCP: Get Capabilities + { + Return (0x04) + } + + /*Field (\_SB.ABD.ROP1, BufferAcc, NoLock, Preserve) + { + Connection ( + I2cSerialBusV2 (0x0002, ControllerInitiated, 0x00000000, + AddressingMode7Bit, "\\_SB.ABD", + 0x00, ResourceConsumer, , Exclusive, + ) + ), + AccessAs (BufferAcc, AttribRawBytes (0x18)), + FLD0, 192 + }*/ + + Method (_GRT, 0, Serialized) // _GRT: Get Real Time + { + /*Name (BUFF, Buffer (0x1A){}) + CreateField (BUFF, 0x10, 0x80, TME1) + CreateField (BUFF, 0x90, 0x20, ACT1) + CreateField (BUFF, 0xB0, 0x20, ACW1) + BUFF = FLD0 /* \_SB_.PRTC.FLD0 * / + Return (TME1) /* \_SB_.PRTC._GRT.TME1 */ + + Local1 = Buffer(16){} + CreateWordField (Local1, Zero, TYEA) + CreateByteField (Local1, 0x02, TMNT) + CreateByteField (Local1, 0x03, TDAY) + CreateByteField (Local1, 0x04, THOU) + CreateByteField (Local1, 0x05, TMIN) + CreateByteField (Local1, 0x06, TSEC) + CreateByteField (Local1, 0x07, TISO) + CreateWordField (Local1, 0x08, TMIL) + CreateWordField (Local1, 0x0A, TTMZ) + CreateByteField (Local1, 0x0C, TDAS) + + TYEA = 2020 + TMNT = 9 + TDAY = 28 + THOU = 0 + TMIN = 0 + TSEC = 0 + TISO = 1 + TMIL = 0 + TTMZ = 2047 + TDAS = 0 + + return (Local1) + } + + Method (_SRT, 1, NotSerialized) // _SRT: Set Real Time + { + /*Name (BUFF, Buffer (0x32){}) + CreateByteField (BUFF, Zero, STAT) + CreateField (BUFF, 0x10, 0x80, TME1) + CreateField (BUFF, 0x90, 0x20, ACT1) + CreateField (BUFF, 0xB0, 0x20, ACW1) + ACT1 = Zero + TME1 = Arg0 + ACW1 = Zero + BUFF = FLD0 = BUFF /* \_SB_.PRTC._SRT.BUFF * / + If ((STAT != Zero)) + { + Return (One) + }*/ + + Return (Zero) + } + } + +#if 0 + Device (PM3P) + { + Name (_HID, "SAM0606") // _HID: Hardware ID + Name (_SUB, "C153144D") // _SUB: Subsystem ID + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, Buffer (0x02) + { + 0x79, 0x00 // y. + }) + Return (RBUF) /* \_SB_.PM3P._CRS.RBUF */ + } + + Method (PMCF, 0, NotSerialized) + { + Name (CFG0, Package (0x04) + { + Zero, + 0x02, + One, + 0x02 + }) + Return (CFG0) /* \_SB_.PM3P.PMCF.CFG0 */ + } + + Name (BSTP, Package (0x08) + { + Zero, + 0xFFFFFFFF, + 0xFFFFFFFF, + 0xFFFFFFFF, + Zero, + Zero, + 0xFFFFFFFF, + 0xFFFFFFFF + }) + Method (GBST, 0, NotSerialized) + { + If ((\_SB.EMEC.AVBL == One)) + { + BSTP [Zero] = \_SB.EMEC.CHST + BSTP [One] = \_SB.EMEC.CHGC + BSTP [0x02] = \_SB.EMEC.SOC + BSTP [0x03] = \_SB.EMEC.VOLT + BSTP [0x04] = \_SB.EMEC.CHTY + } + Else + { + ADBG ("EMECNotReady") + } + + Return (BSTP) /* \_SB_.PM3P.BSTP */ + } + } +#endif + + //****************************************** + //Configs for Battery Manager Device: PMBT + //****************************************** + //-------------------- + //PMBT: Method(BBAT) + //-------------------- + Name (BFCC, 0x4150) //* (mWh), Full Charge Capacity + Name (PCT1, 0x05) //* (% of FCC), Default Alert 1 + Name (PCT2, 0x09) //* (% of FCC), Default Alert 2 + //-------------------- + //PMBT: Method(BMNR) + //-------------------- + Name (CUST, "850_HAN") //* cust file identifier + //-------------------- + //PMBT: Method(BPLT) + //-------------------- + Name (VNOM, 0x0ED8) //* (mV), Nominal Battery Voltage + Name (VLOW, 0x0CE4) //* (mV), Low Battery Voltage + Name (EMPT, 0x0C80) //* (mV), VCutOff + Name (DCMA, 0x0384) //* (mA), DC Current + Name (BOCP, 0x1194) //* (mA), OCP current used in BCL + Name (BVLO, 0x0BB8) //* (mV), BCL low Vbatt + Name (BLOP, 0x14) //* (%), BCL Low batt percent notification + Name (BNOP, 0x16) //* (%), BCL normal batt percent notification + Name (IFGD, Zero) + Name (VFGD, Zero) + Name (VDD1, 0x10FE) + Name (FCC1, 0x0BEA) + Name (HCLI, 0x0A) + Name (SCLI, 0x14) + Name (SHLI, 0x2D) + Name (HHLI, 0x3A) + Name (FVC1, Zero) + Name (FVH1, 0xC8) + Name (CCC1, 0x0352) + //-------------------- + //PMBT: Method(CTMC) + //-------------------- + Name (RID2, 0x3A98) //* (Ohm), min RID for NORMAL category: 15K + Name (RID3, 0x000222E0) //* (Ohm), max RID for NORMAL category: 140K + +#if 0 + //PMIC EIC + // + Device (PEIC) + { + Name (_HID, "QCOM02D3") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + I2cSerialBusV2 (0x0055, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.I2C4", + 0x00, ResourceConsumer, , Exclusive, + ) + }) + Return (RBUF) /* \_SB_.PEIC._CRS.RBUF */ + } + + Method (PMCF, 0, NotSerialized) + { + Name (CFG0, Package (0x04) + { + // Charger Info + 0xFF, + Zero, + Zero, + 0x02 + }) + Return (CFG0) /* \_SB_.PEIC.PMCF.CFG0 */ + } + } +#endif + + Device (BCL1) + { + Name (_HID, "QCOM02D6") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.PMIC + }) + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (Zero) + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + 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 */ + } + + Method (BCLS, 0, NotSerialized) + { + Name (CFG0, Package (0x0B) + { + 0x02, + One, + 0x1388, + 0x50, + 0x5A, + 0x0CE4, + 0x0A28, + 0x0C80, + 0x0ABE, + 0x09C4, + 0x0A + }) + Return (CFG0) /* \_SB_.BCL1.BCLS.CFG0 */ + } + + Method (BCLQ, 0, NotSerialized) + { + Name (CFG0, Package (0x06) + { + "VCOMP_LOW0", + "VCOMP_LOW1", + "VCOMP_LOW2", + "VCOMP_HI", + "SYS_OK", + "BAN_ALARM" + }) + Return (CFG0) /* \_SB_.BCL1.BCLQ.CFG0 */ + } + } + + Device (PTCC) + { + Name (_HID, "QCOM02E6") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.PMIC//, + //\_SB.PMBT + }) + /*Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (Zero) + }*/ + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + 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 */ + } + } + +#if 0 + // + //PMIC Battery Manger Driver + // + Device (PMBT) + { + Name (_HID, "QCOM0264") // _HID: Hardware ID + Name (_DEP, Package (2) // _DEP: Dependencies + { + \_SB.PMIC, + \_SB.OP3P + }) + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + GpioInt (Edge, ActiveHigh, Exclusive, PullUp, 0x0000, + "\\_SB.PM01", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x00EB + } + }) + Return (RBUF) /* \_SB_.PMBT._CRS.RBUF */ + } + + //ACPI methods for Battery Manager Device + Method (BMNR, 0, NotSerialized) + { + Name (CFG0, Package (0x04) + { + 2, //* 0: Select Platform: 0- No HW, 1- SMChg+FGGge, 2- SMB3pChg+SMB3pGge, 3- LBChg+VMBMS + Zero, //* 1: Error State Handling: 0- Don’t Shutdown, 1- Shutdown + One, //* 2: Listen to BatteryClass: 0- No 1- Yes + Zero //* 3: Test Mode Charger Current: 0- No current drawn, 1- Current drawn + }) + Return (CFG0) /* \_SB_.PMBT.BMNR.CFG0 */ + } + + //ACPI methods for Timer + Method (BTIM, 0, NotSerialized) + { + Name (CFG0, Package (0x08) + { + 0x2710, // Charging Heartbeat Timer + 0x2710, // Charging Tolerable Delay + 0x000493E0, // Discharging Heartbeat Timer + 0x0001D4C0, // Discharging Tolerable Delay + Zero, // Poll Timer , 0=Timer not used. + Zero, // Poll Tolerable Delay + 0x01AC7780, //Charging Timeout (TDone) Timer + Zero //Charging Timeout(TDone) Tolerable Delay + }) + Name (CFG1, Package (0x08) + { + 0x7530, + 0x2710, + 0x000493E0, + 0x0001D4C0, + Zero, + Zero, + 0x01AC7780, + Zero + }) + Name (HWID, Zero) + Return (CFG0) /* \_SB_.PMBT.BTIM.CFG0 */ + } + + //ACPI methods for Battery Info + Method (BBAT, 0, NotSerialized) + { + Name (CFG0, Package (0x0D) + { + One, //* 0: Battery Technology + 0x4C494F4E, //* 1: Battery Chemistry: hex(LION) + 0x2CEC, //* 2: BFCC: (mWh), Design Capacity + 0x2CEC, //* 3: BFCC: (mWh), Full Charge Capacity + 0x023F, //* 4: PCT1: (% of FCC), Default Alert 1 + 0x040B, //* 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 + 0x13, //* 10: Battery Manufacture Date + 0x04, //* 11: Battery Manufacture Month + 0x07DE //* 12: Battery Manufacture Year + }) + Return (CFG0) /* \_SB_.PMBT.BBAT.CFG0 */ + } + + //ACPI methods for Proprietary chargers + Method (BPCH, 0, NotSerialized) + { + Name (CFG0, Package (0x02) + { + 0x05DC, // charger current = 1500mA + 0x05DC + }) + Return (CFG0) /* \_SB_.PMBT.BPCH.CFG0 */ + } + + //ACPI methods for coin cell charger + Method (BCCC, 0, NotSerialized) + { + Name (CFG0, Package (0x03) + { + One, //Enable coin cell charger; 1 = enable, 0 = disable + Zero, // RSET, 0=2K1, 1=1K7, 2=1K2, 3 = 0K8 + Zero // VSET, 0=2V5, 1=3V2, 2=3V1, 3=3V0 + }) + Return (CFG0) /* \_SB_.PMBT.BCCC.CFG0 */ + } + + //ACPI methods for Recharge/Maintenance Mode + Method (BRCH, 0, NotSerialized) + { + Name (CFG0, Package (0x02) + { + 0x64, // Delta V Recharge threshold = 100mV + Zero // Delta V Recharge Reduction below Normal= 0mV + }) + Return (CFG0) /* \_SB_.PMBT.BRCH.CFG0 */ + } + + Method (_BQI, 0, NotSerialized) + { + Name (CFG0, Package (0x01) + { + Zero + }) + Return (CFG0) /* \_SB_.PMBT._BQI.CFG0 */ + } + + //ACPI methods for Interrupt Name + Method (BIRQ, 0, NotSerialized) + { + Name (CFG0, Package () + { + "SmbStatIrq" + }) + Return (CFG0) /* \_SB_.PMBT.BIRQ.CFG0 */ + } + + //ACPI methods for Platform File + Method (BPLT, 0, NotSerialized) + { + Name (CFG0, Package (0x25) + { + 0x03FC, //* 0: ACPI Version + 0x0ED8, //* 1: VNOM: (mV), Nominal Battery Voltage + 0x0DAC, //* 2: VLOW: (mV), Low Battery Voltage + 0x0D48, //* 3: EMPT: (mV), VcutOff + 0x0384, //* 4: DCMA: (mA), DC Current + One, //* 5: ChargePath Priority: Select 0 for DC, 1 for USB + 0x32, //* 6: RSLOW for maxFlashCurrentPrediction + 0x32, //* 7: RPARA for maxFlashCurrentPrediction + 0x1388, //* 8: VINFLASH for maxFlashCurrentPrediction + 0x08, //* 9: FlashParam for maxFlashCurrentPrediction + One, //* 10: AFP Mode Supported + 0x50, //* 11: AFP Trigger Max Battery Temp (+80 deg C) + 0xFFFFFFEC, //* 12: AFP Trigger Min Battery Temp (-20 deg C) + 0x48, //* 13: Watchdog timer in secs + 0x64, //* 14: Charger iterm 100 mA for now + 0x1E, //* 15: SRAM logging timer + 0x05, //* 16: VBATT average Window Size + 0x06, //* 17: Emergency Shutdown Initial SOC + 0x01F4, //* 18: SoC convergent point + 0x7E, //* 19: LM_Threshold + 0x0190, //* 20: MH_Threshold + 0x1194, + 0x0BB8, + 0x012C, + 0x01F4, + 0x05DC, + 0x0F, + 0x11, + 0x02EE, + 0x08, + One, + 0x1004, + 0x32, + One, + Zero, + Zero, + One + }) + Name (CFG1, Package (0x25) + { + 0x03FC, + 0x0ED8, + 0x0DAC, + 0x0D48, + 0x0384, + One, + 0x32, + 0x32, + 0x1388, + 0x08, + One, + 0x50, + 0xFFFFFFEC, + 0x48, + 0x64, + 0x1E, + 0x05, + 0x06, + 0x01F4, + 0x7E, + 0x0190, + 0x1194, + 0x0BB8, + 0x012C, + 0x01F4, + 0x05DC, + 0x0F, + 0x11, + 0x02EE, + One, + One, + 0x1004, + 0x32, + Zero, + Zero, + Zero, + One + }) + Return (CFG0) /* \_SB_.PMBT.BPLT.CFG0 */ + } + + //ACPI methods for Platform File + Method (BPTM, 0, NotSerialized) + { + Name (CFG0, Package (0x02) + { + 0x3A98, + Zero + }) + Return (CFG0) /* \_SB_.PMBT.BPTM.CFG0 */ + } + + //ACPI methods for JEITA + Method (BJTA, 0, NotSerialized) + { + Name (CFG0, Package (0x11) + { + One, + 0x10FE, + 0x0834, + Zero, + 0x3C, + 0x02, + 0x04, + 0x02, + 0x10FE, + 0x041A, + 0x0A, + 0x1097, + 0x0834, + 0x2D, + 0x1064, + 0x0834, + 0x32 + }) + Return (CFG0) /* \_SB_.PMBT.BJTA.CFG0 */ + } + + //ACPI methods for Thermal + Method (BTHM, 0, NotSerialized) + { + Name (CFG0, Package (0x07) + { + 0x0BB8, // IUSBMax (mA),maximum USB input current for the HW platform + 0x03E8, // IWLCMax (mA), maximum DC input current for the HW platform + 0x46, // %,Thermal mitigation perc at which HVDCP voltage reduces from 9V to 5V + 0x50, // %,Thermal mitigation perc at which HVDCP voltage increases from 5V to 9V + 0x01F4, // Ibat_therm (mA), IBAt_THERM value to which it drops during thermal mitigation. + 0x31, // %, Thermal mitigation perc at which Ibat reduces from Ibat_Max to Ibat_therm + 0x36 // %, Thermal mitigation perc at which Ibat increases from Ibat_therm to Ibat_Max + }) + Return (CFG0) /* \_SB_.PMBT.BTHM.CFG0 */ + } + + //ACPI methods for Battery Error Handling + Method (BEHC, 0, NotSerialized) + { + //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 (0x08) + { + One, + 0x08, + One, + One, + One, + 0x04, + 0x02, + 0x04 + }) + Name (CFG1, Package (0x08) + { + One, + 0x08, + One, + One, + One, + 0x04, + 0x02, + 0x04 + }) + Name (HWID, Zero) + Return (CFG0) /* \_SB_.PMBT.BEHC.CFG0 */ + } + + //ACPI methods for Charge Table Management Configuration + Method (CTMC, 0, NotSerialized) + { + Name (CFG0, Package (0x07) + { + Zero, //* 0: min RID for DEBUG category: 0K + 0x36B0, //* 1: max RID for DEBUG category: + 0x4A38, //* 2: RID2: min RID for NORMAL category: + 0x000222E0, //* 3: RID3: max RID for NORMAL category: + 0x0003A980, //* 4: min RID for SMART category: + 0x0006DDD0, //* 5: max RID for SMART category: + One //* 6: Number of charging table + }) + Return (CFG0) /* \_SB_.PMBT.CTMC.CFG0 */ + } + + //ACPI methods for Battery Charge Tables #1 + Method (BCT1, 0, NotSerialized) + { + Name (CFG0, Package (0x15) + { + Zero, //* 0: Battery Category: 0-NORMAL, 1-SMART + 0xFFFFFFEC, //* 1: min operating battery temp (-20 deg C) + 0x50, //* 2: max operating battery temp (+80 deg C) + Package (0x04) + { + Zero, + Zero, + Zero, + Zero + }, //* 3: 128-bit battery info for future expansion + + One, + 0x10FE, + 0x0834, + Zero, + 0x3C, + 0x02, + 0x04, + 0x02, + 0x10FE, + 0x03E8, + 0x0A, + 0x1090, + 0x0834, + 0x2D, + 0x1054, + 0x0834, + 0x32 + }) + Return (CFG0) /* \_SB_.PMBT.BCT1.CFG0 */ + } + } +#endif + + Device (PMBT) { + Name (_HID, "QCOM0264") + Name (_DEP, Package(0x2) { + \_SB_.PMIC, + \_SB_.OP3P + }) + + Alias (\_SB.PSUB, _SUB) + + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0B) + } + + Method (_CRS, 0x0, NotSerialized) { + Name (RBUF, ResourceTemplate () + { + //GpioInt(Edge, ActiveBoth, Shared, PullUp, 0, "\\_SB.PM01",,,,) {58} // STAT Interrupt + }) + Return (RBUF) + } + + //ACPI methods for Battery Manager Device + Method (BMNR) { + Name (CFG0, + Package(){ + 2, // Select Platform: 0- No HW, 1- SMChg+FGGge, 2- SMB3pChg+SMB3pGge, 3- LBChg+VMBMS + 0, // Error State Handling: 0- Don't Shutdown, 1- Shutdown + 1, // Listen to BatteryClass: 0- No 1- Yes + 0 // Test Mode Charger Current: 0- No current drawn, 1- Current drawn + }) + Return (CFG0) + } + + //ACPI methods for Timer + Method (BTIM) { + Name (CFG0, + Package(){ + 20000, // 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, // Battery Technology + 0x4C494F4E, // Battery Chemistry: hex(LION) + 9500, //8360, // (mWh), Design Capacity + 9500, //8360, // (mWh), Full Charge Capacity + 475, // Default Alert 1 (5% of full capacity) + 855, //Default Alert 2 (9% of full capacity) + "QCOMBATT01", //Device Name + "Qualcomm", // Manufacture Name + "QCOMBAT01_07012011", // Battery Unique ID + "07012011", // Battery Serial Number + 02, // Battery Manufacture Date + 07, // Battery Manufacture Month + 2015 // Battery Manufacture Year + }) + Return (CFG0) + } + + //ACPI methods for Proprietary chargers + Method (BPCH) { + Name (CFG0, + Package(){ + 0, // HVDCP charger not supported + 500 // Invalid Wall charger current = 500mA + }) + 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 Interrupt Name + Method (BIRQ) { + Name (CFG0, + Package(){ + //"SmbStatIrq" //SMB interrupt + }) + Return (CFG0) + } + + //ACPI methods for Platform File + Method (BPLT) { + Name (CFG0, + Package(){ + 1005, // ACPI Version + 3800, // (mV), Nominal Battery Voltage + 3500, // (mV), Low Battery Voltage + 3400, // (mV), Empty Battery Voltage + 100, // (mA), Termination Current + 500, // (per mil), Convergent SOC + 0, // Min Battery ID + 1800, // Max Battery ID + 34522, // Thermistor c1 coefficient (=0x86DB default) + 33422, // cc to soc coefficient (=0x8372: for 2200mAh) + 750 //soc (75%) below which no soc linearization even in CV charging + }) + Return (CFG0) + } + + //ACPI methods for Platform File + Method (BPTM) { + Name (CFG0, + Package(){ + 50000, // Emergency Timer + 10000, // Emergency Tolerable Delay + }) + Return (CFG0) + } + + //ACPI methods for JEITA + //No JEITA + Method (BJTA) { + Name (CFG0, + Package(){ + 1, // Select JEITA Configuration: 0- No JEITA, 1- SW JEITA, 2- HW JEITA + 4350, // Max Battery Voltage (mV) for Standard Zone + 1500, // Max Battery Current (mA) for Standard Zone + 0, // Safe Min Temperature(in deg C) eg. -2 for 0xFFFFFFFE (2's complement in case of -ve number) + 60, // Safe Max Temperature(in deg C) + 1, // Temperature Hysteresis (in deg C) + // SW Jeita Entries + 4, // Total Zones (Standard Zone + 3 Jeita Zone) + 2, // Standard Zone # + 4350, // Voltage Zone 1, 4200 mV + 750, // Current Zone 1, 750 mA + 10, // Temperature Zone 1, 10 deg C + 4350, // Voltage Zone 3, 4150 mV + 1500, // Current Zone 3, 1500 mA + 45, // Temperature Zone 3, 45 deg C + 4100, // Voltage Zone 4, 4100 mV + 750, // Current Zone 4, 1500 mA + 50 // Temperature Zone 4, 50 deg C + }) + 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) + } + 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 + 0x1, //Action(s) for SMART_AUTHENTICATED state -> Reload Charge Table + 0x2, //Action(s) for UNKNOWN state -> Error Shutdown + 0x2, //Action(s) for NOT_PRESENT state -> Error Shutdown + 0x2, //Action(s) for INVALID state -> Error Shutdown + 0x2 //Action(s) for OUT_OP_RANGE state -> Error Shutdown + }) + Return (CFG0) + } + //ACPI methods for Charge Table Management Configuration + Method (CTMC) + { + Name (CFG0, + Package(){ + 1800, //min BATT_ID Voltage(mV) for DEBUG category: 1800 mV (debug board support disabled since BAT_ID is grounded) + 1800, //max BATT_ID Voltage(mV) for DEBUG category: 1800 mV (debug board support disabled since BAT_ID is grounded) + 0, //min BATT_ID Voltage(mV) for NORMAL category: 0 mV (maximize BAT_ID range for NORMAL battery ) + 1800, //max BATT_ID Voltage(mV) for NORMAL category: 1800 mV(maximize BAT_ID range for NORMAL battery ) + 1800, //min BATT_ID Voltage(mV) for SMART category: 1800 mV (smart battery support disabled since BAT_ID is grounded) + 1800, //max BATT_ID Voltage(mV) for SMART category: 1800 mV (smart battery support disabled since BAT_ID is grounded) + 1, //Number of charging table + }) + Return (CFG0) + } + //ACPI methods for Battery Charge Tables #1 + Method (BCT1) + { + Name (CFG0, + Package(){ + 0, //Battery Category: 0-NORMAL, 1-SMART + 0xFFFFFFEC, //min operating battery temp (-20 deg C) + 70, //max operating battery temp (+70 deg C) + Package(4){0,0,0,0},//128-bit battery info for future expansion + //Jeita Settings + 1, // Select JEITA Configuration: 0- No JEITA, 1- SW JEITA, 2- HW JEITA + 4200, // Max Battery Voltage (mV) for Standard Zone + 1500, // Max Battery Current (mA) for Standard Zone + 0, // Safe Min Temperature(in deg C) eg. -2 for 0xFFFFFFFE (2's complement in case of -ve number) + 60, // Safe Max Temperature(in deg C) + 2, // Temperature Hysteresis (in deg C) + // SW Jeita Entries + 4, // Total Zones (Standard Zone + 3 Jeita Zone) + 2, // Standard Zone # + 4200, // Voltage Zone 1, 4200 mV + 750, // Current Zone 1, 750 mA + 10, // Temperature Zone 1, 10 deg C + 4150, // Voltage Zone 3, 4150 mV + 1500, // Current Zone 3, 1500 mA + 45, // Temperature Zone 3, 45 deg C + 4100, // Voltage Zone 4, 4100 mV + 1500, // Current Zone 4, 1500 mA + 50 // Temperature Zone 4, 50 deg C + }) + Return (CFG0) + } + } + + + // + //PMIC Battery Miniclass Driver + // + Device (PMBM) + { + Name (_HID, "QCOM0263") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.PMBT + }) + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, Buffer (0x02) + { + 0x79, 0x00 // y. + }) + Return (RBUF) /* \_SB_.PMBM._CRS.RBUF */ + } + + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0B) + } + } + + 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) + { + Name (_T_0, 0x00) // _T_x: Emitted by ASL Compiler + _T_0 = ToInteger (Arg0) + If ((_T_0 == One)) + { + While (One) + { + Name (_T_1, 0x00) // _T_x: Emitted by ASL Compiler + _T_1 = ToInteger (Arg3) + If ((_T_1 == Zero)) + { + If (Arg2) + { + \_SB.TZ1.TPSV = Arg1 + Notify (\_SB.TZ1, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ1._PSV ()) + } + ElseIf ((_T_1 == 0x02)) + { + If (Arg2) + { + \_SB.TZ1.TTSP = Arg1 + Notify (\_SB.TZ1, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ1._TSP ()) + } + ElseIf ((_T_1 == 0x03)) + { + If (Arg2) + { + \_SB.TZ1.TTC1 = Arg1 + Notify (\_SB.TZ1, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ1._TC1 ()) + } + ElseIf ((_T_1 == 0x04)) + { + If (Arg2) + { + \_SB.TZ1.TTC2 = Arg1 + Notify (\_SB.TZ1, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ1._TC2 ()) + } + Else + { + Return (0xFFFF) + } + + Break + } + } + ElseIf ((_T_0 == 0x03)) + { + While (One) + { + Name (_T_2, 0x00) // _T_x: Emitted by ASL Compiler + _T_2 = ToInteger (Arg3) + If ((_T_2 == Zero)) + { + If (Arg2) + { + \_SB.TZ3.TPSV = Arg1 + Notify (\_SB.TZ3, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ3._PSV ()) + } + ElseIf ((_T_2 == 0x02)) + { + If (Arg2) + { + \_SB.TZ3.TTSP = Arg1 + Notify (\_SB.TZ3, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ3._TSP ()) + } + ElseIf ((_T_2 == 0x03)) + { + If (Arg2) + { + \_SB.TZ3.TTC1 = Arg1 + Notify (\_SB.TZ3, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ3._TC1 ()) + } + ElseIf ((_T_2 == 0x04)) + { + If (Arg2) + { + \_SB.TZ3.TTC2 = Arg1 + Notify (\_SB.TZ3, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ3._TC2 ()) + } + Else + { + Return (0xFFFF) + } + + Break + } + } + ElseIf ((_T_0 == 0x04)) + { + While (One) + { + Name (_T_3, 0x00) // _T_x: Emitted by ASL Compiler + _T_3 = ToInteger (Arg3) + If ((_T_3 == Zero)) + { + If (Arg2) + { + \_SB.TZ4.TPSV = Arg1 + Notify (\_SB.TZ4, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ4._PSV ()) + } + ElseIf ((_T_3 == 0x02)) + { + If (Arg2) + { + \_SB.TZ4.TTSP = Arg1 + Notify (\_SB.TZ4, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ4._TSP ()) + } + ElseIf ((_T_3 == 0x03)) + { + If (Arg2) + { + \_SB.TZ4.TTC1 = Arg1 + Notify (\_SB.TZ4, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ4._TC1 ()) + } + ElseIf ((_T_3 == 0x04)) + { + If (Arg2) + { + \_SB.TZ4.TTC2 = Arg1 + Notify (\_SB.TZ4, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ4._TC2 ()) + } + Else + { + Return (0xFFFF) + } + + Break + } + } + ElseIf ((_T_0 == 0x05)) + { + While (One) + { + Name (_T_4, 0x00) // _T_x: Emitted by ASL Compiler + _T_4 = ToInteger (Arg3) + If ((_T_4 == Zero)) + { + If (Arg2) + { + \_SB.TZ5.TPSV = Arg1 + Notify (\_SB.TZ5, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ5._PSV ()) + } + ElseIf ((_T_4 == 0x02)) + { + If (Arg2) + { + \_SB.TZ5.TTSP = Arg1 + Notify (\_SB.TZ5, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ5._TSP ()) + } + ElseIf ((_T_4 == 0x03)) + { + If (Arg2) + { + \_SB.TZ5.TTC1 = Arg1 + Notify (\_SB.TZ5, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ3._TC1 ()) + } + ElseIf ((_T_4 == 0x04)) + { + If (Arg2) + { + \_SB.TZ5.TTC2 = Arg1 + Notify (\_SB.TZ5, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ5._TC2 ()) + } + Else + { + Return (0xFFFF) + } + + Break + } + } + ElseIf ((_T_0 == 0x06)) + { + While (One) + { + Name (_T_5, 0x00) // _T_x: Emitted by ASL Compiler + _T_5 = ToInteger (Arg3) + If ((_T_5 == Zero)) + { + If (Arg2) + { + \_SB.TZ6.TPSV = Arg1 + Notify (\_SB.TZ6, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ6._PSV ()) + } + ElseIf ((_T_5 == 0x02)) + { + If (Arg2) + { + \_SB.TZ6.TTSP = Arg1 + Notify (\_SB.TZ6, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ6._TSP ()) + } + ElseIf ((_T_5 == 0x03)) + { + If (Arg2) + { + \_SB.TZ6.TTC1 = Arg1 + Notify (\_SB.TZ6, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ6._TC1 ()) + } + ElseIf ((_T_5 == 0x04)) + { + If (Arg2) + { + \_SB.TZ6.TTC2 = Arg1 + Notify (\_SB.TZ6, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ6._TC2 ()) + } + Else + { + Return (0xFFFF) + } + + Break + } + } + ElseIf ((_T_0 == 0x07)) + { + While (One) + { + Name (_T_6, 0x00) // _T_x: Emitted by ASL Compiler + _T_6 = ToInteger (Arg3) + If ((_T_6 == Zero)) + { + If (Arg2) + { + \_SB.TZ7.TPSV = Arg1 + Notify (\_SB.TZ7, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ7._PSV ()) + } + ElseIf ((_T_6 == One)) + { + If (Arg2) + { + \_SB.TZ7.TCRT = Arg1 + Notify (\_SB.TZ7, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ7._CRT ()) + } + ElseIf ((_T_6 == 0x02)) + { + If (Arg2) + { + \_SB.TZ7.TTSP = Arg1 + Notify (\_SB.TZ7, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ7._TSP ()) + } + ElseIf ((_T_6 == 0x03)) + { + If (Arg2) + { + \_SB.TZ7.TTC1 = Arg1 + Notify (\_SB.TZ7, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ7._TC1 ()) + } + ElseIf ((_T_6 == 0x04)) + { + If (Arg2) + { + \_SB.TZ7.TTC2 = Arg1 + Notify (\_SB.TZ7, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ7._TC2 ()) + } + Else + { + Return (0xFFFF) + } + + Break + } + } + ElseIf ((_T_0 == 0x08)) + { + While (One) + { + Name (_T_7, 0x00) // _T_x: Emitted by ASL Compiler + _T_7 = ToInteger (Arg3) + If ((_T_7 == Zero)) + { + If (Arg2) + { + \_SB.TZ8.TPSV = Arg1 + Notify (\_SB.TZ8, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ8._PSV ()) + } + ElseIf ((_T_7 == 0x02)) + { + If (Arg2) + { + \_SB.TZ8.TTSP = Arg1 + Notify (\_SB.TZ8, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ8._TSP ()) + } + ElseIf ((_T_7 == 0x03)) + { + If (Arg2) + { + \_SB.TZ8.TTC1 = Arg1 + Notify (\_SB.TZ8, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ8._TC1 ()) + } + ElseIf ((_T_7 == 0x04)) + { + If (Arg2) + { + \_SB.TZ8.TTC2 = Arg1 + Notify (\_SB.TZ8, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ8._TC2 ()) + } + Else + { + Return (0xFFFF) + } + + Break + } + } + ElseIf ((_T_0 == 0x09)) + { + While (One) + { + Name (_T_8, 0x00) // _T_x: Emitted by ASL Compiler + _T_8 = ToInteger (Arg3) + If ((_T_8 == Zero)) + { + If (Arg2) + { + \_SB.TZ9.TPSV = Arg1 + Notify (\_SB.TZ9, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ9._PSV ()) + } + ElseIf ((_T_8 == 0x02)) + { + If (Arg2) + { + \_SB.TZ9.TTSP = Arg1 + Notify (\_SB.TZ9, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ9._TSP ()) + } + ElseIf ((_T_8 == 0x03)) + { + If (Arg2) + { + \_SB.TZ9.TTC1 = Arg1 + Notify (\_SB.TZ9, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ9._TC1 ()) + } + ElseIf ((_T_8 == 0x04)) + { + If (Arg2) + { + \_SB.TZ9.TTC2 = Arg1 + Notify (\_SB.TZ9, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ9._TC2 ()) + } + Else + { + Return (0xFFFF) + } + + Break + } + } + ElseIf ((_T_0 == 0x14)) + { + While (One) + { + Name (_T_9, 0x00) // _T_x: Emitted by ASL Compiler + _T_9 = ToInteger (Arg3) + If ((_T_9 == Zero)) + { + If (Arg2) + { + \_SB.TZ20.TPSV = Arg1 + Notify (\_SB.TZ20, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ20._PSV ()) + } + ElseIf ((_T_9 == 0x02)) + { + If (Arg2) + { + \_SB.TZ20.TTSP = Arg1 + Notify (\_SB.TZ20, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ20._TSP ()) + } + ElseIf ((_T_9 == 0x03)) + { + If (Arg2) + { + \_SB.TZ20.TTC1 = Arg1 + Notify (\_SB.TZ20, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ20._TC1 ()) + } + ElseIf ((_T_9 == 0x04)) + { + If (Arg2) + { + \_SB.TZ20.TTC2 = Arg1 + Notify (\_SB.TZ20, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ20._TC2 ()) + } + Else + { + Return (0xFFFF) + } + + Break + } + } + ElseIf ((_T_0 == 0x15)) + { + While (One) + { + Name (_T_A, 0x00) // _T_x: Emitted by ASL Compiler + _T_A = ToInteger (Arg3) + If ((_T_A == Zero)) + { + If (Arg2) + { + \_SB.TZ21.TPSV = Arg1 + Notify (\_SB.TZ21, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ21._PSV ()) + } + ElseIf ((_T_A == 0x02)) + { + If (Arg2) + { + \_SB.TZ21.TTSP = Arg1 + Notify (\_SB.TZ21, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ21._TSP ()) + } + ElseIf ((_T_A == 0x03)) + { + If (Arg2) + { + \_SB.TZ21.TTC1 = Arg1 + Notify (\_SB.TZ21, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ21._TC1 ()) + } + ElseIf ((_T_A == 0x04)) + { + If (Arg2) + { + \_SB.TZ21.TTC2 = Arg1 + Notify (\_SB.TZ21, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ21._TC2 ()) + } + Else + { + Return (0xFFFF) + } + + Break + } + } + ElseIf ((_T_0 == 0x21)) + { + While (One) + { + Name (_T_B, 0x00) // _T_x: Emitted by ASL Compiler + _T_B = ToInteger (Arg3) + If ((_T_B == Zero)) + { + If (Arg2) + { + \_SB.TZ33.TPSV = Arg1 + Notify (\_SB.TZ33, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ33._PSV ()) + } + ElseIf ((_T_B == 0x02)) + { + If (Arg2) + { + \_SB.TZ33.TTSP = Arg1 + Notify (\_SB.TZ33, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ33._TSP ()) + } + ElseIf ((_T_B == 0x03)) + { + If (Arg2) + { + \_SB.TZ33.TTC1 = Arg1 + Notify (\_SB.TZ33, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ33._TC1 ()) + } + ElseIf ((_T_B == 0x04)) + { + If (Arg2) + { + \_SB.TZ33.TTC2 = Arg1 + Notify (\_SB.TZ33, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ33._TC2 ()) + } + Else + { + Return (0xFFFF) + } + + Break + } + } + ElseIf ((_T_0 == 0x24)) + { + While (One) + { + Name (_T_C, 0x00) // _T_x: Emitted by ASL Compiler + _T_C = ToInteger (Arg3) + If ((_T_C == Zero)) + { + If (Arg2) + { + \_SB.TZ36.TPSV = Arg1 + Notify (\_SB.TZ36, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ36._PSV ()) + } + ElseIf ((_T_C == 0x02)) + { + If (Arg2) + { + \_SB.TZ36.TTSP = Arg1 + Notify (\_SB.TZ36, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ36._TSP ()) + } + ElseIf ((_T_C == 0x03)) + { + If (Arg2) + { + \_SB.TZ36.TTC1 = Arg1 + Notify (\_SB.TZ36, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ36._TC1 ()) + } + ElseIf ((_T_C == 0x04)) + { + If (Arg2) + { + \_SB.TZ36.TTC2 = Arg1 + Notify (\_SB.TZ36, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ36._TC2 ()) + } + Else + { + Return (0xFFFF) + } + + Break + } + } + ElseIf ((_T_0 == 0x25)) + { + While (One) + { + Name (_T_D, 0x00) // _T_x: Emitted by ASL Compiler + _T_D = ToInteger (Arg3) + If ((_T_D == Zero)) + { + If (Arg2) + { + \_SB.TZ37.TPSV = Arg1 + Notify (\_SB.TZ37, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ37._PSV ()) + } + ElseIf ((_T_D == One)) + { + If (Arg2) + { + \_SB.TZ37.TCRT = Arg1 + Notify (\_SB.TZ37, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ37._CRT ()) + } + ElseIf ((_T_D == 0x02)) + { + If (Arg2) + { + \_SB.TZ37.TTSP = Arg1 + Notify (\_SB.TZ37, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ37._TSP ()) + } + ElseIf ((_T_D == 0x03)) + { + If (Arg2) + { + \_SB.TZ37.TTC1 = Arg1 + Notify (\_SB.TZ37, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ37._TC1 ()) + } + ElseIf ((_T_D == 0x04)) + { + If (Arg2) + { + \_SB.TZ37.TTC2 = Arg1 + Notify (\_SB.TZ37, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ37._TC2 ()) + } + Else + { + Return (0xFFFF) + } + + Break + } + } + ElseIf ((_T_0 == 0x26)) + { + While (One) + { + Name (_T_E, 0x00) // _T_x: Emitted by ASL Compiler + _T_E = ToInteger (Arg3) + If ((_T_E == Zero)) + { + If (Arg2) + { + \_SB.TZ38.TPSV = Arg1 + Notify (\_SB.TZ38, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ38._PSV ()) + } + Else + { + Return (0xFFFF) + } + + Break + } + } + ElseIf ((_T_0 == 0x28)) + { + While (One) + { + Name (_T_F, 0x00) // _T_x: Emitted by ASL Compiler + _T_F = ToInteger (Arg3) + If ((_T_F == Zero)) + { + If (Arg2) + { + \_SB.TZ40.TPSV = Arg1 + Notify (\_SB.TZ40, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ40._PSV ()) + } + ElseIf ((_T_F == 0x02)) + { + If (Arg2) + { + \_SB.TZ40.TTSP = Arg1 + Notify (\_SB.TZ40, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ40._TSP ()) + } + ElseIf ((_T_F == 0x03)) + { + If (Arg2) + { + \_SB.TZ40.TTC1 = Arg1 + Notify (\_SB.TZ40, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ40._TC1 ()) + } + ElseIf ((_T_F == 0x04)) + { + If (Arg2) + { + \_SB.TZ40.TTC2 = Arg1 + Notify (\_SB.TZ40, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ40._TC2 ()) + } + Else + { + Return (0xFFFF) + } + + Break + } + } + ElseIf ((_T_0 == 0x2C)) + { + While (One) + { + Name (_T_G, 0x00) // _T_x: Emitted by ASL Compiler + _T_G = ToInteger (Arg3) + If ((_T_G == Zero)) + { + If (Arg2) + { + \_SB.TZ44.TPSV = Arg1 + Notify (\_SB.TZ44, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ44._PSV ()) + } + ElseIf ((_T_G == 0x02)) + { + If (Arg2) + { + \_SB.TZ44.TTSP = Arg1 + Notify (\_SB.TZ44, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ44._TSP ()) + } + ElseIf ((_T_G == 0x03)) + { + If (Arg2) + { + \_SB.TZ44.TTC1 = Arg1 + Notify (\_SB.TZ44, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ44._TC1 ()) + } + ElseIf ((_T_G == 0x04)) + { + If (Arg2) + { + \_SB.TZ44.TTC2 = Arg1 + Notify (\_SB.TZ44, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ44._TC2 ()) + } + Else + { + Return (0xFFFF) + } + + Break + } + } + ElseIf ((_T_0 == 0x62)) + { + While (One) + { + Name (_T_H, 0x00) // _T_x: Emitted by ASL Compiler + _T_H = ToInteger (Arg3) + If ((_T_H == Zero)) + { + If (Arg2) + { + \_SB.TZ98.TPSV = Arg1 + Notify (\_SB.TZ98, 0x81) // Information Change + } + + Return (\_SB.TZ98._PSV) /* External reference */ + } + ElseIf ((_T_H == 0x02)) + { + If (Arg2) + { + \_SB.TZ98.TTSP = Arg1 + Notify (\_SB.TZ98, 0x81) // Information Change + } + + Return (\_SB.TZ98._TSP) /* External reference */ + } + ElseIf ((_T_H == 0x03)) + { + If (Arg2) + { + \_SB.TZ98.TTC1 = Arg1 + Notify (\_SB.TZ98, 0x81) // Information Change + } + + Return (\_SB.TZ98._TC1) /* External reference */ + } + ElseIf ((_T_H == 0x04)) + { + If (Arg2) + { + \_SB.TZ98.TTC2 = Arg1 + Notify (\_SB.TZ98, 0x81) // Information Change + } + + Return (\_SB.TZ98._TC2) /* External reference */ + } + Else + { + Return (0xFFFF) + } + + Break + } + } + ElseIf ((_T_0 == 0x63)) + { + While (One) + { + Name (_T_I, 0x00) // _T_x: Emitted by ASL Compiler + _T_I = ToInteger (Arg3) + If ((_T_I == One)) + { + If (Arg2) + { + \_SB.TZ99.TCRT = Arg1 + Notify (\_SB.TZ99, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ99._CRT ()) + } + ElseIf ((_T_I == 0x02)) + { + If (Arg2) + { + \_SB.TZ99.TTSP = Arg1 + Notify (\_SB.TZ99, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ99._TSP ()) + } + ElseIf ((_T_I == 0x03)) + { + If (Arg2) + { + \_SB.TZ99.TTC1 = Arg1 + Notify (\_SB.TZ99, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ99._TC1 ()) + } + ElseIf ((_T_I == 0x04)) + { + If (Arg2) + { + \_SB.TZ99.TTC2 = Arg1 + Notify (\_SB.TZ99, 0x81) // Thermal Trip Point Change + } + + Return (\_SB.TZ99._TC2 ()) + } + Else + { + Return (0xFFFF) + } + + Break + } + } + Else + { + Return (0xFFFF) + } + + Break + } + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Return (ResourceTemplate () + { + // List interrupt resources in the order they are used in PEP_Driver.c + 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, + } + }) + } + + // need 20 char and 1 D state info + Field (\_SB.ABD.ROP1, BufferAcc, NoLock, Preserve) + { + /* Connection Object - 0x007C is the unique identifier */ + Connection ( + I2cSerialBusV2 (0x0001, ControllerInitiated, 0x00000000, + AddressingMode7Bit, "\\_SB.ABD", + 0x00, ResourceConsumer, , Exclusive, + ) + ), + AccessAs (BufferAcc, AttribRawBytes (0x15)), + FLD0, 168 + } + + //Get port to connect to + Method (GEPT, 0, NotSerialized) + { + Name (BUFF, Buffer (0x04){}) + CreateByteField (BUFF, Zero, STAT) + CreateWordField (BUFF, 0x02, DATA) + DATA = One //in this example we will connect to ABDO + Return (DATA) /* \_SB_.PEP0.GEPT.DATA */ + } + + Name (ROST, Zero) + // Number of CPUs to Park + Method (NPUR, 1, NotSerialized) + { + \_SB.AGR0._PUR [One] = Arg0 + Notify (\_SB.AGR0, 0x80) // Status Change + } + + // ACPI method to return intr descriptor + Method (INTR, 0, NotSerialized) + { + Name (RBUF, Package (0x18) + { + // Version + 0x02, + // Number of hosts + One, + // number of memory regions + 0x03, + // number of IPC registers + One, + + 0x06, + 0x17911008, + One, + Zero, + + // Shared memory + // Start address + 0x86000000, + // Size + 0x00200000, + // Reserved + Zero, + // Reserved + Zero, + + // AOSS QMP + // Start address + 0x0C300000, + 0x1000, + Zero, + Zero, + + 0x01FD4000, + 0x08, + Zero, + Zero, + + // apss shared + 0x1799000C, + Zero, + Zero, + Zero + }) + Return (RBUF) /* \_SB_.PEP0.INTR.RBUF */ + } + + Method (CRTC, 0, NotSerialized) + { + Return (CTRX) /* \_SB_.PEP0.CTRX */ + } + + Name (CTRX, Package (0x0B) + { + // Methods (names are reversed) that are critical to + // system boot + + "NSTC", + "HLCB", + "MMVD", // Discrete Vreg Mapping Package + "DSGP", //System Default Configuration, SDFR + "CCGP", // CPU Configuration + "MTPS", //Read the speaker calibration related parameters + "CPGP", // CPU cap for DCVS Package + "DMPP", // PEP resources (usually dummy devices required for power mgmt) + "VRDL", + "GBDL", // Debugger configuration -- must be below DSGP (reading SDFR) + "SRDL" // Default resources -- must be below DSGP (reading SDFR) + }) + Method (STND, 0, NotSerialized) + { + Return (STNX) /* \_SB_.PEP0.STNX */ + } + + Name (STNX, Package (0x19) + { + // Power resources for devices + // Names are reversed (so method OCMD becomes DMCO) + // + // Following format must be followed for name: + // DMxx -- Exists on QCOM SoC. Will use normal PoFX for power mgmt + // XMxx -- Exists off QCOM SoC and uses legacy power mgmt (_PS1, _PS2, etc) + // + // The files where these methods are declared must be included + // at the bottom of this file and must exists inside the scope: \_SB.PEP0 + "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" + }) + // + // Core topology + // + Method (CTPM, 0, NotSerialized) + { + Name (CTPN, Package (0x02) + { + "CORE_TOPOLOGY", + 0x08 + }) + Return (CTPN) /* \_SB_.PEP0.CTPM.CTPN */ + } + + // CPU/Core Configurations Packages + Name (CCFG, Package (0x08) + { + Package (0x02) + { + "\\_SB.SYSM.CLUS.CPU0", + 0x10 + }, + + Package (0x02) + { + "\\_SB.SYSM.CLUS.CPU1", + 0x11 + }, + + Package (0x02) + { + "\\_SB.SYSM.CLUS.CPU2", + 0x12 + }, + + Package (0x02) + { + "\\_SB.SYSM.CLUS.CPU3", + 0x13 + }, + + Package (0x02) + { + "\\_SB.SYSM.CLUS.CPU4", + 0x14 + }, + + Package (0x02) + { + "\\_SB.SYSM.CLUS.CPU5", + 0x15 + }, + + Package (0x02) + { + "\\_SB.SYSM.CLUS.CPU6", + 0x16 + }, + + Package (0x02) + { + "\\_SB.SYSM.CLUS.CPU7", + 0x17 + } + }) + // Method to return CPU configuration packages + // PEP Get CPU Configuration + Method (PGCC, 0, NotSerialized) + { + Return (CCFG) /* \_SB_.PEP0.CCFG */ + } + + Name (DRVC, Package (0x02) + { + Package (0x03) + { + "HLOS_DRV", + 0x02, + "/icb/arbiter" + }, + + Package (0x03) + { + "DISPLAY_DRV", + 0x09, + "/icb/arbiter/display" + } + }) + Method (LDRV, 0, NotSerialized) + { + Return (DRVC) /* \_SB_.PEP0.DRVC */ + } + + // CPU cap for DCVS Packages + Name (DCVS, Zero) + + // Method to return CPU cap for DCVS Package + Method (PGDS, 0, NotSerialized) + { + Return (DCVS) /* \_SB_.PEP0.DCVS */ + } + + // PPP Supported Resources Package + Name (PPPP, Package (0x32) + { + Package (0x03) + { + "PPP_RESOURCE_ID_SMPS1_A", // Resource ID + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", // Set Interface Type + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" // Get Interface Type + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_SMPS2_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_SMPS3_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_SMPS4_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_SMPS5_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_SMPS6_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_SMPS7_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_SMPS9_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_SMPS1_C", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_SMPS2_C", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_SMPS3_C", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO1_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO2_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO3_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO4_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO5_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO6_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO7_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO8_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO9_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO10_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO11_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO12_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO13_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO14_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO15_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO16_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO17_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO18_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO19_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO20_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO21_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO22_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO23_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO24_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO25_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_LDO26_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + 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 (0x03) + { + "PPP_RESOURCE_ID_CXO_BUFFERS_RFCLK2_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_CXO_BUFFERS_RFCLK3_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_CXO_BUFFERS_DIVCLK1_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_CXO_BUFFERS_DIVCLK2_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_CXO_BUFFERS_DIVCLK3_A", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + }, + + Package (0x03) + { + "PPP_RESOURCE_ID_BUCK_BOOST1_B", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_RPMH", + "PM_RESOURCE_SERVICE_INTERFACE_TYPE_PMIC_KMDF" + } + }) + // Method to return PPP Package + Method (PPPM, 0, NotSerialized) + { + Return (PPPP) /* \_SB_.PEP0.PPPP */ + } + + // Method to return System Default config packages + Name (PRRP, Package (0x12) + { + "PPP_RESOURCE_RANGE_INFO_SMPS_A", // Resource type range + "PPP_RESOURCE_ID_SMPS1_A", // Initial supported resource + "PPP_RESOURCE_ID_SMPS13_A", // Last supported resource + "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 to return Pep Ppp Resource Range Package + Method (PPRR, 0, NotSerialized) + { + Return (PRRP) /* \_SB_.PEP0.PRRP */ + } + + // Method to return System Default config packages + // PEP Get System Default package + Method (PGSD, 0, NotSerialized) + { + Return (SDFR) /* \_SB_.PEP0.SDFR */ + } + + // Full PEP Device Package + Name (FPDP, Zero) + // Method to return Full PEP Managed Device List Package + Method (FPMD, 0, NotSerialized) + { + Return (FPDP) /* \_SB_.PEP0.FPDP */ + } + + // + // PEP Processor Performance configuration + // CPU cap for DCVS Packages + Name (PPPC, Zero) + // Method to return CPU cap for DCVS Package + Method (PGPC, 0, NotSerialized) + { + Return (PPPC) /* \_SB_.PEP0.PPPC */ + } + + Method (DPRF, 0, NotSerialized) + { + Return (\_SB.DPP0) + } +/* + Method (DMRF, 0, NotSerialized) + { + Return (\_SB.DPP1) + }*/ + } + + Scope (\_SB.PEP0) + { + Method (LPDC, 0, NotSerialized) + { + Return (NPDC) /* \_SB_.PEP0.NPDC */ + } + + Name (NPDC, Package (0x01) + { + Package (0x02) + { + "INTERRUPT_CONFIG", + Package (0x0D) + { + Package (0x04) + { + Zero, + 0x021A, + Zero, + One + }, + + Package (0x04) + { + One, + 0x021B, + Zero, + One + }, + + Package (0x04) + { + 0x02, + 0x021C, + Zero, + One + }, + + Package (0x04) + { + 0x03, + 0x021D, + Zero, + One + }, + + Package (0x04) + { + 0x04, + 0x0218, + Zero, + One + }, + + Package (0x04) + { + 0x05, + 0x0219, + Zero, + One + }, + + Package (0x04) + { + 0x06, + 0x0206, + Zero, + One + }, + + Package (0x04) + { + 0x07, + 0x0207, + Zero, + One + }, + + Package (0x05) + { + 0x08, + 0x0208, + Zero, + One, + 0x08 + }, + + Package (0x05) + { + 0x09, + 0x0209, + Zero, + One, + 0x08 + }, + + Package (0x05) + { + 0x0A, + 0x020A, + Zero, + One, + 0x08 + }, + + Package (0x05) + { + 0x0B, + 0x020B, + Zero, + One, + 0x08 + }, + + Package (0x04) + { + 0x0C, + 0x0201, + Zero, + 0x04 + } + } + } + }) + } + + Scope (\_SB.PEP0) + { + Method (LPCU, 0, NotSerialized) + { + Return (NPCU) /* \_SB_.PEP0.NPCU */ + } + + Name (NPCU, Package (0x05) + { + "PCU_CONFIG", + 0x09, + One, + Package (0x02) + { + "PCU_CLUSTER_CONFIG", + 0x09 + }, + + Package (0x0A) + { + "PCU_PHYS_CONFIG", + 0x17E00040, + 0x17E10040, + 0x17E20040, + 0x17E30040, + 0x17E40040, + 0x17E50040, + 0x17E60040, + 0x17E70040, + 0x17810104 + } + }) + } + + Scope (\_SB.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 (\_SB.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 (\_SB.PEP0) + { + // Discrete Vreg Mapping Package + Name (DVMP, Package (0x02) + { + // Virtual regulator to aggregate GPIO pin control of CHIP_PWD_L + // CHIP_PWD_L must be deasserted for BT to share a clock with AR6004 + // BT and WLAN devices will take a vote on this virtual regulator to + // control the shared GPIO pin + Package (0x04) + { + "PPP_RESOURCE_ID_PMIC_GPIO_DV1", // Discrete Vreg ID + "PPP_RESOURCE_TYPE_DISCRETE_PMIC_GPIO", // Vreg type + Package (0x02) + { + "PM_DISCRETE_VREG_STATE_ON", // Mapping for VREG ON + Package (0x0A) + { + Zero, // pmic_number (PM8994) - must match pmic.asl + 0x08, // gpio_id - GPIO #9 + Zero, // Mode - GPIO configured as output - 0, 1 for input + Zero, // voltage_source - PM_GPIO_VIN0 + One, // source - PM_GPIO_SOURCE_1 (drive logic HIGH) + Zero, // out_buffer_config - PM_GPIO_OUT_BUFFER_CONFIG_CMOS + One, // out_buffer_strength - PM_GPIO_OUT_BUFFER_LOW + Zero, // inversion � no invert + One, // External pin enable - PM_GPIO_PERPH_EN_ENABLE + 0x05 // PM_GPIO_I_SOURCE_PULL_NO_PULL, ignored for Output mode. + } + }, + + Package (0x02) + { + "PM_DISCRETE_VREG_STATE_OFF", // Mapping for VREG OFF + Package (0x0A) + { + Zero, // pmic_number 0 + 0x08, // gpio_id - GPIO #9 + Zero, // Mode - GPIO configured as output - 0, 1 for input + Zero, // voltage_source - PM_GPIO_VIN0 + Zero, // source - PM_GPIO_SOURCE_0 (drive logic LOW) + Zero, // out_buffer_config - PM_GPIO_OUT_BUFFER_CONFIG_CMOS + One, // out_buffer_strength - PM_GPIO_OUT_BUFFER_LOW + Zero, // inversion � no invert + One, // External pin enable - PM_GPIO_PERPH_EN_ENABLE + 0x05 // PM_GPIO_I_SOURCE_PULL_NO_PULL, ignored for Output mode. + } + } + }, + + //discrete vreg vote for MPP4 + Package (0x04) + { + "PPP_RESOURCE_ID_PMIC_MPP_DV1", // Discrete Vreg ID + "PPP_RESOURCE_TYPE_DISCRETE_PMIC_MPP", // Vreg type + Package (0x02) + { + "PM_DISCRETE_VREG_STATE_ON", // Mapping for VREG ON + Package (0x06) + { + Zero, // PMIC number + 0x03, // MPP index (mpp #4) + Zero, // Direction, 0 - output + 0x02, // VIO_2 + One, // PM_MPP__DLOGIC__OUT_CTRL_HIGH + Zero // PM_MPP__DLOGIC__DBUS_NONE + } + }, + + Package (0x02) + { + "PM_DISCRETE_VREG_STATE_OFF", // Mapping for VREG OFF + Package (0x06) + { + Zero, // PMIC number + 0x03, // MPP index (mpp #4) + Zero, // Direction, 0 - output + 0x02, // VIO_2 + Zero, // PM_MPP__DLOGIC__OUT_CTRL_LOW + Zero // PM_MPP__DLOGIC__DBUS_NONE + } + } + } + }) + // Method to return Discrete Vreg Mapping Package + Method (DVMM, 0, NotSerialized) + { + Return (DVMP) /* \_SB_.PEP0.DVMP */ + } + } + + Scope (\_SB.PEP0) + { + Method (LDBG, 0, NotSerialized) + { + Return (NDBG) /* \_SB_.PEP0.NDBG */ + } + + Name (NDBG, + /** + * The debuggers package is used by PEP to detect when a debugger is connected, + * turn on the required power resources for a debugger and to turn off all + * debugger related resources when not in use (this logic is encompassed in PEP). + * + * The expected hiearchy of this package: + * DEBUGGERS + * TYPE + * String = SERIAL, USB2.0, USB3.0 + * INSTANCES + * The instancepath of the drivers which the debugger impersonates + * DEBUG_ON + * The resources that need to be turned on for the debugger to work + * for the given controller type (SERIAL/USB2.0/USB3.0) + * DEBUG_OFF + * The resources to turn off when no debugger is connected for this + * debugger type and no HLOS driver is loaded for any one of the given + * HLOS types. The implementation for this feature is documented within + * PEP. + * + */ + Package (0x04) + { + "DEBUGGERS", + Package (0x05) + { + "TYPE", + "SERIAL", + Package (0x02) + { + "INSTANCES", + "\\_SB.UARD" + }, + + Package (0x0C) + { + "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 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_qupv3_wrap_1_m_ahb_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_s_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_qupv3_wrap_1_s_ahb_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_qupv3_wrap_1_s_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 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_qupv3_wrap1_s1_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x07) + { + 0x03, + "ICBID_MASTER_BLSP_2", + "ICBID_SLAVE_EBI1", + 0x00989680, + 0x0682, + "HLOS_DRV", + "SUPPRESSIBLE" + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x07) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_2", + 0x00989680, + 0x004C4B40, + "HLOS_DRV", + "SUPPRESSIBLE" + } + } + }, + + Package (0x01) + { + "DEBUG_OFF" + } + }, + + Package (0x05) + { + "TYPE", + "USB2.0", + Package (0x02) + { + "INSTANCES", + "\\_SB.USB1" + }, + + Package (0x1E) + { + "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 + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + 0x00124F80, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + 0x000D6D80, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "usb30_sec_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb30_sec_sleep_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb30_sec_sleep_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_sec_sleep_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb3_sec_phy_pipe_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb3_sec_phy_pipe_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_sec_phy_pipe_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_aggre_usb3_sec_axi_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_aggre_usb3_sec_axi_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_aggre_usb3_sec_axi_clk", + 0x08, + 0x78, + 0x09 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_cfg_noc_usb3_sec_axi_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_cfg_noc_usb3_sec_axi_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_cfg_noc_usb3_sec_axi_clk", + 0x08, + 0x78, + 0x09 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb30_sec_master_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb30_sec_master_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb30_sec_master_clk", + 0x08, + 0x78, + 0x09 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb3_sec_phy_aux_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb3_sec_phy_aux_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb3_sec_phy_aux_clk", + 0x08, + 0x04B0, + 0x07 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x07) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_USB3_1", + 0x17D78400, + Zero, + "HLOS_DRV", + "SUPPRESSIBLE" + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x07) + { + 0x03, + "ICBID_MASTER_USB3_1", + "ICBID_SLAVE_EBI1", + 0x28000000, + 0x28000000, + "HLOS_DRV", + "SUPPRESSIBLE" + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x04) + { + One, + "/arc/client/rail_cx", + 0x0100, + "SUPPRESSIBLE" + } + } + }, + + Package (0x01) + { + "DEBUG_OFF" + } + }, + + Package (0x05) + { + "TYPE", + "USB3.0", + Package (0x02) + { + "INSTANCES", + "\\_SB.URS0" + }, + + Package (0x1E) + { + "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 + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + 0x00124F80, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + 0x000D6D80, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "usb30_prim_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_prim_sleep_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb30_prim_sleep_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb30_prim_sleep_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_prim_phy_pipe_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb3_prim_phy_pipe_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb3_prim_phy_pipe_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_aggre_usb3_prim_axi_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_aggre_usb3_prim_axi_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_aggre_usb3_prim_axi_clk", + 0x08, + 0x78, + 0x09 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_cfg_noc_usb3_prim_axi_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_cfg_noc_usb3_prim_axi_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_cfg_noc_usb3_prim_axi_clk", + 0x08, + 0x78, + 0x09 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb30_prim_master_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb30_prim_master_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb30_prim_master_clk", + 0x08, + 0x78, + 0x09 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb3_prim_phy_aux_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb3_prim_phy_aux_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb3_prim_phy_aux_clk", + 0x08, + 0x04B0, + 0x07 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x07) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_USB3_0", + 0x17D78400, + Zero, + "HLOS_DRV", + "SUPPRESSIBLE" + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x07) + { + 0x03, + "ICBID_MASTER_USB3_0", + "ICBID_SLAVE_EBI1", + 0x28000000, + 0x28000000, + "HLOS_DRV", + "SUPPRESSIBLE" + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x04) + { + One, + "/arc/client/rail_cx", + 0x0100, + "SUPPRESSIBLE" + } + } + }, + + Package (0x01) + { + "DEBUG_OFF" + } + } + }) + } + + // default resource information + Scope (\_SB.PEP0) + { + Method (LDRS, 0, NotSerialized) + { + Return (NDRS) /* \_SB_.PEP0.NDRS */ + } + + Name (NDRS, + /** + * The default resources package is used by PEP to handle system default resources. + * Rather than having to declare them all in the SDF declaration, you define resources + * separately and annotate them by functionality. At runtime, the parsed resources + * will be placed into separate components within the SDF device node. + * + * The expected hiearchy of this package: + * DEFAULT_RESOURCES + * (WORKAROUND|OPTIMIZATION) + * String = Name + * For debugging and querying -- keep it short + * String = "BOOT", "SCREENON", "DEMAND" + * When to activate these resources + * RESOURCES + * The list of resources to activate for this set workaround / optimization + * + */ + Package (0x03) + { + "DEFAULT_RESOURCES", + Package (0x04) + { + "OPTIMIZATION", + "CPU_CNOC_VOTE", + "BOOT", + Package (0x02) + { + "RESOURCES", + Package (0x02) + { + "BUSARB", + Package (0x06) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_CLK_CTL", + One, + One, + "SUPPRESSIBLE" + } + } + } + }, + + Package (0x04) + { + "WORKAROUND", + "USB1_GPIO_VOTE", + "BOOT", + Package (0x05) + { + "RESOURCES", + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x2C, + One, + Zero, + One, + Zero, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_disp_ahb_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_disp_ahb_clk", + 0x09, + 0x0C + } + } + } + } + }) + } + + Scope (\_SB.PEP0) + { + Method (UIDL, 0, NotSerialized) + { + Return (NIDL) /* \_SB_.PEP0.NIDL */ + } + + Name (NIDL, Package (0x0E) + { + "MICROPEP_IDLE", + One, + Package (0x08) + { + "LPR", + "KryoSilver0", // LPR Name + Zero, // LPR Core Mask (0xFFFFFFFF is coordinated) + Zero, //LastMan Adder + Package (0x07) + { + "MODE", + "C1", + Zero, + Zero, + Zero, + Zero, + Zero + }, + + Package (0x07) + { + "MODE", + "C2d", + 0x03E8, + 0x0FA0, + Zero, + Zero, + 0x02 + }, + + Package (0x07) + { + "MODE", + "C3", // Mode name + 0x0BB8, + 0x1194, + 0x03, + Zero, + 0x40000003 // Mode PSCI Flags + }, + + 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 + }, + + Package (0x07) + { + "MODE", + "C3_NI", + 0x0BB8, + 0x1194, + 0x13, + Zero, + 0x40000004 + } + }, + + Package (0x08) + { + "LPR", + "KryoSilver2", + 0x02, + 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 + }, + + 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 + }, + + 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) + { + "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 + } + }, + + Package (0x05) + { + "DEPENDENCY_CONTAINER", + Package (0x04) + { + "DEPENDENCY", + "KryoSilver1", + "C1", + 0x07 + }, + + Package (0x04) + { + "DEPENDENCY", + "KryoSilver1", + "C2d", + 0x07 + }, + + Package (0x04) + { + "DEPENDENCY", + "KryoSilver1", + "C3", + 0x07 + }, + + Package (0x04) + { + "DEPENDENCY", + "KryoSilver1", + "C3_NI", + 0x07 + } + }, + + Package (0x05) + { + "DEPENDENCY_CONTAINER", + Package (0x04) + { + "DEPENDENCY", + "KryoSilver2", + "C1", + 0x07 + }, + + Package (0x04) + { + "DEPENDENCY", + "KryoSilver2", + "C2d", + 0x07 + }, + + Package (0x04) + { + "DEPENDENCY", + "KryoSilver2", + "C3", + 0x07 + }, + + Package (0x04) + { + "DEPENDENCY", + "KryoSilver2", + "C3_NI", + 0x07 + } + }, + + Package (0x05) + { + "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 + } + } + }, + + Package (0x0B) + { + "MODE", + "D2e", + 0x05DC, + 0x0DAC, + 0x10, + Zero, + 0x30, + 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 + } + }, + + Package (0x03) + { + "DEPENDENCY_CONTAINER", + Package (0x04) + { + "DEPENDENCY", + "KryoSilver2", + "C3", + 0x07 + }, + + Package (0x04) + { + "DEPENDENCY", + "KryoSilver2", + "C3_NI", + 0x07 + } + }, + + Package (0x03) + { + "DEPENDENCY_CONTAINER", + Package (0x04) + { + "DEPENDENCY", + "KryoSilver3", + "C3", + 0x07 + }, + + Package (0x04) + { + "DEPENDENCY", + "KryoSilver3", + "C3_NI", + 0x07 + } + } + }, + + Package (0x0B) + { + "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 + } + }, + + Package (0x03) + { + "DEPENDENCY_CONTAINER", + Package (0x04) + { + "DEPENDENCY", + "KryoSilver2", + "C3", + 0x07 + }, + + Package (0x04) + { + "DEPENDENCY", + "KryoSilver2", + "C3_NI", + 0x07 + } + }, + + Package (0x03) + { + "DEPENDENCY_CONTAINER", + Package (0x04) + { + "DEPENDENCY", + "KryoSilver3", + "C3", + 0x07 + }, + + Package (0x04) + { + "DEPENDENCY", + "KryoSilver3", + "C3_NI", + 0x07 + } + } + } + }, + + Package (0x07) + { + "LPR", + "L2_Gold", + 0xFFFFFFFF, + 0x01000000, + Package (0x0B) + { + "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) + { + "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 + } + }, + + Package (0x05) + { + "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 (0x03) + { + "DEPENDENCY_CONTAINER", + Package (0x04) + { + "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 (0x0B) + { + "MODE", + "D4", + 0x2EE0, + 0xEA60, + 0x10, + Zero, + 0x40, + Package (0x03) + { + "DEPENDENCY_CONTAINER", + Package (0x04) + { + "DEPENDENCY", + "KryoGold0", + "C3", + 0x07 + }, + + Package (0x04) + { + "DEPENDENCY", + "KryoGold0", + "C3_NI", + 0x07 + } + }, + + Package (0x03) + { + "DEPENDENCY_CONTAINER", + Package (0x04) + { + "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 (0x07) + { + "LPR", + "CCI", + 0xFFFFFFFF, + 0x02000000, + Package (0x09) + { + "MODE", + "E1", + 0x1388, + 0x6590, + 0x10, + Zero, + 0x0100, + Package (0x03) + { + "DEPENDENCY_CONTAINER", + Package (0x04) + { + "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) + { + "DEPENDENCY_CONTAINER", + Package (0x04) + { + "DEPENDENCY", + "L2_Silver", + "D4", + 0x07 + } + }, + + Package (0x02) + { + "DEPENDENCY_CONTAINER", + Package (0x04) + { + "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) + { + "DEPENDENCY_CONTAINER", + Package (0x04) + { + "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 + } + } + } + } + }) + } + + Scope (\_SB.PEP0) + { + Method (CPRZ, 0, NotSerialized) + { + Return (CPRH) /* \_SB_.PEP0.CPRH */ + } + + Name (CPRH, Package (0x06) + { + "CPRH_SW_SETTING", + Zero, + Package (0x05) + { + "CPRH_CHIP_INFO", + 0x0141, + One, + 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, + "L3", + 0x02, + 0x02, + Zero, + Zero + }, + + Package (0x07) + { + "CPRH_SW_THREAD_SETTING", + One, + "Silver", + 0x02, + 0x02, + Zero, + Zero + } + }, + + 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 (0x05) + { + "CPRH_CHIP_INFO", + 0x0141, + 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, + "L3", + 0x02, + 0x02, + Zero, + Zero + }, + + Package (0x07) + { + "CPRH_SW_THREAD_SETTING", + One, + "Silver", + 0x02, + 0x02, + Zero, + Zero + } + }, + + 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 (0x05) + { + "CPRH_CHIP_INFO", + 0x0155, + One, + 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 (0x07) + { + "CPRH_SW_THREAD_SETTING", + One, + "L3", + 0x02, + 0x02, + Zero, + Zero + } + }, + + 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 (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 (0x07) + { + "CPRH_SW_THREAD_SETTING", + One, + "L3", + 0x02, + 0x02, + Zero, + Zero + } + }, + + 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 + } + } + } + }) + } + + Scope (\_SB.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 + }, + + 0x03, + Package (0x03) + { + Zero, + 0x09, + 0x10 + } + }, + + Package (0x06) + { + "LITTLE", + 0x04, + "apcs_silver_sysleaf_clk", + Package (0x03) + { + 0x012C, + 0x04BA, + 0x063A + }, + + 0x03, + Package (0x03) + { + Zero, + 0x0B, + 0x10 + } + }, + + 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) + { + 0x033A, + 0x0553, + 0x05B4 + }, + + 0x03, + Package (0x03) + { + Zero, + 0x07, + 0x0F + } + }, + + Package (0x06) + { + "LITTLE", + 0x04, + "apcs_silver_sysleaf_clk", + Package (0x03) + { + 0x012C, + 0x04CD, + 0x052D + }, + + 0x03, + Package (0x03) + { + Zero, + 0x0B, + 0x0F + } + }, + + Package (0x02) + { + "L3_CACHE", + "apcs_l3_sysleaf_clk" + } + }, + + Package (0x08) + { + "CHIP_INFO", + 0x0155, + One, + Zero, + 0x02, + Package (0x06) + { + "BIG", + 0x04, + "apcs_gold_sysleaf_clk", + Package (0x03) + { + 0x012C, + 0x040D, + 0x0626 + }, + + 0x03, + Package (0x03) + { + Zero, + 0x09, + 0x10 + } + }, + + Package (0x06) + { + "LITTLE", + 0x04, + "apcs_silver_sysleaf_clk", + Package (0x03) + { + 0x012C, + 0x04BA, + 0x063A + }, + + 0x03, + Package (0x03) + { + Zero, + 0x0B, + 0x10 + } + }, + + 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) + { + 0x033A, + 0x0553, + 0x05B4 + }, + + 0x03, + Package (0x03) + { + Zero, + 0x07, + 0x0F + } + }, + + Package (0x06) + { + "LITTLE", + 0x04, + "apcs_silver_sysleaf_clk", + Package (0x03) + { + 0x012C, + 0x04CD, + 0x052D + }, + + 0x03, + Package (0x03) + { + Zero, + 0x0B, + 0x0F + } + }, + + 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) + { + 0x033A, + 0x0553, + 0x05B4 + }, + + 0x03, + Package (0x03) + { + Zero, + 0x07, + 0x0F + } + }, + + Package (0x06) + { + "LITTLE", + 0x04, + "apcs_silver_sysleaf_clk", + Package (0x03) + { + 0x012C, + 0x04CD, + 0x052D + }, + + 0x03, + Package (0x03) + { + Zero, + 0x0B, + 0x0F + } + }, + + Package (0x02) + { + "L3_CACHE", + "apcs_l3_sysleaf_clk" + } + } + }) + Method (LDCV, 0, NotSerialized) + { + Return (NDCV) /* \_SB_.PEP0.NDCV */ + } + } + + Scope (\_SB.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) + { + "ACPI\\VEN_QCOM&DEV_027F", + Zero + }, + + 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) + { + 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 (0x05) + { + 0x04, + Package (0x04) + { + "SYS_THERM1", + "ACPI\\VEN_QCOM&DEV_0299", + Zero, + Zero + }, +#if 0 + Package (0x04) + { + "SYS_THERM2", + "ACPI\\VEN_QCOM&DEV_029A", + One, + Zero + }, +#endif + Package (0x04) + { + "PA_THERM", + "ACPI\\VEN_QCOM&DEV_029B", + 0x01, + Zero + }, + + Package (0x04) + { + "PA_THERM1", + "ACPI\\VEN_QCOM&DEV_029C", + 0x02, + Zero + }, + +#if 0 + Package (0x04) + { + "SYS_THERM3", + "ACPI\\VEN_QCOM&DEV_029D", + 0x04, + Zero + }, +#endif + + Package (0x04) + { + "PMIC_THERM", + "ACPI\\VEN_QCOM&DEV_029E", + 0x03, + Zero + }, +#if 0 + Package (0x04) + { + "BAT_THERM", + "ACPI\\VEN_QCOM&DEV_029F", + 0x04, + Zero + }, + Package (0x04) + { + "RF_THERM", + "ACPI\\VEN_QCOM&DEV_02A0", + 0x05, + Zero + } +#endif + }, + + 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 (\_SB.PEP0) + { + // Defined in pep_common.asl for audio resources under method STND (Name STNX) + Method (APMD, 0, NotSerialized) + { + // We return object named APCC - defined below for audio resources + Return (APCC) /* \_SB_.PEP0.APCC */ + } + + Name (APCC, Package (0x02) + { + Package (0x1A) + { + // These resources are for Codec hardware + "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) + { + "COMPONENT", + One, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + } + }, + + Package (0x04) + { + "COMPONENT", + 0x02, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + } + }, + + Package (0x04) + { + "COMPONENT", + 0x03, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + } + }, + + Package (0x04) + { + "COMPONENT", + 0x04, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + } + }, + + Package (0x04) + { + "COMPONENT", + 0x05, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + } + }, + + Package (0x04) + { + "COMPONENT", + 0x06, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + } + }, + + Package (0x04) + { + "COMPONENT", + 0x07, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + } + }, + + Package (0x04) + { + "COMPONENT", + 0x08, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + } + }, + + Package (0x04) + { + "COMPONENT", + 0x09, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + } + }, + + Package (0x04) + { + "COMPONENT", + 0x0A, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + } + }, + + Package (0x04) + { + "COMPONENT", + 0x0B, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + } + }, + + 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 + } + } + } + }) + } + +//#if 0 + Scope (\_SB.PEP0) + { + //----------------------------------------------------------------------------------------- + // GRAPHICS, DISPLAY, and VIDEO resources + // + // !!WARNING: The below table entries are auto-generated and are part of several + // interdependent ACPI methods that are all auto-generated from a single source. + // These components should NOT be edited by hand, as they must stay in sync + // with all other dependent graphics methods. + //----------------------------------------------------------------------------------------- + // OWNING DRIVER: qcdxkm850.sys + // + // HW CONTROLLED: 3D core + // MDP core + // Internal display circuitry + // HDMI circuitry + // Rotator core + // Video Decode core + // ... + // + // COMPONENTS: + // C0 + // C1 + // C2 + // C3 + // C4 + // C5 + // C6 + // C7 + // C8 + // C9 + //----------------------------------------------------------------------------------------- + // + + //-------------------------------------------------------------------------------------- + // Complete list of individual component methods + //-------------------------------------------------------------------------------------- + // + 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) + { + 0x04, + 0x2A + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x04 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "phy_refgen_south", + 0x02 + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x08) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + Zero, + Zero, + Zero, + Zero, + "HLOS_DRV", + "REQUIRED" + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x08) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + Zero, + Zero, + Zero, + Zero, + "HLOS_DRV", + "REQUIRED" + } + }, + + Package (0x02) + { + "PMICGPIO", + Package (0x08) + { + "IOCTL_PM_GPIO_CONFIG_DIGITAL_OUTPUT", + Zero, + 0x11, + Zero, + One, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x60, + Zero, + Zero, + One, + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x7B, + Zero, + Zero, + One, + Zero, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x08) + { + "PPP_RESOURCE_ID_LDO14_A", + One, + Zero, + Zero, + Zero, + Zero, + "HLOS_DRV", + "REQUIRED" + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x08) + { + "PPP_RESOURCE_ID_SMPS6_A", + 0x02, + Zero, + Zero, + Zero, + Zero, + "HLOS_DRV", + "REQUIRED" + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x03) + { + "PPP_RESOURCE_ID_CXO_BUFFERS_DIVCLK3_A", + 0x06, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x80, + Zero, + Zero, + One, + Zero, + Zero + } + } + }, + + Package (0x11) + { + "EXIT", + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + One + } + }, + + Package (0x01) + { + "PSTATE_RESTORE" + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x08) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + 0x000D6D80, + One, + 0x07, + Zero, + "HLOS_DRV", + "REQUIRED" + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x08) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + 0x00124F80, + One, + 0x07, + Zero, + "HLOS_DRV", + "REQUIRED" + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x08) + { + "PPP_RESOURCE_ID_LDO14_A", + One, + 0x001CAFC0, + One, + 0x07, + Zero, + "HLOS_DRV", + "REQUIRED" + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x08) + { + "PPP_RESOURCE_ID_SMPS6_A", + 0x02, + 0x000C3500, + One, + 0x07, + Zero, + "HLOS_DRV", + "REQUIRED" + } + }, + + Package (0x02) + { + "PMICGPIO", + Package (0x08) + { + "IOCTL_PM_GPIO_CONFIG_DIGITAL_OUTPUT", + Zero, + 0x11, + Zero, + Zero, + One, + One, + 0x04 + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + 0x0A + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x7B, + One, + Zero, + One, + 0x03, + 0x07 + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x80, + One, + Zero, + One, + 0x03, + 0x07 + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x03) + { + "PPP_RESOURCE_ID_CXO_BUFFERS_DIVCLK3_A", + 0x06, + One + } + }, + + Package (0x02) + { + "PMICGPIO", + Package (0x08) + { + "IOCTL_PM_GPIO_CONFIG_DIGITAL_OUTPUT", + Zero, + 0x0F, + Zero, + Zero, + 0x04, + 0x03, + 0x04 + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + 0x96 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "phy_refgen_south", + One + } + } + } + }, + + Package (0x02) + { + "INIT_FSTATE", + One + }, + + Package (0x02) + { + "PRELOAD_FSTATE", + Zero + }, + + Package (0x02) + { + "ABANDON_FSTATE", + Zero + }, + + Package (0x07) + { + "PSTATE_SET", + Zero, + Package (0x02) + { + "PSTATE", + Zero + }, + + Package (0x02) + { + "PSTATE", + One + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + Zero + }, + + Package (0x02) + { + "PREPARE_PSTATE", + Zero + }, + + Package (0x02) + { + "ABANDON_PSTATE", + Zero + } + }, + + Package (0x04) + { + "PSTATE_SET", + One, + Package (0x05) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + One + } + } + }, + + Package (0x05) + { + "PSTATE", + One, + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + 0x02 + } + } + } + }, + + Package (0x0A) + { + "PSTATE_SET", + 0x02, + Package (0x12) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_intf_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_intf_clk", + One + } + } + }, + + Package (0x12) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_intf_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_intf_clk", + One + } + } + }, + + Package (0x12) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_intf_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk1_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc1_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_intf_clk", + 0x02 + } + } + }, + + Package (0x12) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_intf_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_intf_clk", + One + } + } + }, + + Package (0x12) + { + "PSTATE", + 0x04, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_intf_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk1_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc1_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_intf_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + Zero, + Zero + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + Zero + }, + + Package (0x02) + { + "PREPARE_PSTATE", + Zero + }, + + Package (0x02) + { + "ABANDON_PSTATE", + Zero + } + }, + + Package (0x12) + { + "PSTATE_SET", + 0x03, + Package (0x04) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x19A14780, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x11C31E80, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x18964020, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x11C31E80, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x14810600, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x08D24D00, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x11E1A300, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x08D24D00, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x04, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x10642AC0, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x08D24D00, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x05, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x0BEBC200, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x08D24D00, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x06, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x0A37CADB, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x07, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x09D5B340, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x08, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x08F0D180, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x09, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x05F5E100, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x051BD4B0, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x0124F800, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + Zero, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + Zero, + Zero + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + 0x04 + }, + + Package (0x02) + { + "PREPARE_PSTATE", + 0x04 + }, + + Package (0x02) + { + "ABANDON_PSTATE", + 0x04 + } + }, + + Package (0x30) + { + "PSTATE_SET", + 0x04, + Package (0x04) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000031A4A9F80, + 0x000000031A4A9F80 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000031A4A9F80 + } + } + }, + + Package (0x04) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x0000000302731B80, + 0x0000000302731B80 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x0000000302731B80 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x00000002EA9B9780, + 0x00000002EA9B9780 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000002EA9B9780 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x00000002D2C41380, + 0x00000002D2C41380 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000002D2C41380 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x04, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x00000002BAEC8F80, + 0x00000002BAEC8F80 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000002BAEC8F80 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x05, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x00000002A3150B80, + 0x00000002A3150B80 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000002A3150B80 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x06, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000028B3D8780, + 0x000000028B3D8780 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000028B3D8780 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x07, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x0000000273660380, + 0x0000000273660380 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x0000000273660380 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x08, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000025B8E7F80, + 0x000000025B8E7F80 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000025B8E7F80 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x09, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x000000023C346000 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000023C346000 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x00000002245CDC00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000002245CDC00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x000000020C855800 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000020C855800 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x00000001F4ADD400 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000001F4ADD400 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x00000001DCD65000 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000001DCD65000 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x00000001C4FECC00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000001C4FECC00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x00000001AD274800 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000001AD274800 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x10, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x00000001954FC400 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000001954FC400 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x11, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x000000017D784000 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000017D784000 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x12, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x0000000165A0BC00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x0000000165A0BC00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x13, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x000000014DC93800 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000014DC93800 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x14, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x0000000135F1B400 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x0000000135F1B400 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x15, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x000000011E1A3000 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000011E1A3000 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x16, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x000000010642AC00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000010642AC00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x17, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0xEE6B2800 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0xEE6B2800 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x18, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0xD693A400 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0xD693A400 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x19, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0xBEBC2000 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0xBEBC2000 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x1A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x00000001F4ADD400, + 0xA6E49C00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0xA6E49C00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x1B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x00000001AD274800, + 0x8F0D1800 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x8F0D1800 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x1C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x0000000165A0BC00, + 0x77359400 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x77359400 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x1D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x5F5E1000 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x5F5E1000 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x1E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x59682F00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x59682F00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x1F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x53724E00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x53724E00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x20, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x4D7C6D00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x4D7C6D00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x21, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x47868C00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x47868C00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x22, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x4190AB00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x4190AB00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x23, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x3B9ACA00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x3B9ACA00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x24, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x35A4E900 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x35A4E900 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x25, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x2FAF0800 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x2FAF0800 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x26, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x29B92700 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x29B92700 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x27, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x23C34600 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x23C34600 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x28, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x1DCD6500 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x1DCD6500 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x29, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x17D78400 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x17D78400 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x2A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + 0x1F + }, + + Package (0x02) + { + "PREPARE_PSTATE", + 0x1F + }, + + Package (0x02) + { + "ABANDON_PSTATE", + 0x1F + } + } + } + } + }) + Return (GPCC) /* \_SB_.PEP0.G0MD.GPCC */ + } + + Method (G1MD, 0, NotSerialized) + { + Name (GPCC, Package (0x01) + { + Package (0x03) + { + "DEVICE", + "\\_SB.GPU0", + Package (0x0B) + { + "COMPONENT", + One, + Package (0x03) + { + "FSTATE", + Zero, + Package (0x08) + { + "ENTER", + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gpu_cc_cxo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gpu_cc_cx_gmu_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_gpu_memnoc_gfx_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gpu_cc_gx_gfx3d_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gpu_cc_cx_gmu_clk", + 0x03, + 0x0BEBC200, + 0x03 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_GFX3D", + "ICBID_SLAVE_EBI1", + One, + Zero + } + } + } + }, + + Package (0x03) + { + "FSTATE", + One, + Package (0x06) + { + "ENTER", + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gpu_cc_gx_gfx3d_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_gpu_memnoc_gfx_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gpu_cc_cx_gmu_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gpu_cc_cxo_clk", + 0x02 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + 0x02 + } + } + } + }, + + Package (0x03) + { + "FSTATE", + 0x02, + Package (0x07) + { + "ENTER", + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_GFX3D", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gpu_cc_gx_gfx3d_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_gpu_memnoc_gfx_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gpu_cc_cx_gmu_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gpu_cc_cxo_clk", + 0x02 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + 0x02 + } + } + } + }, + + Package (0x02) + { + "INIT_FSTATE", + One + }, + + Package (0x02) + { + "PRELOAD_FSTATE", + One + }, + + Package (0x02) + { + "ABANDON_FSTATE", + One + }, + + Package (0x07) + { + "PSTATE_SET", + Zero, + Package (0x02) + { + "PSTATE", + Zero + }, + + Package (0x05) + { + "PSTATE", + One, + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + 0x02 + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + One + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + Zero + }, + + Package (0x02) + { + "PREPARE_PSTATE", + Zero + }, + + Package (0x02) + { + "ABANDON_PSTATE", + Zero + } + }, + + Package (0x08) + { + "PSTATE_SET", + One, + Package (0x02) + { + "PSTATE", + Zero + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "cx_gdsc", + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "cx_gdsc", + 0x02 + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + Zero + }, + + Package (0x02) + { + "PREPARE_PSTATE", + Zero + }, + + Package (0x02) + { + "ABANDON_PSTATE", + Zero + } + }, + + Package (0x07) + { + "PSTATE_SET", + 0x02, + Package (0x02) + { + "PSTATE", + Zero + }, + + Package (0x02) + { + "PSTATE", + One + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + One + }, + + Package (0x02) + { + "PREPARE_PSTATE", + One + }, + + Package (0x02) + { + "ABANDON_PSTATE", + One + } + } + } + } + }) + Return (GPCC) /* \_SB_.PEP0.G1MD.GPCC */ + } + + Method (G2MD, 0, NotSerialized) + { + Name (GPCC, Package (0x01) + { + Package (0x03) + { + "DEVICE", + "\\_SB.GPU0", + Package (0x0C) + { + "COMPONENT", + 0x02, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x04) + { + "FSTATE", + One, + Package (0x0B) + { + "ENTER", + Package (0x01) + { + "PSTATE_SAVE" + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x0C + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x03, + 0x31 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + Zero, + Zero + } + } + }, + + Package (0x09) + { + "EXIT", + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + One + } + }, + + Package (0x01) + { + "PSTATE_RESTORE" + } + } + }, + + Package (0x04) + { + "FSTATE", + 0x02, + Package (0x0F) + { + "ENTER", + Package (0x01) + { + "PSTATE_SAVE" + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x0C + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x03, + 0x31 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + Zero, + Zero + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + 0x02 + } + } + }, + + Package (0x0D) + { + "EXIT", + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + One + } + }, + + Package (0x01) + { + "PSTATE_RESTORE" + } + } + }, + + Package (0x02) + { + "INIT_FSTATE", + Zero + }, + + Package (0x02) + { + "PRELOAD_FSTATE", + 0x02 + }, + + Package (0x02) + { + "ABANDON_FSTATE", + 0x02 + }, + + Package (0x07) + { + "PSTATE_SET", + Zero, + Package (0x02) + { + "PSTATE", + Zero + }, + + Package (0x02) + { + "PSTATE", + One + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + Zero + }, + + Package (0x02) + { + "PREPARE_PSTATE", + Zero + }, + + Package (0x02) + { + "ABANDON_PSTATE", + Zero + } + }, + + Package (0x04) + { + "PSTATE_SET", + One, + Package (0x05) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + One + } + } + }, + + Package (0x05) + { + "PSTATE", + One, + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + 0x02 + } + } + } + }, + + Package (0x12) + { + "PSTATE_SET", + 0x02, + Package (0x04) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x19A14780, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x11C31E80, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x18964020, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x11C31E80, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x14810600, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x08D24D00, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x11E1A300, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x08D24D00, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x04, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x10642AC0, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x08D24D00, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x05, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x0BEBC200, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x08D24D00, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x06, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x0A37CADB, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x07, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x09D5B340, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x08, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x08F0D180, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x09, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x05F5E100, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x051BD4B0, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x0124F800, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + Zero, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + Zero, + Zero + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + 0x08 + }, + + Package (0x02) + { + "PREPARE_PSTATE", + 0x08 + }, + + Package (0x02) + { + "ABANDON_PSTATE", + 0x08 + } + }, + + Package (0x34) + { + "PSTATE_SET", + 0x03, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x000000031A4A9F80, + 0x000000031A4A9F80 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x0000000302731B80, + 0x0000000302731B80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x00000002EA9B9780, + 0x00000002EA9B9780 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x00000002D2C41380, + 0x00000002D2C41380 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x00000002BAEC8F80, + 0x00000002BAEC8F80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x00000002A3150B80, + 0x00000002A3150B80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x06, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x000000028B3D8780, + 0x000000028B3D8780 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x07, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x0000000273660380, + 0x0000000273660380 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x08, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x000000025B8E7F80, + 0x000000025B8E7F80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x09, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x0000000243B6FB80, + 0x0000000243B6FB80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x000000022BDF7780, + 0x000000022BDF7780 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x000000021407F380, + 0x000000021407F380 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x00000001FC306F80, + 0x00000001FC306F80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x00000001E458EB80, + 0x00000001E458EB80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x00000001CC816780, + 0x00000001CC816780 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x00000001B4A9E380, + 0x00000001B4A9E380 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x10, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x000000019CD25F80, + 0x000000019CD25F80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x11, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x0000000184FADB80, + 0x0000000184FADB80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x12, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x000000016D235780, + 0x000000016D235780 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x13, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x00000001554BD380, + 0x00000001554BD380 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x14, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x000000013D744F80, + 0x000000013D744F80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x15, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x00000001259CCB80, + 0x00000001259CCB80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x16, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x000000010DC54780, + 0x000000010DC54780 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x17, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0xF5EDC380, + 0xF5EDC380 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x18, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0xDE163F80, + 0xDE163F80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x19, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0xC63EBB80, + 0xC63EBB80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0xAE673780, + 0xAE673780 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x968FB380, + 0x968FB380 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x8F0D1800, + 0x8F0D1800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x89173700, + 0x89173700 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x83215600, + 0x83215600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x7D2B7500, + 0x7D2B7500 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x20, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x77359400, + 0x77359400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x21, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x713FB300, + 0x713FB300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x22, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x6B49D200, + 0x6B49D200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x23, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x6553F100, + 0x6553F100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x24, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x5F5E1000, + 0x5F5E1000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x25, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x59682F00, + 0x59682F00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x26, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x53724E00, + 0x53724E00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x27, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x4D7C6D00, + 0x4D7C6D00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x28, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x47868C00, + 0x47868C00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x29, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x4190AB00, + 0x4190AB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x3B9ACA00, + 0x3B9ACA00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x35A4E900, + 0x35A4E900 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x2FAF0800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x29B92700, + 0x29B92700 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x23C34600, + 0x23C34600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x1DCD6500, + 0x1DCD6500 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x30, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + 0x17D78400, + 0x17D78400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x31, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + } + } + } + } + } + }) + Return (GPCC) /* \_SB_.PEP0.G2MD.GPCC */ + } + + Method (G3MD, 0, NotSerialized) + { + Name (GPCC, Package (0x01) + { + Package (0x03) + { + "DEVICE", + "\\_SB.GPU0", + Package (0x0C) + { + "COMPONENT", + 0x03, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x04) + { + "FSTATE", + One, + Package (0x0C) + { + "ENTER", + Package (0x01) + { + "PSTATE_SAVE" + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x07 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x03, + 0x31 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rot_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + Zero, + Zero + } + } + }, + + Package (0x0B) + { + "EXIT", + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rot_clk", + One + } + }, + + Package (0x01) + { + "PSTATE_RESTORE" + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x04 + } + } + } + }, + + Package (0x04) + { + "FSTATE", + 0x02, + Package (0x10) + { + "ENTER", + Package (0x01) + { + "PSTATE_SAVE" + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x07 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x03, + 0x31 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rot_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + Zero, + Zero + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + 0x02 + } + } + }, + + Package (0x0F) + { + "EXIT", + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rot_clk", + One + } + }, + + Package (0x01) + { + "PSTATE_RESTORE" + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x04 + } + } + } + }, + + Package (0x02) + { + "INIT_FSTATE", + Zero + }, + + Package (0x02) + { + "PRELOAD_FSTATE", + 0x02 + }, + + Package (0x02) + { + "ABANDON_FSTATE", + 0x02 + }, + + Package (0x07) + { + "PSTATE_SET", + Zero, + Package (0x02) + { + "PSTATE", + Zero + }, + + Package (0x02) + { + "PSTATE", + One + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + Zero + }, + + Package (0x02) + { + "PREPARE_PSTATE", + Zero + }, + + Package (0x02) + { + "ABANDON_PSTATE", + Zero + } + }, + + Package (0x04) + { + "PSTATE_SET", + One, + Package (0x05) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + One + } + } + }, + + Package (0x05) + { + "PSTATE", + One, + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + 0x02 + } + } + } + }, + + Package (0x0D) + { + "PSTATE_SET", + 0x02, + Package (0x04) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_rot_clk", + 0x03, + 0x19A14780, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x11C31E80, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_rot_clk", + 0x03, + 0x18964020, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x11C31E80, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_rot_clk", + 0x03, + 0x14810600, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x08D24D00, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_rot_clk", + 0x03, + 0x11E1A300, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x08D24D00, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x04, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_rot_clk", + 0x03, + 0x0A37CADB, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x05, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_rot_clk", + 0x03, + 0x09D5B340, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x06, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_rot_clk", + 0x03, + 0x0124F800, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x07, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_rot_clk", + 0x03, + Zero, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + Zero, + Zero + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + 0x05 + }, + + Package (0x02) + { + "PREPARE_PSTATE", + 0x05 + }, + + Package (0x02) + { + "ABANDON_PSTATE", + 0x05 + } + }, + + Package (0x34) + { + "PSTATE_SET", + 0x03, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x000000031A4A9F80, + 0x000000031A4A9F80 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x0000000302731B80, + 0x0000000302731B80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x00000002EA9B9780, + 0x00000002EA9B9780 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x00000002D2C41380, + 0x00000002D2C41380 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x00000002BAEC8F80, + 0x00000002BAEC8F80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x00000002A3150B80, + 0x00000002A3150B80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x06, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x000000028B3D8780, + 0x000000028B3D8780 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x07, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x0000000273660380, + 0x0000000273660380 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x08, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x000000025B8E7F80, + 0x000000025B8E7F80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x09, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x0000000243B6FB80, + 0x0000000243B6FB80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x000000022BDF7780, + 0x000000022BDF7780 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x000000021407F380, + 0x000000021407F380 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x00000001FC306F80, + 0x00000001FC306F80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x00000001E458EB80, + 0x00000001E458EB80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x00000001CC816780, + 0x00000001CC816780 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x00000001B4A9E380, + 0x00000001B4A9E380 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x10, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x000000019CD25F80, + 0x000000019CD25F80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x11, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x0000000184FADB80, + 0x0000000184FADB80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x12, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x000000016D235780, + 0x000000016D235780 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x13, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x00000001554BD380, + 0x00000001554BD380 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x14, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x000000013D744F80, + 0x000000013D744F80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x15, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x00000001259CCB80, + 0x00000001259CCB80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x16, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x000000010DC54780, + 0x000000010DC54780 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x17, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0xF5EDC380, + 0xF5EDC380 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x18, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0xDE163F80, + 0xDE163F80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x19, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0xC63EBB80, + 0xC63EBB80 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0xAE673780, + 0xAE673780 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x968FB380, + 0x968FB380 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x8F0D1800, + 0x8F0D1800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x89173700, + 0x89173700 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x83215600, + 0x83215600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x7D2B7500, + 0x7D2B7500 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x20, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x77359400, + 0x77359400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x21, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x713FB300, + 0x713FB300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x22, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x6B49D200, + 0x6B49D200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x23, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x6553F100, + 0x6553F100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x24, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x5F5E1000, + 0x5F5E1000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x25, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x59682F00, + 0x59682F00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x26, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x53724E00, + 0x53724E00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x27, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x4D7C6D00, + 0x4D7C6D00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x28, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x47868C00, + 0x47868C00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x29, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x4190AB00, + 0x4190AB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x3B9ACA00, + 0x3B9ACA00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x35A4E900, + 0x35A4E900 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x2FAF0800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x29B92700, + 0x29B92700 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x23C34600, + 0x23C34600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x1DCD6500, + 0x1DCD6500 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x30, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + 0x17D78400, + 0x17D78400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x31, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP1", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + } + } + } + } + } + }) + Return (GPCC) /* \_SB_.PEP0.G3MD.GPCC */ + } + + Method (G4MD, 0, NotSerialized) + { + Name (GPCC, Package (0x01) + { + Package (0x03) + { + "DEVICE", + "\\_SB.GPU0", + Package (0x0C) + { + "COMPONENT", + 0x04, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x04) + { + "FSTATE", + One, + Package (0x09) + { + "ENTER", + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_ahb_clk", + 0x02 + } + } + }, + + Package (0x09) + { + "EXIT", + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_core_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_core_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_core_clk", + One + } + } + } + }, + + Package (0x04) + { + "FSTATE", + 0x02, + Package (0x13) + { + "ENTER", + Package (0x01) + { + "PSTATE_SAVE" + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x06 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x03, + 0x6E + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec1_gdsc", + 0x04 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec1_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec0_gdsc", + 0x04 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec0_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "venus_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_xo_clk", + 0x02 + } + } + }, + + Package (0x18) + { + "EXIT", + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "venus_gdsc", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec0_gdsc", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec0_gdsc", + 0x03 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec1_gdsc", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec1_gdsc", + 0x03 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_core_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_core_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_core_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "video_cc_vcodec0_core_clk", + 0x09, + 0x12 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "video_cc_vcodec1_core_clk", + 0x09, + 0x12 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "video_cc_venus_ctl_core_clk", + 0x09, + 0x12 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "video_cc_vcodec0_core_clk", + 0x09, + 0x14 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "video_cc_vcodec1_core_clk", + 0x09, + 0x14 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "video_cc_venus_ctl_core_clk", + 0x09, + 0x14 + } + }, + + Package (0x01) + { + "PSTATE_RESTORE" + } + } + }, + + Package (0x02) + { + "INIT_FSTATE", + Zero + }, + + Package (0x02) + { + "PRELOAD_FSTATE", + 0x02 + }, + + Package (0x02) + { + "ABANDON_FSTATE", + 0x02 + }, + + Package (0x07) + { + "PSTATE_SET", + Zero, + Package (0x02) + { + "PSTATE", + Zero + }, + + Package (0x11) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_core_clk", + 0x0A + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_axi_clk", + 0x0A + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_core_clk", + 0x0A + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_axi_clk", + 0x0A + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_core_clk", + 0x0A + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_axi_clk", + 0x0A + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ahb_clk", + 0x0A + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ahb_clk", + 0x0B + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_axi_clk", + 0x0B + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_core_clk", + 0x0B + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_axi_clk", + 0x0B + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_core_clk", + 0x0B + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_axi_clk", + 0x0B + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_core_clk", + 0x0B + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + One + }, + + Package (0x02) + { + "PREPARE_PSTATE", + Zero + }, + + Package (0x02) + { + "ABANDON_PSTATE", + One + } + }, + + Package (0x07) + { + "PSTATE_SET", + One, + Package (0x0A) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "venus_gdsc", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec0_gdsc", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec0_gdsc", + 0x03 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec1_gdsc", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec1_gdsc", + 0x03 + } + } + }, + + Package (0x0A) + { + "PSTATE", + One, + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec1_gdsc", + 0x04 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec1_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec0_gdsc", + 0x04 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec0_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "venus_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_xo_clk", + 0x02 + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + One + }, + + Package (0x02) + { + "PREPARE_PSTATE", + One + }, + + Package (0x02) + { + "ABANDON_PSTATE", + One + } + }, + + Package (0x0C) + { + "PSTATE_SET", + 0x02, + Package (0x06) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_venus_ctl_core_clk", + 0x03, + 0x1FC4EF40, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec0_core_clk", + 0x03, + 0x1FC4EF40, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec1_core_clk", + 0x03, + 0x1FC4EF40, + 0x03 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_VENUS_CFG", + 0x11E1A300, + Zero + } + } + }, + + Package (0x06) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_venus_ctl_core_clk", + 0x03, + 0x1A76E700, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec0_core_clk", + 0x03, + 0x1A76E700, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec1_core_clk", + 0x03, + 0x1A76E700, + 0x03 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_VENUS_CFG", + 0x11E1A300, + Zero + } + } + }, + + Package (0x06) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_venus_ctl_core_clk", + 0x03, + 0x16A65700, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec0_core_clk", + 0x03, + 0x16A65700, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec1_core_clk", + 0x03, + 0x16A65700, + 0x03 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_VENUS_CFG", + 0x08F0D180, + Zero + } + } + }, + + Package (0x06) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_venus_ctl_core_clk", + 0x03, + 0x1312D000, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec0_core_clk", + 0x03, + 0x1312D000, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec1_core_clk", + 0x03, + 0x1312D000, + 0x03 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_VENUS_CFG", + 0x08F0D180, + Zero + } + } + }, + + Package (0x06) + { + "PSTATE", + 0x04, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_venus_ctl_core_clk", + 0x03, + 0x0BEBC200, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec0_core_clk", + 0x03, + 0x0BEBC200, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec1_core_clk", + 0x03, + 0x0BEBC200, + 0x03 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_VENUS_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x06) + { + "PSTATE", + 0x05, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_venus_ctl_core_clk", + 0x03, + 0x05F5E100, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec0_core_clk", + 0x03, + 0x05F5E100, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec1_core_clk", + 0x03, + 0x05F5E100, + 0x03 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_VENUS_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x06) + { + "PSTATE", + 0x06, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_venus_ctl_core_clk", + 0x03, + Zero, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec0_core_clk", + 0x03, + Zero, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec1_core_clk", + 0x03, + Zero, + 0x03 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_VENUS_CFG", + Zero, + Zero + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + 0x04 + }, + + Package (0x02) + { + "PREPARE_PSTATE", + 0x04 + }, + + Package (0x02) + { + "ABANDON_PSTATE", + 0x04 + } + }, + + Package (0x74) + { + "PSTATE_SET", + 0x03, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000051F4D5C00, + 0x000000051F4D5C00 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000513619A00, + 0x0000000513619A00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000050775D800, + 0x000000050775D800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000004FB8A1600, + 0x00000004FB8A1600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000004EF9E5400, + 0x00000004EF9E5400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000004E3B29200, + 0x00000004E3B29200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x06, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000004D7C6D000, + 0x00000004D7C6D000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x07, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000004CBDB0E00, + 0x00000004CBDB0E00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x08, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000004BFEF4C00, + 0x00000004BFEF4C00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x09, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000004B4038A00, + 0x00000004B4038A00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000004A817C800, + 0x00000004A817C800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000049C2C0600, + 0x000000049C2C0600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000490404400, + 0x0000000490404400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000484548200, + 0x0000000484548200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000047868C000, + 0x000000047868C000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000046C7CFE00, + 0x000000046C7CFE00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x10, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000460913C00, + 0x0000000460913C00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x11, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000454A57A00, + 0x0000000454A57A00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x12, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000448B9B800, + 0x0000000448B9B800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x13, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000043CCDF600, + 0x000000043CCDF600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x14, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000430E23400, + 0x0000000430E23400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x15, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000424F67200, + 0x0000000424F67200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x16, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000004190AB000, + 0x00000004190AB000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x17, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000040D1EEE00, + 0x000000040D1EEE00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x18, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000401332C00, + 0x0000000401332C00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x19, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000003F5476A00, + 0x00000003F5476A00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000003E95BA800, + 0x00000003E95BA800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000003DD6FE600, + 0x00000003DD6FE600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000003D1842400, + 0x00000003D1842400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000003C5986200, + 0x00000003C5986200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000003B9ACA000, + 0x00000003B9ACA000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000003ADC0DE00, + 0x00000003ADC0DE00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x20, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000003A1D51C00, + 0x00000003A1D51C00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x21, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000395E95A00, + 0x0000000395E95A00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x22, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000389FD9800, + 0x0000000389FD9800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x23, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000037E11D600, + 0x000000037E11D600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x24, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000372261400, + 0x0000000372261400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x25, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000003663A5200, + 0x00000003663A5200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x26, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000035A4E9000, + 0x000000035A4E9000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x27, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000034E62CE00, + 0x000000034E62CE00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x28, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000342770C00, + 0x0000000342770C00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x29, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000003368B4A00, + 0x00000003368B4A00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000032A9F8800, + 0x000000032A9F8800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000031EB3C600, + 0x000000031EB3C600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000312C80400, + 0x0000000312C80400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000306DC4200, + 0x0000000306DC4200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000002FAF08000, + 0x00000002FAF08000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000002EF04BE00, + 0x00000002EF04BE00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x30, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000002E318FC00, + 0x00000002E318FC00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x31, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000002D72D3A00, + 0x00000002D72D3A00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x32, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000002CB417800, + 0x00000002CB417800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x33, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000002BF55B600, + 0x00000002BF55B600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x34, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000002B369F400, + 0x00000002B369F400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x35, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000002A77E3200, + 0x00000002A77E3200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x36, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000029B927000, + 0x000000029B927000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x37, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000028FA6AE00, + 0x000000028FA6AE00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x38, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000283BAEC00, + 0x0000000283BAEC00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x39, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000277CF2A00, + 0x0000000277CF2A00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x3A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000026BE36800, + 0x000000026BE36800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x3B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000025FF7A600, + 0x000000025FF7A600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x3C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000002540BE400, + 0x00000002540BE400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x3D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000248202200, + 0x0000000248202200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x3E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000023C346000, + 0x000000023C346000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x3F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000230489E00, + 0x0000000230489E00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x40, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000002245CDC00, + 0x00000002245CDC00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x41, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000218711A00, + 0x0000000218711A00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x42, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000020C855800, + 0x000000020C855800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x43, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000200999600, + 0x0000000200999600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x44, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000001F4ADD400, + 0x00000001F4ADD400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x45, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000001E8C21200, + 0x00000001E8C21200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x46, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000001DCD65000, + 0x00000001DCD65000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x47, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000001D0EA8E00, + 0x00000001D0EA8E00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x48, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000001C4FECC00, + 0x00000001C4FECC00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x49, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000001B9130A00, + 0x00000001B9130A00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x4A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000001AD274800, + 0x00000001AD274800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x4B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000001A13B8600, + 0x00000001A13B8600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x4C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000001954FC400, + 0x00000001954FC400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x4D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000189640200, + 0x0000000189640200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x4E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000017D784000, + 0x000000017D784000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x4F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000001718C7E00, + 0x00000001718C7E00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x50, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000165A0BC00, + 0x0000000165A0BC00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x51, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000159B4FA00, + 0x0000000159B4FA00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x52, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000014DC93800, + 0x000000014DC93800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x53, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000141DD7600, + 0x0000000141DD7600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x54, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0000000135F1B400, + 0x0000000135F1B400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x55, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000012A05F200, + 0x000000012A05F200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x56, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000011E1A3000, + 0x000000011E1A3000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x57, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x00000001122E6E00, + 0x00000001122E6E00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x58, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x000000010642AC00, + 0x000000010642AC00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x59, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0xFA56EA00, + 0xFA56EA00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x5A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0xEE6B2800, + 0xEE6B2800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x5B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0xE27F6600, + 0xE27F6600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x5C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0xD693A400, + 0xD693A400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x5D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0xCAA7E200, + 0xCAA7E200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x5E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0xBEBC2000, + 0xBEBC2000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x5F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0xB2D05E00, + 0xB2D05E00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x60, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0xA6E49C00, + 0xA6E49C00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x61, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x9AF8DA00, + 0x9AF8DA00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x62, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x8F0D1800, + 0x8F0D1800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x63, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x83215600, + 0x83215600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x64, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x77359400, + 0x77359400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x65, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x6B49D200, + 0x6B49D200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x66, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x5F5E1000, + 0x5F5E1000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x67, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x53724E00, + 0x53724E00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x68, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x47868C00, + 0x47868C00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x69, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x3B9ACA00, + 0x3B9ACA00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x6A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x2FAF0800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x6B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x23C34600, + 0x23C34600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x6C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x17D78400, + 0x17D78400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x6D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + 0x0BEBC200, + 0x0BEBC200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x6E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P0", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + 0x6C + }, + + Package (0x02) + { + "PREPARE_PSTATE", + 0x6C + }, + + Package (0x02) + { + "ABANDON_PSTATE", + 0x6C + } + } + } + } + }) + Return (GPCC) /* \_SB_.PEP0.G4MD.GPCC */ + } + + Method (G5MD, 0, NotSerialized) + { + Name (GPCC, Package (0x01) + { + Package (0x03) + { + "DEVICE", + "\\_SB.GPU0", + Package (0x0A) + { + "COMPONENT", + 0x05, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + }, + + Package (0x02) + { + "INIT_FSTATE", + Zero + }, + + Package (0x02) + { + "PRELOAD_FSTATE", + Zero + }, + + Package (0x02) + { + "ABANDON_FSTATE", + Zero + }, + + Package (0x07) + { + "PSTATE_SET", + Zero, + Package (0x02) + { + "PSTATE", + Zero + }, + + Package (0x02) + { + "PSTATE", + One + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + Zero + }, + + Package (0x02) + { + "PREPARE_PSTATE", + Zero + }, + + Package (0x02) + { + "ABANDON_PSTATE", + Zero + } + }, + + Package (0x07) + { + "PSTATE_SET", + One, + Package (0x02) + { + "PSTATE", + Zero + }, + + Package (0x02) + { + "PSTATE", + One + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + Zero + }, + + Package (0x02) + { + "PREPARE_PSTATE", + One + }, + + Package (0x02) + { + "ABANDON_PSTATE", + Zero + } + }, + + Package (0x06) + { + "PSTATE_SET", + 0x02, + Package (0x02) + { + "PSTATE", + Zero + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + Zero + }, + + Package (0x02) + { + "PREPARE_PSTATE", + Zero + }, + + Package (0x02) + { + "ABANDON_PSTATE", + Zero + } + } + } + } + }) + Return (GPCC) /* \_SB_.PEP0.G5MD.GPCC */ + } + + Method (G6MD, 0, NotSerialized) + { + Name (GPCC, Package (0x01) + { + Package (0x03) + { + "DEVICE", + "\\_SB.GPU0", + Package (0x0C) + { + "COMPONENT", + 0x06, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x04) + { + "FSTATE", + One, + Package (0x09) + { + "ENTER", + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_ahb_clk", + 0x02 + } + } + }, + + Package (0x09) + { + "EXIT", + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_core_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_core_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_core_clk", + One + } + } + } + }, + + Package (0x04) + { + "FSTATE", + 0x02, + Package (0x13) + { + "ENTER", + Package (0x01) + { + "PSTATE_SAVE" + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x06 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x03, + 0x6E + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec1_gdsc", + 0x04 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec1_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec0_gdsc", + 0x04 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec0_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "venus_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_xo_clk", + 0x02 + } + } + }, + + Package (0x18) + { + "EXIT", + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "venus_gdsc", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec0_gdsc", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec0_gdsc", + 0x03 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec1_gdsc", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec1_gdsc", + 0x03 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_core_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_core_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_core_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "video_cc_vcodec0_core_clk", + 0x09, + 0x12 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "video_cc_vcodec1_core_clk", + 0x09, + 0x12 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "video_cc_venus_ctl_core_clk", + 0x09, + 0x12 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "video_cc_vcodec0_core_clk", + 0x09, + 0x14 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "video_cc_vcodec1_core_clk", + 0x09, + 0x14 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "video_cc_venus_ctl_core_clk", + 0x09, + 0x14 + } + }, + + Package (0x01) + { + "PSTATE_RESTORE" + } + } + }, + + Package (0x02) + { + "INIT_FSTATE", + Zero + }, + + Package (0x02) + { + "PRELOAD_FSTATE", + 0x02 + }, + + Package (0x02) + { + "ABANDON_FSTATE", + 0x02 + }, + + Package (0x07) + { + "PSTATE_SET", + Zero, + Package (0x02) + { + "PSTATE", + Zero + }, + + Package (0x11) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_core_clk", + 0x0A + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_axi_clk", + 0x0A + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_core_clk", + 0x0A + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_axi_clk", + 0x0A + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_core_clk", + 0x0A + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_axi_clk", + 0x0A + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ahb_clk", + 0x0A + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ahb_clk", + 0x0B + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_axi_clk", + 0x0B + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_venus_ctl_core_clk", + 0x0B + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_axi_clk", + 0x0B + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec0_core_clk", + 0x0B + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_axi_clk", + 0x0B + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "video_cc_vcodec1_core_clk", + 0x0B + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + One + }, + + Package (0x02) + { + "PREPARE_PSTATE", + Zero + }, + + Package (0x02) + { + "ABANDON_PSTATE", + One + } + }, + + Package (0x07) + { + "PSTATE_SET", + One, + Package (0x0A) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "venus_gdsc", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec0_gdsc", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec0_gdsc", + 0x03 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec1_gdsc", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec1_gdsc", + 0x03 + } + } + }, + + Package (0x0A) + { + "PSTATE", + One, + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec1_gdsc", + 0x04 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec1_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec0_gdsc", + 0x04 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "vcodec0_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "venus_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_video_xo_clk", + 0x02 + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + One + }, + + Package (0x02) + { + "PREPARE_PSTATE", + One + }, + + Package (0x02) + { + "ABANDON_PSTATE", + One + } + }, + + Package (0x0C) + { + "PSTATE_SET", + 0x02, + Package (0x06) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_venus_ctl_core_clk", + 0x03, + 0x1FC4EF40, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec0_core_clk", + 0x03, + 0x1FC4EF40, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec1_core_clk", + 0x03, + 0x1FC4EF40, + 0x03 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_VENUS_CFG", + 0x11E1A300, + Zero + } + } + }, + + Package (0x06) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_venus_ctl_core_clk", + 0x03, + 0x1A76E700, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec0_core_clk", + 0x03, + 0x1A76E700, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec1_core_clk", + 0x03, + 0x1A76E700, + 0x03 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_VENUS_CFG", + 0x11E1A300, + Zero + } + } + }, + + Package (0x06) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_venus_ctl_core_clk", + 0x03, + 0x18148D00, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec0_core_clk", + 0x03, + 0x18148D00, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec1_core_clk", + 0x03, + 0x18148D00, + 0x03 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_VENUS_CFG", + 0x08F0D180, + Zero + } + } + }, + + Package (0x06) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_venus_ctl_core_clk", + 0x03, + 0x13AB6680, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec0_core_clk", + 0x03, + 0x13AB6680, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec1_core_clk", + 0x03, + 0x13AB6680, + 0x03 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_VENUS_CFG", + 0x08F0D180, + Zero + } + } + }, + + Package (0x06) + { + "PSTATE", + 0x04, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_venus_ctl_core_clk", + 0x03, + 0x0BEBC200, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec0_core_clk", + 0x03, + 0x0BEBC200, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec1_core_clk", + 0x03, + 0x0BEBC200, + 0x03 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_VENUS_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x06) + { + "PSTATE", + 0x05, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_venus_ctl_core_clk", + 0x03, + 0x05F5E100, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec0_core_clk", + 0x03, + 0x05F5E100, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec1_core_clk", + 0x03, + 0x05F5E100, + 0x03 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_VENUS_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x06) + { + "PSTATE", + 0x06, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_venus_ctl_core_clk", + 0x03, + Zero, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec0_core_clk", + 0x03, + Zero, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "video_cc_vcodec1_core_clk", + 0x03, + Zero, + 0x03 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_VENUS_CFG", + Zero, + Zero + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + 0x04 + }, + + Package (0x02) + { + "PREPARE_PSTATE", + 0x04 + }, + + Package (0x02) + { + "ABANDON_PSTATE", + 0x04 + } + }, + + Package (0x74) + { + "PSTATE_SET", + 0x03, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000051F4D5C00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000513619A00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000050775D800, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000004FB8A1600, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000004EF9E5400, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000004E3B29200, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x06, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000004D7C6D000, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x07, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000004CBDB0E00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x08, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000004BFEF4C00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x09, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000004B4038A00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000004A817C800, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000049C2C0600, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000490404400, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000484548200, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000047868C000, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000046C7CFE00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x10, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000460913C00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x11, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000454A57A00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x12, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000448B9B800, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x13, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000043CCDF600, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x14, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000430E23400, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x15, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000424F67200, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x16, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000004190AB000, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x17, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000040D1EEE00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x18, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000401332C00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x19, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000003F5476A00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000003E95BA800, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000003DD6FE600, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000003D1842400, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000003C5986200, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000003B9ACA000, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000003ADC0DE00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x20, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000003A1D51C00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x21, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000395E95A00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x22, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000389FD9800, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x23, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000037E11D600, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x24, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000372261400, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x25, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000003663A5200, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x26, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000035A4E9000, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x27, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000034E62CE00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x28, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000342770C00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x29, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000003368B4A00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000032A9F8800, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000031EB3C600, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000312C80400, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000306DC4200, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000002FAF08000, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x2F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000002EF04BE00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x30, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000002E318FC00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x31, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000002D72D3A00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x32, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000002CB417800, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x33, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000002BF55B600, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x34, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000002B369F400, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x35, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000002A77E3200, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x36, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000029B927000, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x37, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000028FA6AE00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x38, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000283BAEC00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x39, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000277CF2A00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x3A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000026BE36800, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x3B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000025FF7A600, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x3C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000002540BE400, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x3D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000248202200, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x3E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000023C346000, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x3F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000230489E00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x40, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000002245CDC00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x41, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000218711A00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x42, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000020C855800, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x43, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000200999600, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x44, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000001F4ADD400, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x45, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000001E8C21200, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x46, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000001DCD65000, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x47, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000001D0EA8E00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x48, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000001C4FECC00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x49, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000001B9130A00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x4A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000001AD274800, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x4B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000001A13B8600, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x4C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000001954FC400, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x4D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000189640200, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x4E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000017D784000, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x4F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000001718C7E00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x50, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000165A0BC00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x51, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000159B4FA00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x52, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000014DC93800, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x53, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000141DD7600, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x54, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0000000135F1B400, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x55, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000012A05F200, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x56, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000011E1A3000, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x57, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x00000001122E6E00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x58, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x000000010642AC00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x59, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0xFA56EA00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x5A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0xEE6B2800, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x5B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0xE27F6600, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x5C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0xD693A400, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x5D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0xCAA7E200, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x5E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0xBEBC2000, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x5F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0xB2D05E00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x60, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0xA6E49C00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x61, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x9AF8DA00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x62, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x8F0D1800, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x63, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x83215600, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x64, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x77359400, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x65, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x6B49D200, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x66, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x5F5E1000, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x67, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x53724E00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x68, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x47868C00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x69, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x3B9ACA00, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x6A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x6B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x23C34600, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x6C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x17D78400, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x6D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + 0x0BEBC200, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x6E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_VIDEO_P1", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + 0x6C + }, + + Package (0x02) + { + "PREPARE_PSTATE", + 0x6C + }, + + Package (0x02) + { + "ABANDON_PSTATE", + 0x6C + } + } + } + } + }) + Return (GPCC) /* \_SB_.PEP0.G6MD.GPCC */ + } + + Method (G7MD, 0, NotSerialized) + { + Name (GPCC, Package (0x01) + { + Package (0x03) + { + "DEVICE", + "\\_SB.GPU0", + Package (0x0C) + { + "COMPONENT", + 0x07, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x04) + { + "FSTATE", + One, + Package (0x09) + { + "ENTER", + Package (0x01) + { + "PSTATE_SAVE" + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x03, + 0x0C + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x04, + 0x2A + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x04 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "phy_refgen_south", + 0x02 + } + } + }, + + Package (0x06) + { + "EXIT", + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "phy_refgen_south", + One + } + }, + + Package (0x01) + { + "PSTATE_RESTORE" + } + } + }, + + Package (0x02) + { + "INIT_FSTATE", + One + }, + + Package (0x02) + { + "PRELOAD_FSTATE", + Zero + }, + + Package (0x02) + { + "ABANDON_FSTATE", + Zero + }, + + Package (0x07) + { + "PSTATE_SET", + Zero, + Package (0x02) + { + "PSTATE", + Zero + }, + + Package (0x02) + { + "PSTATE", + One + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + Zero + }, + + Package (0x02) + { + "PREPARE_PSTATE", + Zero + }, + + Package (0x02) + { + "ABANDON_PSTATE", + Zero + } + }, + + Package (0x04) + { + "PSTATE_SET", + One, + Package (0x05) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + One + } + } + }, + + Package (0x05) + { + "PSTATE", + One, + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + 0x02 + } + } + } + }, + + Package (0x0A) + { + "PSTATE_SET", + 0x02, + Package (0x12) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_intf_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_intf_clk", + One + } + } + }, + + Package (0x12) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_intf_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_intf_clk", + One + } + } + }, + + Package (0x12) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_intf_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk1_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc1_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_intf_clk", + 0x02 + } + } + }, + + Package (0x12) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_intf_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_intf_clk", + One + } + } + }, + + Package (0x12) + { + "PSTATE", + 0x04, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte0_intf_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_pclk1_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_esc1_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_byte1_intf_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + Zero, + Zero + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + Zero + }, + + Package (0x02) + { + "PREPARE_PSTATE", + Zero + }, + + Package (0x02) + { + "ABANDON_PSTATE", + Zero + } + }, + + Package (0x12) + { + "PSTATE_SET", + 0x03, + Package (0x04) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x19A14780, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x11C31E80, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x18964020, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x11C31E80, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x14810600, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x08D24D00, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x11E1A300, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x08D24D00, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x04, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x10642AC0, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x08D24D00, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x05, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x0BEBC200, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x08D24D00, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x06, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x0A37CADB, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x07, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x09D5B340, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x08, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x08F0D180, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x09, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x05F5E100, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x051BD4B0, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x0124F800, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + Zero, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + Zero, + Zero + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + 0x04 + }, + + Package (0x02) + { + "PREPARE_PSTATE", + 0x04 + }, + + Package (0x02) + { + "ABANDON_PSTATE", + 0x04 + } + }, + + Package (0x30) + { + "PSTATE_SET", + 0x04, + Package (0x04) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000031A4A9F80, + 0x000000031A4A9F80 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000031A4A9F80 + } + } + }, + + Package (0x04) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x0000000302731B80, + 0x0000000302731B80 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x0000000302731B80 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x00000002EA9B9780, + 0x00000002EA9B9780 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000002EA9B9780 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x00000002D2C41380, + 0x00000002D2C41380 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000002D2C41380 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x04, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x00000002BAEC8F80, + 0x00000002BAEC8F80 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000002BAEC8F80 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x05, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x00000002A3150B80, + 0x00000002A3150B80 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000002A3150B80 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x06, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000028B3D8780, + 0x000000028B3D8780 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000028B3D8780 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x07, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x0000000273660380, + 0x0000000273660380 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x0000000273660380 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x08, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000025B8E7F80, + 0x000000025B8E7F80 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000025B8E7F80 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x09, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x000000023C346000 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000023C346000 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x00000002245CDC00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000002245CDC00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x000000020C855800 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000020C855800 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x00000001F4ADD400 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000001F4ADD400 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x00000001DCD65000 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000001DCD65000 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x00000001C4FECC00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000001C4FECC00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x00000001AD274800 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000001AD274800 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x10, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x00000001954FC400 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000001954FC400 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x11, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x000000017D784000 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000017D784000 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x12, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x0000000165A0BC00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x0000000165A0BC00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x13, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x000000014DC93800 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000014DC93800 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x14, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x0000000135F1B400 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x0000000135F1B400 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x15, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x000000011E1A3000 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000011E1A3000 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x16, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x000000010642AC00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000010642AC00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x17, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0xEE6B2800 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0xEE6B2800 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x18, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0xD693A400 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0xD693A400 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x19, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0xBEBC2000 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0xBEBC2000 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x1A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x00000001F4ADD400, + 0xA6E49C00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0xA6E49C00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x1B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x00000001AD274800, + 0x8F0D1800 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x8F0D1800 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x1C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x0000000165A0BC00, + 0x77359400 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x77359400 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x1D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x5F5E1000 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x5F5E1000 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x1E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x59682F00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x59682F00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x1F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x53724E00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x53724E00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x20, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x4D7C6D00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x4D7C6D00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x21, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x47868C00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x47868C00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x22, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x4190AB00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x4190AB00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x23, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x3B9ACA00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x3B9ACA00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x24, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x35A4E900 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x35A4E900 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x25, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x2FAF0800 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x2FAF0800 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x26, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x29B92700 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x29B92700 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x27, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x23C34600 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x23C34600 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x28, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x1DCD6500 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x1DCD6500 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x29, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x17D78400 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x17D78400 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x2A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + 0x1F + }, + + Package (0x02) + { + "PREPARE_PSTATE", + 0x1F + }, + + Package (0x02) + { + "ABANDON_PSTATE", + 0x1F + } + } + } + } + }) + Return (GPCC) /* \_SB_.PEP0.G7MD.GPCC */ + } + + Method (G8MD, 0, NotSerialized) + { + Name (GPCC, Package (0x01) + { + Package (0x03) + { + "DEVICE", + "\\_SB.GPU0", + Package (0x0B) + { + "COMPONENT", + 0x08, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x04) + { + "FSTATE", + One, + Package (0x18) + { + "ENTER", + Package (0x02) + { + "PMICVREGVOTE", + Package (0x08) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + Zero, + Zero, + Zero, + Zero, + "HLOS_DRV", + "REQUIRED" + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x08) + { + "PPP_RESOURCE_ID_LDO24_A", + One, + Zero, + Zero, + Zero, + Zero, + "HLOS_DRV", + "REQUIRED" + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x08) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + Zero, + Zero, + Zero, + Zero, + "HLOS_DRV", + "REQUIRED" + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_dp_pixel_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_dp_link_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_dp_crypto_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_dp_aux_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_dp_link_intf_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_prim_clkref_en", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + 0x02 + } + }, + + Package (0x01) + { + "PSTATE_SAVE" + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x0C + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x03, + 0x2A + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + Zero, + Zero + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + 0x02 + } + } + }, + + Package (0x16) + { + "EXIT", + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_prim_clkref_en", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_mdp_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_rscc_vsync_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_dp_pixel_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_dp_link_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_dp_crypto_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_dp_aux_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "disp_cc_mdss_dp_link_intf_clk", + One + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x08) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + 0x00124F80, + One, + 0x07, + Zero, + "HLOS_DRV", + "REQUIRED" + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x08) + { + "PPP_RESOURCE_ID_LDO24_A", + One, + 0x002EEBB8, + One, + 0x07, + Zero, + "HLOS_DRV", + "REQUIRED" + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x08) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + 0x000D6D80, + One, + 0x07, + Zero, + "HLOS_DRV", + "REQUIRED" + } + }, + + Package (0x01) + { + "PSTATE_RESTORE" + } + } + }, + + Package (0x02) + { + "INIT_FSTATE", + One + }, + + Package (0x02) + { + "PRELOAD_FSTATE", + Zero + }, + + Package (0x02) + { + "ABANDON_FSTATE", + Zero + }, + + Package (0x07) + { + "PSTATE_SET", + Zero, + Package (0x02) + { + "PSTATE", + Zero + }, + + Package (0x02) + { + "PSTATE", + One + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + Zero + }, + + Package (0x02) + { + "PREPARE_PSTATE", + Zero + }, + + Package (0x02) + { + "ABANDON_PSTATE", + Zero + } + }, + + Package (0x04) + { + "PSTATE_SET", + One, + Package (0x05) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + One + } + } + }, + + Package (0x05) + { + "PSTATE", + One, + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "mdss_core_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_disp_xo_clk", + 0x02 + } + } + } + }, + + Package (0x12) + { + "PSTATE_SET", + 0x02, + Package (0x04) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x19A14780, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x11C31E80, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x18964020, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x11C31E80, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x14810600, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x08D24D00, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x11E1A300, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x08D24D00, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x04, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x10642AC0, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x08D24D00, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x05, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x0BEBC200, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x08D24D00, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x06, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x0A37CADB, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x07, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x09D5B340, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x08, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x08F0D180, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x09, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x05F5E100, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x051BD4B0, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + 0x0124F800, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + 0x047868C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "disp_cc_mdss_mdp_clk", + 0x03, + Zero, + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_DISPLAY_CFG", + Zero, + Zero + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + 0x04 + }, + + Package (0x02) + { + "PREPARE_PSTATE", + 0x04 + }, + + Package (0x02) + { + "ABANDON_PSTATE", + 0x04 + } + }, + + Package (0x30) + { + "PSTATE_SET", + 0x03, + Package (0x04) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000031A4A9F80, + 0x000000031A4A9F80 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000031A4A9F80 + } + } + }, + + Package (0x04) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x0000000302731B80, + 0x0000000302731B80 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x0000000302731B80 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x00000002EA9B9780, + 0x00000002EA9B9780 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000002EA9B9780 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x00000002D2C41380, + 0x00000002D2C41380 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000002D2C41380 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x04, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x00000002BAEC8F80, + 0x00000002BAEC8F80 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000002BAEC8F80 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x05, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x00000002A3150B80, + 0x00000002A3150B80 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000002A3150B80 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x06, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000028B3D8780, + 0x000000028B3D8780 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000028B3D8780 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x07, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x0000000273660380, + 0x0000000273660380 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x0000000273660380 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x08, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000025B8E7F80, + 0x000000025B8E7F80 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000025B8E7F80 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x09, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x000000023C346000 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000023C346000 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x00000002245CDC00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000002245CDC00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x000000020C855800 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000020C855800 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x00000001F4ADD400 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000001F4ADD400 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x00000001DCD65000 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000001DCD65000 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x00000001C4FECC00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000001C4FECC00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x0F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x00000001AD274800 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000001AD274800 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x10, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x00000001954FC400 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x00000001954FC400 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x11, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x000000017D784000 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000017D784000 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x12, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x0000000165A0BC00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x0000000165A0BC00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x13, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x000000014DC93800 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000014DC93800 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x14, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x0000000135F1B400 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x0000000135F1B400 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x15, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x000000011E1A3000 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000011E1A3000 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x16, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0x000000010642AC00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x000000010642AC00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x17, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0xEE6B2800 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0xEE6B2800 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x18, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0xD693A400 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0xD693A400 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x19, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000023C346000, + 0xBEBC2000 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0xBEBC2000 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x1A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x00000001F4ADD400, + 0xA6E49C00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0xA6E49C00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x1B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x00000001AD274800, + 0x8F0D1800 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x8F0D1800 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x1C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x0000000165A0BC00, + 0x77359400 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x77359400 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x1D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x5F5E1000 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x5F5E1000 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x1E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x59682F00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x59682F00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x1F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x53724E00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x53724E00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x20, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x4D7C6D00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x4D7C6D00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x21, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x47868C00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x47868C00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x22, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x4190AB00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x4190AB00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x23, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x3B9ACA00 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x3B9ACA00 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x24, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x35A4E900 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x35A4E900 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x25, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x2FAF0800 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x2FAF0800 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x26, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x29B92700 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x29B92700 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x27, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x23C34600 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x23C34600 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x28, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x1DCD6500 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x1DCD6500 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x29, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + 0x000000011E1A3000, + 0x17D78400 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + 0x2FAF0800, + 0x17D78400 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x2A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MDP0", + "ICBID_SLAVE_MNOC_HF_MEM_NOC", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_MNOC_HF_MEM_NOC", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + 0x1F + }, + + Package (0x02) + { + "PREPARE_PSTATE", + 0x1F + }, + + Package (0x02) + { + "ABANDON_PSTATE", + 0x1F + } + } + } + } + }) + Return (GPCC) /* \_SB_.PEP0.G8MD.GPCC */ + } + + Method (G9MD, 0, NotSerialized) + { + Name (GPCC, Package (0x01) + { + Package (0x03) + { + "DEVICE", + "\\_SB.GPU0", + Package (0x06) + { + "COMPONENT", + 0x09, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "INIT_FSTATE", + Zero + }, + + Package (0x02) + { + "PRELOAD_FSTATE", + Zero + }, + + Package (0x02) + { + "ABANDON_FSTATE", + Zero + } + } + } + }) + Return (GPCC) /* \_SB_.PEP0.G9MD.GPCC */ + } + } + + // BearSmmu + Scope (\_SB.PEP0) + { + // BearSmmu Resources + // + Method (SMMD, 0, NotSerialized) + { + Return (SMMC) /* \_SB_.PEP0.SMMC */ + } + + Name (SMMC, Package (0x02) + { + Package (0x03) + { + "DEVICE", + "\\_SB.MMU0", + Package (0x04) + { + "COMPONENT", + Zero, + Package (0x03) + { + "FSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_hlos1_vote_mmu_tcu_clk", + One + } + } + }, + + Package (0x03) + { + "FSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_hlos1_vote_mmu_tcu_clk", + 0x02 + } + } + } + } + }, + + Package (0x03) + { + "DEVICE", + "\\_SB.MMU1", + Package (0x04) + { + "COMPONENT", + Zero, + Package (0x04) + { + "FSTATE", + Zero, + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "gcc_hlos1_vote_gpu_smmu_gds", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_hlos1_vote_gpu_smmu_clk", + One + } + } + }, + + Package (0x04) + { + "FSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_hlos1_vote_gpu_smmu_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "gcc_hlos1_vote_gpu_smmu_gds", + 0x02 + } + } + } + } + } + }) + } + + // resources needed by oem drivers + Scope (\_SB.PEP0) + { + // OEM + Method (OPMD, 0, NotSerialized) + { + Return (OPCC) /* \_SB_.PEP0.OPCC */ + } + + Name (OPCC, Package (0x04) + { + Package (0x04) + { + "DEVICE", + "\\_SB.PEN1", + Package (0x07) + { + "DSTATE", + Zero, + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x77, + Zero, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO18_A", + One, + 0x001B7740, + One, + One, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + 0x14 + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x15, + One, + Zero, + One, + Zero, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + 0x78 + } + } + }, + + Package (0x06) + { + "DSTATE", + 0x03, + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x15, + Zero, + Zero, + One, + Zero, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO18_A", + One, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + 0x14 + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x77, + Zero, + Zero, + Zero, + Zero, + Zero + } + } + } + }, + + Package (0x04) + { + "DEVICE", + "\\_SB.ACC1", + Package (0x04) + { + "DSTATE", + Zero, + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x0E, + One, + Zero, + One, + Zero, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + 0x0A + } + } + }, + + Package (0x02) + { + "DSTATE", + 0x03 + } + }, + + Package (0x04) + { + "DEVICE", + "\\_SB.ALS1", + Package (0x04) + { + "DSTATE", + Zero, + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x0E, + One, + Zero, + One, + Zero, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + 0x0A + } + } + }, + + Package (0x02) + { + "DSTATE", + 0x03 + } + }, + + Package (0x04) + { + "DEVICE", + "\\_SB.LED1", + Package (0x04) + { + "DSTATE", + Zero, + Package (0x02) + { + "PMICGPIO", + Package (0x08) + { + "IOCTL_PM_GPIO_CONFIG_DIGITAL_OUTPUT", + Zero, + One, + Zero, + Zero, + One, + One, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + 0x0A + } + } + }, + + Package (0x02) + { + "DSTATE", + 0x03 + } + } + }) + } + + // resources needed by subsystem drivers + Scope (\_SB.PEP0) + { + // Subsystem Drivers + Method (SPMD, 0, NotSerialized) + { + Return (SPCC) /* \_SB_.PEP0.SPCC */ + } + + Name (SPCC, Package (0x04) + { + Package (0x05) + { + "DEVICE", + "\\_SB.AMSS", + Package (0x06) + { + "COMPONENT", + Zero, // Component 0. + Package (0x02) + { + "FSTATE", + Zero // f0 state + }, + + Package (0x0D) + { + "PSTATE", + Zero, // P0 state + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_boot_rom_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_mss_cfg_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_mss_q6_memnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_mss_snoc_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_mss_mfab_axis_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_prng_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_mss_axis2_clk", + One + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_SMPS2_C", + 0x02, + 0x000B7980, + One, + Zero, + Zero + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_cx", + 0x0180 + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_mx", + 0x0180 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x06) + { + 0x03, + "ICBID_MASTER_IPA_CORE", + "ICBID_SLAVE_IPA_CORE", + 0x9218, + Zero, + "HLOS_DRV" + } + } + }, + + Package (0x07) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_prng_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_SMPS2_C", + 0x02, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_cx", + Zero + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_mx", + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x06) + { + 0x03, + "ICBID_MASTER_IPA_CORE", + "ICBID_SLAVE_IPA_CORE", + Zero, + Zero, + "HLOS_DRV" + } + } + }, + + Package (0x05) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_boot_rom_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_prng_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_SMPS2_C", + 0x02, + Zero, + Zero, + Zero, + Zero + } + } + } + }, + + Package (0x02) + { + "DSTATE", + Zero + }, + + Package (0x02) + { + "DSTATE", + 0x03 + } + }, + + Package (0x05) + { + "DEVICE", + "\\_SB.ADSP", + Package (0x05) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "PSTATE", + Zero + }, + + Package (0x02) + { + "PSTATE", + One + } + }, + + Package (0x02) + { + "DSTATE", + Zero + }, + + Package (0x02) + { + "DSTATE", + 0x03 + } + }, + + Package (0x05) + { + "DEVICE", + "\\_SB.SCSS", + Package (0x06) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x06) + { + "PSTATE", + Zero, + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x0E, + One, + Zero, + One, + Zero, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO27_A", + One, + Zero, + One, + One, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO4_A", + One, + Zero, + One, + One, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_CLK_CTL", + One, + One + } + } + }, + + Package (0x05) + { + "PSTATE", + One, + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO27_A", + One, + Zero, + One, + Zero, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO4_A", + One, + Zero, + One, + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_CLK_CTL", + Zero, + Zero + } + } + }, + + Package (0x05) + { + "PSTATE", + 0x02, + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO27_A", + One, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO4_A", + One, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_CLK_CTL", + Zero, + Zero + } + } + } + }, + + Package (0x02) + { + "DSTATE", + Zero + }, + + Package (0x02) + { + "DSTATE", + 0x03 + } + }, + + Package (0x05) + { + "DEVICE", + "\\_SB.CDSP", + Package (0x05) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "PSTATE", + Zero + }, + + Package (0x02) + { + "PSTATE", + One + } + }, + + Package (0x02) + { + "DSTATE", + Zero + }, + + Package (0x02) + { + "DSTATE", + 0x03 + } + } + }) + } + + // resources needed by pep drivers + Scope (\_SB.PEP0) + { + Method (PPMD, 0, NotSerialized) + { + Return (PPCC) /* \_SB_.PEP0.PPCC */ + } + + Name (PPCC, Package (0x03) + { + Package (0x03) + { + "DEVICE", + "\\_SB.PRXY", + Package (0x03) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + } + } + }, + + // PEP Stats Driver + Package (0x03) + { + "DEVICE", + "\\_SB.STAT", + Package (0x03) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + } + } + }, + + Package (0x05) + { + "DEVICE", + 0x81, + "\\_SB.GIO0", + Package (0x03) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + } + }, + + Package (0x03) + { + "COMPONENT", + One, + Package (0x02) + { + "FSTATE", + Zero + } + } + } + }) +#if 0 + // System Default Resources Packages + Name (SDFR, Package (0x01) + { + Package (0x03) + { + "DEVICE", + "\\_SB.SDFR", + Package (0x06) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + }, + + Package (0x02) + { + "FSTATE", + 0x02 + }, + + Package (0x02) + { + "FSTATE", + 0x03 + } + } + } + }) +#endif + } +//#endif + Scope (\_SB.PEP0) + { + // System Default Resources Packages + Name (SDFR, Package (0x01) + { + Package (0x03) + { + "DEVICE", + "\\_SB.SDFR", + Package (0x06) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + }, + + Package (0x02) + { + "FSTATE", + 0x02 + }, + + Package (0x02) + { + "FSTATE", + 0x03 + } + } + } + }) +#if 0 + Method (BPMD, 0, NotSerialized) + { + Return (BPCC) /* \_SB_.PEP0.BPCC */ + } +#endif + + Method (LPMD, 0, NotSerialized) + { + Return (LPCC) /* \_SB_.PEP0.LPCC */ + } + + // resources needed by core BSP drivers + Name (BPCC, Package (0x04) + { + // Storage + Package (0x05) + { + "DEVICE", + "\\_SB.UFS0", + Package (0x07) + { + "COMPONENT", + Zero, + Package (0x05) + { + "FSTATE", + Zero, + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + Zero + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + Zero + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + Zero + } + } + }, + + Package (0x05) + { + "FSTATE", + One, + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + One + } + } + }, + + Package (0x04) + { + "PSTATE_SET", + Zero, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "ufs_phy_gdsc", + One + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "ufs_phy_gdsc", + 0x02 + } + } + } + }, + + Package (0x04) + { + "PSTATE_SET", + One, + Package (0x0C) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_ufs_phy_axi_clk", + 0x08, + 0x0BEBC200, + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_ufs_phy_unipro_core_clk", + 0x08, + 0x08F0D180, + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_ufs_phy_ice_core_clk", + 0x08, + 0x11E1A300, + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_aggre_ufs_phy_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_ufs_phy_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_ufs_phy_phy_aux_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_ufs_phy_tx_symbol_0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_ufs_phy_rx_symbol_0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_ufs_phy_rx_symbol_1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_ufs_mem_clkref_en", + One + } + } + }, + + Package (0x0C) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_aggre_ufs_phy_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_ufs_phy_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_ufs_phy_phy_aux_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_ufs_phy_tx_symbol_0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_ufs_phy_rx_symbol_0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_ufs_phy_rx_symbol_1_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_ufs_phy_ice_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_ufs_phy_unipro_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_ufs_phy_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_ufs_mem_clkref_en", + 0x02 + } + } + } + }, + + Package (0x04) + { + "PSTATE_SET", + 0x02, + Package (0x04) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_UFS_MEM", + "ICBID_SLAVE_EBI1", + 0x35A4E900, + 0x35A4E900 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_UFS_MEM_CFG", + 0x11D260C0, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_UFS_MEM_CFG", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_UFS_MEM", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + } + } + } + }, + + Package (0x0B) + { + "DSTATE", + Zero, + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + Zero + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO20_A", + One, + 0x002D2A80, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO2_A", + One, + 0x0012C4B0, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_SMPS4_A", + 0x02, + 0x001B7740, + One, + Zero, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + 0x00124F80, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + 0x000D6D80, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + 0x23 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + Zero + } + } + }, + + Package (0x08) + { + "DSTATE", + 0x03, + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + One + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO20_A", + One, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + One + } + } + } + }, + + Package (0x05) + { + "DEVICE", + "\\_SB.SDC2", + Package (0x09) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + }, + + Package (0x19) + { + "PSTATE_SET", + Zero, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x06, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x07, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x08, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x09, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0D, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0E, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0F, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x10, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x11, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x12, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x13, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x08) + { + "PSTATE", + 0x14, + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO21_A", + One, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO13_A", + One, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + 0x23 + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO21_A", + One, + 0x002D2A80, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO13_A", + One, + 0x002D2A80, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + 0x23 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x15, + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO13_A", + One, + 0x001C3A90, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + 0x23 + } + } + }, + + Package (0x05) + { + "PSTATE", + 0x16, + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO21_A", + One, + 0x002D2A80, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO13_A", + One, + 0x002D2A80, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + 0x23 + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x17, + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO21_A", + One, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + 0x23 + } + } + } + }, + + Package (0x06) + { + "PSTATE_SET", + One, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_sdcc2_apps_clk", + 0x02 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_sdcc2_apps_clk", + 0x08, + 0x01312D00, + 0x02 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_sdcc2_apps_clk", + 0x08, + 0x05F5E100, + 0x02 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_sdcc2_apps_clk", + 0x08, + 0x0C02A560, + 0x02 + } + } + } + }, + + Package (0x06) + { + "PSTATE_SET", + 0x02, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_SDCC_2", + "ICBID_SLAVE_EBI1", + 0x17D78400, + 0x0BEBC200 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_SDCC_2", + "ICBID_SLAVE_EBI1", + 0x0BEBC200, + 0x05F5E100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_SDCC_2", + "ICBID_SLAVE_EBI1", + 0x02625A00, + 0x01312D00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_SDCC_2", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + } + } + }, + + Package (0x05) + { + "PSTATE_SET", + 0x03, + Package (0x04) + { + "PSTATE", + Zero, + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + 0x03 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + One, + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + 0x02 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + One + } + } + }, + + Package (0x04) + { + "PSTATE", + 0x02, + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x02 + } + } + } + }, + + Package (0x04) + { + "PSTATE_SET", + 0x04, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_sdcc2_ahb_clk", + One + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_sdcc2_ahb_clk", + 0x02 + } + } + } + } + }, + + Package (0x07) + { + "DSTATE", + Zero, + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + 0x16 + } + }, + + Package (0x02) + { + "TLMMPORT", + Package (0x03) + { + 0x0099A000, + 0x7FFF, + 0x1FE3 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + Zero + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x04, + Zero + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + 0x03 + } + } + }, + + Package (0x07) + { + "DSTATE", + 0x03, + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + Zero + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x04, + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x03 + } + }, + + Package (0x02) + { + "TLMMPORT", + Package (0x03) + { + 0x0099A000, + 0x7FFF, + 0x0A00 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + 0x17 + } + } + } + }, + + Package (0x07) + { + "DEVICE", + "\\_SB.ADSP.SLM1", + Package (0x03) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + } + }, + + Package (0x02) + { + "DSTATE", + Zero + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x02) + { + "DSTATE", + 0x03 + } + }, + + Package (0x07) + { + "DEVICE", + "\\_SB.ADSP.SLM2", + Package (0x03) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + } + }, + + Package (0x02) + { + "DSTATE", + Zero + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x02) + { + "DSTATE", + 0x03 + } + } + }) + Name (LPCC, Package (0x07) + { + Package (0x07) + { + "DEVICE", + "\\_SB.UCP0", + Package (0x05) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x05) + { + "PSTATE", + Zero, + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_cx", + 0x0100 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_USB3_0", + 0x17D78400, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + One + } + } + }, + + Package (0x05) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_USB3_0", + Zero, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + 0x02 + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_cx", + Zero + } + } + } + }, + + Package (0x02) + { + "DSTATE", + Zero + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x02) + { + "DSTATE", + 0x03 + } + }, + + Package (0x07) + { + "DEVICE", + "\\_SB.PTCC", + Package (0x05) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x04) + { + "PSTATE", + Zero, + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO24_A", + One, + 0x002EEBB8, + One, + One, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO12_A", + One, + 0x001B7740, + One, + One, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + One, + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO24_A", + One, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO12_A", + One, + Zero, + Zero, + Zero, + Zero + } + } + } + }, + + Package (0x02) + { + "DSTATE", + Zero + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x02) + { + "DSTATE", + 0x03 + } + }, + Package (0x07) + { + "DEVICE", + "\\_SB.EMEC", + Package (0x05) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x05) + { + "PSTATE", + Zero, + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_cx", + 0x0100 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_USB3_0", + 0x17D78400, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + One + } + } + + /*Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO28_A", + One, + 0x00325AA0, + One, + 0x07, + Zero + } + }*/ + }, + + Package (0x05) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_USB3_0", + Zero, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + 0x02 + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_cx", + Zero + } + } + + /*Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO28_A", + One, + 0x00325AA0, + One, + 0x07, + Zero + } + }*/ + } + }, + + Package (0x02) + { + "DSTATE", + Zero + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x02) + { + "DSTATE", + 0x03 + } + }, + + Package (0x07) + { + "DEVICE", + "\\_SB.URS0", + Package (0x05) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "PSTATE", + Zero + }, + + Package (0x02) + { + "PSTATE", + One + } + }, + + Package (0x02) + { + "DSTATE", + Zero + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x02) + { + "DSTATE", + 0x03 + } + }, + + Package (0x08) + { + "DEVICE", + "\\_SB.URS0.USB0", + Package (0x05) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x07) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_prim_sleep_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb30_prim_sleep_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb30_prim_sleep_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_prim_phy_pipe_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb3_prim_phy_pipe_clk", + 0x09, + 0x08 + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + Zero + } + }, + + Package (0x11) + { + "DSTATE", + Zero, + 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 + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + 0x00124F80, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + 0x000D6D80, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "usb30_prim_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_aggre_usb3_prim_axi_clk", + 0x08, + 0x78, + 0x09 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_cfg_noc_usb3_prim_axi_clk", + 0x08, + 0x78, + 0x09 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb30_prim_master_clk", + 0x08, + 0x78, + 0x09 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb30_prim_mock_utmi_clk", + 0x08, + 0x4B00, + 0x07 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb3_prim_phy_aux_clk", + 0x08, + 0x04B0, + 0x07 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_USB3_0", + "ICBID_SLAVE_EBI1", + 0x28000000, + 0x28000000 + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_cx", + 0x0100 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_USB3_0", + 0x17D78400, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_prim_clkref_en", + One + } + } + }, + + Package (0x11) + { + "DSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb30_prim_master_clk", + 0x03, + 0x2580, + 0x05 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_prim_master_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_cfg_noc_usb3_prim_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_aggre_usb3_prim_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_prim_mock_utmi_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_USB3_0", + Zero, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_prim_phy_aux_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_prim_clkref_en", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_USB3_0", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_cx", + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO12_A", + One, + 0x001B7740, + One, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO24_A", + One, + 0x002EEBB8, + One, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + 0x00124F80, + One, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + 0x000D6D80, + One, + 0x05, + Zero + } + } + }, + + Package (0x12) + { + "DSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb30_prim_master_clk", + 0x03, + 0x00927C00, + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_prim_master_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_cfg_noc_usb3_prim_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_aggre_usb3_prim_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_prim_mock_utmi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_prim_phy_aux_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_USB3_0", + Zero, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_prim_clkref_en", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "usb30_prim_gdsc", + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_USB3_0", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_cx", + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO12_A", + One, + 0x001B7740, + One, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO24_A", + One, + 0x002EEBB8, + One, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + 0x00124F80, + One, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + 0x000D6D80, + One, + 0x05, + Zero + } + } + }, + + Package (0x12) + { + "DSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb30_prim_master_clk", + 0x03, + 0x00927C00, + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_prim_master_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_cfg_noc_usb3_prim_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_aggre_usb3_prim_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_prim_mock_utmi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_prim_phy_aux_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_USB3_0", + Zero, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_prim_clkref_en", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "usb30_prim_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_USB3_0", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_cx", + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO24_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO12_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + Zero, + Zero, + 0x05, + Zero + } + } + }, + + Package (0x02) + { + "ABANDON_DSTATE", + 0x03 + } + }, + + Package (0x08) + { + "DEVICE", + "\\_SB.URS0.UFN0", + Package (0x05) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x07) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_prim_sleep_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb30_prim_sleep_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb30_prim_sleep_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_prim_phy_pipe_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb3_prim_phy_pipe_clk", + 0x09, + 0x08 + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + Zero + } + }, + + Package (0x10) + { + "DSTATE", + Zero, + 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 + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + 0x00124F80, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + 0x000D6D80, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "usb30_prim_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_aggre_usb3_prim_axi_clk", + 0x08, + 0x78, + 0x09 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_cfg_noc_usb3_prim_axi_clk", + 0x08, + 0x78, + 0x09 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb30_prim_master_clk", + 0x08, + 0x78, + 0x09 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb3_prim_phy_aux_clk", + 0x08, + 0x04B0, + 0x07 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_USB3_0", + 0x17D78400, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_USB3_0", + "ICBID_SLAVE_EBI1", + 0x28000000, + 0x28000000 + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_cx", + 0x0100 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_prim_clkref_en", + One + } + } + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x10) + { + "DSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb30_prim_master_clk", + 0x03, + 0x2580, + 0x05 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_prim_master_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_cfg_noc_usb3_prim_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_aggre_usb3_prim_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_prim_phy_aux_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_USB3_0", + Zero, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_prim_clkref_en", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_USB3_0", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_cx", + 0x0100 + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO12_A", + One, + 0x001B7740, + One, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO24_A", + One, + 0x002EEBB8, + One, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + Zero, + Zero, + 0x05, + Zero + } + } + }, + + Package (0x11) + { + "DSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb30_prim_master_clk", + 0x03, + 0x00927C00, + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_prim_master_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_cfg_noc_usb3_prim_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_aggre_usb3_prim_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_prim_phy_aux_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_USB3_0", + Zero, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_prim_clkref_en", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "usb30_prim_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_USB3_0", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_cx", + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO24_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO12_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + Zero, + Zero, + 0x05, + Zero + } + } + }, + + Package (0x02) + { + "ABANDON_DSTATE", + 0x03 + } + }, + + Package (0x08) + { + "DEVICE", + "\\_SB.USB1", + Package (0x05) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x07) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_sec_sleep_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb30_sec_sleep_clk", + 0x09, + 0x08 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb30_sec_sleep_clk", + 0x09, + 0x0C + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_sec_phy_pipe_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x03) + { + "gcc_usb3_sec_phy_pipe_clk", + 0x09, + 0x08 + } + } + }, + + Package (0x02) + { + "PRELOAD_PSTATE", + Zero + } + }, + + Package (0x11) + { + "DSTATE", + Zero, + 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 + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + 0x00124F80, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + 0x000D6D80, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "usb30_sec_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_aggre_usb3_sec_axi_clk", + 0x08, + 0x78, + 0x09 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_cfg_noc_usb3_sec_axi_clk", + 0x08, + 0x78, + 0x09 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb30_sec_master_clk", + 0x08, + 0x78, + 0x09 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb30_sec_mock_utmi_clk", + 0x08, + 0x4B00, + 0x07 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb3_sec_phy_aux_clk", + 0x08, + 0x04B0, + 0x07 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_USB3_1", + "ICBID_SLAVE_EBI1", + 0x28000000, + 0x28000000 + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_cx", + 0x0100 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_USB3_1", + 0x17D78400, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_sec_clkref_en", + One + } + } + }, + + Package (0x11) + { + "DSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb30_sec_master_clk", + 0x03, + 0x2580, + 0x05 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_sec_master_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_cfg_noc_usb3_sec_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_aggre_usb3_sec_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_sec_mock_utmi_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_USB3_1", + Zero, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_sec_phy_aux_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_sec_clkref_en", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_USB3_1", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_cx", + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO12_A", + One, + 0x001B7740, + One, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO24_A", + One, + 0x002EEBB8, + One, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + 0x00124F80, + One, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + 0x000D6D80, + One, + 0x05, + Zero + } + } + }, + + Package (0x12) + { + "DSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb30_sec_master_clk", + 0x03, + 0x00927C00, + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_sec_master_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_cfg_noc_usb3_sec_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_aggre_usb3_sec_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_sec_mock_utmi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_sec_phy_aux_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_USB3_1", + Zero, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_sec_clkref_en", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "usb30_sec_gdsc", + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_USB3_1", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_cx", + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO12_A", + One, + 0x001B7740, + One, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO24_A", + One, + 0x002EEBB8, + One, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + 0x00124F80, + One, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + 0x000D6D80, + One, + 0x05, + Zero + } + } + }, + + Package (0x12) + { + "DSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_usb30_sec_master_clk", + 0x03, + 0x00927C00, + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_sec_master_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_cfg_noc_usb3_sec_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_aggre_usb3_sec_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb30_sec_mock_utmi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_sec_phy_aux_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_USB3_1", + Zero, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb_phy_cfg_ahb2phy_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_usb3_sec_clkref_en", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "usb30_sec_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_USB3_1", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/arc/client/rail_cx", + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO24_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO12_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + Zero, + Zero, + 0x05, + Zero + } + } + }, + + Package (0x02) + { + "ABANDON_DSTATE", + 0x03 + } + } + }) + } + + // resources needed by ipa driver + //=========================================================================== + // Implementation of function states for IPA driver. + // Present implementation has two function states F0 and F1. + // + // F0 = Full power mode. + // F1 = Low power mode. + // + // Resource being managed is /clk/ipa + //=========================================================================== + Scope (\_SB.PEP0) + { + Method (IPMD, 0, NotSerialized) + { + Return (IPSC) /* \_SB_.PEP0.IPSC */ + } + + Name (IPSC, Package (0x01) + { + Package (0x03) + { + "DEVICE", + "\\_SB.IPA", + Package (0x04) + { + "COMPONENT", + Zero, + Package (0x03) + { + "FSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x06) + { + 0x03, + "ICBID_MASTER_IPA_CORE", + "ICBID_SLAVE_IPA_CORE", + 0x9218, + Zero, + "HLOS_DRV" + } + } + }, + + Package (0x03) + { + "FSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x06) + { + 0x03, + "ICBID_MASTER_IPA_CORE", + "ICBID_SLAVE_IPA_CORE", + Zero, + Zero, + "HLOS_DRV" + } + } + } + } + } + }) + } + + Scope (\_SB.PEP0) + { + Method (EWMD, 0, NotSerialized) + { + Return (WBRC) /* \_SB_.PEP0.WBRC */ + } + + Name (WBRC, Package (0x03) + { + Package (0x07) + { + "DEVICE", + "\\_SB.AMSS.QWLN", + Package (0x03) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + } + }, + + Package (0x07) + { + "DSTATE", + Zero, + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_SMPS7_A", + 0x02, + 0x000FAFA0, + One, + 0x06, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO5_A", + One, + 0x000C3500, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO7_A", + One, + 0x001B7740, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO17_A", + One, + 0x0013E5C0, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO25_A", + One, + 0x002F5D00, + One, + 0x07, + Zero + } + } + }, + + Package (0x07) + { + "DSTATE", + 0x02, + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO25_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO17_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO7_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO5_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_SMPS7_A", + 0x02, + Zero, + Zero, + 0x05, + Zero + } + } + }, + + Package (0x07) + { + "DSTATE", + 0x03, + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO25_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO17_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO7_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO5_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_SMPS7_A", + 0x02, + Zero, + Zero, + 0x05, + Zero + } + } + }, + + Package (0x02) + { + "ABANDON_DSTATE", + 0x02 + } + }, + + Package (0x03) + { + "DEVICE", + "\\_SB.COEX", + Package (0x05) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x07) + { + "PSTATE", + Zero, + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_SMPS7_A", + 0x02, + 0x000FAFA0, + One, + 0x06, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO5_A", + One, + 0x000C3500, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO7_A", + One, + 0x001B7740, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO17_A", + One, + 0x0013E5C0, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO25_A", + One, + 0x002F5D00, + One, + 0x07, + Zero + } + } + }, + + Package (0x07) + { + "PSTATE", + One, + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO25_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO17_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO7_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO5_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_SMPS7_A", + 0x02, + Zero, + Zero, + 0x05, + Zero + } + } + } + } + }, + + Package (0x05) + { + "DEVICE", + "\\_SB.BTH0", + Package (0x03) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + } + }, + + Package (0x07) + { + "DSTATE", + Zero, + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_SMPS3_A", + 0x02, + 0x0014A140, + One, + 0x06, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_SMPS5_A", + 0x02, + 0x001F20C0, + One, + 0x06, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO7_A", + One, + 0x001B7740, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO17_A", + One, + 0x0013E5C0, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO25_A", + One, + 0x002F5D00, + One, + 0x07, + Zero + } + } + }, + + Package (0x07) + { + "DSTATE", + 0x03, + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO7_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO17_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO25_A", + One, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_SMPS3_A", + 0x02, + Zero, + Zero, + 0x05, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_SMPS5_A", + 0x02, + Zero, + Zero, + 0x05, + Zero + } + } + } + } + }) + } + + // power management resources needed by qdss driver + //=========================================================================== + // Description & Possible use cases for Qdss's p-state implementation + // Qdss employs pstate-sets to robustly configure clock and tlmm registers + // pstate-set 0 has pstates for clock frequencies + // pstate-set 1 has pstates for managing tlmm registers for tpiu operation + // TPIU related data sourced from meta build's std_trace_msm8994.cmm; it can also + // be verified through TLMM GPIO assignment in ipcat and TLMM_GPIO_CFGn register + // bit assignments as documented in SWI. + // NOTE: elessar V1 and V2 have different TLMM GPIO pin/function assignments, so + // register values should be updated for V2. + //======================================================== + // Sinks p-states allowed + //-------------------------------------------------------- + // non-TPIU P{0,0} + // P{0,1} + // P{0,2} + // P{0,3} + // TPIU P{0,0} AND (P{1,1} OR P{1,3}) + // P{0,1} AND (P{1,0} OR P{1,2}) + // P{0,2} AND (P{1,0} OR P{1,2}) + // P{0,3} AND (P{1,0} OR P{1,2}) + // + // Description of pstate-sets and corresponding p-states : + // pstate-set-0 is the set with allowed qdss clock frequencies + // under set-0 each p-state holds the following meaning: + // pstate-0 CLOCK OFF (0 Hz) + // pstate-1 SVS CLOCK FREQUENCY (depends on the voltage; ranges 150 to 300 MHz) + // pstate-2 HIGH CLOCK FREQUENCY (300 MHz) + // pstate-3 LOW CLOCK FREQUENCY (150 MHz) + // + // under set-1 each p-state hold the following meaning: + // pstate-0 sets SET-B TLMM registers to make TPIU operational + // pstate-1 clears SET-B TLMM registers to make TPIU operational + // pstate-2 sets SD TLMM registers to make TPIU operational + // pstate-3 clears SD TLMM registers to make TPIU operational + //=========================================================================== + Scope (\_SB.PEP0) + { + Method (QDMD, 0, NotSerialized) + { + Return (QDSC) /* \_SB_.PEP0.QDSC */ + } + + Name (QDSC, Package (0x01) + { + Package (0x03) + { + "DEVICE", + "\\_SB.QDSS", + Package (0x08) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x03) + { + "FSTATE", + One, + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + Zero + } + } + }, + + Package (0x06) + { + "PSTATE_SET", + Zero, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/clk/qdss", + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/clk/qdss", + One + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/clk/qdss", + 0x02 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/clk/qdss", + 0x03 + } + } + } + }, + + Package (0x06) + { + "PSTATE_SET", + One, + Package (0x02) + { + "PSTATE", + Zero + }, + + Package (0x02) + { + "PSTATE", + One + }, + + Package (0x02) + { + "PSTATE", + 0x02 + }, + + Package (0x02) + { + "PSTATE", + 0x03 + } + }, + + Package (0x04) + { + "PSTATE_SET", + 0x02, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/clk/qdss", + One + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/clk/qdss", + Zero + } + } + } + }, + + Package (0x03) + { + "PSTATE_SET", + 0x03, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "TLMMPORT", + Package (0x03) + { + 0x00033000, + 0x07FF, + 0x01C8 + } + } + } + } + } + } + }) + } + + Scope (\_SB.PEP0) + { + Method (PEMD, 0, NotSerialized) + { + Return (PEMC) /* \_SB_.PEP0.PEMC */ + } + + Name (PEMC, Package (0x04) + { + Package (0x07) + { + "DEVICE", + "\\_SB.PCI0", + Package (0x04) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + } + }, + + Package (0x10) + { + "DSTATE", + Zero, + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + 0x00124F80, + One, + One, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + 0x000D6D80, + One, + One, + Zero + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "pcie_0_gdsc", + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_PCIE_0_CFG", + 0x047868C0, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_PCIE_0", + "ICBID_SLAVE_EBI1", + 0x17D78400, + 0x0BEBC200 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_aggre_noc_pcie_tbu_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_phy_refgen_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_phy_aux_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_0_pipe_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_0_slv_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_0_slv_q2a_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_0_mstr_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_0_cfg_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_pcie_0_aux_clk", + 0x08, + 0x0124F800, + 0x03 + } + } + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x10) + { + "DSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_0_pipe_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_0_aux_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_0_slv_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_0_slv_q2a_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_0_mstr_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_0_cfg_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_aggre_noc_pcie_tbu_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_phy_refgen_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_phy_aux_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_PCIE_0_CFG", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_PCIE_0", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "pcie_0_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + Zero, + Zero, + Zero, + Zero + } + } + } + }, + + Package (0x07) + { + "DEVICE", + "\\_SB.PCI0.RP1", + Package (0x04) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + } + }, + + Package (0x02) + { + "DSTATE", + Zero + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x02) + { + "DSTATE", + 0x03 + } + }, + + Package (0x07) + { + "DEVICE", + "\\_SB.PCI1", + Package (0x04) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + } + }, + + Package (0x10) + { + "DSTATE", + Zero, + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + 0x00124F80, + One, + One, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + 0x000D6D80, + One, + One, + Zero + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "pcie_1_gdsc", + One + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_PCIE_1_CFG", + 0x047868C0, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_PCIE_1", + "ICBID_SLAVE_EBI1", + 0x17D78400, + 0x0BEBC200 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_aggre_noc_pcie_tbu_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_phy_refgen_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_phy_aux_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_1_pipe_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_1_slv_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_1_slv_q2a_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_1_mstr_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_1_cfg_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_pcie_1_aux_clk", + 0x08, + 0x0124F800, + 0x03 + } + } + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x10) + { + "DSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_1_pipe_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_1_aux_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_1_slv_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_1_slv_q2a_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_1_mstr_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_1_cfg_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_aggre_noc_pcie_tbu_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_phy_refgen_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_pcie_phy_aux_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_PCIE_1_CFG", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_PCIE_1", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "pcie_1_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO26_A", + One, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO1_A", + One, + Zero, + Zero, + Zero, + Zero + } + } + } + }, + + Package (0x07) + { + "DEVICE", + "\\_SB.PCI1.RP1", + Package (0x04) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + } + }, + + Package (0x02) + { + "DSTATE", + Zero + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x02) + { + "DSTATE", + 0x03 + } + } + }) + } + + // resources needed by camera drivers + Scope (\_SB.PEP0) + { + Method (CPMX, 0, NotSerialized) + { + Return (CPXC) /* \_SB_.PEP0.CPXC */ + } + + Name (CPXC, Package (0x04) + { + Package (0x05) + { + "DEVICE", + "\\_SB.CAMP", + Package (0x07) + { + "COMPONENT", + Zero, + Package (0x0D) + { + "FSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + 0x23 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x23 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cci_clk", + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + Zero + } + } + }, + + Package (0x0C) + { + "FSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cci_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x25 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + 0x25 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + 0x02 + } + } + }, + + Package (0x04) + { + "PSTATE_SET", + Zero, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_cci_clk", + 0x03, + 0x023C3460, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_cci_clk", + 0x03, + 0x0124F800, + 0x03 + } + } + } + }, + + Package (0x28) + { + "PSTATE_SET", + One, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x00000002CB417800, + 0x00000002CB417800 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x00000002AD741300, + 0x00000002AD741300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x000000028FA6AE00, + 0x000000028FA6AE00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x0000000271D94900, + 0x0000000271D94900 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x00000002540BE400, + 0x00000002540BE400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x00000002363E7F00, + 0x00000002363E7F00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x06, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x0000000218711A00, + 0x0000000218711A00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x07, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x00000001FAA3B500, + 0x00000001FAA3B500 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x08, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x00000001DCD65000, + 0x00000001DCD65000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x09, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x00000001BF08EB00, + 0x00000001BF08EB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x00000001A13B8600, + 0x00000001A13B8600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x00000001836E2100, + 0x00000001836E2100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x0000000165A0BC00, + 0x0000000165A0BC00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x0000000147D35700, + 0x0000000147D35700 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x000000012A05F200, + 0x000000012A05F200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x000000010C388D00, + 0x000000010C388D00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x10, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0xEE6B2800, + 0xEE6B2800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x11, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0xD09DC300, + 0xD09DC300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x12, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0xC4B20100, + 0xC4B20100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x13, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0xB8C63F00, + 0xB8C63F00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x14, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0xACDA7D00, + 0xACDA7D00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x15, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0xA0EEBB00, + 0xA0EEBB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x16, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x9502F900, + 0x9502F900 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x17, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x89173700, + 0x89173700 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x18, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x7D2B7500, + 0x7D2B7500 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x19, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x713FB300, + 0x713FB300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x6553F100, + 0x6553F100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x59682F00, + 0x59682F00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x4D7C6D00, + 0x4D7C6D00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x4190AB00, + 0x4190AB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x35A4E900, + 0x35A4E900 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x29B92700, + 0x29B92700 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x20, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x1DCD6500, + 0x1DCD6500 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x21, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x17D78400, + 0x17D78400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x22, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x11E1A300, + 0x11E1A300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x23, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x0BEBC200, + 0x0BEBC200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x24, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x05F5E100, + 0x05F5E100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x25, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + Zero, + Zero + } + } + } + }, + + Package (0x28) + { + "PSTATE_SET", + 0x02, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x00000002CB417800, + 0x00000002CB417800 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x00000002AD741300, + 0x00000002AD741300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x000000028FA6AE00, + 0x000000028FA6AE00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x0000000271D94900, + 0x0000000271D94900 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x00000002540BE400, + 0x00000002540BE400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x00000002363E7F00, + 0x00000002363E7F00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x06, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x0000000218711A00, + 0x0000000218711A00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x07, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x00000001FAA3B500, + 0x00000001FAA3B500 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x08, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x00000001DCD65000, + 0x00000001DCD65000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x09, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x00000001BF08EB00, + 0x00000001BF08EB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x00000001A13B8600, + 0x00000001A13B8600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x00000001836E2100, + 0x00000001836E2100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x0000000165A0BC00, + 0x0000000165A0BC00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x0000000147D35700, + 0x0000000147D35700 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x000000012A05F200, + 0x000000012A05F200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x000000010C388D00, + 0x000000010C388D00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x10, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0xEE6B2800, + 0xEE6B2800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x11, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0xD09DC300, + 0xD09DC300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x12, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0xC4B20100, + 0xC4B20100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x13, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0xB8C63F00, + 0xB8C63F00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x14, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0xACDA7D00, + 0xACDA7D00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x15, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0xA0EEBB00, + 0xA0EEBB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x16, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x9502F900, + 0x9502F900 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x17, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x89173700, + 0x89173700 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x18, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x7D2B7500, + 0x7D2B7500 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x19, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x713FB300, + 0x713FB300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x6553F100, + 0x6553F100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x59682F00, + 0x59682F00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x4D7C6D00, + 0x4D7C6D00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x4190AB00, + 0x4190AB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x35A4E900, + 0x35A4E900 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x29B92700, + 0x29B92700 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x20, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x1DCD6500, + 0x1DCD6500 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x21, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x17D78400, + 0x17D78400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x22, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x11E1A300, + 0x11E1A300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x23, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x0BEBC200, + 0x0BEBC200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x24, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x05F5E100, + 0x05F5E100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x25, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + } + } + } + }, + + Package (0x08) + { + "COMPONENT", + One, + Package (0x0E) + { + "FSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x03, + 0x04 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x04 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + 0x04 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + 0x04 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cci_clk", + One + } + } + }, + + Package (0x0E) + { + "FSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cci_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + 0x05 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + 0x05 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x05 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x03, + 0x05 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + 0x02 + } + } + }, + + Package (0x08) + { + "PSTATE_SET", + Zero, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x4190AB00, + 0x4190AB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x17D78400, + 0x17D78400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x11E1A300, + 0x11E1A300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x0BEBC200, + 0x0BEBC200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x05F5E100, + 0x05F5E100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + Zero, + Zero + } + } + } + }, + + Package (0x08) + { + "PSTATE_SET", + One, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x4190AB00, + 0x4190AB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x17D78400, + 0x17D78400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x11E1A300, + 0x11E1A300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x0BEBC200, + 0x0BEBC200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x05F5E100, + 0x05F5E100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + } + } + }, + + Package (0x08) + { + "PSTATE_SET", + 0x02, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x4190AB00, + 0x4190AB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x17D78400, + 0x17D78400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x11E1A300, + 0x11E1A300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x0BEBC200, + 0x0BEBC200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x05F5E100, + 0x05F5E100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + Zero, + Zero + } + } + } + }, + + Package (0x08) + { + "PSTATE_SET", + 0x03, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x4190AB00, + 0x4190AB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x17D78400, + 0x17D78400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x11E1A300, + 0x11E1A300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x0BEBC200, + 0x0BEBC200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + 0x05F5E100, + 0x05F5E100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_SF", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + } + } + } + }, + + Package (0x04) + { + "COMPONENT", + 0x02, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + } + } + }, + + Package (0x04) + { + "DEVICE", + "\\_SB.CAMS", + Package (0x19) + { + "DSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO16_A", + One, + 0x001B7740, + One, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x5F, + One, + Zero, + One, + One, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + 0x04 + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x5B, + One, + Zero, + One, + One, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x04) + { + "PPP_RESOURCE_ID_LVS1_A", + 0x04, + 0x001B7740, + One + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x11, + One, + One, + One, + 0x03, + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x12, + One, + One, + One, + 0x03, + One + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO19_A", + One, + 0x002AB980, + One, + One, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x19, + One, + Zero, + One, + One, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_mclk0_clk", + 0x08, + 0x016E3600, + 0x03 + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x0D, + One, + One, + One, + Zero, + One + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x1A) + { + "DSTATE", + 0x03, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x0D, + Zero, + Zero, + One, + One, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_mclk0_clk", + 0x02 + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO19_A", + One, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x19, + Zero, + Zero, + One, + One, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x04) + { + "PPP_RESOURCE_ID_LVS1_A", + 0x04, + Zero, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x5B, + Zero, + Zero, + One, + One, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x12, + Zero, + Zero, + Zero, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x11, + Zero, + Zero, + Zero, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x5F, + Zero, + Zero, + One, + One, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO16_A", + One, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + 0x02 + } + } + } + }, + + Package (0x04) + { + "DEVICE", + "\\_SB.CAMF", + Package (0x17) + { + "DSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO16_A", + One, + 0x001B7740, + One, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x81, + One, + Zero, + One, + One, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x7F, + One, + Zero, + One, + One, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x13, + One, + One, + One, + 0x03, + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x14, + One, + One, + One, + 0x03, + One + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x04) + { + "PPP_RESOURCE_ID_LVS2_A", + 0x04, + 0x001B7740, + One + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x0C, + One, + Zero, + One, + One, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_mclk2_clk", + 0x08, + 0x016E3600, + 0x03 + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x0F, + One, + One, + One, + Zero, + One + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x18) + { + "DSTATE", + 0x03, + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x0F, + Zero, + Zero, + One, + One, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_mclk2_clk", + 0x0C, + Zero, + 0x03 + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x0C, + Zero, + Zero, + One, + One, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x04) + { + "PPP_RESOURCE_ID_LVS2_A", + 0x04, + Zero, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x7F, + Zero, + Zero, + One, + One, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x14, + Zero, + Zero, + Zero, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x13, + Zero, + Zero, + Zero, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x81, + Zero, + Zero, + One, + One, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO16_A", + One, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + 0x02 + } + } + } + }, + + Package (0x04) + { + "DEVICE", + "\\_SB.CAMI", + Package (0x15) + { + "DSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "PMICGPIO", + Package (0x08) + { + "IOCTL_PM_GPIO_CONFIG_DIGITAL_OUTPUT", + Zero, + Zero, + Zero, + One, + One, + 0x03, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x04) + { + "PPP_RESOURCE_ID_LVS1_A", + 0x04, + 0x001B7740, + One + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO22_A", + One, + 0x002AB980, + One, + 0x07, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x17, + Zero, + Zero, + One, + Zero, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x17, + One, + Zero, + One, + Zero, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_mclk2_clk", + 0x08, + 0x016E3600, + 0x03 + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + } + }, + + Package (0x12) + { + "DSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_mclk2_clk", + 0x02 + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x17, + One, + Zero, + One, + Zero, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x17, + Zero, + Zero, + One, + Zero, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + One + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO22_A", + One, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "PMICVREGVOTE", + Package (0x04) + { + "PPP_RESOURCE_ID_LVS1_A", + 0x04, + Zero, + Zero + } + }, + + Package (0x02) + { + "PMICGPIO", + Package (0x08) + { + "IOCTL_PM_GPIO_CONFIG_DIGITAL_OUTPUT", + Zero, + Zero, + Zero, + One, + Zero, + 0x03, + Zero + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + 0x02 + } + } + } + } + }) + } + + Scope (\_SB.PEP0) + { + // CAMERA + Method (CPMD, 0, NotSerialized) + { + Return (CPCC) /* \_SB_.PEP0.CPCC */ + } + + Name (CPCC, Package (0x03) + { + Package (0x04) + { + "DEVICE", + "\\_SB.JPGE", + Package (0x05) + { + "COMPONENT", + Zero, + Package (0x0B) + { + "FSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_jpeg_clk", + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + 0x02 + } + } + }, + + Package (0x0A) + { + "FSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_jpeg_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + 0x02 + } + } + }, + + Package (0x06) + { + "PSTATE_SET", + Zero, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_jpeg_clk", + 0x03, + 0x23C34600, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_jpeg_clk", + 0x03, + 0x23C34600, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_jpeg_clk", + 0x03, + 0x18148D00, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_jpeg_clk", + 0x03, + 0x0BEBC200, + 0x03 + } + } + } + } + }, + + Package (0x05) + { + "COMPONENT", + One, + Package (0x0B) + { + "FSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_jpeg_clk", + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + 0x02 + } + } + }, + + Package (0x0A) + { + "FSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_jpeg_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + 0x02 + } + } + }, + + Package (0x05) + { + "PSTATE_SET", + Zero, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_jpeg_clk", + 0x03, + 0x23C34600, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_jpeg_clk", + 0x03, + 0x23C34600, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_jpeg_clk", + 0x03, + 0x0BEBC200, + 0x03 + } + } + } + } + } + }, + + Package (0x05) + { + "DEVICE", + "\\_SB.MPCS", + Package (0x04) + { + "COMPONENT", + Zero, + Package (0x0C) + { + "FSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "phy_refgen_south", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_csi0phytimer_clk", + 0x08, + 0x100DA650, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_csiphy0_clk", + 0x08, + 0x16E36000, + 0x03 + } + } + }, + + Package (0x0C) + { + "FSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_csiphy0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_csi0phytimer_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "phy_refgen_south", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + 0x02 + } + } + } + }, + + Package (0x04) + { + "COMPONENT", + One, + Package (0x0C) + { + "FSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "phy_refgen_south", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_csi1phytimer_clk", + 0x08, + 0x100DA650, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_csiphy1_clk", + 0x08, + 0x16E36000, + 0x03 + } + } + }, + + Package (0x0C) + { + "FSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_csiphy1_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_csi1phytimer_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "phy_refgen_south", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + 0x02 + } + } + } + }, + + Package (0x04) + { + "COMPONENT", + 0x02, + Package (0x0C) + { + "FSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "phy_refgen_south", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_csi2phytimer_clk", + 0x08, + 0x100DA650, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_csiphy2_clk", + 0x08, + 0x16E36000, + 0x03 + } + } + }, + + Package (0x0C) + { + "FSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_csiphy2_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_csi2phytimer_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "phy_refgen_south", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + 0x02 + } + } + } + } + }, + + Package (0x0A) + { + "DEVICE", + "\\_SB.VFE0", + Package (0x07) + { + "COMPONENT", + Zero, + Package (0x12) + { + "FSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + 0x0A + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x0A + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "ife_0_gdsc", + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ife_0_cphy_rx_clk", + 0x08, + 0x16E36000, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ife_0_csid_clk", + 0x08, + 0x16E36000, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_0_dsp_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_0_axi_clk", + One + } + } + }, + + Package (0x11) + { + "FSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_0_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_0_dsp_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_0_csid_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_0_cphy_rx_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_0_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "ife_0_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x1D + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + 0x1D + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + 0x02 + } + } + }, + + Package (0x06) + { + "PSTATE_SET", + Zero, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ife_0_clk", + 0x03, + 0x23C34600, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ife_0_clk", + 0x03, + 0x1C9C3800, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ife_0_clk", + 0x03, + 0x18148D00, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ife_0_clk", + 0x03, + Zero, + 0x03 + } + } + } + }, + + Package (0x20) + { + "PSTATE_SET", + One, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x00000008D8F9FC00, + 0x00000008D8F9FC00 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x0000000826299E00, + 0x0000000826299E00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x0000000684EE1800, + 0x0000000684EE1800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x000000055AE82600, + 0x000000055AE82600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x00000004A817C800, + 0x00000004A817C800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x00000003B9ACA000, + 0x00000003B9ACA000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x06, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x0000000342770C00, + 0x0000000342770C00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x07, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x00000002CB417800, + 0x00000002CB417800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x08, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0xEE6B2800, + 0xEE6B2800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x09, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0xD09DC300, + 0xD09DC300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0xC4B20100, + 0xC4B20100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0xB8C63F00, + 0xB8C63F00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0xACDA7D00, + 0xACDA7D00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0xA0EEBB00, + 0xA0EEBB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x9502F900, + 0x9502F900 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x89173700, + 0x89173700 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x10, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x7D2B7500, + 0x7D2B7500 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x11, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x713FB300, + 0x713FB300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x12, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x6553F100, + 0x6553F100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x13, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x59682F00, + 0x59682F00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x14, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x4D7C6D00, + 0x4D7C6D00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x15, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x4190AB00, + 0x4190AB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x16, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x35A4E900, + 0x35A4E900 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x17, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x29B92700, + 0x29B92700 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x18, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x1DCD6500, + 0x1DCD6500 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x19, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x17D78400, + 0x17D78400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x11E1A300, + 0x11E1A300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x0BEBC200, + 0x0BEBC200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x05F5E100, + 0x05F5E100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + Zero, + Zero + } + } + } + }, + + Package (0x20) + { + "PSTATE_SET", + 0x02, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x00000008D8F9FC00, + 0x00000008D8F9FC00 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x0000000826299E00, + 0x0000000826299E00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x0000000684EE1800, + 0x0000000684EE1800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x000000055AE82600, + 0x000000055AE82600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x00000004A817C800, + 0x00000004A817C800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x00000003B9ACA000, + 0x00000003B9ACA000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x06, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x0000000342770C00, + 0x0000000342770C00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x07, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x00000002CB417800, + 0x00000002CB417800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x08, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0xEE6B2800, + 0xEE6B2800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x09, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0xD09DC300, + 0xD09DC300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0xC4B20100, + 0xC4B20100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0xB8C63F00, + 0xB8C63F00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0xACDA7D00, + 0xACDA7D00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0xA0EEBB00, + 0xA0EEBB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x9502F900, + 0x9502F900 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x89173700, + 0x89173700 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x10, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x7D2B7500, + 0x7D2B7500 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x11, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x713FB300, + 0x713FB300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x12, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x6553F100, + 0x6553F100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x13, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x59682F00, + 0x59682F00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x14, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x4D7C6D00, + 0x4D7C6D00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x15, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x4190AB00, + 0x4190AB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x16, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x35A4E900, + 0x35A4E900 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x17, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x29B92700, + 0x29B92700 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x18, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x1DCD6500, + 0x1DCD6500 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x19, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x17D78400, + 0x17D78400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x11E1A300, + 0x11E1A300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x0BEBC200, + 0x0BEBC200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + 0x05F5E100, + 0x05F5E100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF0", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + } + } + } + }, + + Package (0x07) + { + "COMPONENT", + One, + Package (0x12) + { + "FSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + 0x0A + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x0A + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "ife_1_gdsc", + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ife_1_cphy_rx_clk", + 0x08, + 0x16E36000, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ife_1_csid_clk", + 0x08, + 0x16E36000, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_1_dsp_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_1_axi_clk", + One + } + } + }, + + Package (0x11) + { + "FSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_1_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_1_dsp_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_1_csid_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_1_cphy_rx_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_1_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "ife_1_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + 0x02, + 0x1D + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + 0x1D + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + 0x02 + } + } + }, + + Package (0x06) + { + "PSTATE_SET", + Zero, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ife_1_clk", + 0x03, + 0x23C34600, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ife_1_clk", + 0x03, + 0x1C9C3800, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ife_1_clk", + 0x03, + 0x18148D00, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ife_1_clk", + 0x03, + Zero, + 0x03 + } + } + } + }, + + Package (0x20) + { + "PSTATE_SET", + One, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x00000008D8F9FC00, + 0x00000008D8F9FC00 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x0000000826299E00, + 0x0000000826299E00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x0000000684EE1800, + 0x0000000684EE1800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x000000055AE82600, + 0x000000055AE82600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x00000004A817C800, + 0x00000004A817C800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x00000003B9ACA000, + 0x00000003B9ACA000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x06, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x0000000342770C00, + 0x0000000342770C00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x07, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x00000002CB417800, + 0x00000002CB417800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x08, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0xEE6B2800, + 0xEE6B2800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x09, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0xD09DC300, + 0xD09DC300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0xC4B20100, + 0xC4B20100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0xB8C63F00, + 0xB8C63F00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0xACDA7D00, + 0xACDA7D00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0xA0EEBB00, + 0xA0EEBB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x9502F900, + 0x9502F900 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x89173700, + 0x89173700 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x10, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x7D2B7500, + 0x7D2B7500 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x11, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x713FB300, + 0x713FB300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x12, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x6553F100, + 0x6553F100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x13, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x59682F00, + 0x59682F00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x14, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x4D7C6D00, + 0x4D7C6D00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x15, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x4190AB00, + 0x4190AB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x16, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x35A4E900, + 0x35A4E900 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x17, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x29B92700, + 0x29B92700 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x18, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x1DCD6500, + 0x1DCD6500 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x19, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x17D78400, + 0x17D78400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x11E1A300, + 0x11E1A300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x0BEBC200, + 0x0BEBC200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + 0x05F5E100, + 0x05F5E100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1_UNCOMP", + "ICBID_SLAVE_CAMNOC_UNCOMP", + Zero, + Zero + } + } + } + }, + + Package (0x20) + { + "PSTATE_SET", + 0x02, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x00000008D8F9FC00, + 0x00000008D8F9FC00 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x0000000826299E00, + 0x0000000826299E00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x0000000684EE1800, + 0x0000000684EE1800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x000000055AE82600, + 0x000000055AE82600 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x00000004A817C800, + 0x00000004A817C800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x00000003B9ACA000, + 0x00000003B9ACA000 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x06, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x0000000342770C00, + 0x0000000342770C00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x07, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x00000002CB417800, + 0x00000002CB417800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x08, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0xEE6B2800, + 0xEE6B2800 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x09, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0xD09DC300, + 0xD09DC300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0xC4B20100, + 0xC4B20100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0xB8C63F00, + 0xB8C63F00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0xACDA7D00, + 0xACDA7D00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0xA0EEBB00, + 0xA0EEBB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0E, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x9502F900, + 0x9502F900 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0F, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x89173700, + 0x89173700 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x10, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x7D2B7500, + 0x7D2B7500 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x11, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x713FB300, + 0x713FB300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x12, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x6553F100, + 0x6553F100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x13, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x59682F00, + 0x59682F00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x14, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x4D7C6D00, + 0x4D7C6D00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x15, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x4190AB00, + 0x4190AB00 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x16, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x35A4E900, + 0x35A4E900 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x17, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x29B92700, + 0x29B92700 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x18, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x1DCD6500, + 0x1DCD6500 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x19, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x17D78400, + 0x17D78400 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1A, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x11E1A300, + 0x11E1A300 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1B, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x0BEBC200, + 0x0BEBC200 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1C, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + 0x05F5E100, + 0x05F5E100 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x1D, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_CAMNOC_HF1", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + } + } + } + }, + + Package (0x05) + { + "COMPONENT", + 0x02, + Package (0x0D) + { + "FSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_lite_clk", + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ife_lite_cphy_rx_clk", + 0x08, + 0x16E36000, + 0x03 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ife_lite_csid_clk", + 0x08, + 0x16E36000, + 0x03 + } + } + }, + + Package (0x0D) + { + "FSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_lite_csid_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_lite_cphy_rx_clk", + 0x02 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ife_lite_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + 0x02 + } + } + }, + + Package (0x06) + { + "PSTATE_SET", + Zero, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ife_lite_clk", + 0x03, + 0x23C34600, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ife_lite_clk", + 0x03, + 0x1C9C3800, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ife_lite_clk", + 0x03, + 0x18148D00, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ife_lite_clk", + 0x03, + Zero, + 0x03 + } + } + } + } + }, + + Package (0x05) + { + "COMPONENT", + 0x03, + Package (0x10) + { + "FSTATE", + Zero, + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/clk/qdss", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_icp_apb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_icp_clk", + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_icp_atb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_icp_cti_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_icp_ts_clk", + One + } + } + }, + + Package (0x10) + { + "FSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_icp_ts_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_icp_cti_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_icp_atb_clk", + 0x02 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_icp_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_icp_apb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + 0x02 + } + }, + + Package (0x02) + { + "NPARESOURCE", + Package (0x03) + { + One, + "/clk/qdss", + Zero + } + } + }, + + Package (0x05) + { + "PSTATE_SET", + Zero, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_icp_clk", + 0x03, + 0x23C34600, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_icp_clk", + 0x03, + 0x17D78400, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_icp_clk", + 0x03, + Zero, + 0x03 + } + } + } + } + }, + + Package (0x06) + { + "COMPONENT", + 0x04, + Package (0x17) + { + "FSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "ipe_0_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ipe_0_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ipe_0_clk", + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ipe_0_areg_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ipe_0_axi_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "ipe_0_gdsc", + 0x03 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "ipe_1_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ipe_1_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ipe_1_clk", + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ipe_1_areg_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ipe_1_axi_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "ipe_1_gdsc", + 0x03 + } + } + }, + + Package (0x17) + { + "FSTATE", + One, + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "ipe_1_gdsc", + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ipe_1_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ipe_1_areg_clk", + 0x02 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + One, + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ipe_1_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ipe_1_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "ipe_1_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "ipe_0_gdsc", + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ipe_0_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ipe_0_areg_clk", + 0x02 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ipe_0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_ipe_0_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "ipe_0_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + 0x02 + } + } + }, + + Package (0x06) + { + "PSTATE_SET", + Zero, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ipe_0_clk", + 0x03, + 0x23C34600, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ipe_0_clk", + 0x03, + 0x1C9C3800, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ipe_0_clk", + 0x03, + 0x18148D00, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ipe_0_clk", + 0x03, + Zero, + 0x03 + } + } + } + }, + + Package (0x06) + { + "PSTATE_SET", + One, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ipe_1_clk", + 0x03, + 0x23C34600, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ipe_1_clk", + 0x03, + 0x1C9C3800, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ipe_1_clk", + 0x03, + 0x18148D00, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_ipe_1_clk", + 0x03, + Zero, + 0x03 + } + } + } + } + }, + + Package (0x05) + { + "COMPONENT", + 0x05, + Package (0x10) + { + "FSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "bps_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_bps_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_bps_clk", + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_bps_areg_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_bps_axi_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "bps_gdsc", + 0x03 + } + } + }, + + Package (0x10) + { + "FSTATE", + One, + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "bps_gdsc", + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_bps_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_bps_areg_clk", + 0x02 + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_bps_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_bps_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "bps_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + 0x02 + } + } + }, + + Package (0x06) + { + "PSTATE_SET", + Zero, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_bps_clk", + 0x03, + 0x23C34600, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_bps_clk", + 0x03, + 0x1C9C3800, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_bps_clk", + 0x03, + 0x18148D00, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_bps_clk", + 0x03, + Zero, + 0x03 + } + } + } + } + }, + + Package (0x05) + { + "COMPONENT", + 0x06, + Package (0x0B) + { + "FSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_lrme_clk", + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + 0x02 + } + } + }, + + Package (0x0B) + { + "FSTATE", + One, + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_lrme_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + 0x02 + } + } + }, + + Package (0x06) + { + "PSTATE_SET", + Zero, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_lrme_clk", + 0x03, + 0x17D78400, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_lrme_clk", + 0x03, + 0x1312D000, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_lrme_clk", + 0x03, + 0x10089D40, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_lrme_clk", + 0x03, + Zero, + 0x03 + } + } + } + } + }, + + Package (0x05) + { + "COMPONENT", + 0x07, + Package (0x0B) + { + "FSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + One + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_fd_core_clk", + One + } + }, + + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + 0x02 + } + } + }, + + Package (0x0B) + { + "FSTATE", + One, + Package (0x02) + { + "PSTATE_ADJUST", + Package (0x02) + { + Zero, + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_fd_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_camnoc_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_cpas_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "cam_cc_soc_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_axi_clk", + 0x02 + } + }, + + Package (0x02) + { + "FOOTSWITCH", + Package (0x02) + { + "titan_top_gdsc", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_camera_xo_clk", + 0x02 + } + } + }, + + Package (0x06) + { + "PSTATE_SET", + Zero, + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_fd_core_clk", + 0x03, + 0x23C34600, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_fd_core_clk", + 0x03, + 0x20113A80, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_fd_core_clk", + 0x03, + 0x17D78400, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "cam_cc_fd_core_clk", + 0x03, + Zero, + 0x03 + } + } + } + } + } + } + }) + } + + // resources needed by touch driver + Scope (\_SB.PEP0) + { +//#if 0 + Method (LPMX, 0, NotSerialized) + { + Return (LPXC) /* \_SB_.PEP0.LPXC */ + } +//#endif + + Name (LPXC, Package (0x01) + { + Package (0x04) + { + "DEVICE", + "\\_SB.TSC1", + Package (0x0B) + { + "DSTATE", + Zero, + // TSC1 Fajita: enable the 2.8V regulator on LDO28_A + Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO28_A", + One, + 2856000, + One, + 0x07, + Zero + } + }, + // Delay 10ms + Package (0x02) + { + "DELAY", + Package (0x01) + { + 10000 + } + }, + // enable the v1p8 GPIO + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 88, + One, + Zero, + One, + Zero, + Zero + } + }, + // enable the 2v8 GPIO + // not actually a thing on fajita + // no 1v8 i2c regulator either + + // sleep 10ms + Package (0x02) + { + "DELAY", + Package (0x01) + { + 10000 + } + }, + + // reset the device + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 99, + One, + Zero, + One, + Zero, + Zero + } + }, + + // sleep 10ms + Package (0x02) + { + "DELAY", + Package (0x01) + { + 10000 + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 99, + Zero, + Zero, + One, + Zero, + Zero + } + }, + + Package (0x02) + { + "DELAY", + Package (0x01) + { + 10000 + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 99, + One, + Zero, + One, + Zero, + Zero + } + }, + }, + + Package (0x04) + { + "DSTATE", + 0x03, + Package (0x02) + { + // set reset low + "TLMMGPIO", + Package (0x06) + { + 99, + Zero, + Zero, + One, + Zero, + Zero + }, + }, + + // set v1p8 low + Package (0x02) + { + // set reset low + "TLMMGPIO", + Package (0x06) + { + 88, + Zero, + Zero, + One, + Zero, + Zero + }, + }, + + // disable the 2.8V regulator + /*Package (0x02) + { + "PMICVREGVOTE", + Package (0x06) + { + "PPP_RESOURCE_ID_LDO28_A", + One, + 2856000, + One, + 0x07, + Zero + } + },*/ + } + } + }) + } + + // Bus Access Modules (BAM) + Device (BAM1) + { + Name (_HID, "QCOM0213") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + 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, + 0x01DC4000, // Address Base + 0x00024000, // Address Length + ) + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000130, + } + }) + Return (RBUF) /* \_SB_.BAM1._CRS.RBUF */ + } + } + + Device (BAM5) + { + Name (_HID, "QCOM0213") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, 0x05) // _UID: Unique ID + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x17184000, // Address Base + 0x00032000, // Address Length + ) + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000000C4, + } + }) + Return (RBUF) /* \_SB_.BAM5._CRS.RBUF */ + } + } + + Device (BAM6) + { + Name (_HID, "QCOM0213") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, 0x06) // _UID: Unique ID + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x17204000, // Address Base + 0x00026000, // Address Length + ) + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000144, + } + }) + Return (RBUF) /* \_SB_.BAM6._CRS.RBUF */ + } + } + + Device (BAM7) + { + Name (_HID, "QCOM0213") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, 0x07) // _UID: Unique ID + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x08884000, // Address Base + 0x00023000, // Address Length + ) + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x0000009A, + } + }) + Return (RBUF) /* \_SB_.BAM7._CRS.RBUF */ + } + } + + Device (BAMD) + { + Name (_HID, "QCOM0213") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, 0x0D) // _UID: Unique ID + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x0A904000, // Address Base + 0x00017000, // Address Length + ) + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000000A9, + } + }) + Return (RBUF) /* \_SB_.BAMD._CRS.RBUF */ + } + } + + Device (BAME) + { + Name (_HID, "QCOM0213") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, 0x0E) // _UID: Unique ID + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x06064000, // Address Base + 0x00015000, // Address Length + ) + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000000C7, + } + }) + Return (RBUF) /* \_SB_.BAME._CRS.RBUF */ + } + } + + Device (BAMF) + { + Name (_HID, "QCOM0213") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, 0x0F) // _UID: Unique ID + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x0A704000, // Address Base + 0x00017000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x000000A4, + } + }) + Return (RBUF) /* \_SB_.BAMF._CRS.RBUF */ + } + } + + Device (UAR7) + { + Name (_HID, "QCOM0236") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, 0x07) // _UID: Unique ID + Name (_DEP, Package (0x01) // _DEP: Dependencies + { + \_SB.PEP0 + }) + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x00898000, // Address Base + 0x00004000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x0000027F, + } + GpioInt (Edge, ActiveLow, Exclusive, PullDown, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0030 + } + }) + Return (RBUF) /* \_SB_.UAR7._CRS.RBUF */ + } + + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0B) + } + } + + Device (UARD) + { + Name (_HID, "QCOM0236") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, 0x0A) // _UID: Unique ID + Name (_DEP, Package (0x01) // _DEP: Dependencies + { + \_SB.PEP0 + }) + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x00A84000, // Address Base + 0x00004000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x00000182, + } + GpioInt (Edge, ActiveLow, Exclusive, PullDown, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0005 + } + }) + Return (RBUF) /* \_SB_.UARD._CRS.RBUF */ + } + } + + Device (I2C1) + { + Name (_HID, "QCOM0220") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, One) // _UID: Unique ID + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.QGP0 + }) + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x00880000, // Address Base + 0x00004000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x00000279, + } + }) + Return (RBUF) /* \_SB_.I2C1._CRS.RBUF */ + } + } + + Device (I2C3) + { + Name (_HID, "QCOM0220") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, 0x03) // _UID: Unique ID + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.QGP0 + }) + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x00888000, // Address Base + 0x00004000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x0000027B, + } + }) + Return (RBUF) /* \_SB_.I2C3._CRS.RBUF */ + } + } + + Device (I2C4) + { + Name (_HID, "QCOM0220") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, 0x04) // _UID: Unique ID + Name (_DEP, Package (0x01) // _DEP: Dependencies + { + \_SB.PEP0//, + //\_SB.QGP0 + }) + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x0088C000, // Address Base + 0x00004000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x0000027C, + } + }) + Return (RBUF) /* \_SB_.I2C4._CRS.RBUF */ + } + } + + Device (I2C5) + { + Name (_HID, "QCOM0220") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, 0x05) // _UID: Unique ID + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.QGP0 + }) + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x00890000, // Address Base + 0x00004000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x0000027D, + } + }) + Return (RBUF) /* \_SB_.I2C5._CRS.RBUF */ + } + } + + Device (I2C8) + { + Name (_HID, "QCOM0220") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, 0x08) // _UID: Unique ID + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.QGP0 + }) + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x0089C000, // Address Base + 0x00004000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x00000280, + } + }) + Return (RBUF) /* \_SB_.I2C8._CRS.RBUF */ + } + } + + Device (IC11) + { + Name (_HID, "QCOM0220") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, 0x0B) // _UID: Unique ID + Name (_DEP, Package (0x01) // _DEP: Dependencies + { + \_SB.PEP0//, + //\_SB.QGP0 + }) + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x00A88000, // Address Base + 0x00004000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x00000183, + } + }) + Return (RBUF) /* \_SB_.IC11._CRS.RBUF */ + } + } + + Device (IC12) + { + Name (_HID, "QCOM0220") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, 0x0C) // _UID: Unique ID + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.QGP0 + }) + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x00A8C000, // Address Base + 0x00004000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x00000184, + } + }) + Return (RBUF) /* \_SB_.IC12._CRS.RBUF */ + } + } + + Device (IC13) + { + Name (_HID, "QCOM0220") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, 0x0D) // _UID: Unique ID + Name (_DEP, Package (0x01) // _DEP: Dependencies + { + \_SB.PEP0 + }) + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x00A90000, // Address Base + 0x00004000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x00000185, + } + }) + Return (RBUF) /* \_SB_.IC13._CRS.RBUF */ + } + } + + Device (IC15) + { + Name (_HID, "QCOM0220") // _HID: Hardware ID + Name (_UID, 0x0F) // _UID: Unique ID + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.QGP0 + }) + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x00A98000, // Address Base + 0x00004000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x00000187, + } + }) + Return (RBUF) /* \_SB_.IC15._CRS.RBUF */ + } + } + + Device (IC16) + { + Name (_HID, "QCOM0220") // _HID: Hardware ID + Name (_UID, 0x10) // _UID: Unique ID + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.QGP0 + }) + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x00A9C000, // Address Base + 0x00004000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x00000188, + } + }) + Return (RBUF) /* \_SB_.IC16._CRS.RBUF */ + } + } + + Device (SPI9) + { + Name (_HID, "QCOM021E") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, 0x09) // _UID: Unique ID + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.QGP1 + }) + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x00A80000, // Address Base + 0x00004000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x00000181, + } + }) + Return (RBUF) /* \_SB_.SPI9._CRS.RBUF */ + } + } + + // + // PEP resources for buses + // + Scope (\_SB.PEP0) + { + Method (BSMD, 0, NotSerialized) + { + Return (BSRC) /* \_SB_.PEP0.BSRC */ + } + + Method (PQMD, 0, NotSerialized) + { + If ((\_SB.SIDV < 0x00020000)) + { + Return (DFS1) /* \_SB_.PEP0.DFS1 */ + } + Else + { + Return (DFS2) /* \_SB_.PEP0.DFS2 */ + } + } + + Name (BSRC, Package (0x0C) + { + Package (0x04) + { + "DEVICE", + "\\_SB.UAR7", + Package (0x12) + { + "COMPONENT", + Zero, + Package (0x09) + { + "FSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_1", + "ICBID_SLAVE_EBI1", + 0x53724E00, + 0x0682 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_1", + 0x08D24D00, + 0x02FAF080 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_m_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_s_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_2x_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_s6_clk", + One + } + } + }, + + Package (0x09) + { + "FSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_m_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_s_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_s6_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_2x_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_1", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_1", + Zero, + Zero + } + } + }, + + Package (0x06) + { + "PSTATE", + Zero, + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x2D, + Zero, + One, + Zero, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x2E, + Zero, + One, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x2F, + Zero, + One, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x30, + Zero, + One, + Zero, + One, + Zero + } + } + }, + + Package (0x06) + { + "PSTATE", + One, + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x2D, + Zero, + One, + Zero, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x2E, + Zero, + One, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x2F, + Zero, + One, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x30, + Zero, + One, + Zero, + One, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap0_s6_clk", + 0x03, + 0x00708000, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap0_s6_clk", + 0x03, + 0x00E10000, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap0_s6_clk", + 0x03, + 0x01C20000, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap0_s6_clk", + 0x03, + 0x01E84800, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x06, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap0_s6_clk", + 0x03, + 0x02DC6C00, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x07, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap0_s6_clk", + 0x03, + 0x03D09000, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x08, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap0_s6_clk", + 0x03, + 0x04C4B400, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x09, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap0_s6_clk", + 0x03, + 0x05B8D800, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap0_s6_clk", + 0x03, + 0x061A8000, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap0_s6_clk", + 0x03, + 0x06ACFC00, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap0_s6_clk", + 0x03, + 0x07080000, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0D, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap0_s6_clk", + 0x03, + 0x07A12000, + 0x04 + } + } + } + }, + + Package (0x04) + { + "COMPONENT", + One, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + } + } + }, + + Package (0x05) + { + "DEVICE", + 0x02, + "\\_SB.UARD", + Package (0x12) + { + "COMPONENT", + Zero, + Package (0x0A) + { + "FSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_2", + "ICBID_SLAVE_EBI1", + 0x53724E00, + 0x0682 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_2", + 0x08D24D00, + 0x02FAF080 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_m_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_s_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s1_clk", + 0x03, + 0x00708000, + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_s1_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_2x_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_clk", + One + } + } + }, + + Package (0x09) + { + "FSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_m_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_s_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_s1_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_2x_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_2", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_2", + Zero, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + Zero, + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x05, + Zero, + One, + Zero, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x04, + Zero, + One, + Zero, + Zero, + Zero + } + } + }, + + Package (0x04) + { + "PSTATE", + One, + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x05, + Zero, + One, + Zero, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x04, + Zero, + One, + Zero, + Zero, + Zero + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s1_clk", + 0x03, + 0x00708000, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s1_clk", + 0x03, + 0x00E10000, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s1_clk", + 0x03, + 0x01C20000, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s1_clk", + 0x03, + 0x01E84800, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x06, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s1_clk", + 0x03, + 0x02DC6C00, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x07, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s1_clk", + 0x03, + 0x03D09000, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x08, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s1_clk", + 0x03, + 0x04C4B400, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x09, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s1_clk", + 0x03, + 0x05B8D800, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0A, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s1_clk", + 0x03, + 0x061A8000, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0B, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s1_clk", + 0x03, + 0x06ACFC00, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0C, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s1_clk", + 0x03, + 0x07080000, + 0x04 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x0D, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s1_clk", + 0x03, + 0x07A12000, + 0x04 + } + } + } + }, + + Package (0x04) + { + "COMPONENT", + One, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x02) + { + "FSTATE", + One + } + } + }, + + Package (0x07) + { + "DEVICE", + "\\_SB.I2C1", + Package (0x03) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + } + }, + + Package (0x0B) + { + "DSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_1", + "ICBID_SLAVE_EBI1", + 0x53724E00, + 0x0682 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_1", + 0x08D24D00, + 0x02FAF080 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_m_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_s_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap0_s0_clk", + 0x08, + 0x0124F800, + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_2x_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_clk", + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + Zero, + One, + One, + One, + 0x03, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + One, + One, + One, + One, + 0x03, + Zero + } + } + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x0B) + { + "DSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_m_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_s_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_s0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_2x_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_1", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_1", + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + Zero, + Zero, + Zero, + Zero, + 0x03, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + One, + Zero, + Zero, + Zero, + 0x03, + Zero + } + } + } + }, + + Package (0x07) + { + "DEVICE", + "\\_SB.I2C3", + Package (0x03) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + } + }, + + Package (0x0B) + { + "DSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_1", + "ICBID_SLAVE_EBI1", + 0x53724E00, + 0x0682 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_1", + 0x08D24D00, + 0x02FAF080 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_m_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_s_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap0_s2_clk", + 0x08, + 0x0124F800, + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_2x_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_clk", + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x1B, + One, + One, + One, + 0x03, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x1C, + One, + One, + One, + 0x03, + Zero + } + } + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x0B) + { + "DSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_m_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_s_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_s2_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_2x_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_1", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_1", + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x1B, + Zero, + Zero, + Zero, + 0x03, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x1C, + Zero, + Zero, + Zero, + 0x03, + Zero + } + } + } + }, + + Package (0x07) + { + "DEVICE", + "\\_SB.I2C4", + Package (0x03) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + } + }, + + Package (0x0B) + { + "DSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_1", + "ICBID_SLAVE_EBI1", + 0x53724E00, + 0x0682 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_1", + 0x08D24D00, + 0x02FAF080 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_m_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_s_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap0_s3_clk", + 0x08, + 0x0124F800, + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_2x_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_clk", + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x29, + One, + One, + One, + 0x03, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x2A, + One, + One, + One, + 0x03, + Zero + } + } + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x0B) + { + "DSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_m_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_s_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_s3_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_2x_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_1", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_1", + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x29, + Zero, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x2A, + Zero, + Zero, + Zero, + Zero, + Zero + } + } + } + }, + + Package (0x07) + { + "DEVICE", + "\\_SB.I2C5", + Package (0x03) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + } + }, + + Package (0x0B) + { + "DSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_1", + "ICBID_SLAVE_EBI1", + 0x53724E00, + 0x0682 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_1", + 0x00E1D480, + 0x02FAF080 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_m_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_s_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap0_s4_clk", + 0x08, + 0x0124F800, + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_2x_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_clk", + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x59, + One, + 0x02, + One, + 0x03, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x5A, + One, + 0x03, + One, + 0x03, + Zero + } + } + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x0B) + { + "DSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_m_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_s_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_s4_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_2x_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_1", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_1", + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x59, + Zero, + 0x02, + Zero, + 0x03, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x5A, + Zero, + 0x03, + Zero, + 0x03, + Zero + } + } + } + }, + + Package (0x07) + { + "DEVICE", + "\\_SB.I2C8", + Package (0x03) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + } + }, + + Package (0x0B) + { + "DSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_1", + "ICBID_SLAVE_EBI1", + 0x53724E00, + 0x0682 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_1", + 0x08D24D00, + 0x02FAF080 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_m_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_s_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap0_s7_clk", + 0x08, + 0x0124F800, + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_2x_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_clk", + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x5D, + One, + 0x03, + One, + 0x03, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x5E, + One, + 0x03, + One, + 0x03, + Zero + } + } + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x0B) + { + "DSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_m_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_0_s_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_s7_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_2x_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap0_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_1", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_1", + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x5D, + Zero, + 0x03, + Zero, + 0x03, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x5E, + Zero, + 0x03, + Zero, + 0x03, + Zero + } + } + } + }, + + Package (0x07) + { + "DEVICE", + "\\_SB.IC11", + Package (0x03) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + } + }, + + Package (0x0B) + { + "DSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_2", + "ICBID_SLAVE_EBI1", + 0x53724E00, + 0x0682 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_2", + 0x08D24D00, + 0x02FAF080 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_m_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_s_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s2_clk", + 0x08, + 0x0124F800, + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_2x_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_clk", + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x37, + One, + One, + One, + 0x03, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x38, + One, + One, + One, + 0x03, + Zero + } + } + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x0B) + { + "DSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_m_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_s_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_s2_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_2x_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_2", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_2", + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x37, + Zero, + Zero, + Zero, + 0x03, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x38, + Zero, + Zero, + Zero, + 0x03, + Zero + } + } + } + }, + + Package (0x07) + { + "DEVICE", + "\\_SB.IC12", + Package (0x03) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + } + }, + + Package (0x0B) + { + "DSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_2", + "ICBID_SLAVE_EBI1", + 0x53724E00, + 0x0682 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_2", + 0x08D24D00, + 0x02FAF080 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_m_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_s_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s3_clk", + 0x08, + 0x0124F800, + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_2x_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_clk", + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x1F, + One, + One, + One, + 0x03, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x20, + One, + One, + One, + 0x03, + Zero + } + } + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x0B) + { + "DSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_m_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_s_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_s3_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_2x_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_2", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_2", + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x1F, + Zero, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x20, + Zero, + Zero, + Zero, + Zero, + Zero + } + } + } + }, + + Package (0x07) + { + "DEVICE", + "\\_SB.IC13", + Package (0x03) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + } + }, + + Package (0x0B) + { + "DSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_2", + "ICBID_SLAVE_EBI1", + 0x53724E00, + 0x0682 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_2", + 0x08D24D00, + 0x02FAF080 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_m_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_s_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s4_clk", + 0x08, + 0x0124F800, + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_2x_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_clk", + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x31, + One, + One, + One, + 0x03, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x32, + One, + One, + One, + 0x03, + Zero + } + } + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x0B) + { + "DSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_m_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_s_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_s4_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_2x_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_2", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_2", + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x31, + Zero, + Zero, + Zero, + 0x03, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x32, + Zero, + Zero, + Zero, + 0x03, + Zero + } + } + } + }, + + Package (0x07) + { + "DEVICE", + "\\_SB.IC15", + Package (0x03) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + } + }, + + Package (0x0B) + { + "DSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_2", + "ICBID_SLAVE_EBI1", + 0x53724E00, + 0x0682 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_2", + 0x08F0D180, + 0x02FAF080 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_m_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_s_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s6_clk", + 0x08, + 0x0124F800, + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_2x_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_clk", + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x21, + One, + 0x02, + One, + 0x03, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x22, + One, + 0x02, + One, + 0x03, + Zero + } + } + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x0B) + { + "DSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_m_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_s_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_s6_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_2x_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_2", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_2", + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x21, + Zero, + Zero, + Zero, + 0x03, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x22, + Zero, + Zero, + Zero, + 0x03, + Zero + } + } + } + }, + + Package (0x07) + { + "DEVICE", + "\\_SB.IC16", + Package (0x03) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + } + }, + + Package (0x0B) + { + "DSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_2", + "ICBID_SLAVE_EBI1", + 0x53724E00, + 0x0682 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_2", + 0x08D24D00, + 0x02FAF080 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_m_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_s_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s7_clk", + 0x08, + 0x0124F800, + 0x04 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_2x_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_clk", + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x51, + One, + 0x02, + One, + 0x03, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x52, + One, + 0x02, + One, + 0x03, + Zero + } + } + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x0B) + { + "DSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_m_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_s_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_s7_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_2x_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_2", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_2", + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x51, + Zero, + Zero, + Zero, + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x52, + Zero, + Zero, + Zero, + Zero, + Zero + } + } + } + } + }) + Name (DFS1, Package (0x01) + { + Package (0x07) + { + "DEVICE", + "\\_SB.SPI9", + Package (0x0A) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s0_clk", + 0x03, + 0x0124F800, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s0_clk", + 0x03, + 0x01E84800, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s0_clk", + 0x03, + 0x0249F000, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s0_clk", + 0x03, + 0x02DC6C00, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s0_clk", + 0x03, + 0x03D09000, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s0_clk", + 0x03, + 0x05B8D800, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x06, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s0_clk", + 0x03, + 0x05F5E100, + 0x03 + } + } + } + }, + + Package (0x0D) + { + "DSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_2", + "ICBID_SLAVE_EBI1", + 0x53724E00, + 0x0682 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_2", + 0x08D24D00, + 0x02FAF080 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_m_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_s_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_s0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_2x_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_clk", + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x41, + One, + 0x02, + Zero, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x42, + One, + 0x02, + One, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x43, + One, + 0x02, + One, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x44, + One, + 0x02, + One, + One, + Zero + } + } + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x0D) + { + "DSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_m_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_s_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_s0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_2x_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_2", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_2", + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x41, + Zero, + 0x02, + Zero, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x42, + Zero, + 0x02, + Zero, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x43, + Zero, + 0x02, + Zero, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x44, + Zero, + 0x02, + Zero, + One, + Zero + } + } + } + } + }) + Name (DFS2, Package (0x01) + { + Package (0x07) + { + "DEVICE", + "\\_SB.SPI9", + Package (0x0A) + { + "COMPONENT", + Zero, + Package (0x02) + { + "FSTATE", + Zero + }, + + Package (0x03) + { + "PSTATE", + Zero, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s0_clk", + 0x03, + 0x0124F800, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + One, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s0_clk", + 0x03, + 0x01E84800, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x02, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s0_clk", + 0x03, + 0x02DC6C00, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s0_clk", + 0x03, + 0x03D09000, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x04, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s0_clk", + 0x03, + 0x05B8D800, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x05, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s0_clk", + 0x03, + 0x05F5E100, + 0x03 + } + } + }, + + Package (0x03) + { + "PSTATE", + 0x06, + Package (0x02) + { + "CLOCK", + Package (0x04) + { + "gcc_qupv3_wrap1_s0_clk", + 0x03, + 0x07270E00, + 0x03 + } + } + } + }, + + Package (0x0D) + { + "DSTATE", + Zero, + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_2", + "ICBID_SLAVE_EBI1", + 0x53724E00, + 0x0682 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_2", + 0x08D24D00, + 0x02FAF080 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_m_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_s_ahb_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_s0_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_2x_clk", + One + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_clk", + One + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x41, + One, + 0x02, + Zero, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x42, + One, + 0x02, + One, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x43, + One, + 0x02, + One, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x44, + One, + 0x02, + One, + One, + Zero + } + } + }, + + Package (0x02) + { + "DSTATE", + One + }, + + Package (0x02) + { + "DSTATE", + 0x02 + }, + + Package (0x0D) + { + "DSTATE", + 0x03, + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_m_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap_1_s_ahb_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_s0_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_2x_clk", + 0x02 + } + }, + + Package (0x02) + { + "CLOCK", + Package (0x02) + { + "gcc_qupv3_wrap1_core_clk", + 0x02 + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_BLSP_2", + "ICBID_SLAVE_EBI1", + Zero, + Zero + } + }, + + Package (0x02) + { + "BUSARB", + Package (0x05) + { + 0x03, + "ICBID_MASTER_APPSS_PROC", + "ICBID_SLAVE_BLSP_2", + Zero, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x41, + Zero, + 0x02, + Zero, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x42, + Zero, + 0x02, + Zero, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x43, + Zero, + 0x02, + Zero, + One, + Zero + } + }, + + Package (0x02) + { + "TLMMGPIO", + Package (0x06) + { + 0x44, + Zero, + 0x02, + Zero, + One, + Zero + } + } + } + } + }) + } + + // RPE Subsystem Notifier (RPEN) + Device (RPEN) + { + Name (_HID, "QCOM026D") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + } + + // + // Peripheral Image Loader (PIL) Driver + // + Device (PILC) + { + Name (_HID, "QCOM023B") // _HID: Hardware ID + Method (PILX, 0, NotSerialized) + { + Return (PILP) /* \_SB_.PILC.PILP */ + } + + Name (PILP, Package (0x01) + { + // Methods needed for PIL bootup proceedure + // Drive will parse this list and call each + // method accordingly + "OPCA" + }) + Method(ACPO, 0x0, NotSerialized) + { + Name(PKGG, Package(0x1) + { + Package(0x3) + { + // Represents MBA subsystem + Zero, + Zero, + Buffer(0x10) + { + 0x6d, 0x76, 0x58, 0xba, 0xf2, 0xab, 0x02, 0x44, 0x88, 0xd7, 0x90, 0xab, + 0x24, 0x3f, 0x6c, 0x77 + } + } + }) + // Copy ACPI globals for Address for this subsystem into above package for use in driver + Store(RMTB, Index(DerefOf(Index(PKGG, Zero, )), Zero, )) + Store(RMTX, Index(DerefOf(Index(PKGG, Zero, )), One, )) + Return(PKGG) + } +#if 0 + Method (ACPO, 0, NotSerialized) + { + Name (PKGG, Package (0x01) + { + Package (0x03) + { + // Represents MBA subsystem + Zero, + Zero, + ToUUID ("ba58766d-abf2-4402-88d7-90ab243f6c77") + } + }) + // Copy ACPI globals for Address for this subsystem into above package for use in driver + DerefOf (PKGG [Zero]) [Zero] = RMTB /* \_SB_.RMTB */ + DerefOf (PKGG [Zero]) [One] = RMTX /* \_SB_.RMTX */ + Return (PKGG) /* \_SB_.PILC.ACPO.PKGG */ + } +#endif + } + + // + // RPE Crash Dump Injector (CDI) Driver + // + Device (CDI) + { + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.PILC, + \_SB.RPEN + }) + Name (_HID, "QCOM026C") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + } + + Device (SCSS) + { + Name (_DEP, Package (0x06) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.PILC, + \_SB.GLNK, + \_SB.IPC0, + \_SB.RPEN, + \_SB.SSDD + }) + //Name (_HID, "QCOM02BE") // _HID: Hardware ID + Name (_HID, "MEOW02BE") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000199, + } + }) + Return (RBUF) /* \_SB_.SCSS._CRS.RBUF */ + } + + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + } + + + +// comment up to here + + + + // + // ADSP Driver: load ADSP image + // + Device (ADSP) + { + Name (_DEP, Package (0x07) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.PILC, + \_SB.GLNK, + \_SB.IPC0, + \_SB.RPEN, + \_SB.SSDD, + \_SB.PDSR + }) + Name (_HID, "QCOM023D") // _HID: Hardware ID + //Name (_HID, "MEOW023D") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + // + // WDIR - Watch Dog Interrupt Registers + // + Method (WDIR, 0, NotSerialized) + { + Return (Package (0x04) + { + 0x02, // Interrupt number - 2nd bit in Eleventh register + 0x17A0011C, // APCS_GICD_ISENABLERn (n represents Eleventh register), register used to enable WDOG bite interrupt. + 0x17A0019C, // APCS_GICD_ICENABLERn (n represents Eleventh register), register used to disable WDOG bite interrupt. + 0x17A0021C // APCS_GICD_ICPENDRn (n represents Eleventh register), register used to clear pending WDOG bite interrupt. + }) + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + // Inbound interrupt from LPASS dog bite + // See http://ipcatalog.qualcomm.com/irqs/chip/50/map/110 + // q6ss_wdog_exp_irq = 194 + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000000C2, + } + }) + Return (RBUF) /* \_SB_.ADSP._CRS.RBUF */ + } + + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + + Device (SLM1) + { + Name (_ADR, Zero) // _ADR: Address + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Name (_SUB, "C153144D") // _SUB: Subsystem ID + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + // SLIMbus register address space + Memory32Fixed (ReadWrite, + 0x171C0000, // Address Base + 0x0002C000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x000000C3, + } + }) + Return (RBUF) /* \_SB_.ADSP.SLM1._CRS.RBUF */ + } + + Method (CHLD, 0, NotSerialized) + { + Return (Package (0x01) + { + "SLM1\\QCOM023F" + }) + } + + // ADCM Driver Configurations + Device (ADCM) + { + Name (_SUB, "C153144D") // _SUB: Subsystem ID + // HID values are present in Qualcomm.HID.props under MSBuild\Qualcomm + // Parent of ADCM shall defined this ( Refer mproc.asl or slimbus.asl) + // AMSS in bear family and Slimbus in Badger family makes below entry + // HID_ACD = QCOM242D + // Name (_HID, "HID_ACD") + + // Address object for acpi device enumerated device (ADCM) on parent device bus + // Used to identify multiple child if present + Name (_ADR, Zero) // _ADR: Address + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.MMU0, + \_SB.IMM0 + }) + Method (CHLD, 0, NotSerialized) + { + Return (Package (0x01) + { + "ADCM\\SAMM0802" + }) + } + + Device (AUDD) + { + Name (_ADR, Zero) // _ADR: Address + Name (_SUB, "C153144D") // _SUB: Subsystem ID + Name (_DEP, Package (0x01) // _DEP: Dependencies + { + \_SB.SPI9 + }) + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + GpioIo (Exclusive, PullNone, 0x0000, 0x0640, IoRestrictionNone, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0040 + } + GpioInt (Edge, ActiveHigh, Exclusive, PullDown, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0100 + } + SpiSerialBusV2 (0x0000, PolarityLow, FourWireMode, 0x08, + ControllerInitiated, 0x016E3600, ClockPolarityLow, + ClockPhaseFirst, "\\_SB.SPI9", + 0x00, ResourceConsumer, , Exclusive, + RawDataBuffer (0x07) // Vendor Data + { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + }) + }) + Return (RBUF) /* \_SB_.ADSP.SLM1.ADCM.AUDD._CRS.RBUF */ + } + + Method (CHLD, 0, NotSerialized) + { + Name (CH, Package (0x02) + { + "AUDD\\SAMM0803", + "AUDD\\SAMM0801" + }) + Return (CH) /* \_SB_.ADSP.SLM1.ADCM.AUDD.CHLD.CH__ */ + } + + // MBHC Driver Configurations + Device (MBHC) + { + Name (_ADR, Zero) // _ADR: Address + Name (_SUB, "C153144D") // _SUB: Subsystem ID + } + + // Miniport Device Configurations + Device (QCRT) + { + // Address object for acpi device enumerated device (QCRT) on parent device bus + // Used to identify multiple child if present + // Since, QCRT is second child of AUDD, we have assigned slot-1 + Name (_ADR, One) // _ADR: Address + Name (_SUB, "C153144D") // _SUB: Subsystem ID + } + } + } + } + + Device (SLM2) + { + Name (_ADR, One) // _ADR: Address + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x17240000, // Address Base + 0x0002C000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x00000143, + } + }) + Return (RBUF) /* \_SB_.ADSP.SLM2._CRS.RBUF */ + } + } + } + + // + // AMSS Driver: Used for loading the modem binaries + // + Device (AMSS) + { + Name (_CCA, Zero) // _CCA: Cache Coherency Attribute + Name (_DEP, Package (0x09) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.IPA, + \_SB.GLNK, + \_SB.IPC0, + \_SB.PILC, + \_SB.RFS0, + \_SB.RPEN, + \_SB.SSDD, + \_SB.PDSR + }) + Name (_HID, "QCOM023E") // _HID: Hardware ID + Name (WLEN, One) + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + // Inbound interrupt from Q6SW dog bite: + // q6ss_wdog_exp_irq = 298 + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x0000012A, + } + }) + Return (RBUF) /* \_SB_.AMSS._CRS.RBUF */ + } + + // + // WDIR - Watch Dog Interrupt Registers + // + Method (WDIR, 0, NotSerialized) + { + Return (Package (0x04) + { + Zero, + 0x17A0013C, + 0x17A001BC, + 0x17A002BC + }) + } + + Device (QWLN) + { + Name (_ADR, Zero) // _ADR: Address + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.MMU0 + }) + Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake + { + Zero, + Zero + }) // wakeable from S0 + Name (_S0W, 0x02) // S0 should put device in D2 for wake + Name (_S4W, 0x02) // all other Sx (just in case) should also wake from D2 + Name (_PRR, Package (One) // _PRR: Power Resource for Reset + { + \_SB.AMSS.QWLN.WRST + }) // Power resource reference for device reset and recovery. + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x18800000, // Address Base + 0x00800000, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x0C250000, // Address Base + 0x00000010, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x8DF00000, // Address Base // fajita + 0x00100000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x000001BE, + } + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x000001BF, + } + Interrupt (ResourceConsumer, Level, ActiveHigh, ExclusiveAndWake, ,, ) + { + 0x000001C0, + } + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x000001C1, + } + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x000001C2, + } + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x000001C3, + } + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x000001C4, + } + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x000001C5, + } + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x000001C6, + } + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x000001C7, + } + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x000001C8, + } + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x000001C9, + } + }) + Return (RBUF) /* \_SB_.AMSS.QWLN._CRS.RBUF */ + } + + Method (WMSA, 0, NotSerialized) + { + Return (Package (0x01) + { + 0x00100000 + }) + } + + OperationRegion (WOPR, 0x80, Zero, 0x10) + Field (WOPR, DWordAcc, NoLock, Preserve) + { + Offset (0x04), + WTRG, 32 + } + + PowerResource (WRST, 0x05, 0x0000) + { + Method (_ON, 0, NotSerialized) // _ON_: Power On + { + } + + Method (_OFF, 0, NotSerialized) // _OFF: Power Off + { + } + + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + + Method (_RST, 0, NotSerialized) // _RST: Device Reset + { + WTRG = 0xABCD + } + } + } + + Scope (\_SB) + { + Device (COEX) + { + Name (_HID, "QCOM0295") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + } + + Device (WSAR) + { + Name (_HID, "SAM0609") // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_SUB, "C153144D") // _SUB: Subsystem ID + Name (_DEP, Package (0x01) // _DEP: Dependencies + { + \_SB.AMSS.QWLN + }) + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + } + } + } + + // + // QMI Service manager + // + Device (QSM) + { + Name (_HID, "QCOM02B9") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_DEP, Package (0x04) // _DEP: Dependencies + { + \_SB.GLNK, + \_SB.IPC0, + \_SB.PILC, + \_SB.RPEN + }) + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x98F00000, // Address Base + 0x00600000, // Address Length + ) + }) + Return (RBUF) /* \_SB_.QSM_._CRS.RBUF */ + } + + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + } + + // + // Subsys Dummy Device + // Subsys devices that use QCCI should have an dependency on this + // + Device (SSDD) + { + Name (_HID, "QCOM02D1") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.GLNK, + \_SB.TFTP + }) + } + + Device (PDSR) + { + Name (_HID, "QCOM02CE") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_DEP, Package (0x03) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.GLNK, + \_SB.IPC0 + }) + } + + Device (CDSP) + { + Name (_DEP, Package (0x07) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.PILC, + \_SB.GLNK, + \_SB.IPC0, + \_SB.RPEN, + \_SB.SSDD, + \_SB.PDSR + }) + Name (_HID, "QCOM02F7") // _HID: Hardware ID + //Name (_HID, "MEOW02F7") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000262, + } + }) + Return (RBUF) /* \_SB_.CDSP._CRS.RBUF */ + } + } + + Device (TFTP) + { + Name (_HID, "QCOM02F6") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.IPC0 + }) + } + + Scope (\_SB.PILC) + { + Method (_SUB, 0, NotSerialized) // _SUB: Subsystem ID + { + If ((\_SB.SOID == 0x0155)) + { + Return ("CLSA0850") + } + Else + { + Return (\_SB.PSUB) + } + } + } + + Scope (\_SB.AMSS) + { + Method (_SUB, 0, NotSerialized) // _SUB: Subsystem ID + { + If ((\_SB.SOID == 0x0155)) + { + Return ("CLSA0850") + } + Else + { + Return (\_SB.PSUB) + } + } + } + + Device (LLC) + { + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.PEP0 + }) + Name (_HID, "QCOM02F8") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Return (ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x01300000, // Address Base + 0x00028000, // Address Length + ) + }) + } + } + + Device (MMU0) + { + Name (_HID, "QCOM0212") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, Zero) // _UID: Unique ID + Name (_DEP, Package (0x01) // _DEP: Dependencies + { + \_SB.MMU1 + }) + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Return (ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x15000000, // Address Base + 0x0007FFB8, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x01F46000, // Address Base + 0x00000004, // Address Length + ) + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000080, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000081, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000082, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000083, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000084, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000085, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000086, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000087, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000088, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000089, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x0000008A, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x0000008B, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x0000008C, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x0000008D, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x0000008E, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x0000008F, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000090, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000091, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000092, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000093, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000094, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000095, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000096, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000000D5, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000000D6, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000000D7, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000000D8, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000000D9, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000000DA, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000000DB, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000000DC, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000000DD, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000000DE, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000000DF, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000000E0, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x0000015B, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x0000015C, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x0000015D, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x0000015E, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x0000015F, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000160, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000161, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000162, + } + }) + } + } + + Device (MMU1) + { + Name (_HID, "QCOM0212") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, One) // _UID: Unique ID + Name (_DEP, Package (0x01) // _DEP: Dependencies + { + \_SB.PEP0 + }) + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Return (ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x05040000, // Address Base + 0x00010000, // Address Length + ) + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x0000018C, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x0000018D, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x0000018E, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x0000018F, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000190, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000191, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000192, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x00000193, + } + }) + } + } + + Device (IMM0) + { + Name (_HID, "QCOM030B") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, Zero) // _UID: Unique ID + } + + Device (IMM1) + { + Name (_HID, "QCOM030B") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, One) // _UID: Unique ID + } + +//#if 0 + Device (GPU0) + { + Name (_HID, "QCOM027E") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_CID, "ACPIQCOM027E") // _CID: Compatible ID + Name (_UID, Zero) // _UID: Unique ID + Name (_HRV, 0x7C) // _HRV: Hardware Revision + // Expose the internal monitor device to allow it to be used in a thermal zone + // for thermal mitigation. + // + Device (MON0) + { + Method (_ADR, 0, NotSerialized) // _ADR: Address + { + Return (Zero) + } + } + + Name (_DEP, Package (0x0A) // _DEP: Dependencies + { + \_SB.MMU0, + \_SB.MMU1, + \_SB.IMM0, + \_SB.IMM1, + \_SB.PEP0, + \_SB.PMIC, + \_SB.PILC, + \_SB.RPEN, + \_SB.TREE, + \_SB.SCM0 + }) + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x0AE00000, // Address Base + 0x00140000, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x088E0000, // Address Base + 0x000F4000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x00000073, + } + Memory32Fixed (ReadWrite, + 0x05000000, // Address Base + 0x0003F010, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x05060000, // Address Base + 0x0003F000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x0000014C, + } + Memory32Fixed (ReadWrite, + 0x0B280000, // Address Base + 0x0000FFFF, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x0B480000, // Address Base + 0x00010000, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x05090000, // Address Base + 0x00009000, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x0C200000, // Address Base + 0x0000FFFF, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x0AA00000, // Address Base + 0x00200000, // Address Length + ) + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x000000CE, + } + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, ) + { + 0x000000CF, + } + // TLMM GPIO used to reset the DSI panel + // + GpioIo (Shared, PullUp, 0x0000, 0x0000, IoRestrictionNone, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0060 + } + }) + Return (RBUF) /* \_SB_.GPU0._CRS.RBUF */ + } + + //------------------------------------------------------------------------------ + // Resource Auxiliary Info + // This method is a companion method to the main _CRS resource method. It + // includes information for each resource, such as the owning component, a + // string identifier, etc. + //------------------------------------------------------------------------------ + // + Method (RESI, 0, NotSerialized) + { + Name (RINF, Package (0x10) + { + 0x03, // Table Format Major Version + Zero, // Table Format Minor Version + Package (0x03) + { + "RESOURCE", + "MDP_REGS", // Resource Name + "DISPLAY" // Owning Component + }, + + Package (0x03) + { + "RESOURCE", + "DP_PHY_REGS", + "DISPLAY" + }, + + Package (0x03) + { + "RESOURCE", + "VSYNC_INTERRUPT", + "DISPLAY" + }, + + Package (0x03) + { + "RESOURCE", + "GFX_REGS", + "GRAPHICS" + }, + + Package (0x03) + { + "RESOURCE", + "GFX_REG_CONT", + "GRAPHICS" + }, + + Package (0x03) + { + "RESOURCE", + "GFX_INTERRUPT", + "GRAPHICS" + }, + + Package (0x03) + { + "RESOURCE", + "GPU_PDC_SEQ_MEM", + "GRAPHICS" + }, + + Package (0x03) + { + "RESOURCE", + "GPU_PDC_REGS", + "GRAPHICS" + }, + + Package (0x03) + { + "RESOURCE", + "GPU_CC", + "GRAPHICS" + }, + + Package (0x03) + { + "RESOURCE", + "GPU_RPMH_CPRF", + "GRAPHICS" + }, + + Package (0x03) + { + "RESOURCE", + "VIDEO_REGS", + "VIDEO" + }, + + Package (0x03) + { + "RESOURCE", + "VIDC_INTERRUPT", + "VIDEO" + }, + + Package (0x03) + { + "RESOURCE", + "VIDC_WD_INTERRUPT", + "VIDEO" + }, + + // TLMM GPIO used to reset the DSI panel + // + Package (0x03) + { + "RESOURCE", + "DSI_PANEL_RESET", + "DISPLAY" + } + }) + Return (RINF) /* \_SB_.GPU0.RESI.RINF */ + } + + //------------------------------------------------------------------------------ + // Graphics Engines and Display Config + // This method encapsulates all per-platform configuration data for engines and + // the display. This method consists of three sub-packages. The first package + // encapsulates all configuration information for the supported engines. The + // second package encapsulates all display configuration data. The third + // package is the list of all page tables used by the SMMUs in the engines and + // display. + //------------------------------------------------------------------------------ + // + Method (ENGS, 0, NotSerialized) + { + Name (EBUF, Package (0x06) + { + 0x03, // Table Format Major Version + 0x02, // Table Format Minor Version + 0x003B0014, // XML Common/Platform Source File Revision + + //------------------------------------------------------------------------------ + // Graphics Engine List + // This package enumerates all of the expected engines that should be enumerated + // on this platform, as well as engine-specific configuration data. This + // includes resource assignments, power component assignments, MMU IDs, + // and even chip family information. + //------------------------------------------------------------------------------ + // + Package (0x08) + { + "ENGINES", + 0x06, // Number of engines + Package (0x0A) + { + "ENGINE", + "GRAPHICS", // Engine String Identifier + "Adreno6X", // Chip Family Identifier + One, // Index of Primary Power Component + 0x02, // P-State Set Index of Footswitch override + Zero, // P-State Set Index of Reset + Package (0x0B) + { + "MMUINFO", + "Miniport", // SMMU managed by miniport or engine + "ArmSmmuV2", // SMMU Family + 0x02, // Number of SMMU stages + 0x31, // Address bits + "V8L", // Address format + "SMMUID", + ToUUID ("9833c712-3292-4ffb-b0f4-2bd20e1f7f66"), + "SMMUINTERFACEID", + Buffer (0x10) + { + /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........ + /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ........ + }, + + Package (0x0E) + { + "PAGETABLEUSAGE", + 0x04, // Number of page tables + "GraphicsGlobalPT", + Zero, + 0x03030000, + "GraphicsPerProcessPT", + Zero, + 0x03030000, + "GraphicsSecurePT", + One, + 0x030A0000, + "GraphicsGmuPT", + 0x03, + 0x03030002 + } + }, + + Package (0x04) + { + "PERF_CONTROLS", + Package (0x01) + { + One + }, + + Package (0x02) + { + 0x03, + Package (0x02) + { + "LimitForPassiveCooling", + One + } + }, + + Package (0x02) + { + 0x04, + Package (0x02) + { + "LimitForPassiveCooling", + One + } + } + }, + + Package (0x02) + { + "THERMAL_DOMAINS", + "GPU" + }, + + Package (0x05) + { + "PROPERTIES", + 0x03, + Package (0x02) + { + "GmemBaseAddr", + Zero + }, + + Package (0x02) + { + "GmemSize", + 0x00100000 + }, + + Package (0x02) + { + "SMMUCount", + One + } + } + }, + + Package (0x09) + { + "ENGINE", + "MDPBLT", // Engine String Identifier + "MDP5.x", // Chip Family Identifier + 0x02, // Index of Primary Power Component + One, // P-State Set Index of Footswitch override + Zero, // P-State Set Index of Reset + Package (0x02) + { + "SHAREDSMMU", + "ROTATOR" + }, + + Package (0x03) + { + "PERF_CONTROLS", + Package (0x02) + { + 0x02, + Package (0x02) + { + "LimitForPassiveCooling", + One + } + }, + + Package (0x02) + { + 0x03, + Package (0x02) + { + "LimitForPassiveCooling", + One + } + } + }, + + Package (0x02) + { + "THERMAL_DOMAINS", + "GPU" + } + }, + + Package (0x09) + { + "ENGINE", + "ROTATOR", + "MDP5.x", + 0x03, + One, + Zero, + Package (0x0B) + { + "MMUINFO", + "Miniport", + "ArmSmmuV2", + 0x02, + 0x20, + "V7S", + "SMMUID", + ToUUID ("36079ae4-78e8-452d-af50-0cff78b2f1ca"), + "SMMUINTERFACEID", + Buffer (0x10) + { + /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........ + /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ........ + }, + + Package (0x04) + { + "PAGETABLEUSAGE", + 0x02, + "MdpNonSecurePT", + "MdpSecurePT" + } + }, + + Package (0x03) + { + "PERF_CONTROLS", + Package (0x02) + { + 0x02, + Package (0x02) + { + "LimitForPassiveCooling", + One + } + }, + + Package (0x02) + { + 0x03, + Package (0x02) + { + "LimitForPassiveCooling", + One + } + } + }, + + Package (0x02) + { + "THERMAL_DOMAINS", + "GPU" + } + }, + + Package (0x0A) + { + "ENGINE", + "VIDEO", + "Venus", + 0x04, + One, + Zero, + Package (0x0B) + { + "MMUINFO", + "Engine", + "ArmSmmuV2", + 0x02, + 0x20, + "V7S", + "SMMUID", + ToUUID ("665e0f8e-add3-49d1-91bc-5540c5f57fba"), + "SMMUINTERFACEID", + ToUUID ("1c3fc0e8-0b11-4ee0-be89-3e21420a865f"), + Package (0x07) + { + "PAGETABLEUSAGE", + 0x05, + "VideoNonSecurePT", + "VideoSecurePT1", + "VideoSecurePT2", + "VideoSecurePT3", + "VideoSecurePT4" + } + }, + + Package (0x03) + { + "PERF_CONTROLS", + Package (0x01) + { + 0x02 + }, + + Package (0x01) + { + 0x03 + } + }, + + Package (0x01) + { + "THERMAL_DOMAINS" + }, + + Package (0x03) + { + "PROPERTIES", + One, + Package (0x02) + { + "DecMaxFps", + 0x3C + } + } + }, + + Package (0x09) + { + "ENGINE", + "CRYPTO", + "Crypto1.0", + 0x05, + One, + Zero, + Package (0x0B) + { + "MMUINFO", + "Miniport", + "ArmSmmuV2", + 0x02, + 0x20, + "V7S", + "SMMUID", + ToUUID ("36079ae4-78e8-452d-af50-0cff78b2f1ca"), + "SMMUINTERFACEID", + Buffer (0x10) + { + /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........ + /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ........ + }, + + Package (0x04) + { + "PAGETABLEUSAGE", + 0x02, + "CryptoNonSecurePT", + "CryptoSecurePT" + } + }, + + Package (0x02) + { + "PERF_CONTROLS", + Package (0x01) + { + 0x02 + } + }, + + Package (0x01) + { + "THERMAL_DOMAINS" + } + }, + + Package (0x08) + { + "ENGINE", + "VIDEO_ENCODER", + "Venus", + 0x06, + One, + Zero, + Package (0x03) + { + "PERF_CONTROLS", + Package (0x01) + { + 0x02 + }, + + Package (0x01) + { + 0x03 + } + }, + + Package (0x01) + { + "THERMAL_DOMAINS" + } + } + }, + + //------------------------------------------------------------------------------ + // Display Info Package + // This package enumerates all resources assigned to the display. Additionally, + // this routine includes any display configuration data, such as hotplug + // support. + //------------------------------------------------------------------------------ + // + Package (0x08) + { + "DISPLAYS", + "MDP5.x", // Chip Family Identifier + 0x03, // Number of displays + Package (0x07) + { + "DISPLAY", + "INTERNAL1", // Display Name + Zero, // Index of Display Power Component + One, // P-State Set Index of Footswitch override + Zero, // P-State Set Index of reset + Package (0x04) + { + "PERF_CONTROLS", + Package (0x01) + { + 0x02 + }, + + Package (0x01) + { + 0x03 + }, + + Package (0x01) + { + 0x04 + } + }, + + Package (0x01) + { + "THERMAL_DOMAINS" + } + }, + + Package (0x07) + { + "DISPLAY", + "INTERNAL2", + 0x07, + One, + Zero, + Package (0x04) + { + "PERF_CONTROLS", + Package (0x01) + { + 0x02 + }, + + Package (0x01) + { + 0x03 + }, + + Package (0x01) + { + 0x04 + } + }, + + Package (0x01) + { + "THERMAL_DOMAINS" + } + }, + + Package (0x07) + { + "DISPLAY", + "EXTERNAL1", + 0x08, + One, + Zero, + Package (0x03) + { + "PERF_CONTROLS", + Package (0x01) + { + 0x02 + }, + + Package (0x01) + { + 0x03 + } + }, + + Package (0x01) + { + "THERMAL_DOMAINS" + } + }, + + Package (0x02) + { + "RESOURCES", + Package (0x0B) + { + "MMUINFO", + "Miniport", + "ArmSmmuV2", + 0x02, + 0x20, + "V7S", + "SMMUID", + ToUUID ("36079ae4-78e8-452d-af50-0cff78b2f1ca"), + "SMMUINTERFACEID", + Buffer (0x10) + { + /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........ + /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ........ + }, + + Package (0x04) + { + "PAGETABLEUSAGE", + 0x02, + "MdpNonSecurePT", + "MdpSecurePT" + } + } + }, + + Package (0x0F) + { + "PRIMARY_SOURCE_MODES", + 0x0D, + Package (0x02) + { + 0x0280, + 0x01E0 + }, + + Package (0x02) + { + 0x0320, + 0x0258 + }, + + Package (0x02) + { + 0x0500, + 0x02D0 + }, + + Package (0x02) + { + 0x0400, + 0x0300 + }, + + Package (0x02) + { + 0x0480, + 0x0300 + }, + + Package (0x02) + { + 0x0500, + 0x0300 + }, + + Package (0x02) + { + 0x0550, + 0x0300 + }, + + Package (0x02) + { + 0x0556, + 0x0300 + }, + + Package (0x02) + { + 0x0640, + 0x0384 + }, + + Package (0x02) + { + 0x0500, + 0x0400 + }, + + Package (0x02) + { + 0x0780, + 0x0438 + }, + + Package (0x02) + { + 0x0780, + 0x04B0 + }, + + Package (0x02) + { + 0x0780, + 0x0500 + } + } + }, + + //------------------------------------------------------------------------------ + // Page Table List + // This package enumerates all of the page tables used by any of the displays + // and engines. Page tables defined here may be referenced by one or more engine + // or display. + //------------------------------------------------------------------------------ + // + Package (0x0F) + { + "PAGETABLES", + 0x0D, // Number of page tables + Package (0x07) + { + "GraphicsGlobalPT", // Name + One, // Global + Zero, // Secure + One, // HighTTBR + One, // HiddenFromOS + 0x0000008000000000, // VaStart + 0x0000000800000000 // VaSizeBytes + }, + + Package (0x07) + { + "GraphicsPerProcessPT", + Zero, + Zero, + Zero, + Zero, + 0x00400000, + 0x0000007FFFC00000 + }, + + Package (0x07) + { + "GraphicsSecurePT", + Zero, + One, + Zero, + One, + 0x0000008800000000, + 0xC0000000 + }, + + Package (0x07) + { + "GraphicsGmuPT", + Zero, + Zero, + Zero, + Zero, + 0x60000000, + 0x20000000 + }, + + Package (0x07) + { + "MdpNonSecurePT", + Zero, + Zero, + Zero, + Zero, + 0x80100000, + 0x7FF00000 + }, + + Package (0x07) + { + "MdpSecurePT", + Zero, + One, + Zero, + One, + 0x80000000, + 0x80000000 + }, + + Package (0x09) + { + "VideoNonSecurePT", // Name + Zero, // Global + Zero, // Secure + Zero, // HighTTBR + One, // HiddenFromOS + 0x00100000, // VaStart + 0xBFF00000, // VaSizeBytes + 0x1B, // VideoBufferMask + Zero // VideoCBIndex + }, + + Package (0x09) + { + "VideoSecurePT1", + Zero, + One, + Zero, + One, + 0xC0000000, + 0x10000000, + 0x09, + One + }, + + Package (0x09) + { + "VideoSecurePT2", + Zero, + One, + Zero, + One, + 0xD0000000, + 0x10000000, + 0x07, + 0x02 + }, + + Package (0x09) + { + "VideoSecurePT3", + Zero, + One, + Zero, + One, + 0xE0000000, + 0x10000000, + 0x02, + 0x03 + }, + + Package (0x09) + { + "VideoSecurePT4", + Zero, + One, + Zero, + One, + 0xF0000000, + 0x10000000, + 0x2A, + 0x04 + }, + + Package (0x07) + { + "CryptoNonSecurePT", + Zero, + Zero, + Zero, + Zero, + 0x00100000, + 0x7FF00000 + }, + + Package (0x07) + { + "CryptoSecurePT", + Zero, + One, + Zero, + One, + 0x80000000, + 0x80000000 + } + } + }) + Return (EBUF) /* \_SB_.GPU0.ENGS.EBUF */ + } + + //------------------------------------------------------------------------------ + // Graphics Thermal Management Details + //------------------------------------------------------------------------------ + // + Method (TMDT, 0, NotSerialized) + { + Name (RBUF, Package (0x03) + { + One, // Table Format Major Version + Zero, // Table Format Minor Version + Package (0x03) + { + "THERMAL_DOMAINS", + One, // Num Thermal Domains + Package (0x03) + { + "GPU", + "GPU0", + Package (0x03) + { + "GRAPHICS", + "MDPBLT", + "ROTATOR" + } + } + } + }) + Return (RBUF) /* \_SB_.GPU0.TMDT.RBUF */ + } + + //------------------------------------------------------------------------------ + // Graphics PEP Component List + // This method is a companion method to the graphics entries inside PEP's DCFG + // method. It includes the same components, generated from a single XML source, + // with any additional information required to be passed to dxgkrnl. + //------------------------------------------------------------------------------ + // + Method (PMCL, 0, NotSerialized) + { + Name (RBUF, Package (0x0D) + { + 0x03, // Table Format Major Version + One, // Table Format Minor Version + 0x0A, // Number of power components + + //---------------------------------------------------------------------------------- + // C0 - Internal Display Power States + //---------------------------------------------------------------------------------- + // + Package (0x0F) + { + "COMPONENT", + Zero, + ToUUID ("2c135991-4391-4633-90b1-fa96f2e2cc04"), + "PRIMDISPLAY_POWER_STATES", + "HW_BLOCK_MDP", + Package (0x02) + { + "DISPLAY", + "INTERNAL1" + }, + + 0x02, + 0x05, + Package (0x06) + { + "FSTATE", + Zero, + "ALL_ON", + Zero, + Zero, + 0x02 + }, + + Package (0x06) + { + "FSTATE", + One, + "PWR_OFF", + One, + One, + One + }, + + //---------------------------------------------------------------------------------- + // C0.PS0 - Internal Display: MDP Reset Control + //---------------------------------------------------------------------------------- + // + Package (0x0A) + { + "PSTATE_SET", + Zero, + "INTERNAL1_RESET", + "*", + "RESET", + 0x02, + Zero, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + Zero, + 0x02 + } + }, + + //---------------------------------------------------------------------------------- + // C0.PS1 - Internal Display: MDP Footswitch override + //---------------------------------------------------------------------------------- + // + Package (0x0A) + { + "PSTATE_SET", + One, + "INTERNAL1_FOOTSWITCH_OVERRIDE", + "*", + "FOOTSWITCH_OVERRIDE", + 0x02, + 0xFFFFFFFF, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + Zero, + 0x02 + } + }, + + //---------------------------------------------------------------------------------- + // C0.PS2 - Internal Display: Power states for MDP scan-out HW + //---------------------------------------------------------------------------------- + // + Package (0x0D) + { + "PSTATE_SET", + 0x02, + "INTERNAL1_SCAN_CONTROL", + "*", + "DISPLAY_SOURCE_SCAN_CTRL", + 0x05, + Zero, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + 0x04, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + 0x03, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x02, + 0x02, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x03, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x04, + Zero, + 0x02 + } + }, + + //---------------------------------------------------------------------------------- + // C0.PS3 - Internal Display: MDP Core Clock Frequency + //---------------------------------------------------------------------------------- + // + Package (0x15) + { + "PSTATE_SET", + 0x03, + "INTERNAL1_CORE_CLOCK_CONTROL", + "*", + "CORE_CLOCK", + 0x0D, + 0x04, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + 0x19A14780, + One + }, + + Package (0x04) + { + "PSTATE", + One, + 0x18964020, + One + }, + + Package (0x04) + { + "PSTATE", + 0x02, + 0x14810600, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x03, + 0x11E1A300, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x04, + 0x10642AC0, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x05, + 0x0BEBC200, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x06, + 0x0A37CADB, + 0x03 + }, + + Package (0x04) + { + "PSTATE", + 0x07, + 0x09D5B340, + 0x03 + }, + + Package (0x04) + { + "PSTATE", + 0x08, + 0x08F0D180, + 0x03 + }, + + Package (0x04) + { + "PSTATE", + 0x09, + 0x05F5E100, + 0x03 + }, + + Package (0x04) + { + "PSTATE", + 0x0A, + 0x051BD4B0, + 0x03 + }, + + Package (0x04) + { + "PSTATE", + 0x0B, + 0x0124F800, + 0x03 + }, + + Package (0x04) + { + "PSTATE", + 0x0C, + Zero, + 0x03 + } + }, + + //---------------------------------------------------------------------------------- + // C0.PS4 - Internal Display: Display Bandwidth to EBI + //---------------------------------------------------------------------------------- + // + Package (0x33) + { + "PSTATE_SET", + 0x04, + "INTERNAL1_EBI_BANDWIDTH", + "*", + "BANDWIDTH", + 0x2B, + 0x1F, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + 0x000000031A4A9F80, + Zero + }, + + Package (0x04) + { + "PSTATE", + One, + 0x0000000302731B80, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x02, + 0x00000002EA9B9780, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x03, + 0x00000002D2C41380, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x04, + 0x00000002BAEC8F80, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x05, + 0x00000002A3150B80, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x06, + 0x000000028B3D8780, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x07, + 0x0000000273660380, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x08, + 0x000000025B8E7F80, + One + }, + + Package (0x04) + { + "PSTATE", + 0x09, + 0x000000023C346000, + One + }, + + Package (0x04) + { + "PSTATE", + 0x0A, + 0x00000002245CDC00, + One + }, + + Package (0x04) + { + "PSTATE", + 0x0B, + 0x000000020C855800, + One + }, + + Package (0x04) + { + "PSTATE", + 0x0C, + 0x00000001F4ADD400, + One + }, + + Package (0x04) + { + "PSTATE", + 0x0D, + 0x00000001DCD65000, + One + }, + + Package (0x04) + { + "PSTATE", + 0x0E, + 0x00000001C4FECC00, + One + }, + + Package (0x04) + { + "PSTATE", + 0x0F, + 0x00000001AD274800, + One + }, + + Package (0x04) + { + "PSTATE", + 0x10, + 0x00000001954FC400, + One + }, + + Package (0x04) + { + "PSTATE", + 0x11, + 0x000000017D784000, + One + }, + + Package (0x04) + { + "PSTATE", + 0x12, + 0x0000000165A0BC00, + One + }, + + Package (0x04) + { + "PSTATE", + 0x13, + 0x000000014DC93800, + One + }, + + Package (0x04) + { + "PSTATE", + 0x14, + 0x0000000135F1B400, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x15, + 0x000000011E1A3000, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x16, + 0x000000010642AC00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x17, + 0xEE6B2800, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x18, + 0xD693A400, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x19, + 0xBEBC2000, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x1A, + 0xA6E49C00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x1B, + 0x8F0D1800, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x1C, + 0x77359400, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x1D, + 0x5F5E1000, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x1E, + 0x59682F00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x1F, + 0x53724E00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x20, + 0x4D7C6D00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x21, + 0x47868C00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x22, + 0x4190AB00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x23, + 0x3B9ACA00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x24, + 0x35A4E900, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x25, + 0x2FAF0800, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x26, + 0x29B92700, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x27, + 0x23C34600, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x28, + 0x1DCD6500, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x29, + 0x17D78400, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x2A, + Zero, + 0x02 + } + } + }, + + //---------------------------------------------------------------------------------- + // C1 - 3D Graphics Engine Power States + //---------------------------------------------------------------------------------- + // + Package (0x10) + { + "COMPONENT", + One, + ToUUID ("30bdf1b5-28f7-4c0c-ac47-273dd1401e11"), + "GRAPHICS_POWER_STATES", + "HW_BLOCK_GRAPHICS", + Package (0x02) + { + "ENGINE", + "GRAPHICS" + }, + + 0x03, + 0x05, + Package (0x06) + { + "FSTATE", + Zero, + "ALL_ON", + Zero, + Zero, + 0x03 + }, + + Package (0x06) + { + "FSTATE", + One, + "PWR_OFF", + 0x2710, + 0x0A, + 0x02 + }, + + Package (0x06) + { + "FSTATE", + 0x02, + "PWR_OFF", + 0x2711, + 0x0A, + One + }, + + //---------------------------------------------------------------------------------- + // C1.PS0 - 3D Graphics Core P-State Set: Reset + //---------------------------------------------------------------------------------- + // + Package (0x0A) + { + "PSTATE_SET", + Zero, + "GRAPHICS_RESET", + "*", + "RESET", + 0x02, + Zero, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + Zero, + 0x02 + } + }, + + Package (0x0B) + { + "PSTATE_SET", + One, + "CX_HS_MGMT", + "*", + "INTERNAL", + 0x03, + Zero, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + 0x02, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x02, + Zero, + 0x02 + } + }, + + Package (0x0A) + { + "PSTATE_SET", + 0x02, + "GRAPHICS_FOOTSWITCH_OVERRIDE", + "*", + "FOOTSWITCH_OVERRIDE", + 0x02, + One, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + Zero, + 0x02 + } + }, + + Package (0x02) + { + "ENGINE_PSTATE_SET", + 0x03 + }, + + Package (0x16) + { + "ENGINE_PSTATE_SET", + 0x04, + "GRAPHICS_BW_CONTROL", + "BANDWIDTH", + 0x0D, + Zero, + "TRUE", + 0x04, + 0x03, + Package (0x05) + { + "PSTATE", + Zero, + 0x00000001AE1B6C00, + 0x0180, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + One, + 0x0000000172BDAB00, + 0x0100, + Package (0x02) + { + "GPU", + 0x56 + } + }, + + Package (0x05) + { + "PSTATE", + 0x02, + 0x0000000134FD9000, + 0x0100, + Package (0x02) + { + "GPU", + 0x48 + } + }, + + Package (0x05) + { + "PSTATE", + 0x03, + 0xF278C100, + 0xC0, + Package (0x02) + { + "GPU", + 0x38 + } + }, + + Package (0x05) + { + "PSTATE", + 0x04, + 0xB71B0000, + 0x80, + Package (0x02) + { + "GPU", + 0x2A + } + }, + + Package (0x05) + { + "PSTATE", + 0x05, + 0xA25CF100, + 0x80, + Package (0x02) + { + "GPU", + 0x26 + } + }, + + Package (0x05) + { + "PSTATE", + 0x06, + 0x826A3B00, + 0x80, + Package (0x02) + { + "GPU", + 0x1E + } + }, + + Package (0x05) + { + "PSTATE", + 0x07, + 0x623A7C00, + 0x40, + Package (0x02) + { + "GPU", + 0x17 + } + }, + + Package (0x05) + { + "PSTATE", + 0x08, + 0x47868C00, + 0x30, + Package (0x02) + { + "GPU", + 0x11 + } + }, + + Package (0x05) + { + "PSTATE", + 0x09, + 0x2FAF0800, + 0x30, + Package (0x02) + { + "GPU", + 0x0B + } + }, + + Package (0x05) + { + "PSTATE", + 0x0A, + 0x23C34600, + 0x30, + Package (0x02) + { + "GPU", + 0x08 + } + }, + + Package (0x05) + { + "PSTATE", + 0x0B, + 0x17D78400, + 0x30, + Package (0x02) + { + "GPU", + Zero + } + }, + + Package (0x05) + { + "PSTATE", + 0x0C, + Zero, + Zero, + Package (0x02) + { + "GPU", + Zero + } + } + } + }, + + Package (0x0F) + { + "COMPONENT", + 0x02, + ToUUID ("07ca2add-df87-49e1-8583-08687dc81c8e"), + "MDPBLT_POWER_STATES", + "HW_BLOCK_MDP", + Package (0x02) + { + "ENGINE", + "MDPBLT" + }, + + 0x03, + 0x04, + Package (0x06) + { + "FSTATE", + Zero, + "ALL_ON", + Zero, + Zero, + 0x03 + }, + + Package (0x06) + { + "FSTATE", + One, + "CLK_OFF", + 0x2710, + Zero, + 0x02 + }, + + Package (0x06) + { + "FSTATE", + 0x02, + "PWR_OFF", + 0x000186A0, + Zero, + One + }, + + Package (0x0A) + { + "PSTATE_SET", + Zero, + "MDPBLT_RESET", + "*", + "RESET", + 0x02, + Zero, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + Zero, + 0x02 + } + }, + + Package (0x0A) + { + "PSTATE_SET", + One, + "MDPBLT_FOOTSWITCH_OVERRIDE", + "*", + "FOOTSWITCH_OVERRIDE", + 0x02, + 0xFFFFFFFF, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + Zero, + 0x02 + } + }, + + Package (0x15) + { + "PSTATE_SET", + 0x02, + "MDPBLT_CORE_CLOCK_CONTROL", + "*", + "CORE_CLOCK", + 0x0D, + 0x08, + Zero, + Package (0x05) + { + "PSTATE", + Zero, + 0x19A14780, + One, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + One, + 0x18964020, + One, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + 0x02, + 0x14810600, + 0x02, + Package (0x02) + { + "GPU", + 0x42 + } + }, + + Package (0x05) + { + "PSTATE", + 0x03, + 0x11E1A300, + 0x02, + Package (0x02) + { + "GPU", + 0x42 + } + }, + + Package (0x05) + { + "PSTATE", + 0x04, + 0x10642AC0, + 0x02, + Package (0x02) + { + "GPU", + 0x42 + } + }, + + Package (0x05) + { + "PSTATE", + 0x05, + 0x0BEBC200, + 0x02, + Package (0x02) + { + "GPU", + 0x42 + } + }, + + Package (0x05) + { + "PSTATE", + 0x06, + 0x0A37CADB, + 0x03, + Package (0x02) + { + "GPU", + 0x21 + } + }, + + Package (0x05) + { + "PSTATE", + 0x07, + 0x09D5B340, + 0x03, + Package (0x02) + { + "GPU", + 0x21 + } + }, + + Package (0x05) + { + "PSTATE", + 0x08, + 0x08F0D180, + 0x03, + Package (0x02) + { + "GPU", + 0x21 + } + }, + + Package (0x05) + { + "PSTATE", + 0x09, + 0x05F5E100, + 0x03, + Package (0x02) + { + "GPU", + 0x21 + } + }, + + Package (0x05) + { + "PSTATE", + 0x0A, + 0x051BD4B0, + 0x03, + Package (0x02) + { + "GPU", + Zero + } + }, + + Package (0x05) + { + "PSTATE", + 0x0B, + 0x0124F800, + 0x03, + Package (0x02) + { + "GPU", + Zero + } + }, + + Package (0x05) + { + "PSTATE", + 0x0C, + Zero, + 0x03, + Package (0x02) + { + "GPU", + Zero + } + } + }, + + Package (0x3A) + { + "PSTATE_SET", + 0x03, + "MDPBLT_AXI_BANDWIDTH_CONTROL", + "*", + "BANDWIDTH", + 0x32, + 0xFFFFFFFF, + Zero, + Package (0x05) + { + "PSTATE", + Zero, + 0x000000031A4A9F80, + Zero, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + One, + 0x0000000302731B80, + Zero, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + 0x02, + 0x00000002EA9B9780, + Zero, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + 0x03, + 0x00000002D2C41380, + Zero, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + 0x04, + 0x00000002BAEC8F80, + Zero, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + 0x05, + 0x00000002A3150B80, + Zero, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + 0x06, + 0x000000028B3D8780, + Zero, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + 0x07, + 0x0000000273660380, + Zero, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + 0x08, + 0x000000025B8E7F80, + One, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + 0x09, + 0x0000000243B6FB80, + One, + Package (0x02) + { + "GPU", + 0x4B + } + }, + + Package (0x05) + { + "PSTATE", + 0x0A, + 0x000000022BDF7780, + One, + Package (0x02) + { + "GPU", + 0x4B + } + }, + + Package (0x05) + { + "PSTATE", + 0x0B, + 0x000000021407F380, + One, + Package (0x02) + { + "GPU", + 0x4B + } + }, + + Package (0x05) + { + "PSTATE", + 0x0C, + 0x00000001FC306F80, + One, + Package (0x02) + { + "GPU", + 0x4B + } + }, + + Package (0x05) + { + "PSTATE", + 0x0D, + 0x00000001E458EB80, + One, + Package (0x02) + { + "GPU", + 0x4B + } + }, + + Package (0x05) + { + "PSTATE", + 0x0E, + 0x00000001CC816780, + One, + Package (0x02) + { + "GPU", + 0x4B + } + }, + + Package (0x05) + { + "PSTATE", + 0x0F, + 0x00000001B4A9E380, + One, + Package (0x02) + { + "GPU", + 0x4B + } + }, + + Package (0x05) + { + "PSTATE", + 0x10, + 0x000000019CD25F80, + One, + Package (0x02) + { + "GPU", + 0x32 + } + }, + + Package (0x05) + { + "PSTATE", + 0x11, + 0x0000000184FADB80, + One, + Package (0x02) + { + "GPU", + 0x32 + } + }, + + Package (0x05) + { + "PSTATE", + 0x12, + 0x000000016D235780, + One, + Package (0x02) + { + "GPU", + 0x32 + } + }, + + Package (0x05) + { + "PSTATE", + 0x13, + 0x00000001554BD380, + One, + Package (0x02) + { + "GPU", + 0x32 + } + }, + + Package (0x05) + { + "PSTATE", + 0x14, + 0x000000013D744F80, + 0x02, + Package (0x02) + { + "GPU", + 0x32 + } + }, + + Package (0x05) + { + "PSTATE", + 0x15, + 0x00000001259CCB80, + 0x02, + Package (0x02) + { + "GPU", + 0x32 + } + }, + + Package (0x05) + { + "PSTATE", + 0x16, + 0x000000010DC54780, + 0x02, + Package (0x02) + { + "GPU", + 0x32 + } + }, + + Package (0x05) + { + "PSTATE", + 0x17, + 0xF5EDC380, + 0x02, + Package (0x02) + { + "GPU", + 0x32 + } + }, + + Package (0x05) + { + "PSTATE", + 0x18, + 0xDE163F80, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x19, + 0xC63EBB80, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x1A, + 0xAE673780, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x1B, + 0x968FB380, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x1C, + 0x8F0D1800, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x1D, + 0x89173700, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x1E, + 0x83215600, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x1F, + 0x7D2B7500, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x20, + 0x77359400, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x21, + 0x713FB300, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x22, + 0x6B49D200, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x23, + 0x6553F100, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x24, + 0x5F5E1000, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x25, + 0x59682F00, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x26, + 0x53724E00, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x27, + 0x4D7C6D00, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x28, + 0x47868C00, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x29, + 0x4190AB00, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x2A, + 0x3B9ACA00, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x2B, + 0x35A4E900, + 0x02, + Package (0x02) + { + "GPU", + Zero + } + }, + + Package (0x05) + { + "PSTATE", + 0x2C, + 0x2FAF0800, + 0x02, + Package (0x02) + { + "GPU", + Zero + } + }, + + Package (0x05) + { + "PSTATE", + 0x2D, + 0x29B92700, + 0x02, + Package (0x02) + { + "GPU", + Zero + } + }, + + Package (0x05) + { + "PSTATE", + 0x2E, + 0x23C34600, + 0x02, + Package (0x02) + { + "GPU", + Zero + } + }, + + Package (0x05) + { + "PSTATE", + 0x2F, + 0x1DCD6500, + 0x02, + Package (0x02) + { + "GPU", + Zero + } + }, + + Package (0x05) + { + "PSTATE", + 0x30, + 0x17D78400, + 0x02, + Package (0x02) + { + "GPU", + Zero + } + }, + + Package (0x05) + { + "PSTATE", + 0x31, + Zero, + 0x02, + Package (0x02) + { + "GPU", + Zero + } + } + } + }, + + Package (0x0F) + { + "COMPONENT", + 0x03, + ToUUID ("4d5ffbf5-d791-41cd-89cb-0154129ba607"), + "ROTATOR_POWER_STATES", + "HW_BLOCK_ROTATOR", + Package (0x02) + { + "ENGINE", + "ROTATOR" + }, + + 0x03, + 0x04, + Package (0x06) + { + "FSTATE", + Zero, + "ALL_ON", + Zero, + Zero, + 0x03 + }, + + Package (0x06) + { + "FSTATE", + One, + "CLK_OFF", + 0x2710, + Zero, + 0x02 + }, + + Package (0x06) + { + "FSTATE", + 0x02, + "PWR_OFF", + 0x000186A0, + Zero, + One + }, + + Package (0x0A) + { + "PSTATE_SET", + Zero, + "ROTATOR_RESET", + "*", + "RESET", + 0x02, + Zero, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + Zero, + 0x02 + } + }, + + Package (0x0A) + { + "PSTATE_SET", + One, + "ROTATOR_FOOTSWITCH_OVERRIDE", + "*", + "FOOTSWITCH_OVERRIDE", + 0x02, + 0xFFFFFFFF, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + Zero, + 0x02 + } + }, + + Package (0x10) + { + "PSTATE_SET", + 0x02, + "ROTATOR_CORE_CLOCK_CONTROL", + "*", + "CORE_CLOCK", + 0x08, + 0x05, + Zero, + Package (0x05) + { + "PSTATE", + Zero, + 0x19A14780, + One, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + One, + 0x18964020, + One, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + 0x02, + 0x14810600, + 0x02, + Package (0x02) + { + "GPU", + 0x42 + } + }, + + Package (0x05) + { + "PSTATE", + 0x03, + 0x11E1A300, + 0x02, + Package (0x02) + { + "GPU", + 0x42 + } + }, + + Package (0x05) + { + "PSTATE", + 0x04, + 0x0A37CADB, + 0x03, + Package (0x02) + { + "GPU", + 0x21 + } + }, + + Package (0x05) + { + "PSTATE", + 0x05, + 0x09D5B340, + 0x03, + Package (0x02) + { + "GPU", + 0x21 + } + }, + + Package (0x05) + { + "PSTATE", + 0x06, + 0x0124F800, + 0x03, + Package (0x02) + { + "GPU", + Zero + } + }, + + Package (0x05) + { + "PSTATE", + 0x07, + Zero, + 0x03, + Package (0x02) + { + "GPU", + Zero + } + } + }, + + Package (0x3A) + { + "PSTATE_SET", + 0x03, + "ROTATOR_AXI_BANDWIDTH_CONTROL", + "*", + "BANDWIDTH", + 0x32, + 0xFFFFFFFF, + Zero, + Package (0x05) + { + "PSTATE", + Zero, + 0x000000031A4A9F80, + Zero, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + One, + 0x0000000302731B80, + Zero, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + 0x02, + 0x00000002EA9B9780, + Zero, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + 0x03, + 0x00000002D2C41380, + Zero, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + 0x04, + 0x00000002BAEC8F80, + Zero, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + 0x05, + 0x00000002A3150B80, + Zero, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + 0x06, + 0x000000028B3D8780, + Zero, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + 0x07, + 0x0000000273660380, + Zero, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + 0x08, + 0x000000025B8E7F80, + One, + Package (0x02) + { + "GPU", + 0x64 + } + }, + + Package (0x05) + { + "PSTATE", + 0x09, + 0x0000000243B6FB80, + One, + Package (0x02) + { + "GPU", + 0x4B + } + }, + + Package (0x05) + { + "PSTATE", + 0x0A, + 0x000000022BDF7780, + One, + Package (0x02) + { + "GPU", + 0x4B + } + }, + + Package (0x05) + { + "PSTATE", + 0x0B, + 0x000000021407F380, + One, + Package (0x02) + { + "GPU", + 0x4B + } + }, + + Package (0x05) + { + "PSTATE", + 0x0C, + 0x00000001FC306F80, + One, + Package (0x02) + { + "GPU", + 0x4B + } + }, + + Package (0x05) + { + "PSTATE", + 0x0D, + 0x00000001E458EB80, + One, + Package (0x02) + { + "GPU", + 0x4B + } + }, + + Package (0x05) + { + "PSTATE", + 0x0E, + 0x00000001CC816780, + One, + Package (0x02) + { + "GPU", + 0x4B + } + }, + + Package (0x05) + { + "PSTATE", + 0x0F, + 0x00000001B4A9E380, + One, + Package (0x02) + { + "GPU", + 0x4B + } + }, + + Package (0x05) + { + "PSTATE", + 0x10, + 0x000000019CD25F80, + One, + Package (0x02) + { + "GPU", + 0x32 + } + }, + + Package (0x05) + { + "PSTATE", + 0x11, + 0x0000000184FADB80, + One, + Package (0x02) + { + "GPU", + 0x32 + } + }, + + Package (0x05) + { + "PSTATE", + 0x12, + 0x000000016D235780, + One, + Package (0x02) + { + "GPU", + 0x32 + } + }, + + Package (0x05) + { + "PSTATE", + 0x13, + 0x00000001554BD380, + One, + Package (0x02) + { + "GPU", + 0x32 + } + }, + + Package (0x05) + { + "PSTATE", + 0x14, + 0x000000013D744F80, + 0x02, + Package (0x02) + { + "GPU", + 0x32 + } + }, + + Package (0x05) + { + "PSTATE", + 0x15, + 0x00000001259CCB80, + 0x02, + Package (0x02) + { + "GPU", + 0x32 + } + }, + + Package (0x05) + { + "PSTATE", + 0x16, + 0x000000010DC54780, + 0x02, + Package (0x02) + { + "GPU", + 0x32 + } + }, + + Package (0x05) + { + "PSTATE", + 0x17, + 0xF5EDC380, + 0x02, + Package (0x02) + { + "GPU", + 0x32 + } + }, + + Package (0x05) + { + "PSTATE", + 0x18, + 0xDE163F80, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x19, + 0xC63EBB80, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x1A, + 0xAE673780, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x1B, + 0x968FB380, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x1C, + 0x8F0D1800, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x1D, + 0x89173700, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x1E, + 0x83215600, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x1F, + 0x7D2B7500, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x20, + 0x77359400, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x21, + 0x713FB300, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x22, + 0x6B49D200, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x23, + 0x6553F100, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x24, + 0x5F5E1000, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x25, + 0x59682F00, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x26, + 0x53724E00, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x27, + 0x4D7C6D00, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x28, + 0x47868C00, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x29, + 0x4190AB00, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x2A, + 0x3B9ACA00, + 0x02, + Package (0x02) + { + "GPU", + 0x19 + } + }, + + Package (0x05) + { + "PSTATE", + 0x2B, + 0x35A4E900, + 0x02, + Package (0x02) + { + "GPU", + Zero + } + }, + + Package (0x05) + { + "PSTATE", + 0x2C, + 0x2FAF0800, + 0x02, + Package (0x02) + { + "GPU", + Zero + } + }, + + Package (0x05) + { + "PSTATE", + 0x2D, + 0x29B92700, + 0x02, + Package (0x02) + { + "GPU", + Zero + } + }, + + Package (0x05) + { + "PSTATE", + 0x2E, + 0x23C34600, + 0x02, + Package (0x02) + { + "GPU", + Zero + } + }, + + Package (0x05) + { + "PSTATE", + 0x2F, + 0x1DCD6500, + 0x02, + Package (0x02) + { + "GPU", + Zero + } + }, + + Package (0x05) + { + "PSTATE", + 0x30, + 0x17D78400, + 0x02, + Package (0x02) + { + "GPU", + Zero + } + }, + + Package (0x05) + { + "PSTATE", + 0x31, + Zero, + 0x02, + Package (0x02) + { + "GPU", + Zero + } + } + } + }, + + Package (0x0F) + { + "COMPONENT", + 0x04, + ToUUID ("d0e1bb1a-703d-4be8-b450-64a4fbfca6a8"), + "VIDEO_POWER_STATES", + "HW_BLOCK_VIDEO", + Package (0x02) + { + "ENGINE", + "VIDEO" + }, + + 0x03, + 0x04, + Package (0x06) + { + "FSTATE", + Zero, + "ALL_ON", + Zero, + Zero, + 0x03 + }, + + Package (0x06) + { + "FSTATE", + One, + "CLK_OFF", + 0x2710, + Zero, + 0x02 + }, + + Package (0x06) + { + "FSTATE", + 0x02, + "PWR_OFF", + 0x000186A0, + Zero, + One + }, + + Package (0x0A) + { + "PSTATE_SET", + Zero, + "VIDEO_RESET", + "*", + "RESET", + 0x02, + Zero, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + Zero, + 0x02 + } + }, + + Package (0x0A) + { + "PSTATE_SET", + One, + "VIDEO_FOOTSWITCH_OVERRIDE", + "*", + "FOOTSWITCH_OVERRIDE", + 0x02, + One, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + Zero, + 0x02 + } + }, + + Package (0x0F) + { + "PSTATE_SET", + 0x02, + "VIDEO_CORE_CLOCK_CONTROL", + "*", + "CORE_CLOCK", + 0x07, + 0x04, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + 0x1FC4EF40, + Zero + }, + + Package (0x04) + { + "PSTATE", + One, + 0x1A76E700, + One + }, + + Package (0x04) + { + "PSTATE", + 0x02, + 0x16A65700, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x03, + 0x1312D000, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x04, + 0x0BEBC200, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x05, + 0x05F5E100, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x06, + Zero, + 0x03 + } + }, + + Package (0x77) + { + "PSTATE_SET", + 0x03, + "VIDEO_AXI_PORT_BW", + "*", + "BANDWIDTH", + 0x6F, + 0x6C, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + 0x000000051F4D5C00, + Zero + }, + + Package (0x04) + { + "PSTATE", + One, + 0x0000000513619A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x02, + 0x000000050775D800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x03, + 0x00000004FB8A1600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x04, + 0x00000004EF9E5400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x05, + 0x00000004E3B29200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x06, + 0x00000004D7C6D000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x07, + 0x00000004CBDB0E00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x08, + 0x00000004BFEF4C00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x09, + 0x00000004B4038A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x0A, + 0x00000004A817C800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x0B, + 0x000000049C2C0600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x0C, + 0x0000000490404400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x0D, + 0x0000000484548200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x0E, + 0x000000047868C000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x0F, + 0x000000046C7CFE00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x10, + 0x0000000460913C00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x11, + 0x0000000454A57A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x12, + 0x0000000448B9B800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x13, + 0x000000043CCDF600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x14, + 0x0000000430E23400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x15, + 0x0000000424F67200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x16, + 0x00000004190AB000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x17, + 0x000000040D1EEE00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x18, + 0x0000000401332C00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x19, + 0x00000003F5476A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x1A, + 0x00000003E95BA800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x1B, + 0x00000003DD6FE600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x1C, + 0x00000003D1842400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x1D, + 0x00000003C5986200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x1E, + 0x00000003B9ACA000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x1F, + 0x00000003ADC0DE00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x20, + 0x00000003A1D51C00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x21, + 0x0000000395E95A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x22, + 0x0000000389FD9800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x23, + 0x000000037E11D600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x24, + 0x0000000372261400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x25, + 0x00000003663A5200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x26, + 0x000000035A4E9000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x27, + 0x000000034E62CE00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x28, + 0x0000000342770C00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x29, + 0x00000003368B4A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x2A, + 0x000000032A9F8800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x2B, + 0x000000031EB3C600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x2C, + 0x0000000312C80400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x2D, + 0x0000000306DC4200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x2E, + 0x00000002FAF08000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x2F, + 0x00000002EF04BE00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x30, + 0x00000002E318FC00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x31, + 0x00000002D72D3A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x32, + 0x00000002CB417800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x33, + 0x00000002BF55B600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x34, + 0x00000002B369F400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x35, + 0x00000002A77E3200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x36, + 0x000000029B927000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x37, + 0x000000028FA6AE00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x38, + 0x0000000283BAEC00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x39, + 0x0000000277CF2A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x3A, + 0x000000026BE36800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x3B, + 0x000000025FF7A600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x3C, + 0x00000002540BE400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x3D, + 0x0000000248202200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x3E, + 0x000000023C346000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x3F, + 0x0000000230489E00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x40, + 0x00000002245CDC00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x41, + 0x0000000218711A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x42, + 0x000000020C855800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x43, + 0x0000000200999600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x44, + 0x00000001F4ADD400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x45, + 0x00000001E8C21200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x46, + 0x00000001DCD65000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x47, + 0x00000001D0EA8E00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x48, + 0x00000001C4FECC00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x49, + 0x00000001B9130A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x4A, + 0x00000001AD274800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x4B, + 0x00000001A13B8600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x4C, + 0x00000001954FC400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x4D, + 0x0000000189640200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x4E, + 0x000000017D784000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x4F, + 0x00000001718C7E00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x50, + 0x0000000165A0BC00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x51, + 0x0000000159B4FA00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x52, + 0x000000014DC93800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x53, + 0x0000000141DD7600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x54, + 0x0000000135F1B400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x55, + 0x000000012A05F200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x56, + 0x000000011E1A3000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x57, + 0x00000001122E6E00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x58, + 0x000000010642AC00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x59, + 0xFA56EA00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x5A, + 0xEE6B2800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x5B, + 0xE27F6600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x5C, + 0xD693A400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x5D, + 0xCAA7E200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x5E, + 0xBEBC2000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x5F, + 0xB2D05E00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x60, + 0xA6E49C00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x61, + 0x9AF8DA00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x62, + 0x8F0D1800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x63, + 0x83215600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x64, + 0x77359400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x65, + 0x6B49D200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x66, + 0x5F5E1000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x67, + 0x53724E00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x68, + 0x47868C00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x69, + 0x3B9ACA00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x6A, + 0x2FAF0800, + One + }, + + Package (0x04) + { + "PSTATE", + 0x6B, + 0x23C34600, + One + }, + + Package (0x04) + { + "PSTATE", + 0x6C, + 0x17D78400, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x6D, + 0x0BEBC200, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x6E, + Zero, + 0x02 + } + } + }, + + Package (0x0D) + { + "COMPONENT", + 0x05, + ToUUID ("cc4d73fa-c3c2-4c7e-a217-d468f4611bbd"), + "CRYPTO_POWER_STATES", + "HW_BLOCK_NONE", + Package (0x02) + { + "ENGINE", + "CRYPTO" + }, + + 0x02, + 0x03, + Package (0x06) + { + "FSTATE", + Zero, + "ALL_ON", + Zero, + Zero, + 0x03 + }, + + Package (0x06) + { + "FSTATE", + One, + "PWR_OFF", + 0x000186A0, + Zero, + One + }, + + Package (0x0A) + { + "PSTATE_SET", + Zero, + "CRYPTO_RESET", + "*", + "RESET", + 0x02, + Zero, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + Zero, + 0x02 + } + }, + + Package (0x0A) + { + "PSTATE_SET", + One, + "CRYPTO_FOOTSWITCH_OVERRIDE", + "*", + "FOOTSWITCH_OVERRIDE", + 0x02, + One, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + Zero, + 0x02 + } + }, + + Package (0x09) + { + "PSTATE_SET", + 0x02, + "CRYPTO_CORE_CLOCK_CONTROL", + "*", + "CORE_CLOCK", + One, + Zero, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + Zero, + Zero + } + } + }, + + Package (0x10) + { + "COMPONENT", + 0x06, + ToUUID ("e6be5096-55ec-4891-884b-0760bfc533b6"), + "VIDEO_ENCODER_POWER_STATES", + "HW_BLOCK_VIDEO", + Package (0x02) + { + "ENGINE", + "VIDEO_ENCODER" + }, + + 0x03, + 0x04, + Package (0x06) + { + "FSTATE", + Zero, + "ALL_ON", + Zero, + Zero, + 0x03 + }, + + Package (0x06) + { + "FSTATE", + One, + "CLK_OFF", + 0x2710, + Zero, + 0x02 + }, + + Package (0x06) + { + "FSTATE", + 0x02, + "PWR_OFF", + 0x000186A0, + Zero, + One + }, + + Package (0x0A) + { + "PSTATE_SET", + Zero, + "VIDEO_ENCODER_RESET", + "*", + "RESET", + 0x02, + Zero, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + Zero, + 0x02 + } + }, + + Package (0x0A) + { + "PSTATE_SET", + One, + "VIDEO_ENCODER_FOOTSWITCH_OVERRIDE", + "*", + "FOOTSWITCH_OVERRIDE", + 0x02, + One, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + Zero, + 0x02 + } + }, + + Package (0x0F) + { + "PSTATE_SET", + 0x02, + "VIDEO_ENCODER_CORE_CLOCK_CONTROL", + "*", + "CORE_CLOCK", + 0x07, + 0x04, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + 0x1FC4EF40, + Zero + }, + + Package (0x04) + { + "PSTATE", + One, + 0x1A76E700, + One + }, + + Package (0x04) + { + "PSTATE", + 0x02, + 0x18148D00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x03, + 0x13AB6680, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x04, + 0x0BEBC200, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x05, + 0x05F5E100, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x06, + Zero, + 0x03 + } + }, + + Package (0x77) + { + "PSTATE_SET", + 0x03, + "VIDEO_ENCODER_AXI_PORT_BW", + "*", + "BANDWIDTH", + 0x6F, + 0x6C, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + 0x000000051F4D5C00, + Zero + }, + + Package (0x04) + { + "PSTATE", + One, + 0x0000000513619A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x02, + 0x000000050775D800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x03, + 0x00000004FB8A1600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x04, + 0x00000004EF9E5400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x05, + 0x00000004E3B29200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x06, + 0x00000004D7C6D000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x07, + 0x00000004CBDB0E00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x08, + 0x00000004BFEF4C00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x09, + 0x00000004B4038A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x0A, + 0x00000004A817C800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x0B, + 0x000000049C2C0600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x0C, + 0x0000000490404400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x0D, + 0x0000000484548200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x0E, + 0x000000047868C000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x0F, + 0x000000046C7CFE00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x10, + 0x0000000460913C00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x11, + 0x0000000454A57A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x12, + 0x0000000448B9B800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x13, + 0x000000043CCDF600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x14, + 0x0000000430E23400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x15, + 0x0000000424F67200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x16, + 0x00000004190AB000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x17, + 0x000000040D1EEE00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x18, + 0x0000000401332C00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x19, + 0x00000003F5476A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x1A, + 0x00000003E95BA800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x1B, + 0x00000003DD6FE600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x1C, + 0x00000003D1842400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x1D, + 0x00000003C5986200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x1E, + 0x00000003B9ACA000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x1F, + 0x00000003ADC0DE00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x20, + 0x00000003A1D51C00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x21, + 0x0000000395E95A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x22, + 0x0000000389FD9800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x23, + 0x000000037E11D600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x24, + 0x0000000372261400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x25, + 0x00000003663A5200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x26, + 0x000000035A4E9000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x27, + 0x000000034E62CE00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x28, + 0x0000000342770C00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x29, + 0x00000003368B4A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x2A, + 0x000000032A9F8800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x2B, + 0x000000031EB3C600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x2C, + 0x0000000312C80400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x2D, + 0x0000000306DC4200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x2E, + 0x00000002FAF08000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x2F, + 0x00000002EF04BE00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x30, + 0x00000002E318FC00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x31, + 0x00000002D72D3A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x32, + 0x00000002CB417800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x33, + 0x00000002BF55B600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x34, + 0x00000002B369F400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x35, + 0x00000002A77E3200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x36, + 0x000000029B927000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x37, + 0x000000028FA6AE00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x38, + 0x0000000283BAEC00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x39, + 0x0000000277CF2A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x3A, + 0x000000026BE36800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x3B, + 0x000000025FF7A600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x3C, + 0x00000002540BE400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x3D, + 0x0000000248202200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x3E, + 0x000000023C346000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x3F, + 0x0000000230489E00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x40, + 0x00000002245CDC00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x41, + 0x0000000218711A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x42, + 0x000000020C855800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x43, + 0x0000000200999600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x44, + 0x00000001F4ADD400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x45, + 0x00000001E8C21200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x46, + 0x00000001DCD65000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x47, + 0x00000001D0EA8E00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x48, + 0x00000001C4FECC00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x49, + 0x00000001B9130A00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x4A, + 0x00000001AD274800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x4B, + 0x00000001A13B8600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x4C, + 0x00000001954FC400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x4D, + 0x0000000189640200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x4E, + 0x000000017D784000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x4F, + 0x00000001718C7E00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x50, + 0x0000000165A0BC00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x51, + 0x0000000159B4FA00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x52, + 0x000000014DC93800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x53, + 0x0000000141DD7600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x54, + 0x0000000135F1B400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x55, + 0x000000012A05F200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x56, + 0x000000011E1A3000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x57, + 0x00000001122E6E00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x58, + 0x000000010642AC00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x59, + 0xFA56EA00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x5A, + 0xEE6B2800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x5B, + 0xE27F6600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x5C, + 0xD693A400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x5D, + 0xCAA7E200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x5E, + 0xBEBC2000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x5F, + 0xB2D05E00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x60, + 0xA6E49C00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x61, + 0x9AF8DA00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x62, + 0x8F0D1800, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x63, + 0x83215600, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x64, + 0x77359400, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x65, + 0x6B49D200, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x66, + 0x5F5E1000, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x67, + 0x53724E00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x68, + 0x47868C00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x69, + 0x3B9ACA00, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x6A, + 0x2FAF0800, + One + }, + + Package (0x04) + { + "PSTATE", + 0x6B, + 0x23C34600, + One + }, + + Package (0x04) + { + "PSTATE", + 0x6C, + 0x17D78400, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x6D, + 0x0BEBC200, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x6E, + Zero, + 0x02 + } + }, + + Package (0x03) + { + "PROVIDERS", + One, + Package (0x01) + { + 0x04 + } + } + }, + + Package (0x0F) + { + "COMPONENT", + 0x07, + ToUUID ("c42be628-d6bc-4755-bfd5-5af776797228"), + "SECDISPLAY_POWER_STATES", + "HW_BLOCK_MDP", + Package (0x02) + { + "DISPLAY", + "INTERNAL2" + }, + + 0x02, + 0x05, + Package (0x06) + { + "FSTATE", + Zero, + "ALL_ON", + Zero, + Zero, + 0x02 + }, + + Package (0x06) + { + "FSTATE", + One, + "PWR_OFF", + One, + One, + One + }, + + Package (0x0A) + { + "PSTATE_SET", + Zero, + "INTERNAL2_RESET", + "*", + "RESET", + 0x02, + Zero, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + Zero, + 0x02 + } + }, + + Package (0x0A) + { + "PSTATE_SET", + One, + "INTERNAL2_FOOTSWITCH_OVERRIDE", + "*", + "FOOTSWITCH_OVERRIDE", + 0x02, + 0xFFFFFFFF, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + Zero, + 0x02 + } + }, + + Package (0x0D) + { + "PSTATE_SET", + 0x02, + "INTERNAL2_SCAN_CONTROL", + "*", + "DISPLAY_SOURCE_SCAN_CTRL", + 0x05, + Zero, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + 0x04, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + 0x03, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x02, + 0x02, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x03, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x04, + Zero, + 0x02 + } + }, + + Package (0x15) + { + "PSTATE_SET", + 0x03, + "INTERNAL2_CORE_CLOCK_CONTROL", + "*", + "CORE_CLOCK", + 0x0D, + 0x04, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + 0x19A14780, + One + }, + + Package (0x04) + { + "PSTATE", + One, + 0x18964020, + One + }, + + Package (0x04) + { + "PSTATE", + 0x02, + 0x14810600, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x03, + 0x11E1A300, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x04, + 0x10642AC0, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x05, + 0x0BEBC200, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x06, + 0x0A37CADB, + 0x03 + }, + + Package (0x04) + { + "PSTATE", + 0x07, + 0x09D5B340, + 0x03 + }, + + Package (0x04) + { + "PSTATE", + 0x08, + 0x08F0D180, + 0x03 + }, + + Package (0x04) + { + "PSTATE", + 0x09, + 0x05F5E100, + 0x03 + }, + + Package (0x04) + { + "PSTATE", + 0x0A, + 0x051BD4B0, + 0x03 + }, + + Package (0x04) + { + "PSTATE", + 0x0B, + 0x0124F800, + 0x03 + }, + + Package (0x04) + { + "PSTATE", + 0x0C, + Zero, + 0x03 + } + }, + + Package (0x33) + { + "PSTATE_SET", + 0x04, + "INTERNAL2_EBI_BANDWIDTH", + "*", + "BANDWIDTH", + 0x2B, + 0x1F, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + 0x000000031A4A9F80, + Zero + }, + + Package (0x04) + { + "PSTATE", + One, + 0x0000000302731B80, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x02, + 0x00000002EA9B9780, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x03, + 0x00000002D2C41380, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x04, + 0x00000002BAEC8F80, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x05, + 0x00000002A3150B80, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x06, + 0x000000028B3D8780, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x07, + 0x0000000273660380, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x08, + 0x000000025B8E7F80, + One + }, + + Package (0x04) + { + "PSTATE", + 0x09, + 0x000000023C346000, + One + }, + + Package (0x04) + { + "PSTATE", + 0x0A, + 0x00000002245CDC00, + One + }, + + Package (0x04) + { + "PSTATE", + 0x0B, + 0x000000020C855800, + One + }, + + Package (0x04) + { + "PSTATE", + 0x0C, + 0x00000001F4ADD400, + One + }, + + Package (0x04) + { + "PSTATE", + 0x0D, + 0x00000001DCD65000, + One + }, + + Package (0x04) + { + "PSTATE", + 0x0E, + 0x00000001C4FECC00, + One + }, + + Package (0x04) + { + "PSTATE", + 0x0F, + 0x00000001AD274800, + One + }, + + Package (0x04) + { + "PSTATE", + 0x10, + 0x00000001954FC400, + One + }, + + Package (0x04) + { + "PSTATE", + 0x11, + 0x000000017D784000, + One + }, + + Package (0x04) + { + "PSTATE", + 0x12, + 0x0000000165A0BC00, + One + }, + + Package (0x04) + { + "PSTATE", + 0x13, + 0x000000014DC93800, + One + }, + + Package (0x04) + { + "PSTATE", + 0x14, + 0x0000000135F1B400, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x15, + 0x000000011E1A3000, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x16, + 0x000000010642AC00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x17, + 0xEE6B2800, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x18, + 0xD693A400, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x19, + 0xBEBC2000, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x1A, + 0xA6E49C00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x1B, + 0x8F0D1800, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x1C, + 0x77359400, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x1D, + 0x5F5E1000, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x1E, + 0x59682F00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x1F, + 0x53724E00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x20, + 0x4D7C6D00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x21, + 0x47868C00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x22, + 0x4190AB00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x23, + 0x3B9ACA00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x24, + 0x35A4E900, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x25, + 0x2FAF0800, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x26, + 0x29B92700, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x27, + 0x23C34600, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x28, + 0x1DCD6500, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x29, + 0x17D78400, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x2A, + Zero, + 0x02 + } + } + }, + + Package (0x0E) + { + "COMPONENT", + 0x08, + ToUUID ("818daed2-9e63-49d5-bd12-b0951f7b0f6b"), + "DP_POWER_STATES", + "HW_BLOCK_MDP", + Package (0x02) + { + "DISPLAY", + "EXTERNAL1" + }, + + 0x02, + 0x04, + Package (0x06) + { + "FSTATE", + Zero, + "ALL_ON", + Zero, + Zero, + 0x02 + }, + + Package (0x06) + { + "FSTATE", + One, + "PWR_OFF", + One, + One, + One + }, + + Package (0x0A) + { + "PSTATE_SET", + Zero, + "EXTERNAL1_RESET", + "*", + "RESET", + 0x02, + Zero, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + Zero, + 0x02 + } + }, + + Package (0x0A) + { + "PSTATE_SET", + One, + "EXTERNAL1_FOOTSWITCH_OVERRIDE", + "*", + "FOOTSWITCH_OVERRIDE", + 0x02, + 0xFFFFFFFF, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + One, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + One, + Zero, + 0x02 + } + }, + + Package (0x15) + { + "PSTATE_SET", + 0x02, + "EXTERNAL1_CORE_CLOCK_CONTROL", + "*", + "CORE_CLOCK", + 0x0D, + 0x04, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + 0x19A14780, + One + }, + + Package (0x04) + { + "PSTATE", + One, + 0x18964020, + One + }, + + Package (0x04) + { + "PSTATE", + 0x02, + 0x14810600, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x03, + 0x11E1A300, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x04, + 0x10642AC0, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x05, + 0x0BEBC200, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x06, + 0x0A37CADB, + 0x03 + }, + + Package (0x04) + { + "PSTATE", + 0x07, + 0x09D5B340, + 0x03 + }, + + Package (0x04) + { + "PSTATE", + 0x08, + 0x08F0D180, + 0x03 + }, + + Package (0x04) + { + "PSTATE", + 0x09, + 0x05F5E100, + 0x03 + }, + + Package (0x04) + { + "PSTATE", + 0x0A, + 0x051BD4B0, + 0x03 + }, + + Package (0x04) + { + "PSTATE", + 0x0B, + 0x0124F800, + 0x03 + }, + + Package (0x04) + { + "PSTATE", + 0x0C, + Zero, + 0x03 + } + }, + + Package (0x33) + { + "PSTATE_SET", + 0x03, + "EXTERNAL1_EBI_BANDWIDTH", + "*", + "BANDWIDTH", + 0x2B, + 0x1F, + Zero, + Package (0x04) + { + "PSTATE", + Zero, + 0x000000031A4A9F80, + Zero + }, + + Package (0x04) + { + "PSTATE", + One, + 0x0000000302731B80, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x02, + 0x00000002EA9B9780, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x03, + 0x00000002D2C41380, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x04, + 0x00000002BAEC8F80, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x05, + 0x00000002A3150B80, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x06, + 0x000000028B3D8780, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x07, + 0x0000000273660380, + Zero + }, + + Package (0x04) + { + "PSTATE", + 0x08, + 0x000000025B8E7F80, + One + }, + + Package (0x04) + { + "PSTATE", + 0x09, + 0x000000023C346000, + One + }, + + Package (0x04) + { + "PSTATE", + 0x0A, + 0x00000002245CDC00, + One + }, + + Package (0x04) + { + "PSTATE", + 0x0B, + 0x000000020C855800, + One + }, + + Package (0x04) + { + "PSTATE", + 0x0C, + 0x00000001F4ADD400, + One + }, + + Package (0x04) + { + "PSTATE", + 0x0D, + 0x00000001DCD65000, + One + }, + + Package (0x04) + { + "PSTATE", + 0x0E, + 0x00000001C4FECC00, + One + }, + + Package (0x04) + { + "PSTATE", + 0x0F, + 0x00000001AD274800, + One + }, + + Package (0x04) + { + "PSTATE", + 0x10, + 0x00000001954FC400, + One + }, + + Package (0x04) + { + "PSTATE", + 0x11, + 0x000000017D784000, + One + }, + + Package (0x04) + { + "PSTATE", + 0x12, + 0x0000000165A0BC00, + One + }, + + Package (0x04) + { + "PSTATE", + 0x13, + 0x000000014DC93800, + One + }, + + Package (0x04) + { + "PSTATE", + 0x14, + 0x0000000135F1B400, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x15, + 0x000000011E1A3000, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x16, + 0x000000010642AC00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x17, + 0xEE6B2800, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x18, + 0xD693A400, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x19, + 0xBEBC2000, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x1A, + 0xA6E49C00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x1B, + 0x8F0D1800, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x1C, + 0x77359400, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x1D, + 0x5F5E1000, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x1E, + 0x59682F00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x1F, + 0x53724E00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x20, + 0x4D7C6D00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x21, + 0x47868C00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x22, + 0x4190AB00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x23, + 0x3B9ACA00, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x24, + 0x35A4E900, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x25, + 0x2FAF0800, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x26, + 0x29B92700, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x27, + 0x23C34600, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x28, + 0x1DCD6500, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x29, + 0x17D78400, + 0x02 + }, + + Package (0x04) + { + "PSTATE", + 0x2A, + Zero, + 0x02 + } + } + }, + + Package (0x09) + { + "COMPONENT", + 0x09, + ToUUID ("8dd40bdf-6fbd-45ed-8538-711d434b6ba1"), + "ALWAYS_ACTIVE_WP", + "HW_BLOCK_NONE", + Package (0x01) + { + "UNMANAGED" + }, + + One, + Zero, + Package (0x06) + { + "FSTATE", + Zero, + "ALL_ON", + Zero, + Zero, + One + } + } + }) + Name (P001, Package (0x12) + { + "ENGINE_PSTATE_SET", + 0x03, + "GRAPHICS_FREQ_CONTROL", + "CORE_CLOCK", + 0x09, + One, + "TRUE", + 0x05, + 0x03, + Package (0x06) + { + "PSTATE", + Zero, + 0x2A51BD80, + Zero, + Package (0x02) + { + "GPU", + 0x64 + }, + + Package (0x01) + { + 0x01A0 + } + }, + + Package (0x06) + { + "PSTATE", + One, + 0x283BAEC0, + One, + Package (0x02) + { + "GPU", + 0x5B + }, + + Package (0x01) + { + 0x0180 + } + }, + + Package (0x06) + { + "PSTATE", + 0x02, + 0x23863D00, + 0x02, + Package (0x02) + { + "GPU", + 0x51 + }, + + Package (0x01) + { + 0x0140 + } + }, + + Package (0x06) + { + "PSTATE", + 0x03, + 0x1EFE9200, + 0x03, + Package (0x02) + { + "GPU", + 0x47 + }, + + Package (0x01) + { + 0x0100 + } + }, + + Package (0x06) + { + "PSTATE", + 0x04, + 0x18AD2380, + 0x04, + Package (0x02) + { + "GPU", + 0x38 + }, + + Package (0x01) + { + 0xC0 + } + }, + + Package (0x06) + { + "PSTATE", + 0x05, + 0x14628180, + 0x05, + Package (0x02) + { + "GPU", + 0x2F + }, + + Package (0x01) + { + 0x80 + } + }, + + Package (0x06) + { + "PSTATE", + 0x06, + 0x0EB8EBC0, + 0x06, + Package (0x02) + { + "GPU", + 0x23 + }, + + Package (0x01) + { + 0x40 + } + }, + + Package (0x06) + { + "PSTATE", + 0x07, + 0x0ABA9500, + 0x07, + Package (0x02) + { + "GPU", + Zero + }, + + Package (0x01) + { + 0x30 + } + }, + + Package (0x06) + { + "PSTATE", + 0x08, + Zero, + 0x08, + Package (0x02) + { + "GPU", + Zero + }, + + Package (0x01) + { + Zero + } + } + }) + Name (P002, Package (0x0B) + { + "ENGINE_PSTATE_SET", + 0x03, + "GRAPHICS_FREQ_CONTROL", + "CORE_CLOCK", + 0x02, + One, + "TRUE", + Zero, + Zero, + Package (0x06) + { + "PSTATE", + Zero, + 0x10B07600, + Zero, + Package (0x02) + { + "GPU", + Zero + }, + + Package (0x01) + { + 0x80 + } + }, + + Package (0x06) + { + "PSTATE", + One, + Zero, + One, + Package (0x02) + { + "GPU", + Zero + }, + + Package (0x01) + { + Zero + } + } + }) + If ((\_SB.SIDV >= 0x00020000)) + { + DerefOf (RBUF [0x04]) [0x0E] = P001 /* \_SB_.GPU0.PMCL.P001 */ + } + Else + { + DerefOf (RBUF [0x04]) [0x0E] = P002 /* \_SB_.GPU0.PMCL.P002 */ + } + + Return (RBUF) /* \_SB_.GPU0.PMCL.RBUF */ + } + + // panel specific ROM data + Method (_ROM, 3, NotSerialized) // _ROM: Read-Only Memory + { + /*Name (PCFG, Buffer (2488) + { + 0x3C, 0x3F, 0x78, 0x6D, 0x6C, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x3D, 0x22, 0x31, + 0x2E, 0x30, 0x22, 0x20, 0x65, 0x6E, 0x63, 0x6F, 0x64, 0x69, 0x6E, 0x67, 0x3D, 0x22, 0x75, 0x74, + 0x66, 0x2D, 0x38, 0x22, 0x3F, 0x3E, 0x3C, 0x50, 0x61, 0x6E, 0x65, 0x6C, 0x4E, 0x61, 0x6D, 0x65, + 0x3E, 0x53, 0x36, 0x45, 0x33, 0x46, 0x43, 0x32, 0x58, 0x30, 0x31, 0x3C, 0x2F, 0x50, 0x61, 0x6E, + 0x65, 0x6C, 0x4E, 0x61, 0x6D, 0x65, 0x3E, 0x3C, 0x50, 0x61, 0x6E, 0x65, 0x6C, 0x44, 0x65, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6F, 0x6E, 0x3E, 0x73, 0x61, 0x6D, 0x73, 0x75, 0x6E, 0x67, + 0x20, 0x53, 0x36, 0x45, 0x33, 0x46, 0x43, 0x32, 0x58, 0x30, 0x31, 0x20, 0x63, 0x6D, 0x64, 0x20, + 0x6D, 0x6F, 0x64, 0x65, 0x20, 0x64, 0x73, 0x69, 0x20, 0x70, 0x61, 0x6E, 0x65, 0x6C, 0x28, 0x31, + 0x30, 0x38, 0x30, 0x78, 0x32, 0x33, 0x34, 0x30, 0x20, 0x32, 0x34, 0x62, 0x70, 0x70, 0x29, 0x3C, + 0x2F, 0x50, 0x61, 0x6E, 0x65, 0x6C, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6F, + 0x6E, 0x3E, 0x3C, 0x47, 0x72, 0x6F, 0x75, 0x70, 0x20, 0x69, 0x64, 0x3D, 0x22, 0x41, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x20, 0x54, 0x69, 0x6D, 0x69, 0x6E, 0x67, 0x22, 0x3E, 0x20, 0x3C, 0x48, 0x6F, + 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, 0x6C, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x3E, 0x31, + 0x30, 0x38, 0x30, 0x3C, 0x2F, 0x48, 0x6F, 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, 0x6C, 0x41, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x3E, 0x20, 0x3C, 0x48, 0x6F, 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, + 0x61, 0x6C, 0x46, 0x72, 0x6F, 0x6E, 0x74, 0x50, 0x6F, 0x72, 0x63, 0x68, 0x3E, 0x37, 0x32, 0x3C, + 0x2F, 0x48, 0x6F, 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, 0x6C, 0x46, 0x72, 0x6F, 0x6E, 0x74, + 0x50, 0x6F, 0x72, 0x63, 0x68, 0x3E, 0x20, 0x3C, 0x48, 0x6F, 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, + 0x61, 0x6C, 0x42, 0x61, 0x63, 0x6B, 0x50, 0x6F, 0x72, 0x63, 0x68, 0x3E, 0x33, 0x36, 0x3C, 0x2F, + 0x48, 0x6F, 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, 0x6C, 0x42, 0x61, 0x63, 0x6B, 0x50, 0x6F, + 0x72, 0x63, 0x68, 0x3E, 0x20, 0x3C, 0x48, 0x6F, 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, 0x6C, + 0x53, 0x79, 0x6E, 0x63, 0x50, 0x75, 0x6C, 0x73, 0x65, 0x3E, 0x31, 0x36, 0x3C, 0x2F, 0x48, 0x6F, + 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, 0x6C, 0x53, 0x79, 0x6E, 0x63, 0x50, 0x75, 0x6C, 0x73, + 0x65, 0x3E, 0x20, 0x3C, 0x48, 0x6F, 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, 0x6C, 0x53, 0x79, + 0x6E, 0x63, 0x53, 0x6B, 0x65, 0x77, 0x3E, 0x30, 0x3C, 0x2F, 0x48, 0x6F, 0x72, 0x69, 0x7A, 0x6F, + 0x6E, 0x74, 0x61, 0x6C, 0x53, 0x79, 0x6E, 0x63, 0x53, 0x6B, 0x65, 0x77, 0x3E, 0x20, 0x3C, 0x48, + 0x6F, 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, 0x6C, 0x4C, 0x65, 0x66, 0x74, 0x42, 0x6F, 0x72, + 0x64, 0x65, 0x72, 0x3E, 0x30, 0x3C, 0x2F, 0x48, 0x6F, 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, + 0x6C, 0x4C, 0x65, 0x66, 0x74, 0x42, 0x6F, 0x72, 0x64, 0x65, 0x72, 0x3E, 0x20, 0x3C, 0x48, 0x6F, + 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, 0x6C, 0x52, 0x69, 0x67, 0x68, 0x74, 0x42, 0x6F, 0x72, + 0x64, 0x65, 0x72, 0x3E, 0x30, 0x3C, 0x2F, 0x48, 0x6F, 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, + 0x6C, 0x52, 0x69, 0x67, 0x68, 0x74, 0x42, 0x6F, 0x72, 0x64, 0x65, 0x72, 0x3E, 0x20, 0x3C, 0x56, + 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6C, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x3E, 0x32, 0x33, + 0x34, 0x30, 0x3C, 0x2F, 0x56, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6C, 0x41, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x3E, 0x20, 0x3C, 0x56, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6C, 0x46, 0x72, 0x6F, + 0x6E, 0x74, 0x50, 0x6F, 0x72, 0x63, 0x68, 0x3E, 0x33, 0x32, 0x3C, 0x2F, 0x56, 0x65, 0x72, 0x74, + 0x69, 0x63, 0x61, 0x6C, 0x46, 0x72, 0x6F, 0x6E, 0x74, 0x50, 0x6F, 0x72, 0x63, 0x68, 0x3E, 0x20, + 0x3C, 0x56, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6C, 0x42, 0x61, 0x63, 0x6B, 0x50, 0x6F, 0x72, + 0x63, 0x68, 0x3E, 0x31, 0x38, 0x3C, 0x2F, 0x56, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6C, 0x42, + 0x61, 0x63, 0x6B, 0x50, 0x6F, 0x72, 0x63, 0x68, 0x3E, 0x20, 0x3C, 0x56, 0x65, 0x72, 0x74, 0x69, + 0x63, 0x61, 0x6C, 0x53, 0x79, 0x6E, 0x63, 0x50, 0x75, 0x6C, 0x73, 0x65, 0x3E, 0x34, 0x3C, 0x2F, + 0x56, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6C, 0x53, 0x79, 0x6E, 0x63, 0x50, 0x75, 0x6C, 0x73, + 0x65, 0x3E, 0x20, 0x3C, 0x56, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6C, 0x53, 0x79, 0x6E, 0x63, + 0x53, 0x6B, 0x65, 0x77, 0x3E, 0x30, 0x3C, 0x2F, 0x56, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6C, + 0x53, 0x79, 0x6E, 0x63, 0x53, 0x6B, 0x65, 0x77, 0x3E, 0x20, 0x3C, 0x56, 0x65, 0x72, 0x74, 0x69, + 0x63, 0x61, 0x6C, 0x54, 0x6F, 0x70, 0x42, 0x6F, 0x72, 0x64, 0x65, 0x72, 0x3E, 0x30, 0x3C, 0x2F, + 0x56, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6C, 0x54, 0x6F, 0x70, 0x42, 0x6F, 0x72, 0x64, 0x65, + 0x72, 0x3E, 0x20, 0x3C, 0x56, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6C, 0x42, 0x6F, 0x74, 0x74, + 0x6F, 0x6D, 0x42, 0x6F, 0x72, 0x64, 0x65, 0x72, 0x3E, 0x30, 0x3C, 0x2F, 0x56, 0x65, 0x72, 0x74, + 0x69, 0x63, 0x61, 0x6C, 0x42, 0x6F, 0x74, 0x74, 0x6F, 0x6D, 0x42, 0x6F, 0x72, 0x64, 0x65, 0x72, + 0x3E, 0x20, 0x3C, 0x49, 0x6E, 0x76, 0x65, 0x72, 0x74, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6F, 0x6C, + 0x61, 0x72, 0x69, 0x74, 0x79, 0x3E, 0x46, 0x61, 0x6C, 0x73, 0x65, 0x3C, 0x2F, 0x49, 0x6E, 0x76, + 0x65, 0x72, 0x74, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6F, 0x6C, 0x61, 0x72, 0x69, 0x74, 0x79, 0x3E, + 0x20, 0x3C, 0x49, 0x6E, 0x76, 0x65, 0x72, 0x74, 0x56, 0x73, 0x79, 0x6E, 0x63, 0x50, 0x6F, 0x6C, + 0x61, 0x69, 0x72, 0x74, 0x79, 0x3E, 0x46, 0x61, 0x6C, 0x73, 0x65, 0x3C, 0x2F, 0x49, 0x6E, 0x76, + 0x65, 0x72, 0x74, 0x56, 0x73, 0x79, 0x6E, 0x63, 0x50, 0x6F, 0x6C, 0x61, 0x69, 0x72, 0x74, 0x79, + 0x3E, 0x20, 0x3C, 0x49, 0x6E, 0x76, 0x65, 0x72, 0x74, 0x48, 0x73, 0x79, 0x6E, 0x63, 0x50, 0x6F, + 0x6C, 0x61, 0x72, 0x69, 0x74, 0x79, 0x3E, 0x46, 0x61, 0x6C, 0x73, 0x65, 0x3C, 0x2F, 0x49, 0x6E, + 0x76, 0x65, 0x72, 0x74, 0x48, 0x73, 0x79, 0x6E, 0x63, 0x50, 0x6F, 0x6C, 0x61, 0x72, 0x69, 0x74, + 0x79, 0x3E, 0x20, 0x3C, 0x42, 0x6F, 0x72, 0x64, 0x65, 0x72, 0x43, 0x6F, 0x6C, 0x6F, 0x72, 0x3E, + 0x30, 0x78, 0x30, 0x3C, 0x2F, 0x42, 0x6F, 0x72, 0x64, 0x65, 0x72, 0x43, 0x6F, 0x6C, 0x6F, 0x72, + 0x3E, 0x3C, 0x2F, 0x47, 0x72, 0x6F, 0x75, 0x70, 0x3E, 0x3C, 0x47, 0x72, 0x6F, 0x75, 0x70, 0x20, + 0x69, 0x64, 0x3D, 0x22, 0x44, 0x69, 0x73, 0x70, 0x6C, 0x61, 0x79, 0x20, 0x49, 0x6E, 0x74, 0x65, + 0x72, 0x66, 0x61, 0x63, 0x65, 0x22, 0x3E, 0x20, 0x3C, 0x49, 0x6E, 0x74, 0x65, 0x72, 0x66, 0x61, + 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3E, 0x39, 0x3C, 0x2F, 0x49, 0x6E, 0x74, 0x65, 0x72, 0x66, + 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3E, 0x20, 0x3C, 0x49, 0x6E, 0x74, 0x65, 0x72, 0x66, + 0x61, 0x63, 0x65, 0x43, 0x6F, 0x6C, 0x6F, 0x72, 0x46, 0x6F, 0x72, 0x6D, 0x61, 0x74, 0x3E, 0x33, + 0x3C, 0x2F, 0x49, 0x6E, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x43, 0x6F, 0x6C, 0x6F, 0x72, + 0x46, 0x6F, 0x72, 0x6D, 0x61, 0x74, 0x3E, 0x3C, 0x2F, 0x47, 0x72, 0x6F, 0x75, 0x70, 0x3E, 0x3C, + 0x47, 0x72, 0x6F, 0x75, 0x70, 0x20, 0x69, 0x64, 0x3D, 0x22, 0x44, 0x53, 0x49, 0x20, 0x49, 0x6E, + 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x22, 0x3E, 0x20, 0x3C, 0x44, 0x53, 0x49, 0x43, 0x68, + 0x61, 0x6E, 0x6E, 0x65, 0x6C, 0x49, 0x64, 0x3E, 0x32, 0x3C, 0x2F, 0x44, 0x53, 0x49, 0x43, 0x68, + 0x61, 0x6E, 0x6E, 0x65, 0x6C, 0x49, 0x64, 0x3E, 0x20, 0x3C, 0x44, 0x53, 0x49, 0x56, 0x69, 0x72, + 0x74, 0x75, 0x61, 0x6C, 0x49, 0x64, 0x3E, 0x30, 0x3C, 0x2F, 0x44, 0x53, 0x49, 0x56, 0x69, 0x72, + 0x74, 0x75, 0x61, 0x6C, 0x49, 0x64, 0x3E, 0x20, 0x3C, 0x44, 0x53, 0x49, 0x43, 0x6F, 0x6C, 0x6F, + 0x72, 0x46, 0x6F, 0x72, 0x6D, 0x61, 0x74, 0x3E, 0x33, 0x36, 0x3C, 0x2F, 0x44, 0x53, 0x49, 0x43, + 0x6F, 0x6C, 0x6F, 0x72, 0x46, 0x6F, 0x72, 0x6D, 0x61, 0x74, 0x3E, 0x20, 0x3C, 0x44, 0x53, 0x49, + 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x4D, 0x6F, 0x64, 0x65, 0x3E, 0x31, 0x3C, 0x2F, 0x44, + 0x53, 0x49, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x4D, 0x6F, 0x64, 0x65, 0x3E, 0x20, 0x3C, + 0x44, 0x53, 0x49, 0x4C, 0x61, 0x6E, 0x65, 0x73, 0x3E, 0x34, 0x3C, 0x2F, 0x44, 0x53, 0x49, 0x4C, + 0x61, 0x6E, 0x65, 0x73, 0x3E, 0x20, 0x3C, 0x44, 0x53, 0x49, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, + 0x68, 0x52, 0x61, 0x74, 0x65, 0x3E, 0x30, 0x78, 0x33, 0x43, 0x30, 0x30, 0x30, 0x30, 0x3C, 0x2F, + 0x44, 0x53, 0x49, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x52, 0x61, 0x74, 0x65, 0x3E, 0x20, + 0x3C, 0x44, 0x53, 0x49, 0x43, 0x6D, 0x64, 0x53, 0x77, 0x61, 0x70, 0x49, 0x6E, 0x74, 0x65, 0x72, + 0x66, 0x61, 0x63, 0x65, 0x3E, 0x46, 0x61, 0x6C, 0x73, 0x65, 0x3C, 0x2F, 0x44, 0x53, 0x49, 0x43, + 0x6D, 0x64, 0x53, 0x77, 0x61, 0x70, 0x49, 0x6E, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x3E, + 0x20, 0x3C, 0x44, 0x53, 0x49, 0x43, 0x6D, 0x64, 0x55, 0x73, 0x69, 0x6E, 0x67, 0x54, 0x72, 0x69, + 0x67, 0x67, 0x65, 0x72, 0x3E, 0x46, 0x61, 0x6C, 0x73, 0x65, 0x3C, 0x2F, 0x44, 0x53, 0x49, 0x43, + 0x6D, 0x64, 0x55, 0x73, 0x69, 0x6E, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x3E, 0x20, + 0x3C, 0x44, 0x53, 0x49, 0x45, 0x6E, 0x61, 0x62, 0x6C, 0x65, 0x41, 0x75, 0x74, 0x6F, 0x52, 0x65, + 0x66, 0x72, 0x65, 0x73, 0x68, 0x3E, 0x54, 0x72, 0x75, 0x65, 0x3C, 0x2F, 0x44, 0x53, 0x49, 0x45, + 0x6E, 0x61, 0x62, 0x6C, 0x65, 0x41, 0x75, 0x74, 0x6F, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, + 0x3E, 0x20, 0x3C, 0x44, 0x53, 0x49, 0x41, 0x75, 0x74, 0x6F, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, + 0x68, 0x46, 0x72, 0x61, 0x6D, 0x65, 0x4E, 0x75, 0x6D, 0x44, 0x69, 0x76, 0x3E, 0x31, 0x3C, 0x2F, + 0x44, 0x53, 0x49, 0x41, 0x75, 0x74, 0x6F, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x46, 0x72, + 0x61, 0x6D, 0x65, 0x4E, 0x75, 0x6D, 0x44, 0x69, 0x76, 0x3E, 0x20, 0x3C, 0x44, 0x53, 0x49, 0x43, + 0x6F, 0x6E, 0x74, 0x72, 0x6F, 0x6C, 0x6C, 0x65, 0x72, 0x4D, 0x61, 0x70, 0x70, 0x69, 0x6E, 0x67, + 0x3E, 0x0A, 0x20, 0x20, 0x30, 0x30, 0x0A, 0x20, 0x3C, 0x2F, 0x44, 0x53, 0x49, 0x43, 0x6F, 0x6E, + 0x74, 0x72, 0x6F, 0x6C, 0x6C, 0x65, 0x72, 0x4D, 0x61, 0x70, 0x70, 0x69, 0x6E, 0x67, 0x3E, 0x0A, + 0x20, 0x3C, 0x44, 0x53, 0x49, 0x4C, 0x50, 0x31, 0x31, 0x41, 0x74, 0x49, 0x6E, 0x69, 0x74, 0x3E, + 0x54, 0x72, 0x75, 0x65, 0x3C, 0x2F, 0x44, 0x53, 0x49, 0x4C, 0x50, 0x31, 0x31, 0x41, 0x74, 0x49, + 0x6E, 0x69, 0x74, 0x3E, 0x3C, 0x2F, 0x47, 0x72, 0x6F, 0x75, 0x70, 0x3E, 0x3C, 0x44, 0x53, 0x49, + 0x49, 0x6E, 0x69, 0x74, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6E, 0x63, 0x65, 0x3E, 0x20, 0x33, 0x39, + 0x20, 0x39, 0x46, 0x20, 0x41, 0x35, 0x20, 0x41, 0x35, 0x0A, 0x20, 0x30, 0x35, 0x20, 0x31, 0x31, + 0x20, 0x30, 0x30, 0x0A, 0x20, 0x66, 0x66, 0x20, 0x30, 0x41, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x39, + 0x46, 0x20, 0x35, 0x41, 0x20, 0x35, 0x41, 0x35, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, 0x30, 0x20, + 0x35, 0x41, 0x20, 0x35, 0x41, 0x0A, 0x20, 0x31, 0x35, 0x20, 0x42, 0x30, 0x20, 0x30, 0x31, 0x0A, + 0x20, 0x31, 0x35, 0x20, 0x43, 0x44, 0x20, 0x30, 0x31, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, 0x30, + 0x20, 0x35, 0x41, 0x20, 0x35, 0x41, 0x0A, 0x20, 0x66, 0x66, 0x20, 0x30, 0x46, 0x0A, 0x20, 0x33, + 0x39, 0x20, 0x39, 0x46, 0x20, 0x41, 0x35, 0x20, 0x41, 0x35, 0x0A, 0x20, 0x31, 0x35, 0x20, 0x33, + 0x35, 0x20, 0x30, 0x30, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x39, 0x46, 0x20, 0x35, 0x41, 0x20, 0x35, + 0x41, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, 0x30, 0x20, 0x35, 0x41, 0x20, 0x35, 0x41, 0x0A, 0x20, + 0x33, 0x39, 0x20, 0x45, 0x42, 0x20, 0x31, 0x37, 0x20, 0x34, 0x31, 0x20, 0x39, 0x32, 0x20, 0x30, + 0x45, 0x20, 0x31, 0x30, 0x20, 0x38, 0x32, 0x20, 0x35, 0x41, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, + 0x30, 0x20, 0x41, 0x35, 0x20, 0x41, 0x35, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x32, 0x41, 0x20, 0x30, + 0x30, 0x20, 0x30, 0x30, 0x20, 0x30, 0x34, 0x20, 0x33, 0x37, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x32, + 0x42, 0x20, 0x30, 0x30, 0x20, 0x30, 0x30, 0x20, 0x30, 0x39, 0x20, 0x32, 0x33, 0x0A, 0x20, 0x33, + 0x39, 0x20, 0x46, 0x30, 0x20, 0x35, 0x41, 0x20, 0x35, 0x41, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x42, + 0x30, 0x20, 0x30, 0x39, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x45, 0x38, 0x20, 0x31, 0x30, 0x20, 0x33, + 0x30, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, 0x30, 0x20, 0x41, 0x35, 0x20, 0x41, 0x35, 0x0A, 0x20, + 0x33, 0x39, 0x20, 0x46, 0x43, 0x20, 0x35, 0x41, 0x20, 0x35, 0x41, 0x0A, 0x20, 0x33, 0x39, 0x20, + 0x42, 0x30, 0x20, 0x30, 0x31, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x45, 0x33, 0x20, 0x38, 0x38, 0x0A, + 0x20, 0x33, 0x39, 0x20, 0x42, 0x30, 0x20, 0x30, 0x37, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x45, 0x44, + 0x20, 0x36, 0x37, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, 0x43, 0x20, 0x41, 0x35, 0x20, 0x41, 0x35, + 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, 0x30, 0x20, 0x35, 0x41, 0x20, 0x35, 0x41, 0x0A, 0x20, 0x33, + 0x39, 0x20, 0x42, 0x30, 0x20, 0x30, 0x37, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x42, 0x37, 0x20, 0x30, + 0x31, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x42, 0x30, 0x20, 0x30, 0x38, 0x0A, 0x20, 0x33, 0x39, 0x20, + 0x42, 0x37, 0x20, 0x31, 0x32, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, 0x30, 0x20, 0x41, 0x35, 0x20, + 0x41, 0x35, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x35, 0x33, 0x20, 0x32, 0x30, 0x0A, 0x20, 0x31, 0x35, + 0x20, 0x35, 0x35, 0x20, 0x30, 0x30, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, 0x30, 0x20, 0x35, 0x41, + 0x20, 0x35, 0x41, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x42, 0x31, 0x20, 0x30, 0x30, 0x20, 0x30, 0x31, + 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, 0x30, 0x20, 0x41, 0x35, 0x20, 0x41, 0x35, 0x0A, 0x20, 0x33, + 0x39, 0x20, 0x46, 0x30, 0x20, 0x35, 0x41, 0x20, 0x35, 0x41, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x42, + 0x33, 0x20, 0x30, 0x30, 0x20, 0x43, 0x31, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, 0x30, 0x20, 0x41, + 0x35, 0x20, 0x41, 0x35, 0x0A, 0x20, 0x66, 0x66, 0x20, 0x37, 0x38, 0x0A, 0x20, 0x33, 0x39, 0x20, + 0x39, 0x46, 0x20, 0x41, 0x35, 0x20, 0x41, 0x35, 0x0A, 0x20, 0x30, 0x35, 0x20, 0x32, 0x39, 0x20, + 0x30, 0x30, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x39, 0x46, 0x20, 0x35, 0x41, 0x20, 0x35, 0x41, 0x0A, + 0x3C, 0x2F, 0x44, 0x53, 0x49, 0x49, 0x6E, 0x69, 0x74, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6E, 0x63, + 0x65, 0x3E, 0x3C, 0x44, 0x53, 0x49, 0x54, 0x65, 0x72, 0x6D, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6E, + 0x63, 0x65, 0x3E, 0x20, 0x33, 0x39, 0x20, 0x39, 0x46, 0x20, 0x41, 0x35, 0x20, 0x41, 0x35, 0x0A, + 0x20, 0x30, 0x35, 0x20, 0x32, 0x38, 0x20, 0x30, 0x30, 0x0A, 0x20, 0x66, 0x66, 0x20, 0x32, 0x38, + 0x0A, 0x20, 0x30, 0x35, 0x20, 0x31, 0x30, 0x20, 0x30, 0x30, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x39, + 0x46, 0x20, 0x35, 0x41, 0x20, 0x35, 0x41, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, 0x30, 0x20, 0x35, + 0x41, 0x20, 0x35, 0x41, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x42, 0x30, 0x20, 0x30, 0x35, 0x0A, 0x20, + 0x33, 0x39, 0x20, 0x46, 0x34, 0x20, 0x30, 0x31, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, 0x30, 0x20, + 0x41, 0x35, 0x20, 0x41, 0x35, 0x0A, 0x20, 0x66, 0x66, 0x20, 0x37, 0x38, 0x0A, 0x3C, 0x2F, 0x44, + 0x53, 0x49, 0x54, 0x65, 0x72, 0x6D, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6E, 0x63, 0x65, 0x3E, 0x3C, + 0x47, 0x72, 0x6F, 0x75, 0x70, 0x20, 0x69, 0x64, 0x3D, 0x27, 0x42, 0x61, 0x63, 0x6B, 0x6C, 0x69, + 0x67, 0x68, 0x74, 0x20, 0x43, 0x6F, 0x6E, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6F, + 0x6E, 0x27, 0x3E, 0x20, 0x3C, 0x42, 0x61, 0x63, 0x6B, 0x6C, 0x69, 0x67, 0x68, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x3E, 0x33, 0x3C, 0x2F, 0x42, 0x61, 0x63, 0x6B, 0x6C, 0x69, 0x67, 0x68, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x3E, 0x20, 0x3C, 0x44, 0x69, 0x73, 0x70, 0x6C, 0x61, 0x79, 0x52, 0x65, 0x73, + 0x65, 0x74, 0x49, 0x6E, 0x66, 0x6F, 0x3E, 0x30, 0x20, 0x32, 0x30, 0x30, 0x30, 0x20, 0x35, 0x30, + 0x30, 0x30, 0x20, 0x31, 0x32, 0x30, 0x30, 0x30, 0x20, 0x30, 0x3C, 0x2F, 0x44, 0x69, 0x73, 0x70, + 0x6C, 0x61, 0x79, 0x52, 0x65, 0x73, 0x65, 0x74, 0x49, 0x6E, 0x66, 0x6F, 0x3E, 0x0A, 0x3C, 0x2F, + 0x47, 0x72, 0x6F, 0x75, 0x70, 0x3E, 0x0A, 0x00 + })*/ + + Name (PCFG, Buffer (2822) + { + 0x3C, 0x3F, 0x78, 0x6D, 0x6C, 0x20, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x3D, 0x22, 0x31, + 0x2E, 0x30, 0x22, 0x20, 0x65, 0x6E, 0x63, 0x6F, + 0x64, 0x69, 0x6E, 0x67, 0x3D, 0x22, 0x75, 0x74, + 0x66, 0x2D, 0x38, 0x22, 0x3F, 0x3E, 0x3C, 0x50, + 0x61, 0x6E, 0x65, 0x6C, 0x4E, 0x61, 0x6D, 0x65, + 0x3E, 0x53, 0x36, 0x45, 0x33, 0x46, 0x43, 0x32, + 0x58, 0x30, 0x31, 0x3C, 0x2F, 0x50, 0x61, 0x6E, + 0x65, 0x6C, 0x4E, 0x61, 0x6D, 0x65, 0x3E, 0x3C, + 0x50, 0x61, 0x6E, 0x65, 0x6C, 0x44, 0x65, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6F, 0x6E, + 0x3E, 0x73, 0x61, 0x6D, 0x73, 0x75, 0x6E, 0x67, + 0x20, 0x53, 0x36, 0x45, 0x33, 0x46, 0x43, 0x32, + 0x58, 0x30, 0x31, 0x20, 0x63, 0x6D, 0x64, 0x20, + 0x6D, 0x6F, 0x64, 0x65, 0x20, 0x64, 0x73, 0x69, + 0x20, 0x70, 0x61, 0x6E, 0x65, 0x6C, 0x28, 0x31, + 0x30, 0x38, 0x30, 0x78, 0x32, 0x33, 0x34, 0x30, + 0x20, 0x32, 0x34, 0x62, 0x70, 0x70, 0x29, 0x3C, + 0x2F, 0x50, 0x61, 0x6E, 0x65, 0x6C, 0x44, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6F, + 0x6E, 0x3E, 0x3C, 0x47, 0x72, 0x6F, 0x75, 0x70, + 0x20, 0x69, 0x64, 0x3D, 0x22, 0x41, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x20, 0x54, 0x69, 0x6D, 0x69, + 0x6E, 0x67, 0x22, 0x3E, 0x20, 0x3C, 0x48, 0x6F, + 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, 0x6C, + 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x3E, 0x31, + 0x30, 0x38, 0x30, 0x3C, 0x2F, 0x48, 0x6F, 0x72, + 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, 0x6C, 0x41, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x3E, 0x20, 0x3C, + 0x48, 0x6F, 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, + 0x61, 0x6C, 0x46, 0x72, 0x6F, 0x6E, 0x74, 0x50, + 0x6F, 0x72, 0x63, 0x68, 0x3E, 0x37, 0x32, 0x3C, + 0x2F, 0x48, 0x6F, 0x72, 0x69, 0x7A, 0x6F, 0x6E, + 0x74, 0x61, 0x6C, 0x46, 0x72, 0x6F, 0x6E, 0x74, + 0x50, 0x6F, 0x72, 0x63, 0x68, 0x3E, 0x20, 0x3C, + 0x48, 0x6F, 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, + 0x61, 0x6C, 0x42, 0x61, 0x63, 0x6B, 0x50, 0x6F, + 0x72, 0x63, 0x68, 0x3E, 0x33, 0x36, 0x3C, 0x2F, + 0x48, 0x6F, 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, + 0x61, 0x6C, 0x42, 0x61, 0x63, 0x6B, 0x50, 0x6F, + 0x72, 0x63, 0x68, 0x3E, 0x20, 0x3C, 0x48, 0x6F, + 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, 0x6C, + 0x53, 0x79, 0x6E, 0x63, 0x50, 0x75, 0x6C, 0x73, + 0x65, 0x3E, 0x31, 0x36, 0x3C, 0x2F, 0x48, 0x6F, + 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, 0x6C, + 0x53, 0x79, 0x6E, 0x63, 0x50, 0x75, 0x6C, 0x73, + 0x65, 0x3E, 0x20, 0x3C, 0x48, 0x6F, 0x72, 0x69, + 0x7A, 0x6F, 0x6E, 0x74, 0x61, 0x6C, 0x53, 0x79, + 0x6E, 0x63, 0x53, 0x6B, 0x65, 0x77, 0x3E, 0x30, + 0x3C, 0x2F, 0x48, 0x6F, 0x72, 0x69, 0x7A, 0x6F, + 0x6E, 0x74, 0x61, 0x6C, 0x53, 0x79, 0x6E, 0x63, + 0x53, 0x6B, 0x65, 0x77, 0x3E, 0x20, 0x3C, 0x48, + 0x6F, 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, + 0x6C, 0x4C, 0x65, 0x66, 0x74, 0x42, 0x6F, 0x72, + 0x64, 0x65, 0x72, 0x3E, 0x30, 0x3C, 0x2F, 0x48, + 0x6F, 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, + 0x6C, 0x4C, 0x65, 0x66, 0x74, 0x42, 0x6F, 0x72, + 0x64, 0x65, 0x72, 0x3E, 0x20, 0x3C, 0x48, 0x6F, + 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, 0x6C, + 0x52, 0x69, 0x67, 0x68, 0x74, 0x42, 0x6F, 0x72, + 0x64, 0x65, 0x72, 0x3E, 0x30, 0x3C, 0x2F, 0x48, + 0x6F, 0x72, 0x69, 0x7A, 0x6F, 0x6E, 0x74, 0x61, + 0x6C, 0x52, 0x69, 0x67, 0x68, 0x74, 0x42, 0x6F, + 0x72, 0x64, 0x65, 0x72, 0x3E, 0x20, 0x3C, 0x56, + 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6C, 0x41, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x3E, 0x32, 0x33, + 0x34, 0x30, 0x3C, 0x2F, 0x56, 0x65, 0x72, 0x74, + 0x69, 0x63, 0x61, 0x6C, 0x41, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x3E, 0x20, 0x3C, 0x56, 0x65, 0x72, + 0x74, 0x69, 0x63, 0x61, 0x6C, 0x46, 0x72, 0x6F, + 0x6E, 0x74, 0x50, 0x6F, 0x72, 0x63, 0x68, 0x3E, + 0x33, 0x32, 0x3C, 0x2F, 0x56, 0x65, 0x72, 0x74, + 0x69, 0x63, 0x61, 0x6C, 0x46, 0x72, 0x6F, 0x6E, + 0x74, 0x50, 0x6F, 0x72, 0x63, 0x68, 0x3E, 0x20, + 0x3C, 0x56, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, + 0x6C, 0x42, 0x61, 0x63, 0x6B, 0x50, 0x6F, 0x72, + 0x63, 0x68, 0x3E, 0x31, 0x38, 0x3C, 0x2F, 0x56, + 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6C, 0x42, + 0x61, 0x63, 0x6B, 0x50, 0x6F, 0x72, 0x63, 0x68, + 0x3E, 0x20, 0x3C, 0x56, 0x65, 0x72, 0x74, 0x69, + 0x63, 0x61, 0x6C, 0x53, 0x79, 0x6E, 0x63, 0x50, + 0x75, 0x6C, 0x73, 0x65, 0x3E, 0x34, 0x3C, 0x2F, + 0x56, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6C, + 0x53, 0x79, 0x6E, 0x63, 0x50, 0x75, 0x6C, 0x73, + 0x65, 0x3E, 0x20, 0x3C, 0x56, 0x65, 0x72, 0x74, + 0x69, 0x63, 0x61, 0x6C, 0x53, 0x79, 0x6E, 0x63, + 0x53, 0x6B, 0x65, 0x77, 0x3E, 0x30, 0x3C, 0x2F, + 0x56, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6C, + 0x53, 0x79, 0x6E, 0x63, 0x53, 0x6B, 0x65, 0x77, + 0x3E, 0x20, 0x3C, 0x56, 0x65, 0x72, 0x74, 0x69, + 0x63, 0x61, 0x6C, 0x54, 0x6F, 0x70, 0x42, 0x6F, + 0x72, 0x64, 0x65, 0x72, 0x3E, 0x30, 0x3C, 0x2F, + 0x56, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6C, + 0x54, 0x6F, 0x70, 0x42, 0x6F, 0x72, 0x64, 0x65, + 0x72, 0x3E, 0x20, 0x3C, 0x56, 0x65, 0x72, 0x74, + 0x69, 0x63, 0x61, 0x6C, 0x42, 0x6F, 0x74, 0x74, + 0x6F, 0x6D, 0x42, 0x6F, 0x72, 0x64, 0x65, 0x72, + 0x3E, 0x30, 0x3C, 0x2F, 0x56, 0x65, 0x72, 0x74, + 0x69, 0x63, 0x61, 0x6C, 0x42, 0x6F, 0x74, 0x74, + 0x6F, 0x6D, 0x42, 0x6F, 0x72, 0x64, 0x65, 0x72, + 0x3E, 0x20, 0x3C, 0x49, 0x6E, 0x76, 0x65, 0x72, + 0x74, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6F, 0x6C, + 0x61, 0x72, 0x69, 0x74, 0x79, 0x3E, 0x46, 0x61, + 0x6C, 0x73, 0x65, 0x3C, 0x2F, 0x49, 0x6E, 0x76, + 0x65, 0x72, 0x74, 0x44, 0x61, 0x74, 0x61, 0x50, + 0x6F, 0x6C, 0x61, 0x72, 0x69, 0x74, 0x79, 0x3E, + 0x20, 0x3C, 0x49, 0x6E, 0x76, 0x65, 0x72, 0x74, + 0x56, 0x73, 0x79, 0x6E, 0x63, 0x50, 0x6F, 0x6C, + 0x61, 0x69, 0x72, 0x74, 0x79, 0x3E, 0x46, 0x61, + 0x6C, 0x73, 0x65, 0x3C, 0x2F, 0x49, 0x6E, 0x76, + 0x65, 0x72, 0x74, 0x56, 0x73, 0x79, 0x6E, 0x63, + 0x50, 0x6F, 0x6C, 0x61, 0x69, 0x72, 0x74, 0x79, + 0x3E, 0x20, 0x3C, 0x49, 0x6E, 0x76, 0x65, 0x72, + 0x74, 0x48, 0x73, 0x79, 0x6E, 0x63, 0x50, 0x6F, + 0x6C, 0x61, 0x72, 0x69, 0x74, 0x79, 0x3E, 0x46, + 0x61, 0x6C, 0x73, 0x65, 0x3C, 0x2F, 0x49, 0x6E, + 0x76, 0x65, 0x72, 0x74, 0x48, 0x73, 0x79, 0x6E, + 0x63, 0x50, 0x6F, 0x6C, 0x61, 0x72, 0x69, 0x74, + 0x79, 0x3E, 0x20, 0x3C, 0x42, 0x6F, 0x72, 0x64, + 0x65, 0x72, 0x43, 0x6F, 0x6C, 0x6F, 0x72, 0x3E, + 0x30, 0x78, 0x30, 0x3C, 0x2F, 0x42, 0x6F, 0x72, + 0x64, 0x65, 0x72, 0x43, 0x6F, 0x6C, 0x6F, 0x72, + 0x3E, 0x3C, 0x2F, 0x47, 0x72, 0x6F, 0x75, 0x70, + 0x3E, 0x3C, 0x47, 0x72, 0x6F, 0x75, 0x70, 0x20, + 0x69, 0x64, 0x3D, 0x22, 0x44, 0x69, 0x73, 0x70, + 0x6C, 0x61, 0x79, 0x20, 0x49, 0x6E, 0x74, 0x65, + 0x72, 0x66, 0x61, 0x63, 0x65, 0x22, 0x3E, 0x20, + 0x3C, 0x49, 0x6E, 0x74, 0x65, 0x72, 0x66, 0x61, + 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3E, 0x39, + 0x3C, 0x2F, 0x49, 0x6E, 0x74, 0x65, 0x72, 0x66, + 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x3E, + 0x20, 0x3C, 0x49, 0x6E, 0x74, 0x65, 0x72, 0x66, + 0x61, 0x63, 0x65, 0x43, 0x6F, 0x6C, 0x6F, 0x72, + 0x46, 0x6F, 0x72, 0x6D, 0x61, 0x74, 0x3E, 0x33, + 0x3C, 0x2F, 0x49, 0x6E, 0x74, 0x65, 0x72, 0x66, + 0x61, 0x63, 0x65, 0x43, 0x6F, 0x6C, 0x6F, 0x72, + 0x46, 0x6F, 0x72, 0x6D, 0x61, 0x74, 0x3E, 0x3C, + 0x2F, 0x47, 0x72, 0x6F, 0x75, 0x70, 0x3E, 0x3C, + 0x47, 0x72, 0x6F, 0x75, 0x70, 0x20, 0x69, 0x64, + 0x3D, 0x22, 0x44, 0x53, 0x49, 0x20, 0x49, 0x6E, + 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x22, + 0x3E, 0x20, 0x3C, 0x44, 0x53, 0x49, 0x43, 0x68, + 0x61, 0x6E, 0x6E, 0x65, 0x6C, 0x49, 0x64, 0x3E, + 0x32, 0x3C, 0x2F, 0x44, 0x53, 0x49, 0x43, 0x68, + 0x61, 0x6E, 0x6E, 0x65, 0x6C, 0x49, 0x64, 0x3E, + 0x20, 0x3C, 0x44, 0x53, 0x49, 0x56, 0x69, 0x72, + 0x74, 0x75, 0x61, 0x6C, 0x49, 0x64, 0x3E, 0x30, + 0x3C, 0x2F, 0x44, 0x53, 0x49, 0x56, 0x69, 0x72, + 0x74, 0x75, 0x61, 0x6C, 0x49, 0x64, 0x3E, 0x20, + 0x3C, 0x44, 0x53, 0x49, 0x43, 0x6F, 0x6C, 0x6F, + 0x72, 0x46, 0x6F, 0x72, 0x6D, 0x61, 0x74, 0x3E, + 0x33, 0x36, 0x3C, 0x2F, 0x44, 0x53, 0x49, 0x43, + 0x6F, 0x6C, 0x6F, 0x72, 0x46, 0x6F, 0x72, 0x6D, + 0x61, 0x74, 0x3E, 0x20, 0x3C, 0x44, 0x53, 0x49, + 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x4D, + 0x6F, 0x64, 0x65, 0x3E, 0x31, 0x3C, 0x2F, 0x44, + 0x53, 0x49, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, + 0x63, 0x4D, 0x6F, 0x64, 0x65, 0x3E, 0x20, 0x3C, + 0x44, 0x53, 0x49, 0x4C, 0x61, 0x6E, 0x65, 0x73, + 0x3E, 0x34, 0x3C, 0x2F, 0x44, 0x53, 0x49, 0x4C, + 0x61, 0x6E, 0x65, 0x73, 0x3E, 0x20, 0x3C, 0x44, + 0x53, 0x49, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, + 0x68, 0x52, 0x61, 0x74, 0x65, 0x3E, 0x30, 0x78, + 0x33, 0x43, 0x30, 0x30, 0x30, 0x30, 0x3C, 0x2F, + 0x44, 0x53, 0x49, 0x52, 0x65, 0x66, 0x72, 0x65, + 0x73, 0x68, 0x52, 0x61, 0x74, 0x65, 0x3E, 0x20, + 0x3C, 0x44, 0x53, 0x49, 0x54, 0x45, 0x43, 0x68, + 0x65, 0x63, 0x6B, 0x45, 0x6E, 0x61, 0x62, 0x6C, + 0x65, 0x3E, 0x54, 0x72, 0x75, 0x65, 0x3C, 0x2F, + 0x44, 0x53, 0x49, 0x54, 0x45, 0x43, 0x68, 0x65, + 0x63, 0x6B, 0x45, 0x6E, 0x61, 0x62, 0x6C, 0x65, + 0x3E, 0x20, 0x3C, 0x44, 0x53, 0x49, 0x54, 0x45, + 0x55, 0x73, 0x69, 0x6E, 0x67, 0x44, 0x65, 0x64, + 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x54, 0x45, + 0x50, 0x69, 0x6E, 0x3E, 0x54, 0x72, 0x75, 0x65, + 0x3C, 0x2F, 0x44, 0x53, 0x49, 0x54, 0x45, 0x55, + 0x73, 0x69, 0x6E, 0x67, 0x44, 0x65, 0x64, 0x69, + 0x63, 0x61, 0x74, 0x65, 0x64, 0x54, 0x45, 0x50, + 0x69, 0x6E, 0x3E, 0x20, 0x3C, 0x44, 0x53, 0x49, + 0x43, 0x6D, 0x64, 0x53, 0x77, 0x61, 0x70, 0x49, + 0x6E, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, + 0x3E, 0x46, 0x61, 0x6C, 0x73, 0x65, 0x3C, 0x2F, + 0x44, 0x53, 0x49, 0x43, 0x6D, 0x64, 0x53, 0x77, + 0x61, 0x70, 0x49, 0x6E, 0x74, 0x65, 0x72, 0x66, + 0x61, 0x63, 0x65, 0x3E, 0x20, 0x3C, 0x44, 0x53, + 0x49, 0x43, 0x6D, 0x64, 0x55, 0x73, 0x69, 0x6E, + 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, + 0x3E, 0x46, 0x61, 0x6C, 0x73, 0x65, 0x3C, 0x2F, + 0x44, 0x53, 0x49, 0x43, 0x6D, 0x64, 0x55, 0x73, + 0x69, 0x6E, 0x67, 0x54, 0x72, 0x69, 0x67, 0x67, + 0x65, 0x72, 0x3E, 0x20, 0x3C, 0x44, 0x53, 0x49, + 0x45, 0x6E, 0x61, 0x62, 0x6C, 0x65, 0x41, 0x75, + 0x74, 0x6F, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, + 0x68, 0x3E, 0x54, 0x72, 0x75, 0x65, 0x3C, 0x2F, + 0x44, 0x53, 0x49, 0x45, 0x6E, 0x61, 0x62, 0x6C, + 0x65, 0x41, 0x75, 0x74, 0x6F, 0x52, 0x65, 0x66, + 0x72, 0x65, 0x73, 0x68, 0x3E, 0x20, 0x3C, 0x44, + 0x53, 0x49, 0x41, 0x75, 0x74, 0x6F, 0x52, 0x65, + 0x66, 0x72, 0x65, 0x73, 0x68, 0x46, 0x72, 0x61, + 0x6D, 0x65, 0x4E, 0x75, 0x6D, 0x44, 0x69, 0x76, + 0x3E, 0x31, 0x3C, 0x2F, 0x44, 0x53, 0x49, 0x41, + 0x75, 0x74, 0x6F, 0x52, 0x65, 0x66, 0x72, 0x65, + 0x73, 0x68, 0x46, 0x72, 0x61, 0x6D, 0x65, 0x4E, + 0x75, 0x6D, 0x44, 0x69, 0x76, 0x3E, 0x20, 0x3C, + 0x44, 0x53, 0x49, 0x43, 0x6F, 0x6E, 0x74, 0x72, + 0x6F, 0x6C, 0x6C, 0x65, 0x72, 0x4D, 0x61, 0x70, + 0x70, 0x69, 0x6E, 0x67, 0x3E, 0x0A, 0x20, 0x20, + 0x30, 0x30, 0x0A, 0x20, 0x3C, 0x2F, 0x44, 0x53, + 0x49, 0x43, 0x6F, 0x6E, 0x74, 0x72, 0x6F, 0x6C, + 0x6C, 0x65, 0x72, 0x4D, 0x61, 0x70, 0x70, 0x69, + 0x6E, 0x67, 0x3E, 0x0A, 0x20, 0x3C, 0x44, 0x53, + 0x49, 0x4C, 0x50, 0x31, 0x31, 0x41, 0x74, 0x49, + 0x6E, 0x69, 0x74, 0x3E, 0x54, 0x72, 0x75, 0x65, + 0x3C, 0x2F, 0x44, 0x53, 0x49, 0x4C, 0x50, 0x31, + 0x31, 0x41, 0x74, 0x49, 0x6E, 0x69, 0x74, 0x3E, + 0x3C, 0x2F, 0x47, 0x72, 0x6F, 0x75, 0x70, 0x3E, + 0x3C, 0x44, 0x53, 0x49, 0x49, 0x6E, 0x69, 0x74, + 0x53, 0x65, 0x71, 0x75, 0x65, 0x6E, 0x63, 0x65, + 0x3E, 0x20, 0x33, 0x39, 0x20, 0x39, 0x46, 0x20, + 0x41, 0x35, 0x20, 0x41, 0x35, 0x0A, 0x20, 0x30, + 0x35, 0x20, 0x31, 0x31, 0x20, 0x30, 0x30, 0x0A, + 0x20, 0x66, 0x66, 0x20, 0x30, 0x41, 0x0A, 0x20, + 0x33, 0x39, 0x20, 0x39, 0x46, 0x20, 0x35, 0x41, + 0x20, 0x35, 0x41, 0x35, 0x0A, 0x20, 0x33, 0x39, + 0x20, 0x46, 0x30, 0x20, 0x35, 0x41, 0x20, 0x35, + 0x41, 0x0A, 0x20, 0x31, 0x35, 0x20, 0x42, 0x30, + 0x20, 0x30, 0x31, 0x0A, 0x20, 0x31, 0x35, 0x20, + 0x43, 0x44, 0x20, 0x30, 0x31, 0x0A, 0x20, 0x33, + 0x39, 0x20, 0x46, 0x30, 0x20, 0x35, 0x41, 0x20, + 0x35, 0x41, 0x0A, 0x20, 0x66, 0x66, 0x20, 0x30, + 0x46, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x39, 0x46, + 0x20, 0x41, 0x35, 0x20, 0x41, 0x35, 0x0A, 0x20, + 0x31, 0x35, 0x20, 0x33, 0x35, 0x20, 0x30, 0x30, + 0x0A, 0x20, 0x33, 0x39, 0x20, 0x39, 0x46, 0x20, + 0x35, 0x41, 0x20, 0x35, 0x41, 0x0A, 0x20, 0x33, + 0x39, 0x20, 0x46, 0x30, 0x20, 0x35, 0x41, 0x20, + 0x35, 0x41, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x45, + 0x42, 0x20, 0x31, 0x37, 0x20, 0x34, 0x31, 0x20, + 0x39, 0x32, 0x20, 0x30, 0x45, 0x20, 0x31, 0x30, + 0x20, 0x38, 0x32, 0x20, 0x35, 0x41, 0x0A, 0x20, + 0x33, 0x39, 0x20, 0x46, 0x30, 0x20, 0x41, 0x35, + 0x20, 0x41, 0x35, 0x0A, 0x20, 0x33, 0x39, 0x20, + 0x32, 0x41, 0x20, 0x30, 0x30, 0x20, 0x30, 0x30, + 0x20, 0x30, 0x34, 0x20, 0x33, 0x37, 0x0A, 0x20, + 0x33, 0x39, 0x20, 0x32, 0x42, 0x20, 0x30, 0x30, + 0x20, 0x30, 0x30, 0x20, 0x30, 0x39, 0x20, 0x32, + 0x33, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, 0x30, + 0x20, 0x35, 0x41, 0x20, 0x35, 0x41, 0x0A, 0x20, + 0x33, 0x39, 0x20, 0x42, 0x30, 0x20, 0x30, 0x39, + 0x0A, 0x20, 0x33, 0x39, 0x20, 0x45, 0x38, 0x20, + 0x31, 0x30, 0x20, 0x33, 0x30, 0x0A, 0x20, 0x33, + 0x39, 0x20, 0x46, 0x30, 0x20, 0x41, 0x35, 0x20, + 0x41, 0x35, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, + 0x43, 0x20, 0x35, 0x41, 0x20, 0x35, 0x41, 0x0A, + 0x20, 0x33, 0x39, 0x20, 0x42, 0x30, 0x20, 0x30, + 0x31, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x45, 0x33, + 0x20, 0x38, 0x38, 0x0A, 0x20, 0x33, 0x39, 0x20, + 0x42, 0x30, 0x20, 0x30, 0x37, 0x0A, 0x20, 0x33, + 0x39, 0x20, 0x45, 0x44, 0x20, 0x36, 0x37, 0x0A, + 0x20, 0x33, 0x39, 0x20, 0x46, 0x43, 0x20, 0x41, + 0x35, 0x20, 0x41, 0x35, 0x0A, 0x20, 0x33, 0x39, + 0x20, 0x46, 0x30, 0x20, 0x35, 0x41, 0x20, 0x35, + 0x41, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x42, 0x30, + 0x20, 0x30, 0x37, 0x0A, 0x20, 0x33, 0x39, 0x20, + 0x42, 0x37, 0x20, 0x30, 0x31, 0x0A, 0x20, 0x33, + 0x39, 0x20, 0x42, 0x30, 0x20, 0x30, 0x38, 0x0A, + 0x20, 0x33, 0x39, 0x20, 0x42, 0x37, 0x20, 0x31, + 0x32, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, 0x30, + 0x20, 0x41, 0x35, 0x20, 0x41, 0x35, 0x0A, 0x20, + 0x33, 0x39, 0x20, 0x35, 0x33, 0x20, 0x32, 0x30, + 0x0A, 0x20, 0x31, 0x35, 0x20, 0x35, 0x35, 0x20, + 0x30, 0x30, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, + 0x30, 0x20, 0x35, 0x41, 0x20, 0x35, 0x41, 0x0A, + 0x20, 0x33, 0x39, 0x20, 0x42, 0x31, 0x20, 0x30, + 0x30, 0x20, 0x30, 0x31, 0x0A, 0x20, 0x33, 0x39, + 0x20, 0x46, 0x30, 0x20, 0x41, 0x35, 0x20, 0x41, + 0x35, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, 0x30, + 0x20, 0x35, 0x41, 0x20, 0x35, 0x41, 0x0A, 0x20, + 0x33, 0x39, 0x20, 0x42, 0x33, 0x20, 0x30, 0x30, + 0x20, 0x43, 0x31, 0x0A, 0x20, 0x33, 0x39, 0x20, + 0x46, 0x30, 0x20, 0x41, 0x35, 0x20, 0x41, 0x35, + 0x0A, 0x20, 0x66, 0x66, 0x20, 0x37, 0x38, 0x0A, + 0x20, 0x33, 0x39, 0x20, 0x39, 0x46, 0x20, 0x41, + 0x35, 0x20, 0x41, 0x35, 0x0A, 0x20, 0x30, 0x35, + 0x20, 0x32, 0x39, 0x20, 0x30, 0x30, 0x0A, 0x20, + 0x33, 0x39, 0x20, 0x39, 0x46, 0x20, 0x35, 0x41, + 0x20, 0x35, 0x41, 0x0A, 0x3C, 0x2F, 0x44, 0x53, + 0x49, 0x49, 0x6E, 0x69, 0x74, 0x53, 0x65, 0x71, + 0x75, 0x65, 0x6E, 0x63, 0x65, 0x3E, 0x3C, 0x44, + 0x53, 0x49, 0x54, 0x65, 0x72, 0x6D, 0x53, 0x65, + 0x71, 0x75, 0x65, 0x6E, 0x63, 0x65, 0x3E, 0x20, + 0x33, 0x39, 0x20, 0x39, 0x46, 0x20, 0x41, 0x35, + 0x20, 0x41, 0x35, 0x0A, 0x20, 0x30, 0x35, 0x20, + 0x32, 0x38, 0x20, 0x30, 0x30, 0x0A, 0x20, 0x66, + 0x66, 0x20, 0x32, 0x38, 0x0A, 0x20, 0x30, 0x35, + 0x20, 0x31, 0x30, 0x20, 0x30, 0x30, 0x0A, 0x20, + 0x33, 0x39, 0x20, 0x39, 0x46, 0x20, 0x35, 0x41, + 0x20, 0x35, 0x41, 0x0A, 0x20, 0x33, 0x39, 0x20, + 0x46, 0x30, 0x20, 0x35, 0x41, 0x20, 0x35, 0x41, + 0x0A, 0x20, 0x33, 0x39, 0x20, 0x42, 0x30, 0x20, + 0x30, 0x35, 0x0A, 0x20, 0x33, 0x39, 0x20, 0x46, + 0x34, 0x20, 0x30, 0x31, 0x0A, 0x20, 0x33, 0x39, + 0x20, 0x46, 0x30, 0x20, 0x41, 0x35, 0x20, 0x41, + 0x35, 0x0A, 0x20, 0x66, 0x66, 0x20, 0x37, 0x38, + 0x0A, 0x3C, 0x2F, 0x44, 0x53, 0x49, 0x54, 0x65, + 0x72, 0x6D, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6E, + 0x63, 0x65, 0x3E, 0x3C, 0x47, 0x72, 0x6F, 0x75, + 0x70, 0x20, 0x69, 0x64, 0x3D, 0x27, 0x42, 0x61, + 0x63, 0x6B, 0x6C, 0x69, 0x67, 0x68, 0x74, 0x20, + 0x43, 0x6F, 0x6E, 0x66, 0x69, 0x67, 0x75, 0x72, + 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x27, 0x3E, 0x20, + 0x3C, 0x42, 0x61, 0x63, 0x6B, 0x6C, 0x69, 0x67, + 0x68, 0x74, 0x54, 0x79, 0x70, 0x65, 0x3E, 0x33, + 0x3C, 0x2F, 0x42, 0x61, 0x63, 0x6B, 0x6C, 0x69, + 0x67, 0x68, 0x74, 0x54, 0x79, 0x70, 0x65, 0x3E, + 0x20, 0x3C, 0x42, 0x61, 0x63, 0x6B, 0x6C, 0x69, + 0x67, 0x68, 0x74, 0x44, 0x65, 0x66, 0x61, 0x75, + 0x6C, 0x74, 0x3E, 0x35, 0x30, 0x3C, 0x2F, 0x42, + 0x61, 0x63, 0x6B, 0x6C, 0x69, 0x67, 0x68, 0x74, + 0x44, 0x65, 0x66, 0x61, 0x75, 0x6C, 0x74, 0x3E, + 0x20, 0x3C, 0x42, 0x61, 0x63, 0x6B, 0x6C, 0x69, + 0x67, 0x68, 0x74, 0x53, 0x74, 0x65, 0x70, 0x73, + 0x3E, 0x31, 0x30, 0x30, 0x3C, 0x2F, 0x42, 0x61, + 0x63, 0x6B, 0x6C, 0x69, 0x67, 0x68, 0x74, 0x53, + 0x74, 0x65, 0x70, 0x73, 0x3E, 0x20, 0x3C, 0x44, + 0x69, 0x73, 0x70, 0x6C, 0x61, 0x79, 0x50, 0x72, + 0x69, 0x6D, 0x61, 0x72, 0x79, 0x46, 0x6C, 0x61, + 0x67, 0x73, 0x3E, 0x30, 0x78, 0x34, 0x3C, 0x2F, + 0x44, 0x69, 0x73, 0x70, 0x6C, 0x61, 0x79, 0x50, + 0x72, 0x69, 0x6D, 0x61, 0x72, 0x79, 0x46, 0x6C, + 0x61, 0x67, 0x73, 0x3E, 0x20, 0x3C, 0x42, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x6E, 0x65, 0x73, 0x73, + 0x4D, 0x69, 0x6E, 0x4C, 0x75, 0x6D, 0x69, 0x6E, + 0x61, 0x6E, 0x63, 0x65, 0x3E, 0x32, 0x30, 0x30, + 0x30, 0x3C, 0x2F, 0x42, 0x72, 0x69, 0x67, 0x68, + 0x74, 0x6E, 0x65, 0x73, 0x73, 0x4D, 0x69, 0x6E, + 0x4C, 0x75, 0x6D, 0x69, 0x6E, 0x61, 0x6E, 0x63, + 0x65, 0x3E, 0x20, 0x3C, 0x42, 0x72, 0x69, 0x67, + 0x68, 0x74, 0x6E, 0x65, 0x73, 0x73, 0x4D, 0x61, + 0x78, 0x4C, 0x75, 0x6D, 0x69, 0x6E, 0x61, 0x6E, + 0x63, 0x65, 0x3E, 0x33, 0x36, 0x30, 0x30, 0x30, + 0x30, 0x3C, 0x2F, 0x42, 0x72, 0x69, 0x67, 0x68, + 0x74, 0x6E, 0x65, 0x73, 0x73, 0x4D, 0x61, 0x78, + 0x4C, 0x75, 0x6D, 0x69, 0x6E, 0x61, 0x6E, 0x63, + 0x65, 0x3E, 0x20, 0x3C, 0x44, 0x69, 0x73, 0x70, + 0x6C, 0x61, 0x79, 0x52, 0x65, 0x73, 0x65, 0x74, + 0x49, 0x6E, 0x66, 0x6F, 0x3E, 0x30, 0x20, 0x32, + 0x30, 0x30, 0x30, 0x20, 0x35, 0x30, 0x30, 0x30, + 0x20, 0x31, 0x32, 0x30, 0x30, 0x30, 0x20, 0x30, + 0x3C, 0x2F, 0x44, 0x69, 0x73, 0x70, 0x6C, 0x61, + 0x79, 0x52, 0x65, 0x73, 0x65, 0x74, 0x49, 0x6E, + 0x66, 0x6F, 0x3E, 0x0A, 0x3C, 0x2F, 0x47, 0x72, + 0x6F, 0x75, 0x70, 0x3E, 0x0A, 0x00 + }) + + Local2 = PCFG /* \_SB_.GPU0._ROM.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._ROM.RBUF */ + } + + // + // IGC method - panel inverse gamma correction table. + // + // The buffer contains inverse gamma correction data for 3 color components, each with 256 16-bit integers. + // The buffer size is 3*256*2 = 1536 bytes. + // each table entry is represend by a 16-bit integer and data format in the buffer is described below: + // + // +--- 16 bits ---+--- 16 bits ---+--- 16 bits ---+---------+--- 16 bits ---+ 0 + // | Red[0] | Red[1] | Red[2] | ... | Red[255] | + // +---------------+---------------+---------------+---------+---------------+ 512 + // | Green[0] | Green[1] | Green[2] | ... | Green[255] | + // +---------------+---------------+---------------+---------+---------------+ 1024 + // | Blue[0] | Blue[1] | Blue[2] | ... | Blue[255] | + // +---------------+---------------+---------------+---------+---------------+ 1536 + // + Method (PIGC, 2, NotSerialized) + { + Name (RBUF, Buffer (One) + { + 0x00 // . + }) + Return (RBUF) /* \_SB_.GPU0.PIGC.RBUF */ + } + + // + // PCC method - panel color correction matrix + // + // Buffer format for HW which support 3X8 color correction matrix. + // + // The buffer contains color correction coefficients for 3 color components, each with 11 64-bit integers. + // The buffer size is 3*11*8 = 264 bytes. + // each coefficient in the matrix is represented by a long long integer (64-bit), and data format in the + // buffer is described below: + // + // +--64 bits--+--64 bits--+--------+--64 bits--+--64 bits--+--64 bits--+--64 bits--+ 0 + // | Red[0] | Red[1] | ... | Red[7] | 0 | 0 | 0 | + // +-----------+-----------+--------+-----------+-----------+-----------+-----------+ 88 + // | Green[0] | Green[1] | ... | Green[7] | 0 | 0 | 0 | + // +-----------+-----------+--------+-----------+-----------+-----------+-----------+ 176 + // | Blue[0] | Blue[1] | ... | Blue[7] | 0 | 0 | 0 | + // +-----------+-----------+--------+-----------+-----------+-----------+-----------+ 264 + // + // Buffer format for HW which support 3X11 color correction matrix. + // + // The buffer contains color correction coefficients for 3 color components, each with 11 64-bit integers. + // The buffer size is 3*11*8 = 264 bytes. + // each coefficient in the matrix is represented by a long long integer (64-bit), and data format in the + // buffer is described below: + // + // +--- 64 bits ---+--- 64 bits ---+--- 64 bits ---+-----------+--- 64 bits ---+ 0 + // | Red[0] | Red[1] | Red[2] | ... | Red[10] | + // +---------------+---------------+---------------+-----------+---------------+ 88 + // | Green[0] | Green[1] | Green[2] | ... | Green[10] | + // +---------------+---------------+---------------+-----------+---------------+ 176 + // | Blue[0] | Blue[1] | Blue[2] | ... | Blue[10] | + // +---------------+---------------+---------------+-----------+---------------+ 264 + // + Method (PPCC, 2, NotSerialized) + { + Name (RBUF, Buffer (One) + { + 0x00 // . + }) + Return (RBUF) /* \_SB_.GPU0.PPCC.RBUF */ + } + + // + // PGC method - panel segment gamma correction table + // + // there're thee components and each with 16 gamma correction segments. Each segment is defined + // as below with parameters, and each parameter is represented by a 32-bit integer (DWORD): + // + // +--4 bytes--+--4 bytes--+--4 bytes--+--4 bytes--+ + // | enable | start | gain | offset | one gamma correction segment(16 bytes) + // +-----------+-----------+-----------+-----------+ + // + // +--- 16 bytes ---+--- 16 bytes ---+--- 16 bytes ---+-----------+--- 16 bytes ---+ 0 + // | red_seg[0] | red_seg[1] | red_seg[2] | ... | red_seg[15] | + // +----------------+----------------+----------------+-----------+----------------+ 256 + // | green_seg[0] | green_seg[1] | green_seg[2] | ... | green_seg[15] | + // +----------------+----------------+----------------+-----------+----------------+ 512 + // | blue_seg[0] | blue_seg[1] | blue_seg[2] | ... | blue_seg[15] | + // +----------------+----------------+----------------+-----------+----------------+ 768 + // + Method (PGCT, 2, NotSerialized) + { + Name (RBUF, Buffer (One) + { + 0x00 // . + }) + Return (RBUF) /* \_SB_.GPU0.PGCT.RBUF */ + } + + // + // PLGC method - panel linear gamma correction table + // + // There are three color components, each color component has 1024 entries. each entry is 2 bytes. + // + // +--- 2 bytes ---+--- 2 bytes ---+--- 2 bytes ---+-----------+--- 2 bytes ---+ 0 + // | red[0] | red[1] | red[2] | ... | red[1023] | + // +---------------+---------------+---------------+-----------+---------------+ 2048 + // | green[0] | green[1] | green[2] | ... | green[1023] | + // +---------------+---------------+---------------+-----------+---------------+ 4096 + // | blue[0] | blue[1] | blue[2] | ... | blue[1023] | + // +---------------+---------------+---------------+-----------+---------------+ 6144 + // + 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 */ + } + + // + // HSIC method - HSIC settings + // + // Hue, Saturation, Intensity, Contrast levels, the first parameter enable/disable HSIC control, + // followed by HSIC level values, each level ranges from -100 to 100, represented by a 32-bit integer: + // + // +--4 bytes--+--4 bytes--+--4 bytes--+--4 bytes--+--4 bytes--++ + // | Enable | Hue | Saturation| Intensity | Contrast | + // +-----------+-----------+-----------+-----------+-----------++ + // + // + Method (HSIC, 2, NotSerialized) + { + Name (RBUF, Buffer (One) + { + 0x00 // . + }) + Return (RBUF) /* \_SB_.GPU0.HSIC.RBUF */ + } + + // + // PGMT - panel gamut mapping table for HW which support 9x9x9 gamut mapping: + // + // This method returns the gamut mapping table for a panel. + // + // There are three components. Each component has 8 tables and a total of 729 entries. + // Each value is represented by a 16-bit integer: + // + // Table ID Entries + // 0 125 + // 1 100 + // 2 80 + // 3 100 + // 4 100 + // 5 80 + // 6 64 + // 7 80 + // + // +----- 16 bits -----+----- 16 bits ------+----- 16 bits -----+-----------+----- 16 bits -------+ + // | red_comp[0][0] | red_comp[0][1] | red_comp[0][2] | ... | red_comp[7][79] | + // +-------------------+--------------------+-------------------+---------------------------------+ + // | green_comp[0][0] | green_comp[0][1] | green_comp[0][2] | ... | green_comp[7][79] | + // +-------------------+--------------------+-------------------+---------------------------------+ + // | blue_comp[0][0] | blue_comp[0][1] | blue_comp[0][2] | ... | blue_comp[7][79] | + // +-------------------+--------------------+-------------------+---------------------------------+ + // + 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 */ + } + + // + // PWGM - panel gamut mapping data for HW which support 17x17x17 gamut mapping + // + // This data's header which has two fields: + // NumSamplesPerColorComponent: Number samples per color component in gamut mapping table. + // NumSegmentsPerColor : Number of segments per color component. + // NumSegmentsPerColor must equal 0 or NumSamplesPerColorComponent -1. + // + // This data also can have two tables, one is 3d table, one is segment table. + // Segment table is only required if NumSegmentsPerColor != 0. + // + // 3d table: There are three components. If number samples per component is N = NumSamplesPerColorComponent, + // total entries are NxNxN per component. Each value is represented by a 16-bit integer: + // Segment table: There are three components, table entries are uNumSegmentsPerColor per component, + // each entry is 32 bit value. + // + // Table data header: + // +--------- 32 bits ----------+------- 32 bits -----+ + // | NumSamplesPerColorComponent| NumSegmentsPerColor | + // +----------------------------+---------------------+ 8 bytes + // + // 3d table: + // +---- 16 bits ----+---- 16 bits ----+---- 16 bits ----+-------------+------- 16 bits -----------+ 8 + // | red_comp[0] | red_comp[1] | red_comp[2] | ... | red_comp[N x N x N - 1 ] | + // +-----------------+-----------------+-----------------+-------------+---------------------------+ NxNxNx2 + 8 + // | green_comp[0] | green_comp[1] | green_comp[2] | ... | green_comp[N x N x N - 1] | + // +-----------------+-----------------+-----------------+-------------+---------------------------+ 2xNxNxNx2 + 8 + // | blue_comp[0] | blue_comp[1] | blue_comp[2] | ... | blue_comp[N x N x N - 1] | + // +-----------------+-----------------+-----------------+-------------+---------------------------+ 3xNxNxNx2 + 8 + // + // Segment table: ( if NumSegmentsPerColor = 0, there is no segment table). + // +----- 32 bits ------+----- 32 bits ------+------ 32 bits -----+-------------+-------- 32 bits -------+ 3xNxNxNx2 + 8 + // | sg_red_comp[[0] | sg_red_comp[1] | sg_red_comp[2] | ... | sg_red_comp[N-2] | + // +--------------------+--------------------+--------------------+-------------+------------------------+ (N-1)x4 + 3xNxNxNx2 + 8 + // | sg_green_comp[0] | sg_ green_comp[1] | sg_ green_comp[2] | ... | sg_green_comp[N-2] | + // +--------------------+--------------------+--------------------+-------------+------------------------+ 2x(N-1)x4 + 3xNxNxNx2 + 8 + // | sg_ blue_comp[0] | sg_ blue_comp[1] | sg_ blue_comp[2] | ... | sg_ blue_comp[N-2] | + // +--------------------+--------------------+------------------- +-------------+------------------------+ 3x(N-1)x4 + 3xNxNxNx2 + 8 + // + // Maximum size = 3 x(17 - 1) x 4 + 3 x 17 x 17 x 17 x 2 + 8 = 29678 bytes. + // + 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 */ + } + + // + // PGRT - panel gamma response table + // + // This method returns the Gamma response table for a panel. + // The table is given in 2 arrays, one representing the x axis or grayscale and other + // representing the y axis or luminance. + // + // The table is given in a 256 entries array, where the first entry value represents + // the luminance (Y) achieved when displaying black on the screen (shade value is 0 + // for all R, G and B) and the last entry represents the luminance (Y) achieved when + // displaying white on the screen (shade value is 255 for all R, G and B). + // + // The array must be 256 entries. + // + // The range of each entry must be from 0 to 0xffff + // + // Values are least significant byte first. E.g. {0x01, 0x00} represents 0x1 and + // {0x02, 0x01} represents 0x0102 + // + // +--- 2 bytes ---+--- 2 bytes ---+--- 2 bytes ---+-----------+--- 2 bytes ---+ + // | Y[0] | Y[1] | Y[2] | ... | Y[255] | + // +---------------+---------------+---------------+-----------+---------------+ + Method (PGRT, 2, NotSerialized) + { + Name (RBUF, Buffer (One) + { + 0x00 // . + }) + Return (RBUF) /* \_SB_.GPU0.PGRT.RBUF */ + } + + // + // PBRT - panel backlight response table + // + // This method returns the Backlight response table for a panel. + // The table is given in a 256 entries array, where the first entry value represents + // the backlight level (BL) to achieve 0 luminance and the last entry represents + // the highest backlight level to achieve the maximum desired luminance. + // In other words, this array serves as a map from luminance to backlight levels, + // where the index is the desired luminance level and the value (or output) is + // the backlight level to be sent to the hardware (backlight controller). + // + // The array must be 256 entries. + // + // The range of each entry must be from 0 to 0xffff + // + // Values are least significant byte first. E.g. {0x01, 0x00} represents 0x1 and + // {0x02, 0x01} represents 0x0102 + // + // +--- 2 bytes ---+--- 2 bytes ---+--- 2 bytes ---+-----------+--- 2 bytes ---+ + // | BL[0] | BL[1] | BL[2] | ... | BL[255] | + // +---------------+---------------+---------------+-----------+---------------+ + 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 */ + } + + // + // DITH method - Dithering settings + // + // Dithering matrix could have following two formats: + // + // Format 1: + // +--1 byte--------+--1 byte--------+--1 byte--------+--1 byte--------+ + // | Element[0,0] | Element[0,1] | Element[0,2] | Element[0,3] | + // | Element[1,0] | Element[1,1] | Element[1,2] | Element[1,3] | + // | Element[2,0] | Element[2,1] | Element[2,2] | Element[2,3] | + // | Element[3,0] | Element[3,1] | Element[3,2] | Element[3,3] | + // | Bit Depth C0 | Bit Depth C1 | Bit Depth C2 | Reserved(0x0) | + // +----------------+----------------+----------------+----------------+ + // | Dithering mode (4 bytes) (0: not supported, 1:Spatial, 2:Temporal)| + // +----------------+----------------+----------------+----------------+ + // + // There is dithering mode in Format 1. + // + // Format 2: + // + // +--1 byte--------+--1 byte--------+--1 byte--------+--1 byte--------++ + // | Element[0,0] | Element[0,1] | Element[0,2] | Element[0,3] | + // | Element[1,0] | Element[1,1] | Element[1,2] | Element[1,3] | + // | Element[2,0] | Element[2,1] | Element[2,2] | Element[2,3] | + // | Element[3,0] | Element[3,1] | Element[3,2] | Element[3,3] | + // | Bit Depth C2 | Bit Depth C1 | Bit Depth C0 | Reserved(0x0) | + // +----------------+----------------+----------------+----------------+ + // + // There is no dithering mode in Format 2. Default dither mode: spatial. + // + Method (DITH, 2, NotSerialized) + { + Name (RBUF, Buffer (One) + { + 0x00 // . + }) + Return (RBUF) /* \_SB_.GPU0.DITH.RBUF */ + } + + /// + // BLCP Method - Backlight control packet method, returns a + // command buffer for a specific backlight level + // + // Input Parameters + // Backlight level - Integer from 0% to 100% + // + // Output Parameters + // + // Packet format: + // +--32bits--+-----variable (8bit alignment)--+ + // | Header | Packet payload | + // +----------+--------------------------------+ + // + // For DSI Command packets, payload data must be in this format + // + // +-- 8 bits-+----variable (8bit alignment)----+ + // | Cmd Type | Packet Data | + // +----------+---------------------------------+ + // + // For I2C Command packets, payload data must be in this format + // + // +-- 16 bits-+----variable (8bit alignment)----+ + // | Address | Command Data | + // +-----------+---------------------------------+ + // + // All packets must follow with a DWORD header with 0x0 + // + Method (BLCP, 1, Serialized) + { + Name(RBUF, Buffer(0x100){}) + Store(0x0, LOCAL0) + + CreateField(RBUF, Multiply(LOCAL0, 8), 32, PKHR) + Add(LOCAL0, 4, LOCAL0) + + CreateField(RBUF, Multiply(LOCAL0, 8), 8, PKCM) + Add(LOCAL0, 1, LOCAL0) + + CreateField(RBUF, Multiply(LOCAL0, 8), 8, PKDS) + Add(LOCAL0, 1, LOCAL0) + + CreateField(RBUF, Multiply(LOCAL0, 8), 8, PKUB) + Add(LOCAL0, 1, LOCAL0) + + CreateField(RBUF, Multiply(LOCAL0, 8), 8, PKLB) + Add(LOCAL0, 1, LOCAL0) + + // Add additonal ON command + Name (BON, // Backlight on + Buffer() {0x39, // Command 39 + 0x53, 0x24}) // Manual backlight control + // Create the packet header field + CreateField(RBUF, Multiply(LOCAL0, 8), 32, PKH2) // Create the packet header + Add(LOCAL0, 4, LOCAL0) // Increment the data pointer + // Create the packet payload field + CreateField(RBUF, Multiply(LOCAL0, 8), 32, PKP2) // Create the packet payload + Store(Sizeof(BON), PKH2) // Store the size of the buffer in the header + Store(BON, PKP2) // Store the packet payload + Add(LOCAL0, Sizeof(BON), LOCAL0) // Increment the offset by the packet size + + CreateDWordField(RBUF, Multiply(LOCAL0, 8), EOF) + + /*LOCAL1 = Arg0 * 10 // to map to 1024 + LOCAL2 = LOCAL1 >> 8 + LOCAL1 &= 0xFF*/ + + LOCAL1 = Arg0 * 1023 + LOCAL1 /= 0xFF + + LOCAL2 = Arg0 * 1023 + LOCAL2 /= 0xFF00 + LOCAL2 &= 3 + + PKHR = 4 + PKCM = 0x39 + PKDS = 0x51 + //PKUB = 0x00 + //PKLB = 0x10 + PKUB = LOCAL2 + PKLB = LOCAL1 + + EOF = 0x0 + + Return(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 + }) + + // Enumeration and device info for the AVStream child driver + // + Device (AVS0) + { + // The address for this device (Same as in _DOD, above) + // + Name (_ADR, 0x00024321) // _ADR: Address + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, Buffer (0x02) + { + 0x79, 0x00 // y. + }) + Return (RBUF) /* \_SB_.GPU0.AVS0._CRS.RBUF */ + } + + Name (_DEP, Package (0x03) // _DEP: Dependencies + { + \_SB.MMU0, + \_SB.IMM0, + \_SB.VFE0 + }) + } + + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + + //------------------------------------------------------------------------------ + // Child Device Info + // This method includes information for child devices + //------------------------------------------------------------------------------ + // + Method (CHDV, 0, NotSerialized) + { + Name (CHIF, Package (0x02) + { + One, // Number of Child devices + Package (0x07) + { + "CHILDDEV", + Zero, // Child ID + 0x00024321, // ACPI UID + "QCOM_AVStream_850", // Hardware ID + Zero, // Instance ID + "Qualcomm Camera AVStream Mini Driver", // Device Text + Package (0x04) + { + "COMPATIBLEIDS", + 0x02, + "VEN_QCOM&DEV__AVSTREAM", + "QCOM_AVSTREAM" + } + } + }) + Return (CHIF) /* \_SB_.GPU0.CHDV.CHIF */ + } + + Method (DPCC, 2, NotSerialized) + { + Return (\_SB.CCST) + } + + Method (DPIN, 2, NotSerialized) + { + Return (\_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", + Zero + } + } + }) + Return (RBUF) /* \_SB_.GPU0.REGR.RBUF */ + } + } +//#endif + + // + // Secure Channel Manager (SCM) Driver + // + Device (SCM0) + { + Name (_HID, "QCOM0214") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, Zero) // _UID: Unique ID + } + + // + // TrEE Driver + // + Device (TREE) + { + Name (_HID, "QCOM02BB") // _HID: Hardware ID + Alias (\_SB.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 */ + } + } + + // + //SPMI driver. + // + Device (SPMI) + { + Name (_HID, "QCOM0216") // _HID: Hardware ID + Alias (\_SB.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 */ + } + } + + // + // TLMM controller. + // + Device (GIO0) + { + Name (_HID, "QCOM0217") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, Zero) // _UID: Unique ID + OperationRegion (GPOR, GeneralPurposeIo, Zero, One) + Field (\_SB.GIO0.GPOR, ByteAcc, NoLock, Preserve) + { + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + // TLMM register address space + 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 */ + } + + // ACPI method to return Num pins + Method (OFNI, 0, NotSerialized) + { + Name (RBUF, Buffer (0x02) + { + 0x96, // 0: TOTAL_GPIO_PINS + 0x00 // 1: TOTAL_GPIO_PINS // .. + }) + 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. + }) + } + + //PCIE asl + 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 ((\_SB.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, \_SB.E0LT) + EEB0 (0x60101000, 0x601FFFFF) + } + + Name (G0D3, Zero) + PowerResource (P0ON, 0x05, 0x0000) + { + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.GIO0 + }) + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (Zero) + } + + Method (_ON, 0, NotSerialized) // _ON_: Power On + { + If (G0D3) + { + GP0B = One + Sleep (One) + GP0B = Zero + If ((\_SB.GIO0.GABL == One)) + { + \_SB.PCI0.MOD1 = One + Sleep (0x05) + \_SB.PCI0.MOD2 = Zero + } + + G0D3 = Zero + If (\_SB.PPU0 ()) + { + Debug = "PHY Init failed for Port 0" + While (One){} + } + + Sleep (0x05) + If ((\_SB.GIO0.GABL == One)) + { + \_SB.PCI0.MOD2 = One + } + + If (\_SB.LTS0 ()) + { + \_SB.E0LT = 0x601FFFFF + } + Else + { + \_SB.E0LT = 0x600FFFFF + } + + \_SB.IAT0 () + \_SB.MSC0 () + } + } + + Method (_OFF, 0, NotSerialized) // _OFF: Power Off + { + If ((G0D3 == Zero)) + { + BreakPoint + Name (PTO0, Zero) + G0D3 = One + Local0 = PSC0 /* \_SB_.PSC0 */ + Local0 |= 0x10 + PSC0 = Local0 + Local0 = ESC0 /* \_SB_.ESC0 */ + Local0 |= 0x10 + ESC0 = Local0 + Local0 = PPS0 /* \_SB_.PPS0 */ + While ((Local0 &= 0x20 != 0x20)) + { + Sleep (0x0A) + PTO0 += One + If ((PTO0 == 0x0A)) + { + Break + } + + Local0 = PPS0 /* \_SB_.PPS0 */ + } + + If ((\_SB.GIO0.GABL == One)) + { + \_SB.PCI0.MOD2 = Zero + } + + PPDC = Zero + PCST = Zero + } + } + } + + PowerResource (P0OF, 0x05, 0x0000) + { + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.GIO0 + }) + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (Zero) + } + + Method (_ON, 0, NotSerialized) // _ON_: Power On + { + } + + Method (_OFF, 0, NotSerialized) // _OFF: Power Off + { + } + + Method (_RST, 0, NotSerialized) // _RST: Device Reset + { + GP0B = One + Sleep (One) + GP0B = Zero + If ((\_SB.GIO0.GABL == One)) + { + \_SB.PCI0.MOD1 = Zero + Sleep (One) + \_SB.PCI0.MOD1 = One + Sleep (0x05) + \_SB.PCI0.MOD2 = Zero + } + + G0D3 = Zero + If (\_SB.PPU0 ()) + { + Debug = "PHY Init failed for Port 0" + While (One){} + } + + Sleep (0x05) + If ((\_SB.GIO0.GABL == One)) + { + \_SB.PCI0.MOD2 = One + } + + If (\_SB.LTS0 ()) + { + \_SB.E0LT = 0x601FFFFF + } + Else + { + \_SB.E0LT = 0x600FFFFF + } + + \_SB.IAT0 () + \_SB.MSC0 () + } + } + + Device (PCI0) + { + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.PEP0 + }) + Name (_HID, EisaId ("PNP0A08") /* PCI Express Bus */) // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_CID, EisaId ("PNP0A03") /* PCI Bus */) // _CID: Compatible ID + Name (_UID, Zero) // _UID: Unique ID + Name (_SEG, Zero) // _SEG: PCI Segment + Name (_BBN, Zero) // _BBN: BIOS Bus Number + Name (_PRT, Package (0x04) // _PRT: PCI Routing Table + { + Package (0x04) + { + 0xFFFF, + Zero, + Zero, + 0xB5 + }, + + Package (0x04) + { + 0xFFFF, + One, + Zero, + 0xB6 + }, + + Package (0x04) + { + 0xFFFF, + 0x02, + Zero, + 0xB7 + }, + + Package (0x04) + { + 0xFFFF, + 0x03, + Zero, + 0xB8 + } + }) + Method (_CCA, 0, NotSerialized) // _CCA: Cache Coherency Attribute + { + Return (Zero) + } + + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (Zero) + } + + Method (_PSC, 0, NotSerialized) // _PSC: Power State Current + { + Return (Zero) + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x60200000, // Address Base + 0x00DF0000, // Address Length + ) + WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, + 0x0000, // Granularity + 0x0000, // Range Minimum + 0x0001, // Range Maximum + 0x0000, // Translation Offset + 0x0002, // Length + ,, ) + }) + Return (RBUF) /* \_SB_.PCI0._CRS.RBUF */ + } + + Name (SUPP, Zero) + Name (CTRL, Zero) + Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake + { + } + + Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities + { + If ((Arg0 == ToUUID ("33db4d5b-1ff7-401c-9657-7441c03dd766") /* PCI Host Bridge Device */)) + { + CreateDWordField (Arg3, Zero, CDW1) + CreateDWordField (Arg3, 0x04, CDW2) + CreateDWordField (Arg3, 0x08, CDW3) + SUPP = CDW2 /* \_SB_.PCI0._OSC.CDW2 */ + CTRL = CDW3 /* \_SB_.PCI0._OSC.CDW3 */ + If (((SUPP & 0x16) != 0x16)) + { + CTRL &= 0x1E + } + + CTRL &= 0x15 + If ((Arg1 != One)) + { + CDW1 |= 0x08 + } + + If ((CDW3 != CTRL)) + { + CDW1 |= 0x10 + } + + CDW3 = CTRL /* \_SB_.PCI0.CTRL */ + Return (Arg3) + } + Else + { + CDW1 |= 0x04 + Return (Arg3) + } + } + + Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method + { + If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */)) + { + While (One) + { + Name (_T_0, 0x00) // _T_x: Emitted by ASL Compiler + _T_0 = ToInteger (Arg2) + If ((_T_0 == Zero)) + { + Return (Buffer (0x02) + { + 0xFF, 0x03 // .. + }) + } + ElseIf ((_T_0 == One)) + { + Return (Package (0x02) + { + Package (One) + { + One + }, + + Package (0x03) + { + Zero, + One, + One + } + }) + } + ElseIf ((_T_0 == 0x02)) + { + Return (Package (One) + { + Package (0x04) + { + One, + 0x03, + Zero, + 0x07 + } + }) + } + ElseIf ((_T_0 == 0x03)) + { + Return (Package (One) + { + Zero + }) + } + ElseIf ((_T_0 == 0x04)) + { + Return (Package (0x02) + { + Package (One) + { + Zero + }, + + Package (0x04) + { + One, + 0x03, + Zero, + 0x07 + } + }) + } + ElseIf ((_T_0 == 0x05)) + { + Return (Package (One) + { + One + }) + } + ElseIf ((_T_0 == 0x06)) + { + Return (Package (0x04) + { + Package (One) + { + Zero + }, + + Package (One) + { + Zero + }, + + Package (One) + { + Zero + }, + + Package (One) + { + Zero + } + }) + } + ElseIf ((_T_0 == 0x07)) + { + Return (Package (One) + { + One + }) + } + ElseIf ((_T_0 == 0x08)) + { + Return (Package (One) + { + One + }) + } + ElseIf ((_T_0 == 0x09)) + { + Return (Package (0x05) + { + 0xFFFFFFFF, + 0xFFFFFFFF, + 0xFFFFFFFF, + Zero, + 0xFFFFFFFF + }) + } + Else + { + } + + Break + } + } + } + + Name (_S0W, 0x04) // _S0W: S0 Device Wake State + Name (GWLE, ResourceTemplate () + { + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionNone, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0027 + } + }) + Name (GWLP, ResourceTemplate () + { + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionNone, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0023 + } + }) + Scope (\_SB.GIO0) + { + OperationRegion (WLEN, GeneralPurposeIo, Zero, One) + OperationRegion (WLPR, GeneralPurposeIo, Zero, One) + } + + Field (\_SB.GIO0.WLEN, ByteAcc, NoLock, Preserve) + { + Connection (\_SB.PCI0.GWLE), + MOD1, 1 + } + + Field (\_SB.GIO0.WLPR, ByteAcc, NoLock, Preserve) + { + Connection (\_SB.PCI0.GWLP), + MOD2, 1 + } + + Name (_PR0, Package (0x01) // _PR0: Power Resources for D0 + { + \_SB.P0ON + }) + Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot + { + \_SB.P0ON + }) + Device (RP1) + { + Name (_ADR, Zero) // _ADR: Address + Name (_PR0, Package (0x01) // _PR0: Power Resources for D0 + { + \_SB.P0OF + }) + Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot + { + \_SB.P0OF + }) + Name (_PRR, Package (0x01) // _PRR: Power Resource for Reset + { + \_SB.P0OF + }) + Name (_S0W, 0x04) // _S0W: S0 Device Wake State + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullUp, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0025 + } + }) + Return (RBUF) /* \_SB_.PCI0.RP1_._CRS.RBUF */ + } + + Name (_DSD, Package (0x02) // _DSD: Device-Specific Data + { + ToUUID ("6211e2c0-58a3-4af3-90e1-927a4e0c55a4"), + Package (0x01) + { + Package (0x02) + { + "HotPlugSupportInD3", + One + } + } + }) + Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method + { + If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */)) + { + While (One) + { + Name (_T_0, 0x00) // _T_x: Emitted by ASL Compiler + _T_0 = ToInteger (Arg2) + If ((_T_0 == Zero)) + { + Return (Buffer (0x02) + { + 0x01, 0x03 // .. + }) + } + ElseIf ((_T_0 == 0x08)) + { + Return (Package (One) + { + One + }) + } + ElseIf ((_T_0 == 0x09)) + { + Return (Package (0x05) + { + 0xFFFFFFFF, + 0xFFFFFFFF, + 0xFFFFFFFF, + Zero, + 0xFFFFFFFF + }) + } + Else + { + } + + Break + } + } + } + } + } + + 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 ((\_SB.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, \_SB.E1LT) + EEB1 (0x40101000, 0x401FFFFF) + } + + Name (G1D3, Zero) + PowerResource (P1ON, 0x05, 0x0000) + { + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.GIO0 + }) + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (Zero) + } + + Method (_ON, 0, NotSerialized) // _ON_: Power On + { + If (G1D3) + { + G1D3 = Zero + GP1B = One + Sleep (One) + GP1B = Zero + G1PB = One + Sleep (One) + G1PB = Zero + If (\_SB.PPU1 ()) + { + Debug = "PHY Init Failed for Port 1" + While (One){} + } + + If ((\_SB.GIO0.GABL == One)) + { + \_SB.PCI1.MOD2 = Zero + } + + Sleep (0x0A) + If ((\_SB.GIO0.GABL == One)) + { + \_SB.PCI1.MOD2 = One + } + + If (\_SB.LTS1 ()) + { + \_SB.E1LT = 0x401FFFFF + } + Else + { + \_SB.E1LT = 0x400FFFFF + } + + \_SB.IAT1 () + \_SB.MSC1 () + } + } + + Method (_OFF, 0, NotSerialized) // _OFF: Power Off + { + If ((G1D3 == Zero)) + { + BreakPoint + Name (PTO0, Zero) + G1D3 = One + Local0 = PSC1 /* \_SB_.PSC1 */ + Local0 |= 0x10 + PSC1 = Local0 + Local0 = ESC1 /* \_SB_.ESC1 */ + Local0 |= 0x10 + ESC1 = Local0 + Local0 = PPS1 /* \_SB_.PPS1 */ + While ((Local0 &= 0x20 != 0x20)) + { + Sleep (0x0A) + PTO0 += One + If ((PTO0 == 0x0A)) + { + Break + } + + Local0 = PPS1 /* \_SB_.PPS1 */ + } + + If ((\_SB.GIO0.GABL == One)) + { + \_SB.PCI1.MOD2 = Zero + } + + HPSR = Zero + L0ST = Zero + L1ST = Zero + HSTC = Zero + } + } + } + + PowerResource (P1OF, 0x05, 0x0000) + { + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.GIO0 + }) + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (Zero) + } + + Method (_ON, 0, NotSerialized) // _ON_: Power On + { + } + + Method (_OFF, 0, NotSerialized) // _OFF: Power Off + { + } + + Method (_RST, 0, Serialized) // _RST: Device Reset + { + GP1B = One + Sleep (One) + GP1B = Zero + G1PB = One + Sleep (One) + G1PB = Zero + If (\_SB.PPU1 ()) + { + Debug = "PHY Init Failed for Port 1" + While (One){} + } + + If ((\_SB.GIO0.GABL == One)) + { + \_SB.PCI1.MOD2 = Zero + } + + Sleep (0x0A) + If ((\_SB.GIO0.GABL == One)) + { + \_SB.PCI1.MOD2 = One + } + + If (\_SB.LTS1 ()) + { + \_SB.E1LT = 0x401FFFFF + } + Else + { + \_SB.E1LT = 0x400FFFFF + } + + \_SB.IAT1 () + \_SB.MSC1 () + } + } + + Device (PCI1) + { + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.PEP0 + }) + Name (_HID, EisaId ("PNP0A08") /* PCI Express Bus */) // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_CID, EisaId ("PNP0A03") /* PCI Bus */) // _CID: Compatible ID + Name (_UID, One) // _UID: Unique ID + Name (_SEG, One) // _SEG: PCI Segment + Name (_BBN, Zero) // _BBN: BIOS Bus Number + Name (_PRT, Package (0x04) // _PRT: PCI Routing Table + { + Package (0x04) + { + 0xFFFF, + Zero, + Zero, + 0x01D2 + }, + + Package (0x04) + { + 0xFFFF, + One, + Zero, + 0x01D3 + }, + + Package (0x04) + { + 0xFFFF, + 0x02, + Zero, + 0x01D6 + }, + + Package (0x04) + { + 0xFFFF, + 0x03, + Zero, + 0x01D7 + } + }) + Method (_CCA, 0, NotSerialized) // _CCA: Cache Coherency Attribute + { + Return (One) + } + + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (Zero) + } + + Method (_PSC, 0, NotSerialized) // _PSC: Power State Current + { + Return (Zero) + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x40200000, // Address Base + 0x01FDF000, // Address Length + ) + WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, + 0x0000, // Granularity + 0x0000, // Range Minimum + 0x0001, // Range Maximum + 0x0000, // Translation Offset + 0x0002, // Length + ,, ) + }) + Return (RBUF) /* \_SB_.PCI1._CRS.RBUF */ + } + + Name (SUPP, Zero) + Name (CTRL, Zero) + Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake + { + } + + Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities + { + If ((Arg0 == ToUUID ("33db4d5b-1ff7-401c-9657-7441c03dd766") /* PCI Host Bridge Device */)) + { + CreateDWordField (Arg3, Zero, CDW1) + CreateDWordField (Arg3, 0x04, CDW2) + CreateDWordField (Arg3, 0x08, CDW3) + SUPP = CDW2 /* \_SB_.PCI1._OSC.CDW2 */ + CTRL = CDW3 /* \_SB_.PCI1._OSC.CDW3 */ + If (((SUPP & 0x16) != 0x16)) + { + CTRL &= 0x1E + } + + CTRL &= 0x15 + If ((Arg1 != One)) + { + CDW1 |= 0x08 + } + + If ((CDW3 != CTRL)) + { + CDW1 |= 0x10 + } + + CDW3 = CTRL /* \_SB_.PCI1.CTRL */ + Return (Arg3) + } + Else + { + CDW1 |= 0x04 + Return (Arg3) + } + } + + Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method + { + If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */)) + { + While (One) + { + Name (_T_0, 0x00) // _T_x: Emitted by ASL Compiler + _T_0 = ToInteger (Arg2) + If ((_T_0 == Zero)) + { + Return (Buffer (0x02) + { + 0xFF, 0x03 // .. + }) + } + ElseIf ((_T_0 == One)) + { + Return (Package (0x02) + { + Package (One) + { + One + }, + + Package (0x03) + { + Zero, + One, + One + } + }) + } + ElseIf ((_T_0 == 0x02)) + { + Return (Package (One) + { + Package (0x04) + { + One, + 0x03, + Zero, + 0x07 + } + }) + } + ElseIf ((_T_0 == 0x03)) + { + Return (Package (One) + { + Zero + }) + } + ElseIf ((_T_0 == 0x04)) + { + Return (Package (0x02) + { + Package (One) + { + Zero + }, + + Package (0x04) + { + One, + 0x03, + Zero, + 0x07 + } + }) + } + ElseIf ((_T_0 == 0x05)) + { + Return (Package (One) + { + One + }) + } + ElseIf ((_T_0 == 0x06)) + { + Return (Package (0x04) + { + Package (One) + { + Zero + }, + + Package (One) + { + Zero + }, + + Package (One) + { + Zero + }, + + Package (One) + { + Zero + } + }) + } + ElseIf ((_T_0 == 0x07)) + { + Return (Package (One) + { + 0x02 + }) + } + ElseIf ((_T_0 == 0x08)) + { + Return (Package (One) + { + One + }) + } + ElseIf ((_T_0 == 0x09)) + { + Return (Package (0x05) + { + 0xFFFFFFFF, + 0xFFFFFFFF, + 0xFFFFFFFF, + Zero, + 0xFFFFFFFF + }) + } + Else + { + } + + Break + } + } + } + + Name (_S0W, 0x04) // _S0W: S0 Device Wake State + Name (RST1, ResourceTemplate () + { + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionNone, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0066 + } + }) + Scope (\_SB.GIO0) + { + OperationRegion (P1PR, GeneralPurposeIo, Zero, One) + } + + Field (\_SB.GIO0.P1PR, ByteAcc, NoLock, Preserve) + { + Connection (\_SB.PCI1.RST1), + MOD2, 1 + } + + Name (_PR0, Package (0x01) // _PR0: Power Resources for D0 + { + \_SB.P1ON + }) + Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot + { + \_SB.P1ON + }) + Device (RP1) + { + Name (_ADR, Zero) // _ADR: Address + Name (_PR0, Package (0x01) // _PR0: Power Resources for D0 + { + \_SB.P1OF + }) + Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot + { + \_SB.P1OF + }) + Name (_PRR, Package (0x01) // _PRR: Power Resource for Reset + { + \_SB.P1OF + }) + Name (_DSD, Package (0x02) // _DSD: Device-Specific Data + { + ToUUID ("6211e2c0-58a3-4af3-90e1-927a4e0c55a4"), + Package (0x01) + { + Package (0x02) + { + "HotPlugSupportInD3", + One + } + } + }) + Name (_S0W, 0x04) // _S0W: S0 Device Wake State + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullUp, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0068 + } + GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0071 + } + }) + Return (RBUF) /* \_SB_.PCI1.RP1_._CRS.RBUF */ + } + + Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method + { + If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */)) + { + While (One) + { + Name (_T_0, 0x00) // _T_x: Emitted by ASL Compiler + _T_0 = ToInteger (Arg2) + If ((_T_0 == Zero)) + { + Return (Buffer (0x02) + { + 0x01, 0x03 // .. + }) + } + ElseIf ((_T_0 == 0x08)) + { + Return (Package (One) + { + One + }) + } + ElseIf ((_T_0 == 0x09)) + { + Return (Package (0x05) + { + 0xFFFFFFFF, + 0xFFFFFFFF, + 0xFFFFFFFF, + Zero, + 0xFFFFFFFF + }) + } + Else + { + } + + Break + } + } + } + } + } + + + // + // IPC Router + // + Device (IPC0) + { +//#if 0 + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.GLNK + }) +//#endif + Name (_HID, "QCOM021C") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + } + + Device (GLNK) + { +//#if 0 + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.RPEN + }) +//#endif + Name (_HID, "QCOM02F9") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, Zero) // _UID: Unique ID + Method (_CRS, 0, Serialized) // _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 */ + } + } + + // ADSP RPC Driver + // + Device (ARPC) + { + Name (_DEP, Package (0x03) // _DEP: Dependencies + { + \_SB.MMU0, + \_SB.GLNK, + \_SB.SCM0 + }) + Name (_HID, "QCOM0297") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + } + + Device (ARPD) + { + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.ADSP, + \_SB.ARPC + }) + Name (_HID, "QCOM02F3") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + } + + // + // RemoteFS + // + Device(RFS0) + { + Name(_DEP, Package(0x2) + { + IPC0, + UFS0 + }) + Name(_HID, "QCOM0235") + Alias(PSUB, _SUB) + Method(_CRS, 0x0, NotSerialized) + { + Name(RBUF, Buffer(0x26) + { + 0x86, 0x09, 0x00, 0x01, 0x88, 0x88, 0x88, 0x88, 0x99, 0x99, 0x99, 0x99, + 0x86, 0x09, 0x00, 0x01, 0x11, 0x11, 0x11, 0x11, 0x22, 0x22, 0x22, 0x22, + 0x86, 0x09, 0x00, 0x01, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x44, + 0x79, 0x00 + }) + CreateDWordField(RBUF, 0x4, RMTA) + CreateDWordField(RBUF, 0x8, RMTL) + CreateDWordField(RBUF, 0x10, RFMA) + CreateDWordField(RBUF, 0x14, RFML) + CreateDWordField(RBUF, 0x1c, RFAA) + CreateDWordField(RBUF, 0x20, RFAL) + Store(RMTB, RMTA) + Store(RMTX, RMTL) + Store(RFMB, RFMA) + Store(RFMS, RFML) + Store(RFAB, RFAA) + Store(RFAS, RFAL) + Return(RBUF) + } + Method(_STA, 0x0, NotSerialized) + { + Return(0xb) + } + } + +#if 0 + Device (RFS0) + { + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.IPC0, + \_SB.UFS0 + }) + Name (_HID, "QCOM0235") // _HID: Hardware ID + Alias (\_SB.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 = \_SB.RMTB + RMTL = \_SB.RMTX + RFMA = \_SB.RFMB + RFML = \_SB.RFMS + RFAA = \_SB.RFAB + RFAL = \_SB.RFAS + Return (RBUF) /* \_SB_.RFS0._CRS.RBUF */ + } + + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0B) + } + } +#endif + + Device (IPA) + { + Name (_DEP, Package (0x06) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.RPEN, + \_SB.PILC, + \_SB.MMU0, + \_SB.GSI, + \_SB.GLNK + }) + Name (_HID, "QCOM02B3") // _HID: Hardware ID + Alias (\_SB.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 + { + \_SB.PEP0 + }) + Name (_HID, "QCOM02E7") // _HID: Hardware ID + Alias (\_SB.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 */ + } + } + + // + //Qualcomm DIAG Service + // + Device (QDIG) + { + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.GLNK + }) + Name (_HID, "QCOM0225") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + } + + // + // Qualcomm DIAG Bridge + // + Device (QCDB) + { + Name (_HID, "QCOM0298") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + } + + Device (SYSM) + { + Name (_HID, "MEOW0010" /* 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, "MEOW0010" /* 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, "MEOW0007" /* 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, "MEOW0007" /* 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, "MEOW0007" /* 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, "MEOW0007" /* 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, "MEOW0007" /* 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, "MEOW0007" /* 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, "MEOW0007" /* 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, "MEOW0007" /* 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 (One) // _DEP: Dependencies + { + \_SB.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 */ + } + } + + // + // Qualcomm GPS driver + // + Device (GPS) + { + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.GLNK + }) + Name (_HID, "QCOM02B6") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_CID, "ACPIQCOM24B4") // _CID: Compatible ID + Name (_UID, Zero) // _UID: Unique ID + } + + Device (QGP0) + { + Name (_HID, "NOPE02F4") // _HID: Hardware ID + Alias (\_SB.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, "NOPE02F4") // _HID: Hardware ID + Alias (\_SB.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 + } + }) + } + } + + Scope (\_SB) + { + OperationRegion (XACA, SystemMemory, 0x146BFA94, 0x64) + Field (XACA, AnyAcc, Lock, Preserve) + { + HBID, 8, + BWDS, 8, + PRP1, 8, + PVCS, 8, + BATP, 8, + VMXC, 8, + VMXN, 8, + VMXD, 8 + } + } + + Device (SARM) + { + Name (_HID, "QCOM0301") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + } + + Scope (\_SB) + { + Device (WBDI) + { + Name (_HID, "SAM0909") // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_SUB, "C153144D") // _SUB: Subsystem ID + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.GIO0, + \_SB.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 */ + } + } + } + + // + //CAMERA PLATFORM + // + Device (CAMP) + { + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.PMIC + }) + Name (_HID, "QCOM026F") // _HID: Hardware ID + Name (_UID, 0x1B) // _UID: Unique ID + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x0AC40000, // Address Base + 0x0000006C, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x0AC42000, // Address Base + 0x00004E8C, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x0AC4A000, // Address Base + 0x00000C1C, // Address Length + ) + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000001EC, + } + }) + Return (RBUF) /* \_SB_.CAMP._CRS.RBUF */ + } + + Name (PLED, Zero) + Method (PPUT, 1, NotSerialized) + { + PLED = Arg0 + If ((PLED == Zero)) + { + \_SB.LED1.RLED (0x0100, Zero) + } + + If ((PLED == One)) + { + \_SB.LED1.RLED (0x0100, One) + } + + Return (PLED) /* \_SB_.CAMP.PLED */ + } + + Method (PGET, 0, NotSerialized) + { + Return (PLED) /* \_SB_.CAMP.PLED */ + } + + Method (PCFG, 0, Serialized) + { + Return (Package (0x01) + { + Package (0x09) + { + 0x03, + Zero, + 0x00210010, + Zero, + Zero, + Zero, + Zero, + Zero, + Zero + } + }) + } + + Method (PERF, 0, NotSerialized) + { + Name (EBUF, Package (0x02) + { + Package (0x05) + { + "COMPONENT", + Zero, + Package (0x05) + { + "PSTATE_SET", + Zero, + Zero, + "CAMP_CLK", + Package (0x04) + { + "PSTATE", + Zero, + 0x023C3460, + 0x0124F800 + } + }, + + Package (0x05) + { + "PSTATE_SET", + One, + One, + "NRT_UNCOMP_BANDWIDTH", + Package (0x28) + { + "PSTATE", + Zero, + 0x00000002CB417800, + 0x00000002AD741300, + 0x000000028FA6AE00, + 0x0000000271D94900, + 0x00000002540BE400, + 0x00000002363E7F00, + 0x0000000218711A00, + 0x00000001FAA3B500, + 0x00000001DCD65000, + 0x00000001BF08EB00, + 0x00000001A13B8600, + 0x00000001836E2100, + 0x0000000165A0BC00, + 0x0000000147D35700, + 0x000000012A05F200, + 0x000000010C388D00, + 0xEE6B2800, + 0xD09DC300, + 0xC4B20100, + 0xB8C63F00, + 0xACDA7D00, + 0xA0EEBB00, + 0x9502F900, + 0x89173700, + 0x7D2B7500, + 0x713FB300, + 0x6553F100, + 0x59682F00, + 0x4D7C6D00, + 0x4190AB00, + 0x35A4E900, + 0x29B92700, + 0x1DCD6500, + 0x17D78400, + 0x11E1A300, + 0x0BEBC200, + 0x05F5E100, + Zero + } + }, + + Package (0x05) + { + "PSTATE_SET", + 0x02, + One, + "NRT_BANDWIDTH", + Package (0x28) + { + "PSTATE", + Zero, + 0x00000002CB417800, + 0x00000002AD741300, + 0x000000028FA6AE00, + 0x0000000271D94900, + 0x00000002540BE400, + 0x00000002363E7F00, + 0x0000000218711A00, + 0x00000001FAA3B500, + 0x00000001DCD65000, + 0x00000001BF08EB00, + 0x00000001A13B8600, + 0x00000001836E2100, + 0x0000000165A0BC00, + 0x0000000147D35700, + 0x000000012A05F200, + 0x000000010C388D00, + 0xEE6B2800, + 0xD09DC300, + 0xC4B20100, + 0xB8C63F00, + 0xACDA7D00, + 0xA0EEBB00, + 0x9502F900, + 0x89173700, + 0x7D2B7500, + 0x713FB300, + 0x6553F100, + 0x59682F00, + 0x4D7C6D00, + 0x4190AB00, + 0x35A4E900, + 0x29B92700, + 0x1DCD6500, + 0x17D78400, + 0x11E1A300, + 0x0BEBC200, + 0x05F5E100, + Zero + } + } + }, + + Package (0x06) + { + "COMPONENT", + One, + Package (0x05) + { + "PSTATE_SET", + Zero, + One, + "HF0_UNCOMP_BANDWIDTH", + Package (0x08) + { + "PSTATE", + Zero, + 0x4190AB00, + 0x17D78400, + 0x11E1A300, + 0x0BEBC200, + 0x05F5E100, + Zero + } + }, + + Package (0x05) + { + "PSTATE_SET", + One, + One, + "HF0_BANDWIDTH", + Package (0x08) + { + "PSTATE", + Zero, + 0x4190AB00, + 0x17D78400, + 0x11E1A300, + 0x0BEBC200, + 0x05F5E100, + Zero + } + }, + + Package (0x05) + { + "PSTATE_SET", + 0x02, + One, + "NRT_UNCOMP_BANDWIDTH", + Package (0x08) + { + "PSTATE", + Zero, + 0x4190AB00, + 0x17D78400, + 0x11E1A300, + 0x0BEBC200, + 0x05F5E100, + Zero + } + }, + + Package (0x05) + { + "PSTATE_SET", + 0x03, + One, + "NRT_BANDWIDTH", + Package (0x08) + { + "PSTATE", + Zero, + 0x4190AB00, + 0x17D78400, + 0x11E1A300, + 0x0BEBC200, + 0x05F5E100, + Zero + } + } + } + }) + Return (EBUF) /* \_SB_.CAMP.PERF.EBUF */ + } + } + + // + // CAMERA SENSOR + // + Device (CAMS) + { + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.MPCS + }) + Name (_HID, "QCOM0245") // _HID: Hardware ID + Name (_UID, 0x15) // _UID: Unique ID + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + + Method (SCFG, 0, Serialized) + { + Return (Package (0x01) + { + Package (0x05) + { + "com.qti.sensormodule.powerlogics_s5k4h5yc.bin", + "com.qti.tuned.powerlogics_s5k4h5yc.bin", + 0x0015006E, + 0x485B0000, + Zero + } + }) + } + + Name (PGID, Buffer (0x0A) + { + "\\_SB.CAMS" + }) + 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) + } + + Method (_S2D, 0, NotSerialized) // _S2D: S2 Device State + { + Return (0x03) + } + + Method (_S3D, 0, NotSerialized) // _S3D: S3 Device State + { + Return (0x03) + } + + Method (_PS0, 0, NotSerialized) // _PS0: Power State 0 + { + DEID = Buffer (ESNL){} + DVAL = Zero + DEID = PGID /* \_SB_.CAMS.PGID */ + If (\_SB.ABD.AVBL) + { + \_SB.PEP0.FLD0 = DBUF /* \_SB_.CAMS.DBUF */ + } + } + + Method (_PS3, 0, NotSerialized) // _PS3: Power State 3 + { + DEID = Buffer (ESNL){} + DVAL = 0x03 + DEID = PGID /* \_SB_.CAMS.PGID */ + If (\_SB.ABD.AVBL) + { + \_SB.PEP0.FLD0 = DBUF /* \_SB_.CAMS.DBUF */ + } + } + } + + Device (CAMF) + { + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.MPCS + }) + Name (_HID, "QCOM024A") // _HID: Hardware ID + Name (_UID, 0x1A) // _UID: Unique ID + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + + Method (SCFG, 0, Serialized) + { + Return (Package (0x01) + { + Package (0x05) + { + "com.qti.sensormodule.hnt_s5k5e3yx.bin", + "com.qti.tuned.hnt_s5k5e3yx.bin", + 0x00150020, + 0x5E300000, + Zero + } + }) + } + + Name (PGID, Buffer (0x0A) + { + "\\_SB.CAMF" + }) + 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) + } + + Method (_S2D, 0, NotSerialized) // _S2D: S2 Device State + { + Return (0x03) + } + + Method (_S3D, 0, NotSerialized) // _S3D: S3 Device State + { + Return (0x03) + } + + Method (_PS0, 0, NotSerialized) // _PS0: Power State 0 + { + DEID = Buffer (ESNL){} + DVAL = Zero + DEID = PGID /* \_SB_.CAMF.PGID */ + If (\_SB.ABD.AVBL) + { + \_SB.PEP0.FLD0 = DBUF /* \_SB_.CAMF.DBUF */ + } + } + + Method (_PS3, 0, NotSerialized) // _PS3: Power State 3 + { + DEID = Buffer (ESNL){} + DVAL = 0x03 + DEID = PGID /* \_SB_.CAMF.PGID */ + If (\_SB.ABD.AVBL) + { + \_SB.PEP0.FLD0 = DBUF /* \_SB_.CAMF.DBUF */ + } + } + } + + Device (CAMI) + { + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.MPCS + }) + Name (_HID, "QCOM0247") // _HID: Hardware ID + Name (_UID, 0x1C) // _UID: Unique ID + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (Zero) + } + + Method (SCFG, 0, Serialized) + { + Return (Package (0x01) + { + Package (0x05) + { + "com.qti.sensormodule.tfc_ov7251.bin", + "com.qti.tuned.liteon_ov7251.bin", + 0x001500C0, + 0x7750300A, + Zero + } + }) + } + + Name (PGID, Buffer (0x0A) + { + "\\_SB.CAMI" + }) + 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) + } + + Method (_S2D, 0, NotSerialized) // _S2D: S2 Device State + { + Return (0x03) + } + + Method (_S3D, 0, NotSerialized) // _S3D: S3 Device State + { + Return (0x03) + } + + Method (_PS0, 0, NotSerialized) // _PS0: Power State 0 + { + DEID = Buffer (ESNL){} + DVAL = Zero + DEID = PGID /* \_SB_.CAMI.PGID */ + If (\_SB.ABD.AVBL) + { + \_SB.PEP0.FLD0 = DBUF /* \_SB_.CAMI.DBUF */ + } + } + + Method (_PS3, 0, NotSerialized) // _PS3: Power State 3 + { + DEID = Buffer (ESNL){} + DVAL = 0x03 + DEID = PGID /* \_SB_.CAMI.PGID */ + If (\_SB.ABD.AVBL) + { + \_SB.PEP0.FLD0 = DBUF /* \_SB_.CAMI.DBUF */ + } + } + } + + Device (FLSH) + { + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.CAMP + }) + Name (_HID, "QCOM025C") // _HID: Hardware ID + Name (_UID, 0x19) // _UID: Unique ID + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (Zero) + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, Buffer (0x02) + { + 0x79, 0x00 // y. + }) + Return (RBUF) /* \_SB_.FLSH._CRS.RBUF */ + } + } + + Device (MPCS) + { + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.CAMP + }) + Name (_HID, "QCOM02E8") // _HID: Hardware ID + Name (_UID, 0x18) // _UID: Unique ID + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x0AC65000, // Address Base + 0x00000900, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x0AC66000, // Address Base + 0x00000900, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x0AC67000, // Address Base + 0x00000900, // Address Length + ) + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000001FD, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000001FE, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000001FF, + } + }) + Return (RBUF) /* \_SB_.MPCS._CRS.RBUF */ + } + } + + // + // Hardware JPEG Encoder + // + Device (JPGE) + { + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.CAMP, + \_SB.MMU0 + }) + Name (_HID, "QCOM0276") // _HID: Hardware ID + Name (_UID, 0x17) // _UID: Unique ID + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x0AC4E000, // Address Base + 0x00000340, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x0AC52000, // Address Base + 0x000001B4, // Address Length + ) + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000001FA, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000001FB, + } + }) + Return (RBUF) /* \_SB_.JPGE._CRS.RBUF */ + } + + Method (PERF, 0, NotSerialized) + { + Name (EBUF, Package (0x02) + { + Package (0x03) + { + "COMPONENT", + Zero, + Package (0x05) + { + "PSTATE_SET", + Zero, + Zero, + "JPEG0_CLK", + Package (0x06) + { + "PSTATE", + Zero, + 0x23C34600, + 0x23C34600, + 0x18148D00, + 0x0BEBC200 + } + } + }, + + Package (0x03) + { + "COMPONENT", + One, + Package (0x05) + { + "PSTATE_SET", + Zero, + Zero, + "DMA_CLK", + Package (0x05) + { + "PSTATE", + Zero, + 0x23C34600, + 0x23C34600, + 0x0BEBC200 + } + } + } + }) + Return (EBUF) /* \_SB_.JPGE.PERF.EBUF */ + } + } + + Device (VFE0) + { + Name (_DEP, Package (0x03) // _DEP: Dependencies + { + \_SB.MMU0, + \_SB.PEP0, + \_SB.CAMP + }) + Name (_HID, "QCOM0243") // _HID: Hardware ID + Name (_UID, 0x16) // _UID: Unique ID + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + Memory32Fixed (ReadWrite, + 0x0AC00000, // Address Base + 0x00020000, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x0AC48000, // Address Base + 0x00001000, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x0AC5A000, // Address Base + 0x00004000, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x0AC6B000, // Address Base + 0x00001000, // Address Length + ) + Memory32Fixed (ReadOnly, + 0x0AC6F000, // Address Base + 0x00008000, // Address Length + ) + Memory32Fixed (ReadOnly, + 0x0AC87000, // Address Base + 0x0000A000, // Address Length + ) + Memory32Fixed (ReadOnly, + 0x0AC91000, // Address Base + 0x0000A000, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x0ACAF000, // Address Base + 0x00005000, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x0ACB6000, // Address Base + 0x00005000, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x0ACC4000, // Address Base + 0x00005000, // Address Length + ) + Memory32Fixed (ReadWrite, + 0x8BF00000, // Address Base + 0x00500000, // Address Length + ) + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000001ED, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000001EF, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000001F1, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000001F3, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000001F5, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000001EE, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000001F0, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000001F2, + } + Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, ) + { + 0x000001F4, + } + }) + Return (RBUF) /* \_SB_.VFE0._CRS.RBUF */ + } + + Method (PERF, 0, NotSerialized) + { + Name (EBUF, Package (0x08) + { + Package (0x05) + { + "COMPONENT", + Zero, + Package (0x05) + { + "PSTATE_SET", + Zero, + Zero, + "IFE0_CLK", + Package (0x06) + { + "PSTATE", + Zero, + 0x23C34600, + 0x1C9C3800, + 0x18148D00, + Zero + } + }, + + Package (0x05) + { + "PSTATE_SET", + One, + One, + "HF0_UNCOMP_BANDWIDTH", + Package (0x20) + { + "PSTATE", + Zero, + 0x00000008D8F9FC00, + 0x0000000826299E00, + 0x0000000684EE1800, + 0x000000055AE82600, + 0x00000004A817C800, + 0x00000003B9ACA000, + 0x0000000342770C00, + 0x00000002CB417800, + 0xEE6B2800, + 0xD09DC300, + 0xC4B20100, + 0xB8C63F00, + 0xACDA7D00, + 0xA0EEBB00, + 0x9502F900, + 0x89173700, + 0x7D2B7500, + 0x713FB300, + 0x6553F100, + 0x59682F00, + 0x4D7C6D00, + 0x4190AB00, + 0x35A4E900, + 0x29B92700, + 0x1DCD6500, + 0x17D78400, + 0x11E1A300, + 0x0BEBC200, + 0x05F5E100, + Zero + } + }, + + Package (0x05) + { + "PSTATE_SET", + 0x02, + One, + "HF0_BANDWIDTH", + Package (0x20) + { + "PSTATE", + Zero, + 0x00000008D8F9FC00, + 0x0000000826299E00, + 0x0000000684EE1800, + 0x000000055AE82600, + 0x00000004A817C800, + 0x00000003B9ACA000, + 0x0000000342770C00, + 0x00000002CB417800, + 0xEE6B2800, + 0xD09DC300, + 0xC4B20100, + 0xB8C63F00, + 0xACDA7D00, + 0xA0EEBB00, + 0x9502F900, + 0x89173700, + 0x7D2B7500, + 0x713FB300, + 0x6553F100, + 0x59682F00, + 0x4D7C6D00, + 0x4190AB00, + 0x35A4E900, + 0x29B92700, + 0x1DCD6500, + 0x17D78400, + 0x11E1A300, + 0x0BEBC200, + 0x05F5E100, + Zero + } + } + }, + + Package (0x05) + { + "COMPONENT", + One, + Package (0x05) + { + "PSTATE_SET", + Zero, + Zero, + "IFE1_CLK", + Package (0x06) + { + "PSTATE", + Zero, + 0x23C34600, + 0x1C9C3800, + 0x18148D00, + Zero + } + }, + + Package (0x05) + { + "PSTATE_SET", + One, + One, + "HF1_UNCOMP_BANDWIDTH", + Package (0x20) + { + "PSTATE", + Zero, + 0x00000008D8F9FC00, + 0x0000000826299E00, + 0x0000000684EE1800, + 0x000000055AE82600, + 0x00000004A817C800, + 0x00000003B9ACA000, + 0x0000000342770C00, + 0x00000002CB417800, + 0xEE6B2800, + 0xD09DC300, + 0xC4B20100, + 0xB8C63F00, + 0xACDA7D00, + 0xA0EEBB00, + 0x9502F900, + 0x89173700, + 0x7D2B7500, + 0x713FB300, + 0x6553F100, + 0x59682F00, + 0x4D7C6D00, + 0x4190AB00, + 0x35A4E900, + 0x29B92700, + 0x1DCD6500, + 0x17D78400, + 0x11E1A300, + 0x0BEBC200, + 0x05F5E100, + Zero + } + }, + + Package (0x05) + { + "PSTATE_SET", + 0x02, + One, + "HF1_BANDWIDTH", + Package (0x20) + { + "PSTATE", + Zero, + 0x00000008D8F9FC00, + 0x0000000826299E00, + 0x0000000684EE1800, + 0x000000055AE82600, + 0x00000004A817C800, + 0x00000003B9ACA000, + 0x0000000342770C00, + 0x00000002CB417800, + 0xEE6B2800, + 0xD09DC300, + 0xC4B20100, + 0xB8C63F00, + 0xACDA7D00, + 0xA0EEBB00, + 0x9502F900, + 0x89173700, + 0x7D2B7500, + 0x713FB300, + 0x6553F100, + 0x59682F00, + 0x4D7C6D00, + 0x4190AB00, + 0x35A4E900, + 0x29B92700, + 0x1DCD6500, + 0x17D78400, + 0x11E1A300, + 0x0BEBC200, + 0x05F5E100, + Zero + } + } + }, + + Package (0x03) + { + "COMPONENT", + 0x02, + Package (0x05) + { + "PSTATE_SET", + Zero, + Zero, + "IFE_LITE_CLK", + Package (0x06) + { + "PSTATE", + Zero, + 0x23C34600, + 0x1C9C3800, + 0x18148D00, + Zero + } + } + }, + + Package (0x03) + { + "COMPONENT", + 0x03, + Package (0x05) + { + "PSTATE_SET", + Zero, + Zero, + "ICP_CLK", + Package (0x05) + { + "PSTATE", + Zero, + 0x23C34600, + 0x17D78400, + Zero + } + } + }, + + Package (0x04) + { + "COMPONENT", + 0x04, + Package (0x05) + { + "PSTATE_SET", + Zero, + Zero, + "IPE0_CLK", + Package (0x06) + { + "PSTATE", + Zero, + 0x23C34600, + 0x1C9C3800, + 0x18148D00, + Zero + } + }, + + Package (0x05) + { + "PSTATE_SET", + One, + Zero, + "IPE1_CLK", + Package (0x06) + { + "PSTATE", + Zero, + 0x23C34600, + 0x1C9C3800, + 0x18148D00, + Zero + } + } + }, + + Package (0x03) + { + "COMPONENT", + 0x05, + Package (0x05) + { + "PSTATE_SET", + Zero, + Zero, + "BPS_CLK", + Package (0x06) + { + "PSTATE", + Zero, + 0x23C34600, + 0x1C9C3800, + 0x18148D00, + Zero + } + } + }, + + Package (0x03) + { + "COMPONENT", + 0x06, + Package (0x05) + { + "PSTATE_SET", + Zero, + Zero, + "LRME_CLK", + Package (0x06) + { + "PSTATE", + Zero, + 0x17D78400, + 0x1312D000, + 0x10089D40, + Zero + } + } + }, + + Package (0x03) + { + "COMPONENT", + 0x07, + Package (0x05) + { + "PSTATE_SET", + Zero, + Zero, + "FD_CLK", + Package (0x06) + { + "PSTATE", + Zero, + 0x23C34600, + 0x20113A80, + 0x17D78400, + Zero + } + } + } + }) + Return (EBUF) /* \_SB_.VFE0.PERF.EBUF */ + } + } + + Scope (\_SB) + { + Name (GRST, Zero) + } + + // Qualcomm Sensor Collection + Device (SEN2) + { + Name (_DEP, Package (0x03) // _DEP: Dependencies + { + \_SB.IPC0, + \_SB.SCSS, + \_SB.ARPC + }) + Name (_HID, "QCOM0308") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_CID, "QCOM02A2") // _CID: Compatible ID + } + + Device (ALS1) + { + Name (_ADR, Zero) // _ADR: Address + Name (_HID, "SAM0204") // _HID: Hardware ID + Name (_UID, One) // _UID: Unique ID + Name (_DEP, Package (0x01) // _DEP: Dependencies + { + \_SB.I2C3 + }) + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + I2cSerialBusV2 (0x0029, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.I2C3", + 0x00, ResourceConsumer, , Exclusive, + ) + }) + Return (RBUF) /* \_SB_.ALS1._CRS.RBUF */ + } + + Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method + { + If ((Arg0 == ToUUID ("518808e9-2eb8-42d3-b5e3-b135f94343c9"))) + { + If ((Arg2 == Zero)) + { + Return (Buffer (One) + { + 0x03 // . + }) + } + + If ((Arg2 == One)) + { + Return (Buffer (0xEC) + { + /* 0000 */ 0x80, 0x13, 0x81, 0xDA, 0x82, 0x00, 0x83, 0x00, // ........ + /* 0008 */ 0x84, 0x00, 0x85, 0x00, 0x86, 0x00, 0x87, 0x02, // ........ + /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF, 0x05, 0x00, 0x00, 0x00, // ........ + /* 0018 */ 0x01, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00, // ........ + /* 0020 */ 0x03, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, // .... ... + /* 0028 */ 0x06, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, // ....(... + /* 0030 */ 0x0A, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, // ....2... + /* 0038 */ 0x13, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00, // ....<... + /* 0040 */ 0x25, 0x00, 0x00, 0x00, 0x46, 0x00, 0x00, 0x00, // %...F... + /* 0048 */ 0x47, 0x00, 0x00, 0x00, 0x50, 0x00, 0x00, 0x00, // G...P... + /* 0050 */ 0x88, 0x00, 0x00, 0x00, 0x5A, 0x00, 0x00, 0x00, // ....Z... + /* 0058 */ 0x04, 0x01, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, // ....d... + /* 0060 */ 0xF4, 0x01, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, // ........ + /* 0068 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // ........ + /* 0070 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xA9, 0xF1, 0x3E, // .......> + /* 0078 */ 0x7B, 0x14, 0xA2, 0x40, 0x52, 0xB8, 0x02, 0x41, // {..@R..A + /* 0080 */ 0x52, 0xB8, 0x3E, 0x3F, 0x17, 0xD9, 0x16, 0x40, // R.>?...@ + /* 0088 */ 0x1F, 0x85, 0x1B, 0x40, 0x21, 0xB0, 0x82, 0x3F, // ...@!..? + /* 0090 */ 0xB0, 0x72, 0xB8, 0x3F, 0x5E, 0xBA, 0x99, 0x3F, // .r.?^..? + /* 0098 */ 0x00, 0x00, 0x60, 0x40, 0x08, 0xAC, 0x9C, 0x3E, // ..`@...> + /* 00A0 */ 0x0E, 0x2D, 0xB2, 0x3D, 0xFF, 0xFF, 0xFF, 0xFF, // .-.=.... + /* 00A8 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // ........ + /* 00B0 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // ........ + /* 00B8 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // ........ + /* 00C0 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // ........ + /* 00C8 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // ........ + /* 00D0 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // ........ + /* 00D8 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // ........ + /* 00E0 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // ........ + /* 00E8 */ 0xFF, 0xFF, 0xFF, 0xFF // .... + }) + } + } + Else + { + Return (Buffer (One) + { + 0x00 // . + }) + } + } + } + + Device (SAR1) + { + Name (_ADR, Zero) // _ADR: Address + Name (_HID, "SAM0207") // _HID: Hardware ID + Name (_UID, One) // _UID: Unique ID + Name (_DEP, Package (0x01) // _DEP: Dependencies + { + \_SB.I2C5 + }) + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + I2cSerialBusV2 (0x002C, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.I2C5", + 0x00, ResourceConsumer, , Exclusive, + ) + GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0054 + } + }) + Return (RBUF) /* \_SB_.SAR1._CRS.RBUF */ + } + + Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method + { + If ((Arg0 == ToUUID ("37305404-87d8-4117-b665-c877ec1ce7db"))) + { + If ((Arg2 == Zero)) + { + Return (Buffer (One) + { + 0x3F // ? + }) + } + + If ((Arg2 == One)) + { + Return (Buffer (0x40) + { + /* 0000 */ 0x10, 0x0F, 0x05, 0x60, 0x11, 0x28, 0x27, 0x07, // ...`.('. + /* 0008 */ 0x28, 0x00, 0x29, 0x00, 0x2A, 0x00, 0x2B, 0x04, // (.).*.+. + /* 0010 */ 0x31, 0x09, 0x33, 0x20, 0x35, 0x14, 0x36, 0x08, // 1.3 5.6. + /* 0018 */ 0x37, 0x1A, 0x4A, 0x40, 0x4D, 0x04, 0x06, 0x00, // 7.J@M... + /* 0020 */ 0x07, 0x80, 0x2D, 0x08, 0xFF, 0xFF, 0xFF, 0xFF, // ..-..... + /* 0028 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // ........ + /* 0030 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // ........ + /* 0038 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF // ........ + }) + } + + If ((Arg2 == 0x02)) + { + Return (Buffer (One) + { + 0x01 // . + }) + } + + If ((Arg2 == 0x03)) + { + While (One) + { + Name (_T_0, 0x00) // _T_x: Emitted by ASL Compiler + _T_0 = ToInteger (\_SB.GRST) + If ((_T_0 == Zero)) + { + Return (Buffer (0x04) + { + 0x00 // . + }) + } + ElseIf ((_T_0 == One)) + { + Return (Buffer (0x04) + { + 0x01 // . + }) + } + ElseIf ((_T_0 == 0x02)) + { + Return (Buffer (0x04) + { + 0x02 // . + }) + } + ElseIf ((_T_0 == 0x03)) + { + Return (Buffer (0x04) + { + 0x03 // . + }) + } + ElseIf ((_T_0 == 0x04)) + { + Return (Buffer (0x04) + { + 0x04 // . + }) + } + ElseIf ((_T_0 == 0x05)) + { + Return (Buffer (0x04) + { + 0x05 // . + }) + } + ElseIf ((_T_0 == 0x06)) + { + Return (Buffer (0x04) + { + 0x06 // . + }) + } + ElseIf ((_T_0 == 0x07)) + { + Return (Buffer (0x04) + { + 0x07 // . + }) + } + ElseIf ((_T_0 == 0x08)) + { + Return (Buffer (0x04) + { + 0x08 // . + }) + } + ElseIf ((_T_0 == 0x09)) + { + Return (Buffer (0x04) + { + 0x09 // . + }) + } + ElseIf ((_T_0 == 0x0A)) + { + Return (Buffer (0x04) + { + 0x0A // . + }) + } + ElseIf ((_T_0 == 0x0B)) + { + Return (Buffer (0x04) + { + 0x0B // . + }) + } + ElseIf ((_T_0 == 0x0C)) + { + Return (Buffer (0x04) + { + 0x0C // . + }) + } + ElseIf ((_T_0 == 0x0D)) + { + Return (Buffer (0x04) + { + 0x0D // . + }) + } + ElseIf ((_T_0 == 0x0E)) + { + Return (Buffer (0x04) + { + 0x0E // . + }) + } + ElseIf ((_T_0 == 0x0F)) + { + Return (Buffer (0x04) + { + 0x0F // . + }) + } + + Break + } + } + + If ((Arg2 == 0x04)) + { + ADBG ("Grip1 WORKING!") + \_SB.GRST |= One + While (One) + { + Name (_T_1, 0x00) // _T_x: Emitted by ASL Compiler + _T_1 = ToInteger (\_SB.GRST) + If ((_T_1 == Zero)) + { + Return (Buffer (0x04) + { + 0x00 // . + }) + } + ElseIf ((_T_1 == One)) + { + Return (Buffer (0x04) + { + 0x01 // . + }) + } + ElseIf ((_T_1 == 0x02)) + { + Return (Buffer (0x04) + { + 0x02 // . + }) + } + ElseIf ((_T_1 == 0x03)) + { + Return (Buffer (0x04) + { + 0x03 // . + }) + } + ElseIf ((_T_1 == 0x04)) + { + Return (Buffer (0x04) + { + 0x04 // . + }) + } + ElseIf ((_T_1 == 0x05)) + { + Return (Buffer (0x04) + { + 0x05 // . + }) + } + ElseIf ((_T_1 == 0x06)) + { + Return (Buffer (0x04) + { + 0x06 // . + }) + } + ElseIf ((_T_1 == 0x07)) + { + Return (Buffer (0x04) + { + 0x07 // . + }) + } + ElseIf ((_T_1 == 0x08)) + { + Return (Buffer (0x04) + { + 0x08 // . + }) + } + ElseIf ((_T_1 == 0x09)) + { + Return (Buffer (0x04) + { + 0x09 // . + }) + } + ElseIf ((_T_1 == 0x0A)) + { + Return (Buffer (0x04) + { + 0x0A // . + }) + } + ElseIf ((_T_1 == 0x0B)) + { + Return (Buffer (0x04) + { + 0x0B // . + }) + } + ElseIf ((_T_1 == 0x0C)) + { + Return (Buffer (0x04) + { + 0x0C // . + }) + } + ElseIf ((_T_1 == 0x0D)) + { + Return (Buffer (0x04) + { + 0x0D // . + }) + } + ElseIf ((_T_1 == 0x0E)) + { + Return (Buffer (0x04) + { + 0x0E // . + }) + } + ElseIf ((_T_1 == 0x0F)) + { + Return (Buffer (0x04) + { + 0x0F // . + }) + } + + Break + } + } + + If ((Arg2 == 0x05)) + { + ADBG ("Grip1 RELEASE!") + \_SB.GRST &= ~One + While (One) + { + Name (_T_2, 0x00) // _T_x: Emitted by ASL Compiler + _T_2 = ToInteger (\_SB.GRST) + If ((_T_2 == Zero)) + { + Return (Buffer (0x04) + { + 0x00 // . + }) + } + ElseIf ((_T_2 == One)) + { + Return (Buffer (0x04) + { + 0x01 // . + }) + } + ElseIf ((_T_2 == 0x02)) + { + Return (Buffer (0x04) + { + 0x02 // . + }) + } + ElseIf ((_T_2 == 0x03)) + { + Return (Buffer (0x04) + { + 0x03 // . + }) + } + ElseIf ((_T_2 == 0x04)) + { + Return (Buffer (0x04) + { + 0x04 // . + }) + } + ElseIf ((_T_2 == 0x05)) + { + Return (Buffer (0x04) + { + 0x05 // . + }) + } + ElseIf ((_T_2 == 0x06)) + { + Return (Buffer (0x04) + { + 0x06 // . + }) + } + ElseIf ((_T_2 == 0x07)) + { + Return (Buffer (0x04) + { + 0x07 // . + }) + } + ElseIf ((_T_2 == 0x08)) + { + Return (Buffer (0x04) + { + 0x08 // . + }) + } + ElseIf ((_T_2 == 0x09)) + { + Return (Buffer (0x04) + { + 0x09 // . + }) + } + ElseIf ((_T_2 == 0x0A)) + { + Return (Buffer (0x04) + { + 0x0A // . + }) + } + ElseIf ((_T_2 == 0x0B)) + { + Return (Buffer (0x04) + { + 0x0B // . + }) + } + ElseIf ((_T_2 == 0x0C)) + { + Return (Buffer (0x04) + { + 0x0C // . + }) + } + ElseIf ((_T_2 == 0x0D)) + { + Return (Buffer (0x04) + { + 0x0D // . + }) + } + ElseIf ((_T_2 == 0x0E)) + { + Return (Buffer (0x04) + { + 0x0E // . + }) + } + ElseIf ((_T_2 == 0x0F)) + { + Return (Buffer (0x04) + { + 0x0F // . + }) + } + + Break + } + } + + If ((Arg2 == 0x06)) + { + ADBG ("Disp ON by Grip1") + ADBG (Concatenate ("GRST: ", ToHexString (\_SB.GRST))) + If ((\_SB.GRST == Zero)) + { + ADBG ("GRST is Already 0") + Return (Buffer (One) + { + 0x00 // . + }) + } + Else + { + \_SB.GRST = Zero + ADBG ("Set GRST to 0") + ADBG (Concatenate ("GRST: ", ToHexString (\_SB.GRST))) + ADBG ("LID Close noti") + \_SB.LID0.LIDB = Zero + Notify (\_SB.LID0, 0x80) // Status Change + ADBG ("Grip1 Sleep 500") + Sleep (0x01F4) + ADBG ("LID Open noti") + \_SB.LID0.LIDB = One + Notify (\_SB.LID0, 0x80) // Status Change + Return (Buffer (One) + { + 0x01 // . + }) + } + } + } + Else + { + Return (Buffer (One) + { + 0x00 // . + }) + } + } + } + + Device (SAR2) + { + Name (_ADR, Zero) // _ADR: Address + Name (_HID, "SAM0207") // _HID: Hardware ID + Name (_UID, 0x02) // _UID: Unique ID + Name (_DEP, Package (0x01) // _DEP: Dependencies + { + \_SB.IC11 + }) + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + I2cSerialBusV2 (0x0028, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.IC11", + 0x00, ResourceConsumer, , Exclusive, + ) + GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x004F + } + }) + Return (RBUF) /* \_SB_.SAR2._CRS.RBUF */ + } + + Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method + { + If ((Arg0 == ToUUID ("37305404-87d8-4117-b665-c877ec1ce7db"))) + { + If ((Arg2 == Zero)) + { + Return (Buffer (One) + { + 0x3F // ? + }) + } + + If ((Arg2 == One)) + { + Return (Buffer (0x40) + { + /* 0000 */ 0x10, 0x16, 0x05, 0x60, 0x11, 0x28, 0x27, 0x07, // ...`.('. + /* 0008 */ 0x28, 0x00, 0x29, 0x00, 0x2A, 0x00, 0x2B, 0x04, // (.).*.+. + /* 0010 */ 0x33, 0x20, 0x35, 0x14, 0x36, 0x08, 0x37, 0x28, // 3 5.6.7( + /* 0018 */ 0x4A, 0x40, 0x4D, 0x04, 0x06, 0x00, 0x07, 0x80, // J@M..... + /* 0020 */ 0x2D, 0x08, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // -....... + /* 0028 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // ........ + /* 0030 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // ........ + /* 0038 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF // ........ + }) + } + + If ((Arg2 == 0x02)) + { + Return (Buffer (One) + { + 0x02 // . + }) + } + + If ((Arg2 == 0x03)) + { + While (One) + { + Name (_T_0, 0x00) // _T_x: Emitted by ASL Compiler + _T_0 = ToInteger (\_SB.GRST) + If ((_T_0 == Zero)) + { + Return (Buffer (0x04) + { + 0x00 // . + }) + } + ElseIf ((_T_0 == One)) + { + Return (Buffer (0x04) + { + 0x01 // . + }) + } + ElseIf ((_T_0 == 0x02)) + { + Return (Buffer (0x04) + { + 0x02 // . + }) + } + ElseIf ((_T_0 == 0x03)) + { + Return (Buffer (0x04) + { + 0x03 // . + }) + } + ElseIf ((_T_0 == 0x04)) + { + Return (Buffer (0x04) + { + 0x04 // . + }) + } + ElseIf ((_T_0 == 0x05)) + { + Return (Buffer (0x04) + { + 0x05 // . + }) + } + ElseIf ((_T_0 == 0x06)) + { + Return (Buffer (0x04) + { + 0x06 // . + }) + } + ElseIf ((_T_0 == 0x07)) + { + Return (Buffer (0x04) + { + 0x07 // . + }) + } + ElseIf ((_T_0 == 0x08)) + { + Return (Buffer (0x04) + { + 0x08 // . + }) + } + ElseIf ((_T_0 == 0x09)) + { + Return (Buffer (0x04) + { + 0x09 // . + }) + } + ElseIf ((_T_0 == 0x0A)) + { + Return (Buffer (0x04) + { + 0x0A // . + }) + } + ElseIf ((_T_0 == 0x0B)) + { + Return (Buffer (0x04) + { + 0x0B // . + }) + } + ElseIf ((_T_0 == 0x0C)) + { + Return (Buffer (0x04) + { + 0x0C // . + }) + } + ElseIf ((_T_0 == 0x0D)) + { + Return (Buffer (0x04) + { + 0x0D // . + }) + } + ElseIf ((_T_0 == 0x0E)) + { + Return (Buffer (0x04) + { + 0x0E // . + }) + } + ElseIf ((_T_0 == 0x0F)) + { + Return (Buffer (0x04) + { + 0x0F // . + }) + } + + Break + } + } + + If ((Arg2 == 0x04)) + { + ADBG ("Grip2 WORKING!") + \_SB.GRST |= 0x02 + While (One) + { + Name (_T_1, 0x00) // _T_x: Emitted by ASL Compiler + _T_1 = ToInteger (\_SB.GRST) + If ((_T_1 == Zero)) + { + Return (Buffer (0x04) + { + 0x00 // . + }) + } + ElseIf ((_T_1 == One)) + { + Return (Buffer (0x04) + { + 0x01 // . + }) + } + ElseIf ((_T_1 == 0x02)) + { + Return (Buffer (0x04) + { + 0x02 // . + }) + } + ElseIf ((_T_1 == 0x03)) + { + Return (Buffer (0x04) + { + 0x03 // . + }) + } + ElseIf ((_T_1 == 0x04)) + { + Return (Buffer (0x04) + { + 0x04 // . + }) + } + ElseIf ((_T_1 == 0x05)) + { + Return (Buffer (0x04) + { + 0x05 // . + }) + } + ElseIf ((_T_1 == 0x06)) + { + Return (Buffer (0x04) + { + 0x06 // . + }) + } + ElseIf ((_T_1 == 0x07)) + { + Return (Buffer (0x04) + { + 0x07 // . + }) + } + ElseIf ((_T_1 == 0x08)) + { + Return (Buffer (0x04) + { + 0x08 // . + }) + } + ElseIf ((_T_1 == 0x09)) + { + Return (Buffer (0x04) + { + 0x09 // . + }) + } + ElseIf ((_T_1 == 0x0A)) + { + Return (Buffer (0x04) + { + 0x0A // . + }) + } + ElseIf ((_T_1 == 0x0B)) + { + Return (Buffer (0x04) + { + 0x0B // . + }) + } + ElseIf ((_T_1 == 0x0C)) + { + Return (Buffer (0x04) + { + 0x0C // . + }) + } + ElseIf ((_T_1 == 0x0D)) + { + Return (Buffer (0x04) + { + 0x0D // . + }) + } + ElseIf ((_T_1 == 0x0E)) + { + Return (Buffer (0x04) + { + 0x0E // . + }) + } + ElseIf ((_T_1 == 0x0F)) + { + Return (Buffer (0x04) + { + 0x0F // . + }) + } + + Break + } + } + + If ((Arg2 == 0x05)) + { + ADBG ("Grip2 RELEASE!") + \_SB.GRST &= ~0x02 + While (One) + { + Name (_T_2, 0x00) // _T_x: Emitted by ASL Compiler + _T_2 = ToInteger (\_SB.GRST) + If ((_T_2 == Zero)) + { + Return (Buffer (0x04) + { + 0x00 // . + }) + } + ElseIf ((_T_2 == One)) + { + Return (Buffer (0x04) + { + 0x01 // . + }) + } + ElseIf ((_T_2 == 0x02)) + { + Return (Buffer (0x04) + { + 0x02 // . + }) + } + ElseIf ((_T_2 == 0x03)) + { + Return (Buffer (0x04) + { + 0x03 // . + }) + } + ElseIf ((_T_2 == 0x04)) + { + Return (Buffer (0x04) + { + 0x04 // . + }) + } + ElseIf ((_T_2 == 0x05)) + { + Return (Buffer (0x04) + { + 0x05 // . + }) + } + ElseIf ((_T_2 == 0x06)) + { + Return (Buffer (0x04) + { + 0x06 // . + }) + } + ElseIf ((_T_2 == 0x07)) + { + Return (Buffer (0x04) + { + 0x07 // . + }) + } + ElseIf ((_T_2 == 0x08)) + { + Return (Buffer (0x04) + { + 0x08 // . + }) + } + ElseIf ((_T_2 == 0x09)) + { + Return (Buffer (0x04) + { + 0x09 // . + }) + } + ElseIf ((_T_2 == 0x0A)) + { + Return (Buffer (0x04) + { + 0x0A // . + }) + } + ElseIf ((_T_2 == 0x0B)) + { + Return (Buffer (0x04) + { + 0x0B // . + }) + } + ElseIf ((_T_2 == 0x0C)) + { + Return (Buffer (0x04) + { + 0x0C // . + }) + } + ElseIf ((_T_2 == 0x0D)) + { + Return (Buffer (0x04) + { + 0x0D // . + }) + } + ElseIf ((_T_2 == 0x0E)) + { + Return (Buffer (0x04) + { + 0x0E // . + }) + } + ElseIf ((_T_2 == 0x0F)) + { + Return (Buffer (0x04) + { + 0x0F // . + }) + } + + Break + } + } + + If ((Arg2 == 0x06)) + { + ADBG ("Disp ON by Grip2") + ADBG (Concatenate ("GRST: ", ToHexString (\_SB.GRST))) + If ((\_SB.GRST == Zero)) + { + ADBG ("GRST is Already 0") + Return (Buffer (One) + { + 0x00 // . + }) + } + Else + { + \_SB.GRST = Zero + ADBG ("Set GRST to 0") + ADBG (Concatenate ("GRST: ", ToHexString (\_SB.GRST))) + ADBG ("LID Close noti") + \_SB.LID0.LIDB = Zero + Notify (\_SB.LID0, 0x80) // Status Change + ADBG ("Grip2 Sleep 500") + Sleep (0x01F4) + ADBG ("LID Open noti") + \_SB.LID0.LIDB = One + Notify (\_SB.LID0, 0x80) // Status Change + Return (Buffer (One) + { + 0x01 // . + }) + } + } + } + Else + { + Return (Buffer (One) + { + 0x00 // . + }) + } + } + } + + Device (SAR3) + { + Name (_ADR, Zero) // _ADR: Address + Name (_HID, "SAM0207") // _HID: Hardware ID + Name (_UID, 0x03) // _UID: Unique ID + Name (_DEP, Package (0x01) // _DEP: Dependencies + { + \_SB.I2C5 + }) + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + I2cSerialBusV2 (0x0028, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.I2C5", + 0x00, ResourceConsumer, , Exclusive, + ) + GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0073 + } + }) + Return (RBUF) /* \_SB_.SAR3._CRS.RBUF */ + } + + Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method + { + If ((Arg0 == ToUUID ("37305404-87d8-4117-b665-c877ec1ce7db"))) + { + If ((Arg2 == Zero)) + { + Return (Buffer (One) + { + 0x3F // ? + }) + } + + If ((Arg2 == One)) + { + Return (Buffer (0x40) + { + /* 0000 */ 0x10, 0x16, 0x05, 0x60, 0x11, 0x28, 0x27, 0x7F, // ...`.('. + /* 0008 */ 0x28, 0x00, 0x29, 0x00, 0x2A, 0x00, 0x2B, 0x04, // (.).*.+. + /* 0010 */ 0x33, 0x20, 0x35, 0x14, 0x36, 0x08, 0x37, 0x1D, // 3 5.6.7. + /* 0018 */ 0x4A, 0x40, 0x4D, 0x04, 0x06, 0x00, 0x07, 0x80, // J@M..... + /* 0020 */ 0x2D, 0x08, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // -....... + /* 0028 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // ........ + /* 0030 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // ........ + /* 0038 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF // ........ + }) + } + + If ((Arg2 == 0x02)) + { + Return (Buffer (One) + { + 0x03 // . + }) + } + + If ((Arg2 == 0x03)) + { + While (One) + { + Name (_T_0, 0x00) // _T_x: Emitted by ASL Compiler + _T_0 = ToInteger (\_SB.GRST) + If ((_T_0 == Zero)) + { + Return (Buffer (0x04) + { + 0x00 // . + }) + } + ElseIf ((_T_0 == One)) + { + Return (Buffer (0x04) + { + 0x01 // . + }) + } + ElseIf ((_T_0 == 0x02)) + { + Return (Buffer (0x04) + { + 0x02 // . + }) + } + ElseIf ((_T_0 == 0x03)) + { + Return (Buffer (0x04) + { + 0x03 // . + }) + } + ElseIf ((_T_0 == 0x04)) + { + Return (Buffer (0x04) + { + 0x04 // . + }) + } + ElseIf ((_T_0 == 0x05)) + { + Return (Buffer (0x04) + { + 0x05 // . + }) + } + ElseIf ((_T_0 == 0x06)) + { + Return (Buffer (0x04) + { + 0x06 // . + }) + } + ElseIf ((_T_0 == 0x07)) + { + Return (Buffer (0x04) + { + 0x07 // . + }) + } + ElseIf ((_T_0 == 0x08)) + { + Return (Buffer (0x04) + { + 0x08 // . + }) + } + ElseIf ((_T_0 == 0x09)) + { + Return (Buffer (0x04) + { + 0x09 // . + }) + } + ElseIf ((_T_0 == 0x0A)) + { + Return (Buffer (0x04) + { + 0x0A // . + }) + } + ElseIf ((_T_0 == 0x0B)) + { + Return (Buffer (0x04) + { + 0x0B // . + }) + } + ElseIf ((_T_0 == 0x0C)) + { + Return (Buffer (0x04) + { + 0x0C // . + }) + } + ElseIf ((_T_0 == 0x0D)) + { + Return (Buffer (0x04) + { + 0x0D // . + }) + } + ElseIf ((_T_0 == 0x0E)) + { + Return (Buffer (0x04) + { + 0x0E // . + }) + } + ElseIf ((_T_0 == 0x0F)) + { + Return (Buffer (0x04) + { + 0x0F // . + }) + } + + Break + } + } + + If ((Arg2 == 0x04)) + { + ADBG ("Grip3 WORKING!") + \_SB.GRST |= 0x04 + While (One) + { + Name (_T_1, 0x00) // _T_x: Emitted by ASL Compiler + _T_1 = ToInteger (\_SB.GRST) + If ((_T_1 == Zero)) + { + Return (Buffer (0x04) + { + 0x00 // . + }) + } + ElseIf ((_T_1 == One)) + { + Return (Buffer (0x04) + { + 0x01 // . + }) + } + ElseIf ((_T_1 == 0x02)) + { + Return (Buffer (0x04) + { + 0x02 // . + }) + } + ElseIf ((_T_1 == 0x03)) + { + Return (Buffer (0x04) + { + 0x03 // . + }) + } + ElseIf ((_T_1 == 0x04)) + { + Return (Buffer (0x04) + { + 0x04 // . + }) + } + ElseIf ((_T_1 == 0x05)) + { + Return (Buffer (0x04) + { + 0x05 // . + }) + } + ElseIf ((_T_1 == 0x06)) + { + Return (Buffer (0x04) + { + 0x06 // . + }) + } + ElseIf ((_T_1 == 0x07)) + { + Return (Buffer (0x04) + { + 0x07 // . + }) + } + ElseIf ((_T_1 == 0x08)) + { + Return (Buffer (0x04) + { + 0x08 // . + }) + } + ElseIf ((_T_1 == 0x09)) + { + Return (Buffer (0x04) + { + 0x09 // . + }) + } + ElseIf ((_T_1 == 0x0A)) + { + Return (Buffer (0x04) + { + 0x0A // . + }) + } + ElseIf ((_T_1 == 0x0B)) + { + Return (Buffer (0x04) + { + 0x0B // . + }) + } + ElseIf ((_T_1 == 0x0C)) + { + Return (Buffer (0x04) + { + 0x0C // . + }) + } + ElseIf ((_T_1 == 0x0D)) + { + Return (Buffer (0x04) + { + 0x0D // . + }) + } + ElseIf ((_T_1 == 0x0E)) + { + Return (Buffer (0x04) + { + 0x0E // . + }) + } + ElseIf ((_T_1 == 0x0F)) + { + Return (Buffer (0x04) + { + 0x0F // . + }) + } + + Break + } + } + + If ((Arg2 == 0x05)) + { + ADBG ("Grip3 RELEASE!") + \_SB.GRST &= ~0x04 + While (One) + { + Name (_T_2, 0x00) // _T_x: Emitted by ASL Compiler + _T_2 = ToInteger (\_SB.GRST) + If ((_T_2 == Zero)) + { + Return (Buffer (0x04) + { + 0x00 // . + }) + } + ElseIf ((_T_2 == One)) + { + Return (Buffer (0x04) + { + 0x01 // . + }) + } + ElseIf ((_T_2 == 0x02)) + { + Return (Buffer (0x04) + { + 0x02 // . + }) + } + ElseIf ((_T_2 == 0x03)) + { + Return (Buffer (0x04) + { + 0x03 // . + }) + } + ElseIf ((_T_2 == 0x04)) + { + Return (Buffer (0x04) + { + 0x04 // . + }) + } + ElseIf ((_T_2 == 0x05)) + { + Return (Buffer (0x04) + { + 0x05 // . + }) + } + ElseIf ((_T_2 == 0x06)) + { + Return (Buffer (0x04) + { + 0x06 // . + }) + } + ElseIf ((_T_2 == 0x07)) + { + Return (Buffer (0x04) + { + 0x07 // . + }) + } + ElseIf ((_T_2 == 0x08)) + { + Return (Buffer (0x04) + { + 0x08 // . + }) + } + ElseIf ((_T_2 == 0x09)) + { + Return (Buffer (0x04) + { + 0x09 // . + }) + } + ElseIf ((_T_2 == 0x0A)) + { + Return (Buffer (0x04) + { + 0x0A // . + }) + } + ElseIf ((_T_2 == 0x0B)) + { + Return (Buffer (0x04) + { + 0x0B // . + }) + } + ElseIf ((_T_2 == 0x0C)) + { + Return (Buffer (0x04) + { + 0x0C // . + }) + } + ElseIf ((_T_2 == 0x0D)) + { + Return (Buffer (0x04) + { + 0x0D // . + }) + } + ElseIf ((_T_2 == 0x0E)) + { + Return (Buffer (0x04) + { + 0x0E // . + }) + } + ElseIf ((_T_2 == 0x0F)) + { + Return (Buffer (0x04) + { + 0x0F // . + }) + } + + Break + } + } + + If ((Arg2 == 0x06)) + { + ADBG ("Disp ON by Grip3") + ADBG (Concatenate ("GRST: ", ToHexString (\_SB.GRST))) + If ((\_SB.GRST == Zero)) + { + ADBG ("GRST is Already 0") + Return (Buffer (One) + { + 0x00 // . + }) + } + Else + { + \_SB.GRST = Zero + ADBG ("Set GRST to 0") + ADBG (Concatenate ("GRST: ", ToHexString (\_SB.GRST))) + ADBG ("LID Close noti") + \_SB.LID0.LIDB = Zero + Notify (\_SB.LID0, 0x80) // Status Change + ADBG ("Grip3 Sleep 500") + Sleep (0x01F4) + ADBG ("LID Open noti") + \_SB.LID0.LIDB = One + Notify (\_SB.LID0, 0x80) // Status Change + Return (Buffer (One) + { + 0x01 // . + }) + } + } + } + Else + { + Return (Buffer (One) + { + 0x00 // . + }) + } + } + } + + Device (SAR4) + { + Name (_ADR, Zero) // _ADR: Address + Name (_HID, "SAM0207") // _HID: Hardware ID + Name (_UID, 0x04) // _UID: Unique ID + Name (_DEP, Package (0x01) // _DEP: Dependencies + { + \_SB.IC11 + }) + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + I2cSerialBusV2 (0x002C, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.IC11", + 0x00, ResourceConsumer, , Exclusive, + ) + GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0079 + } + }) + Return (RBUF) /* \_SB_.SAR4._CRS.RBUF */ + } + + Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method + { + If ((Arg0 == ToUUID ("37305404-87d8-4117-b665-c877ec1ce7db"))) + { + If ((Arg2 == Zero)) + { + Return (Buffer (One) + { + 0x3F // ? + }) + } + + If ((Arg2 == One)) + { + Return (Buffer (0x40) + { + /* 0000 */ 0x10, 0x0F, 0x05, 0x60, 0x11, 0x28, 0x27, 0x07, // ...`.('. + /* 0008 */ 0x28, 0x00, 0x29, 0x00, 0x2A, 0x00, 0x2B, 0x04, // (.).*.+. + /* 0010 */ 0x33, 0x20, 0x35, 0x14, 0x36, 0x08, 0x37, 0x1A, // 3 5.6.7. + /* 0018 */ 0x4A, 0x40, 0x4D, 0x04, 0x06, 0x00, 0x07, 0x80, // J@M..... + /* 0020 */ 0x2D, 0x08, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // -....... + /* 0028 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // ........ + /* 0030 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // ........ + /* 0038 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF // ........ + }) + } + + If ((Arg2 == 0x02)) + { + Return (Buffer (One) + { + 0x04 // . + }) + } + + If ((Arg2 == 0x03)) + { + While (One) + { + Name (_T_0, 0x00) // _T_x: Emitted by ASL Compiler + _T_0 = ToInteger (\_SB.GRST) + If ((_T_0 == Zero)) + { + Return (Buffer (0x04) + { + 0x00 // . + }) + } + ElseIf ((_T_0 == One)) + { + Return (Buffer (0x04) + { + 0x01 // . + }) + } + ElseIf ((_T_0 == 0x02)) + { + Return (Buffer (0x04) + { + 0x02 // . + }) + } + ElseIf ((_T_0 == 0x03)) + { + Return (Buffer (0x04) + { + 0x03 // . + }) + } + ElseIf ((_T_0 == 0x04)) + { + Return (Buffer (0x04) + { + 0x04 // . + }) + } + ElseIf ((_T_0 == 0x05)) + { + Return (Buffer (0x04) + { + 0x05 // . + }) + } + ElseIf ((_T_0 == 0x06)) + { + Return (Buffer (0x04) + { + 0x06 // . + }) + } + ElseIf ((_T_0 == 0x07)) + { + Return (Buffer (0x04) + { + 0x07 // . + }) + } + ElseIf ((_T_0 == 0x08)) + { + Return (Buffer (0x04) + { + 0x08 // . + }) + } + ElseIf ((_T_0 == 0x09)) + { + Return (Buffer (0x04) + { + 0x09 // . + }) + } + ElseIf ((_T_0 == 0x0A)) + { + Return (Buffer (0x04) + { + 0x0A // . + }) + } + ElseIf ((_T_0 == 0x0B)) + { + Return (Buffer (0x04) + { + 0x0B // . + }) + } + ElseIf ((_T_0 == 0x0C)) + { + Return (Buffer (0x04) + { + 0x0C // . + }) + } + ElseIf ((_T_0 == 0x0D)) + { + Return (Buffer (0x04) + { + 0x0D // . + }) + } + ElseIf ((_T_0 == 0x0E)) + { + Return (Buffer (0x04) + { + 0x0E // . + }) + } + ElseIf ((_T_0 == 0x0F)) + { + Return (Buffer (0x04) + { + 0x0F // . + }) + } + + Break + } + } + + If ((Arg2 == 0x04)) + { + ADBG ("Grip4 WORKING!") + \_SB.GRST |= 0x08 + While (One) + { + Name (_T_1, 0x00) // _T_x: Emitted by ASL Compiler + _T_1 = ToInteger (\_SB.GRST) + If ((_T_1 == Zero)) + { + Return (Buffer (0x04) + { + 0x00 // . + }) + } + ElseIf ((_T_1 == One)) + { + Return (Buffer (0x04) + { + 0x01 // . + }) + } + ElseIf ((_T_1 == 0x02)) + { + Return (Buffer (0x04) + { + 0x02 // . + }) + } + ElseIf ((_T_1 == 0x03)) + { + Return (Buffer (0x04) + { + 0x03 // . + }) + } + ElseIf ((_T_1 == 0x04)) + { + Return (Buffer (0x04) + { + 0x04 // . + }) + } + ElseIf ((_T_1 == 0x05)) + { + Return (Buffer (0x04) + { + 0x05 // . + }) + } + ElseIf ((_T_1 == 0x06)) + { + Return (Buffer (0x04) + { + 0x06 // . + }) + } + ElseIf ((_T_1 == 0x07)) + { + Return (Buffer (0x04) + { + 0x07 // . + }) + } + ElseIf ((_T_1 == 0x08)) + { + Return (Buffer (0x04) + { + 0x08 // . + }) + } + ElseIf ((_T_1 == 0x09)) + { + Return (Buffer (0x04) + { + 0x09 // . + }) + } + ElseIf ((_T_1 == 0x0A)) + { + Return (Buffer (0x04) + { + 0x0A // . + }) + } + ElseIf ((_T_1 == 0x0B)) + { + Return (Buffer (0x04) + { + 0x0B // . + }) + } + ElseIf ((_T_1 == 0x0C)) + { + Return (Buffer (0x04) + { + 0x0C // . + }) + } + ElseIf ((_T_1 == 0x0D)) + { + Return (Buffer (0x04) + { + 0x0D // . + }) + } + ElseIf ((_T_1 == 0x0E)) + { + Return (Buffer (0x04) + { + 0x0E // . + }) + } + ElseIf ((_T_1 == 0x0F)) + { + Return (Buffer (0x04) + { + 0x0F // . + }) + } + + Break + } + } + + If ((Arg2 == 0x05)) + { + ADBG ("Grip4 RELEASE!") + \_SB.GRST &= ~0x08 + While (One) + { + Name (_T_2, 0x00) // _T_x: Emitted by ASL Compiler + _T_2 = ToInteger (\_SB.GRST) + If ((_T_2 == Zero)) + { + Return (Buffer (0x04) + { + 0x00 // . + }) + } + ElseIf ((_T_2 == One)) + { + Return (Buffer (0x04) + { + 0x01 // . + }) + } + ElseIf ((_T_2 == 0x02)) + { + Return (Buffer (0x04) + { + 0x02 // . + }) + } + ElseIf ((_T_2 == 0x03)) + { + Return (Buffer (0x04) + { + 0x03 // . + }) + } + ElseIf ((_T_2 == 0x04)) + { + Return (Buffer (0x04) + { + 0x04 // . + }) + } + ElseIf ((_T_2 == 0x05)) + { + Return (Buffer (0x04) + { + 0x05 // . + }) + } + ElseIf ((_T_2 == 0x06)) + { + Return (Buffer (0x04) + { + 0x06 // . + }) + } + ElseIf ((_T_2 == 0x07)) + { + Return (Buffer (0x04) + { + 0x07 // . + }) + } + ElseIf ((_T_2 == 0x08)) + { + Return (Buffer (0x04) + { + 0x08 // . + }) + } + ElseIf ((_T_2 == 0x09)) + { + Return (Buffer (0x04) + { + 0x09 // . + }) + } + ElseIf ((_T_2 == 0x0A)) + { + Return (Buffer (0x04) + { + 0x0A // . + }) + } + ElseIf ((_T_2 == 0x0B)) + { + Return (Buffer (0x04) + { + 0x0B // . + }) + } + ElseIf ((_T_2 == 0x0C)) + { + Return (Buffer (0x04) + { + 0x0C // . + }) + } + ElseIf ((_T_2 == 0x0D)) + { + Return (Buffer (0x04) + { + 0x0D // . + }) + } + ElseIf ((_T_2 == 0x0E)) + { + Return (Buffer (0x04) + { + 0x0E // . + }) + } + ElseIf ((_T_2 == 0x0F)) + { + Return (Buffer (0x04) + { + 0x0F // . + }) + } + + Break + } + } + + If ((Arg2 == 0x06)) + { + ADBG ("Disp ON by Grip4") + ADBG (Concatenate ("GRST: ", ToHexString (\_SB.GRST))) + If ((\_SB.GRST == Zero)) + { + ADBG ("GRST is Already 0") + Return (Buffer (One) + { + 0x00 // . + }) + } + Else + { + \_SB.GRST = Zero + ADBG ("Set GRST to 0") + ADBG (Concatenate ("GRST: ", ToHexString (\_SB.GRST))) + ADBG ("LID Close noti") + \_SB.LID0.LIDB = Zero + Notify (\_SB.LID0, 0x80) // Status Change + ADBG ("Grip4 Sleep 500") + Sleep (0x01F4) + ADBG ("LID Open noti") + \_SB.LID0.LIDB = One + Notify (\_SB.LID0, 0x80) // Status Change + Return (Buffer (One) + { + 0x01 // . + }) + } + } + } + Else + { + Return (Buffer (One) + { + 0x00 // . + }) + } + } + } + + Device (LED1) + { + Name (_ADR, Zero) // _ADR: Address + Name (_HID, "SAM0608") // _HID: Hardware ID + Name (_UID, One) // _UID: Unique ID + Name (_DEP, Package (0x01) // _DEP: Dependencies + { + \_SB.I2C3 + }) + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + I2cSerialBusV2 (0x0030, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.I2C3", + 0x00, ResourceConsumer, , Exclusive, + ) + }) + Return (RBUF) /* \_SB_.LED1._CRS.RBUF */ + } + + Name (LEDR, Zero) + Method (RLED, 2, Serialized) + { + If ((Arg1 == One)) + { + LEDR |= Arg0 + } + Else + { + Local0 = ~Arg0 + LEDR &= Local0 + } + + ADBG (Concatenate ("LEDR=", ToHexString (LEDR))) + Notify (\_SB.LED1, 0x80) // Status Change + } + + Method (GLED, 0, NotSerialized) + { + Return (LEDR) /* \_SB_.LED1.LEDR */ + } + + Method (SLED, 1, NotSerialized) + { + LEDR = Arg0 + Return (Zero) + } + + Name (RGBC, Zero) + Method (GLCR, 0, NotSerialized) + { + RGBC |= 0x06 + RGBC |= 0x0200 + RGBC |= 0x00170000 + Return (RGBC) /* \_SB_.LED1.RGBC */ + } + } + + Device (LID0) + { + Name (_HID, "PNP0C0D" /* Lid Device */) // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (LIDB, One) + Method (_LID, 0, NotSerialized) // _LID: Lid Status + { + Return (LIDB) /* \_SB_.LID0.LIDB */ + } + } + + Method (ADDR, 0, NotSerialized) + { + If ((\_SB.SVMJ == One)) + { + Return (0x0390B000) + } + ElseIf ((\_SB.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 (SAMO) + { + Name (_HID, "SAM0101") // _HID: Hardware ID + Name (_CID, "SAM0101") // _CID: Compatible ID + Name (_SUB, "C153144D") // _SUB: Subsystem ID + Name (_UID, Zero) // _UID: Unique ID + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.I2C4, + \_SB.GIO0 + }) + Name (AVBL, Zero) + Method (_REG, 2, NotSerialized) // _REG: Region Availability + { + If ((Arg0 == 0x9A)) + { + ^AVBL = Arg1 + } + } + + Method (_STA, 0, NotSerialized) // _STA: Status + { + Local0 = 0x0F + Return (Local0) + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + I2cSerialBusV2 (0x002C, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.I2C4", + 0x00, ResourceConsumer, , Exclusive, + ) + GpioInt (Edge, ActiveHigh, Exclusive, PullNone, 0x1388, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x001D + } + }) + Return (RBUF) /* \_SB_.SAMO._CRS.RBUF */ + } + } + } + + Scope (\_SB.SAMO) + { + OperationRegion (SMOP, 0x9A, Zero, One) + Field (SMOP, ByteAcc, Lock, Preserve) + { + BRLV, 8 + } + } + +#if 0 + Scope (\_SB) + { + Device (SAFI) + { + Name (_HID, "SAM0701") // _HID: Hardware ID + Name (_CID, "SAM0701") // _CID: Compatible ID + Name (_SUB, "C153144D") // _SUB: Subsystem ID + Name (_DDN, "Samsung Firmware Interface") // _DDN: DOS Device Name + Name (_UID, One) // _UID: Unique ID + Name (AVBL, Zero) + Method (_REG, 2, NotSerialized) // _REG: Region Availability + { + If ((Arg0 == 0x9F)) + { + ^AVBL = Arg1 + } + } + + Method (_STA, 0, NotSerialized) // _STA: Status + { + Local0 = 0x0F + Return (Local0) + } + + OperationRegion (ECM2, 0x9F, Zero, 0x38) + Field (ECM2, ByteAcc, Lock, Preserve) + { + ELG0, 8, + ELG1, 8, + ELG2, 8, + ELG3, 8, + ELG4, 8, + ELG5, 8, + ELG6, 8, + ELG7, 8, + ELG8, 8, + ELG9, 8, + AAAA, 128, + MADD, 32, + MVAL, 32 + } + + Method (OPID, 0, NotSerialized) + { + Local0 = One + Return (0x9F) + } + + Method (GCAP, 0, NotSerialized) + { + Local0 = Zero + Return (Local0) + } + + Method (PCAP, 1, NotSerialized) + { + Return (Zero) + } + + Method (PRNT, 1, Serialized) + { + If ((\_SB.SAFI.AVBL == One)) + { + AAAA = Arg0 + Notify (\_SB.SAFI, 0x89) // Device-Specific + } + } + + Method (SABM, 0, Serialized) + { + Return (Zero) + } + + Event (DSEV) + Method (DSBB, 1, Serialized) + { + Return (Zero) + } + + Method (DSBE, 0, Serialized) + { + Return (Zero) + } + + Method (CHTY, 0, Serialized) + { + Local0 = \_SB.EMEC.CHTY + Return (Local0) + } + + Name (UCNP, Package (0x04) + { + Zero, + Zero, + Zero, + Zero + }) + Method (TRSD, 1, NotSerialized) + { + Name (RBUF, Package (0x04) + { + 0x70, + Zero, + 0x70, + Zero + }) + Return (RBUF) /* \_SB_.SAFI.TRSD.RBUF */ + } + + Method (GUCN, 1, Serialized) + { + If ((\_SB.EMEC.AVBL == One)) + { + If ((Arg0 == One)) + { + UCNP [Zero] = Zero + UCNP [One] = \_SB.EMEC.CCST + UCNP [0x02] = \_SB.EMEC.HPDS + UCNP [0x03] = \_SB.EMEC.PINA + } + + If ((Arg0 == 0x02)) + { + UCNP [Zero] = Zero + UCNP [One] = \_SB.EMEC.CCS2 + UCNP [0x02] = \_SB.EMEC.HPD2 + UCNP [0x03] = \_SB.EMEC.PIN2 + } + } + Else + { + ADBG ("EMECNotReady") + } + + Return (UCNP) /* \_SB_.SAFI.UCNP */ + } + + Method (SLED, 1, Serialized) + { + Local0 = 0x02 + \_SB.LED1.RLED (Local0, Arg0) + Return (Zero) + } + } + } + + Scope (\_SB) + { + Device (SIC2) + { + Name (_HID, "SWI2CD1") // _HID: Hardware ID + Name (_DDN, "SW I2C") // _DDN: DOS Device Name + Name (_UID, 0x02) // _UID: Unique ID + Method (_STA, 0, NotSerialized) // _STA: Status + { + Local0 = Zero + Return (Local0) + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionNone, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x005E + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionNone, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x005D + } + }) + Return (RBUF) /* \_SB_.SIC2._CRS.RBUF */ + } + + Method (SI2C, 0, NotSerialized) + { + Name (CFG0, Package (0x0D) + { + 0x03D5E004, + 0x03D5D004, + 0x03D5E004, + 0x03D5D004, + 0x03D5E000, + 0x03D5D000, + 0x03D5E000, + 0x03D5D000, + 0x0200, + 0x0200, + Zero, + 0x04, + 0x02 + }) + Return (CFG0) /* \_SB_.SIC2.SI2C.CFG0 */ + } + } + } +#endif + +#if 0 + Scope (\_SB) + { + Device (EMEC) + { + Name (_HID, "SAM0604") // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_SUB, "C153144D") // _SUB: Subsystem ID + Name (_DEP, Package (0x06) // _DEP: Dependencies + { + \_SB.I2C1, + \_SB.IC13, + \_SB.IC15, + \_SB.I2C8, + \_SB.GIO0, + \_SB.PM01 + }) + Name (AVBL, Zero) + Method (_REG, 2, NotSerialized) // _REG: Region Availability + { + If ((Arg0 == 0x9C)) + { + AVBL = Arg1 + } + } + + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBF1, ResourceTemplate () + { + I2cSerialBusV2 (0x0033, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.IC13", + 0x00, ResourceConsumer, , Exclusive, + ) + I2cSerialBusV2 (0x0025, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.IC15", + 0x00, ResourceConsumer, , Exclusive, + ) + I2cSerialBusV2 (0x0009, ControllerInitiated, 0x000186A0, + AddressingMode7Bit, "\\_SB.I2C8", + 0x00, ResourceConsumer, , Exclusive, + ) + I2cSerialBusV2 (0x000B, ControllerInitiated, 0x000186A0, + AddressingMode7Bit, "\\_SB.I2C8", + 0x00, ResourceConsumer, , Exclusive, + ) + I2cSerialBusV2 (0x001A, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.IC13", + 0x00, ResourceConsumer, , Exclusive, + ) + GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x001A + } + GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x002C + } + GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x007A + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0026 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0050 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0067 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.PM01", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0080 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.PM01", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0084 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0018 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0068 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0024 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.PM01", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x008E + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.PM01", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0090 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x003D + } + }) + Name (RBF2, ResourceTemplate () + { + I2cSerialBusV2 (0x0033, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.IC13", + 0x00, ResourceConsumer, , Exclusive, + ) + I2cSerialBusV2 (0x0025, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.IC15", + 0x00, ResourceConsumer, , Exclusive, + ) + I2cSerialBusV2 (0x0009, ControllerInitiated, 0x000186A0, + AddressingMode7Bit, "\\_SB.I2C8", + 0x00, ResourceConsumer, , Exclusive, + ) + I2cSerialBusV2 (0x000B, ControllerInitiated, 0x000186A0, + AddressingMode7Bit, "\\_SB.I2C8", + 0x00, ResourceConsumer, , Exclusive, + ) + I2cSerialBusV2 (0x001A, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.IC13", + 0x00, ResourceConsumer, , Exclusive, + ) + I2cSerialBusV2 (0x0033, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.I2C1", + 0x00, ResourceConsumer, , Exclusive, + ) + I2cSerialBusV2 (0x0025, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.I2C1", + 0x00, ResourceConsumer, , Exclusive, + ) + I2cSerialBusV2 (0x0008, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.IC15", + 0x00, ResourceConsumer, , Exclusive, + ) + GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0140 + } + GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x002C + } + GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x01C0 + } + GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0200 + } + GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0034 + } + GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0033 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0026 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0050 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0067 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.PM01", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0080 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.PM01", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0084 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0018 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0068 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0024 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.PM01", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x008E + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionNone, + "\\_SB.PM01", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0090 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x003D + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0007 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x004E + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0025 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x004D + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.PM01", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0086 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.PM01", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0083 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x000B + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0072 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x003F + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0045 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0053 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x005C + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0010 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionInputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0016 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0023 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0009 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0028 + } + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0002 + } + }) + If ((BDRV == One)) + { + Return (RBF1) /* \_SB_.EMEC._CRS.RBF1 */ + } + Else + { + Return (RBF2) /* \_SB_.EMEC._CRS.RBF2 */ + } + } + + Name (CVER, 0x03) + Method (GVER, 0, NotSerialized) + { + Local0 = CVER /* \_SB_.EMEC.CVER */ + Return (Local0) + } + + Name (BDRV, 0x02) + Method (GBDR, 0, NotSerialized) + { + Local0 = 0x05 + Return (Local0) + } + + Method (GBPV, 0, NotSerialized) + { + Local0 = \_SB.MDID + Return (Local0) + } + } + } + + Scope (\_SB.EMEC) + { + OperationRegion (EMOP, 0x9C, Zero, 0x0100) + Field (EMOP, DWordAcc, NoLock, Preserve) + { + DRL1, 8, + DRL2, 8, + Offset (0x04), + PRL1, 8, + PRL2, 8, + Offset (0x08), + CHST, 32, + SOC, 32, + VOLT, 32, + CHGC, 32, + CHTY, 32, + Offset (0x80), + CCST, 32, + HSFL, 32, + HPDS, 32, + PINA, 32, + HPDB, 32, + Offset (0xA0), + CCS2, 32, + HPD2, 32, + PIN2, 32 + } + + Method (CBLN, 1, NotSerialized) + { + If ((Arg0 == One)) + { + Notify (\_SB.UCME, 0x80) // Status Change + Notify (\_SB.SAFI, 0xA4) // Device-Specific + } + + If ((Arg0 == 0x02)) + { + Notify (\_SB.SAFI, 0xA4) // Device-Specific + } + + Return (Zero) + } + + Method (PCCD, 1, NotSerialized) + { + ADBG (Concatenate ("PCCD=", ToHexString (Arg0))) + If ((Arg0 == 0x02)) + { + Return (Zero) + } + + \_SB.CCST = \_SB.EMEC.CCST + \_SB.HSFL = \_SB.EMEC.HSFL + Return (Zero) + } + + Method (PHPD, 1, NotSerialized) + { + ADBG (Concatenate ("PHPD=", ToHexString (Arg0))) + If ((Arg0 == 0x02)) + { + Return (Zero) + } + +#if 0 + \_SB.HPDS = \_SB.EMEC.HPDS + \_SB.PINA = \_SB.EMEC.PINA + \_SB.HPDB = \_SB.EMEC.HPDB + Notify (\_SB.GPU0, \_SB.HPDB) +#endif + Return (Zero) + } + + Method (HPDF, 3, NotSerialized) + { + \_SB.HPDS = Arg0 + \_SB.PINA = Arg1 + \_SB.HPDB = Arg2 +#if 0 + Notify (\_SB.GPU0, \_SB.HPDB) +#endif + } + + Method (CCOT, 2, NotSerialized) + { + \_SB.CCST = Arg0 + \_SB.HSFL = Arg1 + } + + Method (PLDR, 1, NotSerialized) + { + Local0 = Zero + \_SB.LED1.RLED (0xF0, Zero) + If ((CHST == 0x05)) + { + Local0 |= 0x20 + } + + If ((CHST == 0x11)) + { + Local0 |= 0x40 + } + + If ((CHST == 0x21)) + { + Local0 |= 0x10 + } + + If ((CHST == 0x40)) + { + Local0 |= 0x80 + } + + \_SB.LED1.RLED (Local0, Arg0) + Return (Zero) + } + + Method (PLID, 1, Serialized) + { + ADBG (Concatenate ("PLID=", ToHexString (Arg0))) + \_SB.LID0.LIDB = Arg0 + Notify (\_SB.LID0, 0x80) // Status Change + Return (\_SB.LID0.LIDB) + } + + Method (PHID, 1, Serialized) + { + ADBG (Concatenate ("PHID=", ToHexString (Arg0))) + Notify (\_SB.SVBI, Arg0) + Return (Zero) + } + + Method (PPGS, 1, Serialized) + { + ADBG (Concatenate ("PPGS=", ToHexString (Arg0))) + Notify (\_SB.SAFI, 0xA3) // Device-Specific + Return (Zero) + } + } + + Scope (\_SB) + { + Device (UCME) + { + Name (_HID, "SAM0605") // _HID: Hardware ID + Name (_CID, "SAM0605") // _CID: Compatible ID + Name (_SUB, "C153144D") // _SUB: Subsystem ID + Name (_DDN, "UCM Emulation") // _DDN: DOS Device Name + Name (_UID, One) // _UID: Unique ID + Name (AVBL, Zero) + Method (_REG, 2, NotSerialized) // _REG: Region Availability + { + If ((Arg0 == 0x9F)) + { + ^AVBL = Arg1 + } + } + + Method (_STA, 0, NotSerialized) // _STA: Status + { + Local0 = 0x0F + Return (Local0) + } + + Method (GDRO, 1, NotSerialized) + { + If ((Arg0 == One)) + { + Local0 = \_SB.EMEC.DRL1 + } + + If ((Arg0 == 0x02)) + { + Local0 = \_SB.EMEC.DRL2 + } + + Return (Local0) + } + + Method (GPRO, 1, NotSerialized) + { + If ((Arg0 == One)) + { + Local0 = \_SB.EMEC.PRL1 + } + + If ((Arg0 == 0x02)) + { + Local0 = \_SB.EMEC.PRL2 + } + + Return (Local0) + } + + Device (POR0) + { + 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 + }) + } + } + } + + Scope (\_SB) + { + Device (MCTL) + { + Name (_HID, "SAM0602") // _HID: Hardware ID + Name (_CID, "SAM0602") // _CID: Compatible ID + Name (_SUB, "C153144D") // _SUB: Subsystem ID + Name (_DDN, "ModemCtrl") // _DDN: DOS Device Name + Name (_UID, Zero) // _UID: Unique ID + Name (_DEP, Package (0x01) // _DEP: Dependencies + { + \_SB.PM01 + }) + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + GpioInt (Edge, ActiveHigh, SharedAndWake, PullNone, 0x0000, + "\\_SB.PM01", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0061 + } + }) + Return (RBUF) /* \_SB_.MCTL._CRS.RBUF */ + } + + Method (_STA, 0, NotSerialized) // _STA: Status + { + Local0 = 0x0F + Return (Local0) + } + } + } + + Scope (\_SB) + { + Device (AGNT) + { + Name (_ADR, Zero) // _ADR: Address + Name (_HID, "SAM0603") // _HID: Hardware ID + Name (_CID, "SAM0603") // _CID: Compatible ID + Name (_SUB, "C153144D") // _SUB: Subsystem ID + Name (_UID, One) // _UID: Unique ID + Name (_STA, 0x0F) // _STA: Status + } + } +#endif + + + + Method (ADBG, 1, Serialized) + { + + } + + Name (HPDB, Zero) + Name (PINA, Zero) + Name (CCST, Buffer (One) + { + 0x02 // . + }) + Name (HSFL, Buffer (One) + { + 0x00 // . + }) + Name (USBC, Buffer (One) + { + 0x0B // . + }) + + //Name (QUFN, Zero) + Name (QUFN, One) + Name (DPP0, Buffer (One) + { + 0x00 // . + }) + + + Device (UCP0) + { + Name (_HID, "QCOM02D0") // _HID: Hardware ID + Name (_DEP, Package (0x03) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.PTCC, + \_SB.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, + 0x08, + Zero, + Zero + }) + Name (_DSD, Package (0x02) // _DSD: Device-Specific Data + { + ToUUID ("6b856e62-40f4-4688-bd46-5e888a2260de"), + 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 (0x01) // _T_x: Emitted by ASL Compiler + { + 0x00 // . + }) + CopyObject (ToBuffer (Arg0), _T_0) /* \_SB_.UCP0._DSM._T_0 */ + If ((_T_0 == ToUUID ("18de299f-9476-4fc9-b43b-8aeb713ed751"))) + { + 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 == 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, 0x00) // _T_x: Emitted by ASL Compiler + _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 + } + } + + Method (CCOT, 2, NotSerialized) + { + \_SB.CCST = Arg0 + \_SB.HSFL = Arg1 + } + + Method (CCVL, 0, NotSerialized) + { + Return (\_SB.CCST) + } + + Method (HPDS, 0, NotSerialized) + { + Notify (\_SB.GPU0, 0x94) // Device-Specific + } + + Method (HPDF, 2, NotSerialized) + { + \_SB.HPDB = Arg0 + \_SB.PINA = Arg1 + Notify (\_SB.GPU0, \_SB.HPDB) + } + + Method (HPDV, 0, NotSerialized) + { + Return (\_SB.HPDB) + } + + Method (PINV, 0, NotSerialized) + { + Return (\_SB.PINA) + } + } + + Device (URS0) + { + Method (URSI, 0, NotSerialized) + { + If ((QUFN == Zero)) + { + Return ("QCOM0304") + } + Else + { + Return ("QCOM0305") + } + } + + 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) + + }) + Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities + { + One, + 0x09, + Zero, + Zero + }) + Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings + { + 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, ,, ) + { + 0x00000209, + } + }) + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + + Method (DPM0, 1, NotSerialized) + { + DPP0 = Arg0 + Notify (PEP0, 0xA0) // Device-Specific + } + + Method (CCVL, 0, NotSerialized) + { + Return (CCST) /* \_SB_.CCST */ + } + + Method (HSEN, 0, NotSerialized) + { + Return (HSFL) /* \_SB_.HSFL */ + } + + Name (HSEI, ResourceTemplate () + { + GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionNone, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x003E + } + }) + Scope (^^GIO0) + { + OperationRegion (HLEN, GeneralPurposeIo, Zero, One) + } + + Field (^^GIO0.HLEN, ByteAcc, NoLock, Preserve) + { + Connection (HSEI), + MOD1, 1 + } + + Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method + { + While (One) + { + Name (_T_0, Buffer (One) // _T_x: Emitted by ASL Compiler + { + 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 + _T_1 = ToInteger (Arg2) + If ((_T_1 == Zero)) + { + While (One) + { + Name (_T_2, Zero) // _T_x: Emitted by ASL Compiler + _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"))) + { + While (One) + { + Name (_T_3, Zero) // _T_x: Emitted by ASL Compiler + _T_3 = ToInteger (Arg1) + If ((_T_3 == One)) + { + While (One) + { + Name (_T_4, Zero) // _T_x: Emitted by ASL Compiler + _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 + } + } + + Method (PHYC, 0, NotSerialized) + { + Name (CFG0, Package (0x01) + { + Package (0x03) + { + Zero, + 0x088E2198, + 0x20 + } + }) + Return (CFG0) /* \_SB_.URS0.USB0.PHYC.CFG0 */ + } + + Device (RHUB) + { + 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 + { + 0x00 // . + }) + CopyObject (ToBuffer (Arg0), _T_0) /* \_SB_.URS0.USB0.RHUB._DSM._T_0 */ + If ((_T_0 == ToUUID ("a9a82a56-95a1-4b4a-b014-3be47df1b7d5"))) + { + While (One) + { + Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler + _T_1 = ToInteger (Arg1) + If ((_T_1 == One)) + { + While (One) + { + Name (_T_2, Zero) // _T_x: Emitted by ASL Compiler + _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 + } + } + } + } + + 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) + + }) + Name (_UPC, Package (0x04) // _UPC: USB Port Capabilities + { + One, + 0x09, + Zero, + Zero + }) + Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings + { + Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, ) + { + 0x000000A5, + } + Interrupt (ResourceConsumer, Level, ActiveHigh, SharedAndWake, ,, ) + { + 0x000000A2, + } + }) + Method (CCVL, 0, NotSerialized) + { + Return (CCST) /* \_SB_.CCST */ + } + + Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method + { + While (One) + { + Name (_T_0, Buffer (One) // _T_x: Emitted by ASL Compiler + { + 0x00 // . + }) + CopyObject (ToBuffer (Arg0), _T_0) /* \_SB_.URS0.UFN0._DSM._T_0 */ + If ((_T_0 == ToUUID ("fe56cfeb-49d5-4378-a8a2-2978dbe54ad2"))) + { + While (One) + { + Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler + _T_1 = ToInteger (Arg2) + If ((_T_1 == Zero)) + { + While (One) + { + Name (_T_2, Zero) // _T_x: Emitted by ASL Compiler + _T_2 = ToInteger (Arg1) + If ((_T_2 == Zero)) + { + Return (Buffer (One) + { + 0x03 // . + }) + Break + } + Else + { + Return (Buffer (One) + { + 0x01 // . + }) + Break + } + + Break + } + + Return (Buffer (One) + { + 0x00 // . + }) + Break + } + ElseIf ((_T_1 == One)) + { + Return (0x20) + Break + } + Else + { + Return (Buffer (One) + { + 0x00 // . + }) + Break + } + + Break + } + } + ElseIf ((_T_0 == ToUUID ("18de299f-9476-4fc9-b43b-8aeb713ed751"))) + { + While (One) + { + Name (_T_3, Zero) // _T_x: Emitted by ASL Compiler + _T_3 = ToInteger (Arg2) + If ((_T_3 == Zero)) + { + While (One) + { + Name (_T_4, Zero) // _T_x: Emitted by ASL Compiler + _T_4 = ToInteger (Arg1) + If ((_T_4 == Zero)) + { + Return (Buffer (One) + { + 0x03 // . + }) + Break + } + Else + { + Return (Buffer (One) + { + 0x01 // . + }) + Break + } + + Break + } + + Return (Buffer (One) + { + 0x00 // . + }) + Break + } + ElseIf ((_T_3 == One)) + { + Return (0x39) + Break + } + Else + { + Return (Buffer (One) + { + 0x00 // . + }) + Break + } + + Break + } + } + Else + { + Return (Buffer (One) + { + 0x00 // . + }) + Break + } + + Break + } + } + + Method (PHYC, 0, NotSerialized) + { + Name (CFG0, Package (0x12) + { + /*Package (0x03) + { + Zero, + 0x088E2198, + 0x20 + }*/ + + Package (0x03) { Zero, 0x088E2210, 0x23 }, + Package (0x03) { Zero, 0x088E2004, 0x03 }, + Package (0x03) { Zero, 0x088E218c, 0x7c }, + Package (0x03) { Zero, 0x088E202c, 0x80 }, + Package (0x03) { Zero, 0x088E2184, 0x0a }, + Package (0x03) { Zero, 0x088E20b4, 0x19 }, + Package (0x03) { Zero, 0x088E2194, 0x40 }, + Package (0x03) { Zero, 0x088E2198, 0x28 }, + Package (0x03) { Zero, 0x088E2214, 0x21 }, + Package (0x03) { Zero, 0x088E2220, 0x00 }, + Package (0x03) { Zero, 0x088E2224, 0x58 }, + Package (0x03) { Zero, 0x088E2240, 0x35 }, + Package (0x03) { Zero, 0x088E2244, 0x29 }, + Package (0x03) { Zero, 0x088E2248, 0xca }, + Package (0x03) { Zero, 0x088E224c, 0x04 }, + Package (0x03) { Zero, 0x088E2250, 0x03 }, + Package (0x03) { Zero, 0x088E223c, 0x00 }, + Package (0x03) { Zero, 0x088E2210, 0x22 } + }) + Return (CFG0) /* \_SB_.URS0.UFN0.PHYC.CFG0 */ + } + } + } + + + Device (TSC1) + { + Name (_HID, "MSHW1003") // _HID: Hardware ID + Name (_UID, One) // _UID: Unique ID + Name (_DEP, Package (0x03) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.GIO0, + \_SB.IC13 + }) + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + I2cSerialBusV2 (0x0020, 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 (INFO, 0, NotSerialized) + { + Name (RBUF, Buffer (0x04) + { + 0x0F, 0x01, 0x00, 0x00 // .... + }) + Return (RBUF) + }*/ + + // PEP Proxy Support + Name (PGID, Buffer (0x0A) + { + "\\_SB.TSC1" + }) // Device ID buffer - PGID( Pep given ID ) + Name (DBUF, Buffer (DBFL){}) // Device ID buffer - PGID( Pep given ID ) + CreateByteField (DBUF, Zero, STAT) // STATUS 1 BYTE + // HIDDEN 1 BYTE ( SIZE ) + CreateByteField (DBUF, 0x02, DVAL) // Packet value, 1 BYTES Device Status + CreateField (DBUF, 0x18, 0xA0, DEID)// Device ID, 20 BYTES(160 Bits) + Method (_S1D, 0, NotSerialized) // _S1D: S1 Device State + { + Return (0x03) + } + + Method (_S2D, 0, NotSerialized) // _S2D: S2 Device State + { + Return (0x03) + } + + Method (_S3D, 0, NotSerialized) // _S3D: S3 Device State + { + Return (0x03) + } + + Method (_PS0, 0, NotSerialized) // _PS0: Power State 0 + { + DEID = Buffer (ESNL){} + DVAL = Zero + DEID = PGID /* \_SB_.TSC1.PGID */ + If (\_SB.ABD.AVBL) + { + \_SB.PEP0.FLD0 = DBUF /* \_SB_.TSC1.DBUF */ + } + } + + Method (_PS3, 0, NotSerialized) // _PS3: Power State 3 + { + DEID = Buffer (ESNL){} + DVAL = 0x03 + DEID = PGID /* \_SB_.TSC1.PGID */ + If (\_SB.ABD.AVBL) + { + \_SB.PEP0.FLD0 = DBUF /* \_SB_.TSC1.DBUF */ + } + } + } + + // CPU Aggregator Device -- Required for Thermal Parking + 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 + { + \_SB.PEP0.ROST = Arg2 + } + } + + /*Device (OPBT) + { + Name (_HID, "OPHW1001") + Name (_UID, One) // _UID: Unique ID + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.IC11 + }) + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + I2CSerialBus (0x55, ControllerInitiated, 100000, AddressingMode7Bit, "\\_SB.IC11", , ) + }) + Return (RBUF) + } + }*/ + + Device (OP3P) + { + Name (_HID, "QCOM2456") + Method (_CRS, 0x0, NotSerialized) { + Name (RBUF, ResourceTemplate () { + I2CSerialBus( 0x55, ControllerInitiated, 100000, AddressingMode7Bit, "\\_SB.IC11", , ) + }) + + Return (RBUF) + } // Number of args in CFG0 must match value of NUM_PMIC_3P_ACPI_ARGS 10 in PmicAcpi.c + Method (PMCF) { + Name (CFG0, + Package(){ + // Charger Info + 0, // I2c Index - Resource Index + 1, // Charger IC Type - PLAT_CONFIG_CHG_IC_SMB1360 + 1, // Charger Connector Type - PLAT_CONFIG_CHG_CONN_WALL + 1, // PMIC Watch Dog Timer On - PMIC_TRUE + 20, // PMIC Watch Dog Timer Seconds + + // Gauging Info + 0, // I2c Index - Gauge Resource Index + 2, // I2c Index - Gauge GPIO Expander Resource Index + 0, // Gauge GPIO Expander present + 1, // Gauge IC - PM_THIRD_PARTY_GAUGE_IC_SMB1360 + + // Battery Info + 1, // Battery Type - PLAT_CONFIG_BATT_CELL_TYPE_1S2P + + // GPIO Present + 0 // 0- GPIO not present, 1- GPIO present + }) + Return (CFG0) + } + } + + ThermalZone (TZ0) + { + Name (_HID, "QCOM02B0") // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_TZD, Package (0x04) // _TZD: Thermal Zone Devices + { + \_SB.SYSM.CLUS.CPU0, + \_SB.SYSM.CLUS.CPU1, + \_SB.SYSM.CLUS.CPU2, + \_SB.SYSM.CLUS.CPU3 + }) + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x01) + { + \_SB.PEP0 + }) + } + } + + ThermalZone (TZ1) + { + Name (_HID, "QCOM02B0") // _HID: Hardware ID + Name (_UID, One) // _UID: Unique ID + Name (_TZD, Package (0x01) // _TZD: Thermal Zone Devices + { + \_SB.PEP0 + }) + Name (TPSV, 0x0EF6) + Method (_PSV, 0, NotSerialized) // _PSV: Passive Temperature + { + Return (\_SB.TZ1.TPSV) + } + + Name (_MTL, 0x14) // _MTL: Minimum Throttle Limit + Name (TTC1, Zero) + Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1 + { + Return (\_SB.TZ1.TTC1) + } + + Name (TTC2, One) + Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2 + { + Return (\_SB.TZ1.TTC2) + } + + Name (TTSP, 0x32) + Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period + { + Return (\_SB.TZ1.TTSP) + } + + Name (_TZP, Zero) // _TZP: Thermal Zone Polling + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x01) + { + \_SB.PEP0 + }) + } + } + + ThermalZone (TZ2) + { + Name (_HID, "QCOM02B1") // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_TZD, Package (0x04) // _TZD: Thermal Zone Devices + { + \_SB.SYSM.CLUS.CPU4, + \_SB.SYSM.CLUS.CPU5, + \_SB.SYSM.CLUS.CPU6, + \_SB.SYSM.CLUS.CPU7 + }) + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x01) + { + \_SB.PEP0 + }) + } + } + + ThermalZone (TZ3) + { + Name (_HID, "QCOM02B1") // _HID: Hardware ID + Name (_UID, One) // _UID: Unique ID + Name (_TZD, Package (0x01) // _TZD: Thermal Zone Devices + { + \_SB.PEP0 + }) + Name (TPSV, 0x0EF6) + Method (_PSV, 0, NotSerialized) // _PSV: Passive Temperature + { + Return (\_SB.TZ3.TPSV) + } + + Name (TTC1, Zero) + Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1 + { + Return (\_SB.TZ3.TTC1) + } + + Name (TTC2, One) + Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2 + { + Return (\_SB.TZ3.TTC2) + } + + Name (TTSP, One) + Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period + { + Return (\_SB.TZ3.TTSP) + } + + Name (_MTL, 0x14) // _MTL: Minimum Throttle Limit + Name (_TZP, Zero) // _TZP: Thermal Zone Polling + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x01) + { + \_SB.PEP0 + }) + } + } + + ThermalZone (TZ20) + { + Name (_HID, "QCOM02AB") // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_TZD, Package (0x01) // _TZD: Thermal Zone Devices + { + //\_SB.SYSM.CLUS.CPU6 +//#if 0 + \_SB.GPU0 +//#endif + }) + Name (TPSV, 0x0E60) + Method (_PSV, 0, NotSerialized) // _PSV: Passive Temperature + { + Return (\_SB.TZ20.TPSV) + } + + Name (TTC1, One) + Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1 + { + Return (\_SB.TZ20.TTC1) + } + + Name (TTC2, 0x02) + Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2 + { + Return (\_SB.TZ20.TTC2) + } + + Name (TTSP, 0x02) + Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period + { + Return (\_SB.TZ20.TTSP) + } + + Name (_TZP, Zero) // _TZP: Thermal Zone Polling + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x01) + { + \_SB.PEP0 + }) + } + } + + ThermalZone (TZ21) + { + Name (_HID, "QCOM02AC") // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_TZD, Package (0x1) //(0x01) // _TZD: Thermal Zone Devices + { + //\_SB.SYSM.CLUS.CPU6 +//#if 0 + \_SB.GPU0 +//#endif + }) + Name (TPSV, 0x0E60) + Method (_PSV, 0, NotSerialized) // _PSV: Passive Temperature + { + Return (\_SB.TZ21.TPSV) + } + + Name (TTC1, One) + Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1 + { + Return (\_SB.TZ21.TTC1) + } + + Name (TTC2, 0x02) + Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2 + { + Return (\_SB.TZ21.TTC2) + } + + Name (TTSP, 0x02) + Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period + { + Return (\_SB.TZ21.TTSP) + } + + Name (_TZP, Zero) // _TZP: Thermal Zone Polling + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x01) + { + \_SB.PEP0 + }) + } + } + + + ThermalZone (TZ32) + { + Name (_HID, "QCOM02C9") // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_TZD, Package (0x01) //(0x01) // _TZD: Thermal Zone Devices + { + //\_SB.SYSM.CLUS.CPU6 + \_SB.GPU0.AVS0 + }) + Name (TPSV, 0x0E60) + Method (_PSV, 0, NotSerialized) // _PSV: Passive Temperature + { + Return (\_SB.TZ32.TPSV) + } + + Name (TTC1, One) + Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1 + { + Return (\_SB.TZ32.TTC1) + } + + Name (TTC2, 0x02) + Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2 + { + Return (\_SB.TZ32.TTC2) + } + + Name (TTSP, 0x0A) + Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period + { + Return (\_SB.TZ32.TTSP) + } + + Name (_TZP, Zero) // _TZP: Thermal Zone Polling + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x01) + { + \_SB.PEP0 + }) + } + } + + ThermalZone (TZ33) + { + Name (_HID, "QCOM02CB") // _HID: Hardware ID + Name (_UID, One) // _UID: Unique ID + Name (_TZD, Package (0x01) // _TZD: Thermal Zone Devices + { + \_SB.AMSS + }) + Name (TPSV, 0x0E60) + Method (_PSV, 0, NotSerialized) // _PSV: Passive Temperature + { + Return (\_SB.TZ33.TPSV) + } + + Name (TTC1, One) + Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1 + { + Return (\_SB.TZ33.TTC1) + } + + Name (TTC2, 0x02) + Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2 + { + Return (\_SB.TZ33.TTC2) + } + + Name (TTSP, 0x0A) + Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period + { + Return (\_SB.TZ33.TTSP) + } + + Name (_TZP, Zero) // _TZP: Thermal Zone Polling + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x01) + { + \_SB.PEP0 + }) + } + } + + ThermalZone (TZ36) + { + Name (_HID, "QCOM029E") // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_TZD, Package (0x08) // _TZD: Thermal Zone Devices + { + \_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, 0x0EC4) + Method (_PSV, 0, NotSerialized) // _PSV: Passive Temperature + { + Return (\_SB.TZ36.TPSV) + } + + Name (TTC1, 0x04) + Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1 + { + Return (\_SB.TZ36.TTC1) + } + + Name (TTC2, 0x03) + Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2 + { + Return (\_SB.TZ36.TTC2) + } + + Name (TTSP, 0x32) + Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period + { + Return (\_SB.TZ36.TTSP) + } + + Name (_TZP, Zero) // _TZP: Thermal Zone Polling + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x02) + { + \_SB.PEP0, + \_SB.ADC1 + }) + } + } + + ThermalZone (TZ37) + { + Name (_HID, "QCOM029E") // _HID: Hardware ID + Name (_UID, One) // _UID: Unique ID + Name (_TZD, Package (0x01) // _TZD: Thermal Zone Devices + { + \_SB.PEP0//, + //\_SB.PMBM + }) + Name (TPSV, 0x0F8C) + Method (_PSV, 0, NotSerialized) // _PSV: Passive Temperature + { + Return (\_SB.TZ37.TPSV) + } + + Name (TCRT, 0x1054) + Method (_CRT, 0, NotSerialized) // _CRT: Critical Temperature + { + Return (\_SB.TZ37.TCRT) + } + + Name (TTC1, 0x04) + Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1 + { + Return (\_SB.TZ37.TTC1) + } + + Name (TTC2, 0x03) + Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2 + { + Return (\_SB.TZ37.TTC2) + } + + Name (TTSP, 0x32) + Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period + { + Return (\_SB.TZ37.TTSP) + } + + Name (_TZP, Zero) // _TZP: Thermal Zone Polling + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x02) + { + \_SB.PEP0, + \_SB.ADC1 + }) + } + } + + ThermalZone (TZ38) + { + Name (_HID, "QCOM029E") // _HID: Hardware ID + Name (_UID, 0x02) // _UID: Unique ID + Name (_TZD, Package (0x01) // _TZD: Thermal Zone Devices + { + \_SB.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 (\_SB.TZ38.TPSV) + } + + Name (TTC1, 0x04) + Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1 + { + Return (\_SB.TZ38.TTC1) + } + + Name (TTC2, 0x03) + Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2 + { + Return (\_SB.TZ38.TTC2) + } + + Name (TTSP, 0x0A) + Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period + { + Return (\_SB.TZ38.TTSP) + } + + Name (_TZP, Zero) // _TZP: Thermal Zone Polling + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x02) + { + \_SB.PEP0, + \_SB.ADC1 + }) + } + } + + ThermalZone (TZ40) + { + Name (_HID, "QCOM02AF") // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_TZD, Package (0x01) // _TZD: Thermal Zone Devices + { + \_SB.COEX + }) + Name (TPSV, 0x0DFC) + Method (_PSV, 0, NotSerialized) // _PSV: Passive Temperature + { + Return (\_SB.TZ40.TPSV) + } + + Name (TTC1, One) + Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1 + { + Return (\_SB.TZ40.TTC1) + } + + Name (TTC2, 0x05) + Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2 + { + Return (\_SB.TZ40.TTC2) + } + + Name (TTSP, 0x1E) + Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period + { + Return (\_SB.TZ40.TTSP) + } + + Name (_TZP, Zero) // _TZP: Thermal Zone Polling + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x01) + { + \_SB.PEP0 + }) + } + } + + ThermalZone (TZ41) + { + 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 + } + + ThermalZone (TZ44) + { + Name (_HID, "QCOM02CC") // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_TZD, Package (0x04) // _TZD: Thermal Zone Devices + { + \_SB.SYSM.CLUS.CPU4, + \_SB.SYSM.CLUS.CPU5, + \_SB.SYSM.CLUS.CPU6, + \_SB.SYSM.CLUS.CPU7 + }) + Name (TPSV, 0x0E60) + Method (_PSV, 0, NotSerialized) // _PSV: Passive Temperature + { + Return (\_SB.TZ44.TPSV) + } + + Name (TTC1, Zero) + Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1 + { + Return (\_SB.TZ44.TTC1) + } + + Name (TTC2, One) + Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2 + { + Return (\_SB.TZ44.TTC2) + } + + Name (TTSP, One) + Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period + { + Return (\_SB.TZ44.TTSP) + } + + Name (_TZP, Zero) // _TZP: Thermal Zone Polling + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x01) + { + \_SB.PEP0 + }) + } + } + + ThermalZone (TZ99) + { + Name (_HID, "QCOM02B2") // _HID: Hardware ID + Name (_UID, 0x64) // _UID: Unique ID + Name (TCRT, 0x0EF6) + Method (_CRT, 0, NotSerialized) // _CRT: Critical Temperature + { + Return (\_SB.TZ99.TCRT) + } + + Name (TTC1, 0x04) + Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1 + { + Return (\_SB.TZ99.TTC1) + } + + Name (TTC2, 0x03) + Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2 + { + Return (\_SB.TZ99.TTC2) + } + + Name (TTSP, 0x0A) + Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period + { + Return (\_SB.TZ99.TTSP) + } + + Name (_TZP, Zero) // _TZP: Thermal Zone Polling + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x01) + { + \_SB.PEP0 + }) + } + } + + ThermalZone (TZ4) + { + Name (_HID, "QCOM0299") // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_TZD, Package (0x0A) // _TZD: Thermal Zone Devices + { + \_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.GPU0.MON0, + \_SB.GPU0 + }) + Name (TPSV, 0x0E92) + Method (_PSV, 0, NotSerialized) // _PSV: Passive Temperature + { + Return (\_SB.TZ4.TPSV) + } + + Name (TTC1, One) + Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1 + { + Return (\_SB.TZ4.TTC1) + } + + Name (TTC2, One) + Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2 + { + Return (\_SB.TZ4.TTC2) + } + + Name (TTSP, 0x32) + Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period + { + Return (\_SB.TZ4.TTSP) + } + + Name (_MTL, 0x19) // _MTL: Minimum Throttle Limit + Name (_TZP, Zero) // _TZP: Thermal Zone Polling + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x02) + { + \_SB.PEP0, + \_SB.ADC1 + }) + } + } + + ThermalZone (TZ5) + { + Name (_HID, "QCOM029A") // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_TZD, Package (0x08) // _TZD: Thermal Zone Devices + { + \_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 + }) + Name (TPSV, 0x0E92) + Method (_PSV, 0, NotSerialized) // _PSV: Passive Temperature + { + Return (\_SB.TZ5.TPSV) + } + + Name (TTC1, One) + Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1 + { + Return (\_SB.TZ5.TTC1) + } + + Name (TTC2, One) + Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2 + { + Return (\_SB.TZ5.TTC2) + } + + Name (TTSP, 0x32) + Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period + { + Return (\_SB.TZ5.TTSP) + } + + Name (_TZP, Zero) // _TZP: Thermal Zone Polling + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x02) + { + \_SB.PEP0, + \_SB.ADC1 + }) + } + } + + ThermalZone (TZ6) + { + Name (_HID, "QCOM029B") // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_TZD, Package (0x01) // _TZD: Thermal Zone Devices + { + \_SB.COEX + }) + Name (TPSV, 0x0E92) + Method (_PSV, 0, NotSerialized) // _PSV: Passive Temperature + { + Return (\_SB.TZ6.TPSV) + } + + Name (TTC1, One) + Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1 + { + Return (\_SB.TZ6.TTC1) + } + + Name (TTC2, One) + Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2 + { + Return (\_SB.TZ6.TTC2) + } + + Name (TTSP, 0x32) + Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period + { + Return (\_SB.TZ6.TTSP) + } + + Name (_TZP, Zero) // _TZP: Thermal Zone Polling + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x02) + { + \_SB.PEP0, + \_SB.ADC1 + }) + } + } + + ThermalZone (TZ7) + { + Name (_HID, "QCOM029C") // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_TZD, Package (0x08) // _TZD: Thermal Zone Devices + { + \_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 + }) + Name (TCRT, 0x0DCA) + Method (_CRT, 0, NotSerialized) // _CRT: Critical Temperature + { + Return (\_SB.TZ7.TCRT) + } + + Name (TPSV, 0x0DC0) + Method (_PSV, 0, NotSerialized) // _PSV: Passive Temperature + { + Return (\_SB.TZ7.TPSV) + } + + Name (TTC1, One) + Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1 + { + Return (\_SB.TZ7.TTC1) + } + + Name (TTC2, One) + Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2 + { + Return (\_SB.TZ7.TTC2) + } + + Name (TTSP, 0x32) + Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period + { + Return (\_SB.TZ7.TTSP) + } + + Name (_TZP, Zero) // _TZP: Thermal Zone Polling + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x02) + { + \_SB.PEP0, + \_SB.ADC1 + }) + } + } + + ThermalZone (TZ8) + { + Name (_HID, "QCOM029D") // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_TZD, Package (0x0A) // _TZD: Thermal Zone Devices + { + \_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.GPU0.MON0, + \_SB.GPU0 + }) + Name (TPSV, 0x0E92) + Method (_PSV, 0, NotSerialized) // _PSV: Passive Temperature + { + Return (\_SB.TZ8.TPSV) + } + + Name (TTC1, One) + Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1 + { + Return (\_SB.TZ8.TTC1) + } + + Name (TTC2, One) + Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2 + { + Return (\_SB.TZ8.TTC2) + } + + Name (TTSP, 0x32) + Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period + { + Return (\_SB.TZ8.TTSP) + } + + Name (_TZP, Zero) // _TZP: Thermal Zone Polling + Name (_MTL, 0x19) // _MTL: Minimum Throttle Limit + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x02) + { + \_SB.PEP0, + \_SB.ADC1 + }) + } + } + + ThermalZone (TZ9) + { + Name (_HID, "QCOM029F") // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_TZD, Package (0x0A) // _TZD: Thermal Zone Devices + { + \_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.GPU0.MON0, + \_SB.GPU0 + }) + Name (TPSV, 0x0E92) + Method (_PSV, 0, NotSerialized) // _PSV: Passive Temperature + { + Return (\_SB.TZ9.TPSV) + } + + Name (TTC1, One) + Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1 + { + Return (\_SB.TZ9.TTC1) + } + + Name (TTC2, One) + Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2 + { + Return (\_SB.TZ9.TTC2) + } + + Name (TTSP, 0x32) + Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period + { + Return (\_SB.TZ9.TTSP) + } + + Name (_TZP, Zero) // _TZP: Thermal Zone Polling + Name (_MTL, 0x19) // _MTL: Minimum Throttle Limit + Method (_DEP, 0, NotSerialized) // _DEP: Dependencies + { + Return (Package (0x02) + { + \_SB.PEP0, + \_SB.ADC1 + }) + } + } + + Name (HWNH, Zero) + Name (HWNL, Zero) + // + //HWN Haptics + // + Device (HWN1) + { + Name (_HID, "QCOM02A9") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Method (_STA, 0, NotSerialized) // _STA: Status + { + If ((\_SB.HWNH == Zero)) + { + Return (Zero) + } + Else + { + Return (0x0F) + } + } + + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.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 */ + } + + Method (HAPI, 0, NotSerialized) + { + Name (CFG0, Package (0x03) + { + One, // Total HWN Vibs + One, // PMIC number PMI8998 + One // Flag indicated wheterh to read configuration from ACPI or registry + // 0 -> Read from registry + // 1 -> Read from ACPI HAPC method + }) + Return (CFG0) /* \_SB_.HWN1.HAPI.CFG0 */ + } + + // Haptics configuration method + 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 */ + } + } + + // HWN LED + Device (HWN0) + { + Name (_HID, "QCOM02A8") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, Zero) // _UID: Unique ID + Method (_STA, 0, NotSerialized) // _STA: Status + { + If ((\_SB.HWNL == Zero)) + { + Return (Zero) + } + Else + { + Return (0x0F) + } + } + + // ACPI method for LED Configs + 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 */ + } + } + + // + // Modembridge Driver + // + Device (MBRG) + { + Name (_HID, "QCOM020D") // _HID: Hardware ID + } + + Device (CONT) + { + Name (_HID, "CONT1234") // _HID: Hardware ID + Name (_CID, "PNP0C60" /* Display Sensor Device */) // _CID: Compatible ID + } + + Device (POWR) + { + Name (_HID, "POWR1234") // _HID: Hardware ID + Name (_CID, "PNP0C40" /* Standard Button Controller */) // _CID: Compatible ID + } + + Device (SVBI) + { + Name (_HID, "SAMM0901") // _HID: Hardware ID + Name (_SUB, "C153144D") // _SUB: Subsystem ID + } + +#if 0 + Device (TSC1) + { + Name (_HID, "SYNP1234") // _HID: Hardware ID + Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */) // _CID: Compatible ID + Name (_SUB, "C153144D") // _SUB: Subsystem ID + Name (_HRV, One) // _HRV: Hardware Revision + Name (_ADR, Zero) // _ADR: Address + Name (_DEP, Package (0x03) // _DEP: Dependencies + { + \_SB.GIO0, + \_SB.IC12, + \_SB.PEP0 + }) + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + I2cSerialBusV2 (0x0020, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.IC12", + 0x00, ResourceConsumer, , Exclusive, + ) + GpioInt (Level, ActiveLow, Exclusive, PullNone, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0078 + } + }) + 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 + { + } + + Break + } + } + Else + { + Return (Buffer (One) + { + 0x00 // . + }) + } + + Break + } + } + + 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) + } + + Method (_S2D, 0, NotSerialized) // _S2D: S2 Device State + { + Return (0x03) + } + + Method (_S3D, 0, NotSerialized) // _S3D: S3 Device State + { + Return (0x03) + } + + Method (_PS0, 0, NotSerialized) // _PS0: Power State 0 + { + DEID = Buffer (ESNL){} + DVAL = Zero + DEID = PGID /* \_SB_.TSC1.PGID */ + If (\_SB.ABD.AVBL) + { + \_SB.PEP0.FLD0 = DBUF /* \_SB_.TSC1.DBUF */ + } + } + + Method (_PS3, 0, NotSerialized) // _PS3: Power State 3 + { + DEID = Buffer (ESNL){} + DVAL = 0x03 + DEID = PGID /* \_SB_.TSC1.PGID */ + If (\_SB.ABD.AVBL) + { + \_SB.PEP0.FLD0 = DBUF /* \_SB_.TSC1.DBUF */ + } + } + } + + Device (PEN1) + { + Name (_HID, "WCOM0027") // _HID: Hardware ID + Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */) // _CID: Compatible ID + Name (_SUB, "C153144D") // _SUB: Subsystem ID + Name (_HRV, One) // _HRV: Hardware Revision + Name (_ADR, Zero) // _ADR: Address + Name (_DEP, Package (0x03) // _DEP: Dependencies + { + \_SB.GIO0, + \_SB.IC16, + \_SB.PEP0 + }) + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (RBUF, ResourceTemplate () + { + I2cSerialBusV2 (0x0009, ControllerInitiated, 0x00061A80, + AddressingMode7Bit, "\\_SB.IC16", + 0x00, ResourceConsumer, , Exclusive, + ) + GpioInt (Level, ActiveLow, Exclusive, PullNone, 0x0000, + "\\_SB.GIO0", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0077 + } + }) + Return (RBUF) /* \_SB_.PEN1._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_.PEN1._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 (One) + } + Else + { + } + + Break + } + } + Else + { + Return (Buffer (One) + { + 0x00 // . + }) + } + + Break + } + } + + Name (PGID, Buffer (0x0A) + { + "\\_SB.PEN1" + }) + 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) + } + + Method (_S2D, 0, NotSerialized) // _S2D: S2 Device State + { + Return (0x03) + } + + Method (_S3D, 0, NotSerialized) // _S3D: S3 Device State + { + Return (0x03) + } + + Method (_PS0, 0, NotSerialized) // _PS0: Power State 0 + { + DEID = Buffer (ESNL){} + DVAL = Zero + DEID = PGID /* \_SB_.PEN1.PGID */ + If (\_SB.ABD.AVBL) + { + \_SB.PEP0.FLD0 = DBUF /* \_SB_.PEN1.DBUF */ + } + } + + Method (_PS3, 0, NotSerialized) // _PS3: Power State 3 + { + DEID = Buffer (ESNL){} + DVAL = 0x03 + DEID = PGID /* \_SB_.PEN1.PGID */ + If (\_SB.ABD.AVBL) + { + \_SB.PEP0.FLD0 = DBUF /* \_SB_.PEN1.DBUF */ + } + } + } +#endif + + Device (BTNS) + { + Name (_HID, "ACPI0011" /* Generic Buttons Device */) // _HID: Hardware ID + Alias (\_SB.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, PullNone, 0x000E, + "\\_SB.PM01", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0085 + } + GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullDown, 0x0010, + "\\_SB.PM01", 0x00, ResourceConsumer, , + ) + { // Pin list + 0x0001 + } + }) + Return (RBUF) /* \_SB_.BTNS._CRS.RBUF */ + } + + Name (_DSD, Package (0x02) // _DSD: Device-Specific Data + { + ToUUID ("fa6bd625-9ce8-470d-a2c7-b3ca36c4282e"), + Package (0x06) + { + // Portable Device Control Application Collection + Package (0x05) + { + Zero, + One, + Zero, + One, + 0x0D + }, + + // Sleep + Package (0x05) + { + One, + Zero, + One, + One, + 0x81 + }, + + // Volume Increment + Package (0x05) + { + One, + One, + One, + 0x0C, + 0xE9 + }, + + // Volume Decrement + Package (0x05) + { + One, + 0x02, + One, + 0x0C, + 0xEA + }, + + Package (0x05) + { + One, + 0x03, + One, + 0x90, + 0x20 + }, + + Package (0x05) + { + One, + 0x04, + One, + 0x90, + 0x21 + } + } + }) + } + + // + //Qualcomm Diagnostic Consumer Interface + // + Device (QDCI) + { + Name (_DEP, Package (One) // _DEP: Dependencies + { + \_SB.GLNK + }) + Name (_HID, "QCOM0224") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + } + + Device (BTH0) + { + Name (_HID, "NOPE02B5") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_DEP, Package (0x03) // _DEP: Dependencies + { + \_SB.PEP0, + \_SB.PMIC, + \_SB.UAR7 + }) + Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake + { + Zero, + Zero + }) + Name (_S4W, 0x02) // _S4W: S4 Device Wake State + Name (_S0W, 0x02) // _S0W: S0 Device Wake State + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (PBUF, ResourceTemplate () + { + UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne, + 0xC0, LittleEndian, ParityTypeNone, FlowControlHardware, + 0x0020, 0x0020, "\\_SB.UAR7", + 0x00, ResourceConsumer, , Exclusive, + ) + }) + Return (PBUF) /* \_SB_.BTH0._CRS.PBUF */ + } + + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } + } +//here + + Device (ADC1) + { + Name (_DEP, Package (0x02) // _DEP: Dependencies + { + \_SB.SPMI, + \_SB.PMIC + }) + Name (_HID, "QCOM0221") // _HID: Hardware ID + Alias (\_SB.PSUB, _SUB) + Name (_UID, Zero) // _UID: Unique ID + Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings + { + Name (INTB, ResourceTemplate () + { + GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullUp, 0x0000, + "\\_SB.PM01", 0x00, ResourceConsumer, , + RawDataBuffer (0x01) // Vendor Data + { + 0x02 + }) + { // Pin list + 0x0020 + } + GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullUp, 0x0000, + "\\_SB.PM01", 0x00, ResourceConsumer, , + RawDataBuffer (0x01) // Vendor Data + { + 0x02 + }) + { // Pin list + 0x0028 + } + GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullUp, 0x0000, + "\\_SB.PM01", 0x00, ResourceConsumer, , + RawDataBuffer (0x01) // Vendor Data + { + 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... + }) + Name (FGRR, Buffer (0x0C) + { + /* 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) + } + + Method (ADDV, 0, NotSerialized) + { + Return (Package (0x03) + { + One, + One, + One + }) + } + + Method (GENP, 0, NotSerialized) + { + Return (Package (0x0A) + { + Zero, + 0x4000, + 0x001C9C38, + 0x0007A120, + 0x11, + Zero, + Zero, + 0x0300, + 0x0100, + 0x08 + }) + } + + Method (PTCF, 1, NotSerialized) + { + Local0 = (Arg0 >> One) + Local0 -= 0x00042B08 + Return (Local0) + } + + Method (PTCI, 1, NotSerialized) + { + Local0 = (Arg0 + 0x00042B08) + Local0 <<= One + Return (Local0) + } + + Method (VGIO, 0, NotSerialized) + { + Return (Package (0x08) + { + Package (0x02) + { + 0x08, + Buffer (0x04) + { + 0x12, 0x32, 0x52, 0x72 // .2Rr + } + }, + + Package (0x02) + { + 0x09, + Buffer (0x04) + { + 0x13, 0x33, 0x53, 0x73 // .3Ss + } + }, + + Package (0x02) + { + 0x0A, + Buffer (0x04) + { + 0x14, 0x34, 0x54, 0x74 // .4Tt + } + }, + + Package (0x02) + { + 0x0B, + Buffer (0x04) + { + 0x15, 0x35, 0x55, 0x75 // .5Uu + } + }, + + Package (0x02) + { + 0x0C, + Buffer (0x04) + { + 0x16, 0x36, 0x56, 0x76 // .6Vv + } + }, + + Package (0x02) + { + 0x15, + Buffer (0x05) + { + 0x17, 0x37, 0x57, 0x77, 0x97 // .7Ww. + } + }, + + Package (0x02) + { + 0x16, + Buffer (0x05) + { + 0x18, 0x38, 0x58, 0x78, 0x98 // .8Xx. + } + }, + + Package (0x02) + { + 0x17, + Buffer (0x05) + { + 0x19, 0x39, 0x59, 0x79, 0x99 // .9Yy. + } + } + }) + } + + Method (VTGN, 0, NotSerialized) + { + Return (Package (0x09) + { + 0x02, + 0x02, + 0x4000, + 0x001C9C38, + Zero, + Zero, + 0x0300, + 0x0100, + 0x08 + }) + } + + Method (GENF, 0, NotSerialized) + { + Return (Package (0x0D) + { + 0xFFFFFFE2, + 0x61, + 0xFFFFFFCE, + 0xA0, + 0x03FF, + 0x002625A0, + 0x01F4, + 0x04, + 0x0334, + 0x004C4B40, + 0x02, + One, + 0x0D + }) + } + + Method (FCHN, 0, NotSerialized) + { + Return (Package (0x0C) + { + Package (0x08) + { + "BATT_ID_OHMS", + One, + One, + Zero, + One, + One, + One, + Zero + }, + + Package (0x08) + { + "BATT_ID_OHMS_FRESH", + 0x02, + One, + Zero, + One, + One, + One, + Zero + }, + + Package (0x08) + { + "BATT_THERM", + 0x06, + One, + Zero, + One, + One, + 0x03, + Zero + }, + + Package (0x08) + { + "AUX_THERM", + 0x07, + One, + Zero, + One, + One, + 0x03, + Zero + }, + + Package (0x08) + { + "SKIN_THERM", + Zero, + One, + Zero, + One, + One, + 0x03, + Zero + }, + + Package (0x08) + { + "PMIC_TEMP2", + 0x0C, + One, + Zero, + 0x03, + 0x02, + 0x02, + FGDT + }, + + Package (0x08) + { + "CHG_TEMP", + 0x0D, + One, + Zero, + 0x03, + 0x02, + 0x02, + FGCT + }, + + Package (0x08) + { + "USB_IN", + 0x08, + One, + Zero, + One, + 0x08, + Zero, + Zero + }, + + Package (0x08) + { + "USB_IN_I", + 0x09, + One, + Zero, + One, + One, + 0x04, + Zero + }, + + Package (0x08) + { + "DC_IN", + 0x0A, + One, + Zero, + One, + 0x08, + Zero, + Zero + }, + + Package (0x08) + { + "DC_IN_I", + 0x0B, + One, + Zero, + One, + One, + 0x04, + Zero + }, + + Package (0x08) + { + "FG_GPIO", + 0x0E, + Zero, + Zero, + One, + 0x02, + Zero, + Zero + } + }) + } + + Method (FGDT, 0, NotSerialized) + { + Return (Package (0x02) + { + Package (0x02) + { + 0x01C2, + 0xFFFF3CB0 + }, + + Package (0x02) + { + 0x0366, + 0x00027100 + } + }) + } + + Method (FGCT, 0, NotSerialized) + { + Return (Package (0x02) + { + Package (0x02) + { + 0x0633, + 0xFFFF3CB0 + }, + + Package (0x02) + { + 0x0318, + 0x00027100 + } + }) + } + } + + Scope (\_SB.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 + }, + + Package (0x0D) + { + "VCOIN", + 0x85, + Zero, + Zero, + 0x02, + 0x02, + One, + 0x03, + Zero, + Zero, + Zero, + Zero, + Zero + }, + + Package (0x0D) + { + "PMIC_THERM", + 0x06, + Zero, + Zero, + 0x02, + 0x02, + One, + One, + Zero, + Zero, + Zero, + PTCF, + 0x02 + }, + + Package (0x0D) + { + "XO_THERM", + 0x4C, + 0x08, + Zero, + 0x02, + One, + One, + One, + 0x02, + 0x000186A0, + XTTB, + Zero, + Zero + }, + + Package (0x0D) + { + "XO_THERM_GPS", + 0x4C, + 0x08, + 0x02, + 0x02, + One, + One, + One, + 0x02, + 0x000186A0, + XTTB, + Zero, + Zero + }, + + Package (0x0D) + { + "SYS_THERM1", + 0x4D, + One, + Zero, + 0x02, + One, + One, + One, + 0x02, + 0x000186A0, + SYTB, + Zero, + Zero + } +#if 0 + , + + Package (0x0D) + { + "SYS_THERM2", + 0x4E, + One, + Zero, + 0x02, + One, + One, + One, + 0x02, + 0x000186A0, + SYTB, + Zero, + Zero + } +#endif + , + + Package (0x0D) + { + "PA_THERM", + 0x4F, + One, + Zero, + 0x02, + One, + One, + One, + 0x02, + 0x000186A0, + SYTB, + Zero, + Zero + }, + + Package (0x0D) + { + "PA_THERM1", + 0x50, + One, + Zero, + 0x02, + One, + One, + One, + 0x02, + 0x000186A0, + SYTB, + Zero, + Zero + } +#if 0 + , + + Package (0x0D) + { + "SYS_THERM3", + 0x51, + One, + Zero, + 0x02, + One, + One, + One, + 0x02, + 0x000186A0, + SYTB, + Zero, + Zero + } + , + + Package (0x0D) + { + "VMUX_SOC", + 0x17, + Zero, + Zero, + 0x02, + 0x02, + One, + 0x03, + Zero, + Zero, + Zero, + Zero, + Zero + } +#endif + }) +#if 0 + DerefOf (CBUF [0x0A]) [One] = \_SB.VMXC + DerefOf (CBUF [0x0A]) [0x06] = \_SB.VMXN + DerefOf (CBUF [0x0A]) [0x07] = \_SB.VMXD +#endif + Return (CBUF) /* \_SB_.ADC1.CHAN.CBUF */ + } + + Method (SYTB, 0, NotSerialized) + { + Return (Package (0x22) + { + Package (0x02) + { + 0x0040DD78, + 0xFFFFFFD8 + }, + + Package (0x02) + { + 0x002DD9E4, + 0xFFFFFFDD + }, + + Package (0x02) + { + 0x0020CA24, + 0xFFFFFFE2 + }, + + Package (0x02) + { + 0x0017B588, + 0xFFFFFFE7 + }, + + Package (0x02) + { + 0x001152C4, + 0xFFFFFFEC + }, + + Package (0x02) + { + 0x000CC8A8, + 0xFFFFFFF1 + }, + + Package (0x02) + { + 0x000985E4, + 0xFFFFFFF6 + }, + + Package (0x02) + { + 0x0007286C, + 0xFFFFFFFB + }, + + Package (0x02) + { + 0x00056D10, + Zero + }, + + Package (0x02) + { + 0x000425B8, + 0x05 + }, + + Package (0x02) + { + 0x000331F8, + 0x0A + }, + + Package (0x02) + { + 0x00027AC4, + 0x0F + }, + + Package (0x02) + { + 0x0001F018, + 0x14 + }, + + Package (0x02) + { + 0x000186A0, + 0x19 + }, + + Package (0x02) + { + 0x00013560, + 0x1E + }, + + Package (0x02) + { + 0xF6E0, + 0x23 + }, + + Package (0x02) + { + 0xC60C, + 0x28 + }, + + Package (0x02) + { + 0x9FC4, + 0x2D + }, + + Package (0x02) + { + 0x81B0, + 0x32 + }, + + Package (0x02) + { + 0x69DC, + 0x37 + }, + + Package (0x02) + { + 0x56B8, + 0x3C + }, + + Package (0x02) + { + 0x477C, + 0x41 + }, + + Package (0x02) + { + 0x3B60, + 0x46 + }, + + Package (0x02) + { + 0x3138, + 0x4B + }, + + Package (0x02) + { + 0x2968, + 0x50 + }, + + Package (0x02) + { + 0x22BA, + 0x55 + }, + + Package (0x02) + { + 0x1D4C, + 0x5A + }, + + Package (0x02) + { + 0x18D8, + 0x5F + }, + + Package (0x02) + { + 0x1522, + 0x64 + }, + + Package (0x02) + { + 0x120C, + 0x69 + }, + + Package (0x02) + { + 0x0F82, + 0x6E + }, + + Package (0x02) + { + 0x0D5C, + 0x73 + }, + + Package (0x02) + { + 0x0B86, + 0x78 + }, + + Package (0x02) + { + 0x0A00, + 0x7D + } + }) + } + + Method (XTTB, 0, NotSerialized) + { + Return (Package (0xA8) + { + Package (0x02) + { + 0x0040DC21, + 0xFFFF6000 + }, + + Package (0x02) + { + 0x003C74E5, + 0xFFFF6400 + }, + + Package (0x02) + { + 0x0038611B, + 0xFFFF6800 + }, + + Package (0x02) + { + 0x00349A1A, + 0xFFFF6C00 + }, + + Package (0x02) + { + 0x003119CB, + 0xFFFF7000 + }, + + Package (0x02) + { + 0x002DDA9A, + 0xFFFF7400 + }, + + Package (0x02) + { + 0x002AD76C, + 0xFFFF7800 + }, + + Package (0x02) + { + 0x00280B95, + 0xFFFF7C00 + }, + + Package (0x02) + { + 0x002572CA, + 0xFFFF8000 + }, + + Package (0x02) + { + 0x0023091E, + 0xFFFF8400 + }, + + Package (0x02) + { + 0x0020CAF4, + 0xFFFF8800 + }, + + Package (0x02) + { + 0x001EB4FE, + 0xFFFF8C00 + }, + + Package (0x02) + { + 0x001CC430, + 0xFFFF9000 + }, + + Package (0x02) + { + 0x001AF5BE, + 0xFFFF9400 + }, + + Package (0x02) + { + 0x00194716, + 0xFFFF9800 + }, + + Package (0x02) + { + 0x0017B5DC, + 0xFFFF9C00 + }, + + Package (0x02) + { + 0x00163FE3, + 0xFFFFA000 + }, + + Package (0x02) + { + 0x0014E329, + 0xFFFFA400 + }, + + Package (0x02) + { + 0x00139DD6, + 0xFFFFA800 + }, + + Package (0x02) + { + 0x00126E37, + 0xFFFFAC00 + }, + + Package (0x02) + { + 0x001152BA, + 0xFFFFB000 + }, + + Package (0x02) + { + 0x001049ED, + 0xFFFFB400 + }, + + Package (0x02) + { + 0x000F527B, + 0xFFFFB800 + }, + + Package (0x02) + { + 0x000E6B27, + 0xFFFFBC00 + }, + + Package (0x02) + { + 0x000D92CE, + 0xFFFFC000 + }, + + Package (0x02) + { + 0x000CC863, + 0xFFFFC400 + }, + + Package (0x02) + { + 0x000C0AED, + 0xFFFFC800 + }, + + Package (0x02) + { + 0x000B5985, + 0xFFFFCC00 + }, + + Package (0x02) + { + 0x000AB357, + 0xFFFFD000 + }, + + Package (0x02) + { + 0x000A179D, + 0xFFFFD400 + }, + + Package (0x02) + { + 0x000985A0, + 0xFFFFD800 + }, + + Package (0x02) + { + 0x0008FCB6, + 0xFFFFDC00 + }, + + Package (0x02) + { + 0x00087C44, + 0xFFFFE000 + }, + + Package (0x02) + { + 0x000803B7, + 0xFFFFE400 + }, + + Package (0x02) + { + 0x00079288, + 0xFFFFE800 + }, + + Package (0x02) + { + 0x0007283A, + 0xFFFFEC00 + }, + + Package (0x02) + { + 0x0006C458, + 0xFFFFF000 + }, + + Package (0x02) + { + 0x00066678, + 0xFFFFF400 + }, + + Package (0x02) + { + 0x00060E33, + 0xFFFFF800 + }, + + Package (0x02) + { + 0x0005BB2D, + 0xFFFFFC00 + }, + + Package (0x02) + { + 0x00056D0E, + Zero + }, + + Package (0x02) + { + 0x00052387, + 0x0400 + }, + + Package (0x02) + { + 0x0004DE4C, + 0x0800 + }, + + Package (0x02) + { + 0x00049D17, + 0x0C00 + }, + + Package (0x02) + { + 0x00045FA6, + 0x1000 + }, + + Package (0x02) + { + 0x000425BE, + 0x1400 + }, + + Package (0x02) + { + 0x0003EF25, + 0x1800 + }, + + Package (0x02) + { + 0x0003BBA6, + 0x1C00 + }, + + Package (0x02) + { + 0x00038B11, + 0x2000 + }, + + Package (0x02) + { + 0x00035D37, + 0x2400 + }, + + Package (0x02) + { + 0x000331EE, + 0x2800 + }, + + Package (0x02) + { + 0x0003090E, + 0x2C00 + }, + + Package (0x02) + { + 0x0002E270, + 0x3000 + }, + + Package (0x02) + { + 0x0002BDF2, + 0x3400 + }, + + Package (0x02) + { + 0x00029B74, + 0x3800 + }, + + Package (0x02) + { + 0x00027AD7, + 0x3C00 + }, + + Package (0x02) + { + 0x00025BFE, + 0x4000 + }, + + Package (0x02) + { + 0x00023ECE, + 0x4400 + }, + + Package (0x02) + { + 0x0002232F, + 0x4800 + }, + + Package (0x02) + { + 0x00020909, + 0x4C00 + }, + + Package (0x02) + { + 0x0001F046, + 0x5000 + }, + + Package (0x02) + { + 0x0001D8D2, + 0x5400 + }, + + Package (0x02) + { + 0x0001C298, + 0x5800 + }, + + Package (0x02) + { + 0x0001AD88, + 0x5C00 + }, + + Package (0x02) + { + 0x00019990, + 0x6000 + }, + + Package (0x02) + { + 0x000186A0, + 0x6400 + }, + + Package (0x02) + { + 0x000174AA, + 0x6800 + }, + + Package (0x02) + { + 0x0001639E, + 0x6C00 + }, + + Package (0x02) + { + 0x00015371, + 0x7000 + }, + + Package (0x02) + { + 0x00014415, + 0x7400 + }, + + Package (0x02) + { + 0x00013580, + 0x7800 + }, + + Package (0x02) + { + 0x000127A6, + 0x7C00 + }, + + Package (0x02) + { + 0x00011A7C, + 0x8000 + }, + + Package (0x02) + { + 0x00010DFA, + 0x8400 + }, + + Package (0x02) + { + 0x00010216, + 0x8800 + }, + + Package (0x02) + { + 0xF6C8, + 0x8C00 + }, + + Package (0x02) + { + 0xEC07, + 0x9000 + }, + + Package (0x02) + { + 0xE1CC, + 0x9400 + }, + + Package (0x02) + { + 0xD810, + 0x9800 + }, + + Package (0x02) + { + 0xCECC, + 0x9C00 + }, + + Package (0x02) + { + 0xC5F9, + 0xA000 + }, + + Package (0x02) + { + 0xBD93, + 0xA400 + }, + + Package (0x02) + { + 0xB592, + 0xA800 + }, + + Package (0x02) + { + 0xADF2, + 0xAC00 + }, + + Package (0x02) + { + 0xA6AE, + 0xB000 + }, + + Package (0x02) + { + 0x9FC1, + 0xB400 + }, + + Package (0x02) + { + 0x9927, + 0xB800 + }, + + Package (0x02) + { + 0x92DB, + 0xBC00 + }, + + Package (0x02) + { + 0x8CD9, + 0xC000 + }, + + Package (0x02) + { + 0x871E, + 0xC400 + }, + + Package (0x02) + { + 0x81A6, + 0xC800 + }, + + Package (0x02) + { + 0x7C6D, + 0xCC00 + }, + + Package (0x02) + { + 0x7771, + 0xD000 + }, + + Package (0x02) + { + 0x72AE, + 0xD400 + }, + + Package (0x02) + { + 0x6E22, + 0xD800 + }, + + Package (0x02) + { + 0x69CA, + 0xDC00 + }, + + Package (0x02) + { + 0x65A4, + 0xE000 + }, + + Package (0x02) + { + 0x61AC, + 0xE400 + }, + + Package (0x02) + { + 0x5DE1, + 0xE800 + }, + + Package (0x02) + { + 0x5A40, + 0xEC00 + }, + + Package (0x02) + { + 0x56C8, + 0xF000 + }, + + Package (0x02) + { + 0x5377, + 0xF400 + }, + + Package (0x02) + { + 0x504A, + 0xF800 + }, + + Package (0x02) + { + 0x4D40, + 0xFC00 + }, + + Package (0x02) + { + 0x4A57, + 0x00010000 + }, + + Package (0x02) + { + 0x478E, + 0x00010400 + }, + + Package (0x02) + { + 0x44E4, + 0x00010800 + }, + + Package (0x02) + { + 0x4256, + 0x00010C00 + }, + + Package (0x02) + { + 0x3FE3, + 0x00011000 + }, + + Package (0x02) + { + 0x3D8B, + 0x00011400 + }, + + Package (0x02) + { + 0x3B4C, + 0x00011800 + }, + + Package (0x02) + { + 0x3924, + 0x00011C00 + }, + + Package (0x02) + { + 0x3713, + 0x00012000 + }, + + Package (0x02) + { + 0x3518, + 0x00012400 + }, + + Package (0x02) + { + 0x3332, + 0x00012800 + }, + + Package (0x02) + { + 0x3160, + 0x00012C00 + }, + + Package (0x02) + { + 0x2FA0, + 0x00013000 + }, + + Package (0x02) + { + 0x2DF2, + 0x00013400 + }, + + Package (0x02) + { + 0x2C56, + 0x00013800 + }, + + Package (0x02) + { + 0x2ACA, + 0x00013C00 + }, + + Package (0x02) + { + 0x294E, + 0x00014000 + }, + + Package (0x02) + { + 0x27E1, + 0x00014400 + }, + + Package (0x02) + { + 0x2682, + 0x00014800 + }, + + Package (0x02) + { + 0x2531, + 0x00014C00 + }, + + Package (0x02) + { + 0x23ED, + 0x00015000 + }, + + Package (0x02) + { + 0x22B6, + 0x00015400 + }, + + Package (0x02) + { + 0x218B, + 0x00015800 + }, + + Package (0x02) + { + 0x206B, + 0x00015C00 + }, + + Package (0x02) + { + 0x1F57, + 0x00016000 + }, + + Package (0x02) + { + 0x1E4D, + 0x00016400 + }, + + Package (0x02) + { + 0x1D4D, + 0x00016800 + }, + + Package (0x02) + { + 0x1C56, + 0x00016C00 + }, + + Package (0x02) + { + 0x1B69, + 0x00017000 + }, + + Package (0x02) + { + 0x1A85, + 0x00017400 + }, + + Package (0x02) + { + 0x19AA, + 0x00017800 + }, + + Package (0x02) + { + 0x18D6, + 0x00017C00 + }, + + Package (0x02) + { + 0x180B, + 0x00018000 + }, + + Package (0x02) + { + 0x1747, + 0x00018400 + }, + + Package (0x02) + { + 0x168A, + 0x00018800 + }, + + Package (0x02) + { + 0x15D4, + 0x00018C00 + }, + + Package (0x02) + { + 0x1524, + 0x00019000 + }, + + Package (0x02) + { + 0x147B, + 0x00019400 + }, + + Package (0x02) + { + 0x13D8, + 0x00019800 + }, + + Package (0x02) + { + 0x133B, + 0x00019C00 + }, + + Package (0x02) + { + 0x12A3, + 0x0001A000 + }, + + Package (0x02) + { + 0x1211, + 0x0001A400 + }, + + Package (0x02) + { + 0x1184, + 0x0001A800 + }, + + Package (0x02) + { + 0x10FC, + 0x0001AC00 + }, + + Package (0x02) + { + 0x1079, + 0x0001B000 + }, + + Package (0x02) + { + 0x0FFA, + 0x0001B400 + }, + + Package (0x02) + { + 0x0F80, + 0x0001B800 + }, + + Package (0x02) + { + 0x0F0A, + 0x0001BC00 + }, + + Package (0x02) + { + 0x0E98, + 0x0001C000 + }, + + Package (0x02) + { + 0x0E2A, + 0x0001C400 + }, + + Package (0x02) + { + 0x0DBF, + 0x0001C800 + }, + + Package (0x02) + { + 0x0D59, + 0x0001CC00 + }, + + Package (0x02) + { + 0x0CF5, + 0x0001D000 + }, + + Package (0x02) + { + 0x0C95, + 0x0001D400 + }, + + Package (0x02) + { + 0x0C39, + 0x0001D800 + }, + + Package (0x02) + { + 0x0BDF, + 0x0001DC00 + }, + + Package (0x02) + { + 0x0B88, + 0x0001E000 + }, + + Package (0x02) + { + 0x0B34, + 0x0001E400 + }, + + Package (0x02) + { + 0x0AE3, + 0x0001E800 + }, + + Package (0x02) + { + 0x0A95, + 0x0001EC00 + }, + + Package (0x02) + { + 0x0A49, + 0x0001F000 + }, + + Package (0x02) + { + 0x0A00, + 0x0001F400 + }, + + Package (0x02) + { + 0x09B9, + 0x0001F800 + }, + + Package (0x02) + { + 0x0974, + 0x0001FC00 + } + }) + } + + Method (VTCH, 0, NotSerialized) + { + Return (Package (0x05) + { + Package (0x10) + { + "VPH_PWR", + 0x83, + Zero, + One, + Zero, + 0x02, + One, + 0x03, + Zero, + Zero, + Zero, + Zero, + Zero, + Zero, + Zero, + 0x15F9 + }, + + Package (0x10) + { + "PMIC_THERM", + 0x06, + Zero, + Zero, + Zero, + 0x02, + One, + One, + Zero, + Zero, + Zero, + PTCF, + PTCI, + 0x02, + 0xFFFF3CB0, + 0x000249F0 + }, + + Package (0x10) + { + "SYS_THERM1", + 0x4D, + One, + Zero, + Zero, + One, + One, + One, + 0x02, + 0x000186A0, + SYTB, + Zero, + Zero, + Zero, + 0xFFFFFFD8, + 0x7D + }, + +#if 0 + Package (0x10) + { + "SYS_THERM2", + 0x4E, + One, + Zero, + Zero, + One, + One, + One, + 0x02, + 0x000186A0, + SYTB, + Zero, + Zero, + Zero, + 0xFFFFFFD8, + 0x7D + }, +#endif + + Package (0x10) + { + "PA_THERM", + 0x4F, + One, + Zero, + Zero, + One, + One, + One, + 0x02, + 0x000186A0, + SYTB, + Zero, + Zero, + Zero, + 0xFFFFFFD8, + 0x7D + }, + + Package (0x10) + { + "PA_THERM1", + 0x50, + One, + Zero, + Zero, + One, + One, + One, + 0x02, + 0x000186A0, + SYTB, + Zero, + Zero, + Zero, + 0xFFFFFFD8, + 0x7D + } +#if 0 + , + + Package (0x10) + { + "SYS_THERM3", + 0x51, + One, + Zero, + Zero, + One, + One, + One, + 0x02, + 0x000186A0, + SYTB, + Zero, + Zero, + Zero, + 0xFFFFFFD8, + 0x7D + } +#endif + }) + } + + Method (VTMT, 0, NotSerialized) + { + Return (Package (0x03) + { + 0x0B, + One, + 0x05 + }) + } + } +#if 0 + Device(ADC1) + { + Name(_DEP, Package(0x2) + { + SPMI, + PMIC + }) + Name(_HID, "QCOM0221") + Alias(PSUB, _SUB) + Name(_UID, Zero) + Method(_CRS, 0x0, NotSerialized) + { + Name(INTB, Buffer(0x4a) + { + 0x8c, 0x21, 0x00, 0x01, 0x00, 0x01, 0x00, 0x11, 0x00, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x17, 0x00, 0x00, 0x19, 0x00, 0x23, 0x00, 0x01, 0x00, 0x20, + 0x00, 0x5c, 0x5f, 0x53, 0x42, 0x2e, 0x50, 0x4d, 0x30, 0x31, 0x00, 0x02, + 0x8c, 0x21, 0x00, 0x01, 0x00, 0x01, 0x00, 0x11, 0x00, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x17, 0x00, 0x00, 0x19, 0x00, 0x23, 0x00, 0x01, 0x00, 0x28, + 0x00, 0x5c, 0x5f, 0x53, 0x42, 0x2e, 0x50, 0x4d, 0x30, 0x31, 0x00, 0x02, + 0x79, 0x00 + }) + Name(NAM_, Buffer(0xa) + { + 0x5c, 0x5f, 0x53, 0x42, 0x2e, 0x53, 0x50, 0x4d, 0x49, 0x00 + }) + Name(VUSR, Buffer(0xc) + { + 0x8e, 0x13, 0x00, 0x01, 0x00, 0xc1, 0x02, 0x00, 0x31, 0x01, 0x00, 0x00 + }) + Name(VBTM, Buffer(0xc) + { + 0x8e, 0x13, 0x00, 0x01, 0x00, 0xc1, 0x02, 0x00, 0x34, 0x01, 0x00, 0x00 + }) + Concatenate(VUSR, NAM_, Local1) + Concatenate(VBTM, NAM_, Local2) + Concatenate(Local1, Local2, Local3) + Concatenate(Local3, INTB, Local0) + Return(Local0) + } + Method(ADDV, 0x0, NotSerialized) + { + Return(Package(0x3) + { + One, + One, + Zero + }) + } + Method(GENP, 0x0, NotSerialized) + { + Return(Package(0xa) + { + Zero, + 0x4000, + 0x1c9c38, + 0x7a120, + 0x11, + Zero, + Zero, + 0x300, + 0x100, + 0x8 + }) + } + Method(PTCF, 0x1, NotSerialized) + { + ShiftRight(Arg0, One, Local0) + Subtract(Local0, 0x42b08, Local0) + Return(Local0) + } + Method(PTCI, 0x1, NotSerialized) + { + Add(Arg0, 0x42b08, Local0) + ShiftLeft(Local0, One, Local0) + Return(Local0) + } + Method(VGIO, 0x0, NotSerialized) + { + Return(Package(0x8) + { + Package(0x2) + { + 0x8, + Buffer(0x4) + { + 0x12, 0x32, 0x52, 0x72 + } + }, + Package(0x2) + { + 0x9, + Buffer(0x4) + { + 0x13, 0x33, 0x53, 0x73 + } + }, + Package(0x2) + { + 0xa, + Buffer(0x4) + { + 0x14, 0x34, 0x54, 0x74 + } + }, + Package(0x2) + { + 0xb, + Buffer(0x4) + { + 0x15, 0x35, 0x55, 0x75 + } + }, + Package(0x2) + { + 0xc, + Buffer(0x4) + { + 0x16, 0x36, 0x56, 0x76 + } + }, + Package(0x2) + { + 0x15, + Buffer(0x5) + { + 0x17, 0x37, 0x57, 0x77, 0x97 + } + }, + Package(0x2) + { + 0x16, + Buffer(0x5) + { + 0x18, 0x38, 0x58, 0x78, 0x98 + } + }, + Package(0x2) + { + 0x17, + Buffer(0x5) + { + 0x19, 0x39, 0x59, 0x79, 0x99 + } + } + }) + } + Method(VTGN, 0x0, NotSerialized) + { + Return(Package(0x9) + { + 0x2, + 0x2, + 0x4000, + 0x1c9c38, + Zero, + Zero, + 0x300, + 0x100, + 0x8 + }) + } + Method(GENF, 0x0, NotSerialized) + { + Return(Package(0xd) + { + 0xffffffe2, + 0x61, + 0xffffffce, + 0xa0, + 0x3ff, + 0x2625a0, + 0x1f4, + 0x4, + 0x334, + 0x4c4b40, + 0x2, + One, + 0xd + }) + } + Method(FCHN, 0x0, NotSerialized) + { + Return(Package(0xc) + { + Package(0x8) + { + "BATT_ID_OHMS", + One, + One, + Zero, + One, + One, + One, + Zero + }, + Package(0x8) + { + "BATT_ID_OHMS_FRESH", + 0x2, + One, + Zero, + One, + One, + One, + Zero + }, + Package(0x8) + { + "BATT_THERM", + 0x6, + One, + Zero, + One, + One, + 0x3, + Zero + }, + Package(0x8) + { + "AUX_THERM", + 0x7, + One, + Zero, + One, + One, + 0x3, + Zero + }, + Package(0x8) + { + "SKIN_THERM", + Zero, + One, + Zero, + One, + One, + 0x3, + Zero + }, + Package(0x8) + { + "PMIC_TEMP2", + 0xc, + One, + Zero, + 0x3, + 0x2, + 0x2, + FGDT + }, + Package(0x8) + { + "CHG_TEMP", + 0xd, + One, + Zero, + 0x3, + 0x2, + 0x2, + FGCT + }, + Package(0x8) + { + "USB_IN", + 0x8, + One, + Zero, + One, + 0x8, + Zero, + Zero + }, + Package(0x8) + { + "USB_IN_I", + 0x9, + One, + Zero, + One, + One, + 0x4, + Zero + }, + Package(0x8) + { + "DC_IN", + 0xa, + One, + Zero, + One, + 0x8, + Zero, + Zero + }, + Package(0x8) + { + "DC_IN_I", + 0xb, + One, + Zero, + One, + One, + 0x4, + Zero + }, + Package(0x8) + { + "FG_GPIO", + 0xe, + Zero, + Zero, + One, + 0x2, + Zero, + Zero + } + }) + } + Method(FGDT, 0x0, NotSerialized) + { + Return(Package(0x2) + { + Package(0x2) + { + 0x1c2, + 0xffff3cb0 + }, + Package(0x2) + { + 0x366, + 0x27100 + } + }) + } + Method(FGCT, 0x0, NotSerialized) + { + Return(Package(0x2) + { + Package(0x2) + { + 0x633, + 0xffff3cb0 + }, + Package(0x2) + { + 0x318, + 0x27100 + } + }) + } + } + Scope(ADC1) + { + Method(CHAN, 0x0, NotSerialized) + { + Return(Package(0xc) + { + Package(0xd) + { + "VPH_PWR", + 0x83, + Zero, + Zero, + 0x2, + 0x2, + One, + 0x3, + Zero, + Zero, + Zero, + Zero, + Zero + }, + Package(0xd) + { + "VCOIN", + 0x85, + Zero, + Zero, + 0x2, + 0x2, + One, + 0x3, + Zero, + Zero, + Zero, + Zero, + Zero + }, + Package(0xd) + { + "PMIC_THERM", + 0x6, + Zero, + Zero, + 0x2, + 0x2, + One, + One, + Zero, + Zero, + Zero, + 0x2 + }, + Package(0xd) + { + "XO_THERM", + 0x4c, + 0x8, + Zero, + 0x2, + One, + One, + One, + 0x2, + 0x186a0, + XTTB, + Zero, + Zero + }, + Package(0xd) + { + "XO_THERM_GPS", + 0x4c, + 0x8, + 0x2, + 0x2, + One, + One, + One, + 0x2, + 0x186a0, + XTTB, + Zero, + Zero + }, + Package(0xd) + { + "SYS_THERM1", + 0x4d, + One, + Zero, + 0x2, + One, + One, + One, + 0x2, + 0x186a0, + SYTB, + Zero, + Zero + }, + Package(0xd) + { + "SYS_THERM2", + 0x50, + One, + Zero, + 0x2, + One, + One, + One, + 0x2, + 0x186a0, + SYTB, + Zero, + Zero + }, + Package(0xd) + { + "PA_THERM", + 0x52, + One, + Zero, + 0x2, + One, + One, + One, + 0x2, + 0x186a0, + SYTB, + Zero, + Zero + }, + Package(0xd) + { + "PA_THERM1", + 0x56, + One, + Zero, + 0x2, + One, + One, + One, + 0x2, + 0x186a0, + SYTB, + Zero, + Zero + }, + Package(0xd) + { + "SYS_THERM3", + 0x55, + One, + Zero, + 0x2, + One, + One, + One, + 0x2, + 0x186a0, + SYTB, + Zero, + Zero + }, + Package(0xd) + { + "RF_THERM", + 0x4f, + One, + Zero, + 0x2, + One, + One, + One, + 0x2, + 0x186a0, + SYTB, + Zero, + Zero + }, + Package(0xd) + { + "BAT_THERM", + 0x57, + One, + Zero, + 0x2, + One, + One, + One, + 0x2, + 0x186a0, + SYTB, + Zero, + Zero + } + }) + } + Method(SYTB, 0x0, NotSerialized) + { + Return(Package(0x22) + { + Package(0x2) + { + 0x40dd78, + 0xffffffd8 + }, + Package(0x2) + { + 0x2dd9e4, + 0xffffffdd + }, + Package(0x2) + { + 0x20ca24, + 0xffffffe2 + }, + Package(0x2) + { + 0x17b588, + 0xffffffe7 + }, + Package(0x2) + { + 0x1152c4, + 0xffffffec + }, + Package(0x2) + { + 0xcc8a8, + 0xfffffff1 + }, + Package(0x2) + { + 0x985e4, + 0xfffffff6 + }, + Package(0x2) + { + 0x7286c, + 0xfffffffb + }, + Package(0x2) + { + 0x56d10, + Zero + }, + Package(0x2) + { + 0x425b8, + 0x5 + }, + Package(0x2) + { + 0x331f8, + 0xa + }, + Package(0x2) + { + 0x27ac4, + 0xf + }, + Package(0x2) + { + 0x1f018, + 0x14 + }, + Package(0x2) + { + 0x186a0, + 0x19 + }, + Package(0x2) + { + 0x13560, + 0x1e + }, + Package(0x2) + { + 0xf6e0, + 0x23 + }, + Package(0x2) + { + 0xc60c, + 0x28 + }, + Package(0x2) + { + 0x9fc4, + 0x2d + }, + Package(0x2) + { + 0x81b0, + 0x32 + }, + Package(0x2) + { + 0x69dc, + 0x37 + }, + Package(0x2) + { + 0x56b8, + 0x3c + }, + Package(0x2) + { + 0x477c, + 0x41 + }, + Package(0x2) + { + 0x3b60, + 0x46 + }, + Package(0x2) + { + 0x3138, + 0x4b + }, + Package(0x2) + { + 0x2968, + 0x50 + }, + Package(0x2) + { + 0x22ba, + 0x55 + }, + Package(0x2) + { + 0x1d4c, + 0x5a + }, + Package(0x2) + { + 0x18d8, + 0x5f + }, + Package(0x2) + { + 0x1522, + 0x64 + }, + Package(0x2) + { + 0x120c, + 0x69 + }, + Package(0x2) + { + 0xf82, + 0x6e + }, + Package(0x2) + { + 0xd5c, + 0x73 + }, + Package(0x2) + { + 0xb86, + 0x78 + }, + Package(0x2) + { + 0xa00, + 0x7d + } + }) + } + Method(XTTB, 0x0, NotSerialized) + { + Return(Package(0xa8) + { + Package(0x2) + { + 0x40dc21, + 0xffff6000 + }, + Package(0x2) + { + 0x3c74e5, + 0xffff6400 + }, + Package(0x2) + { + 0x38611b, + 0xffff6800 + }, + Package(0x2) + { + 0x349a1a, + 0xffff6c00 + }, + Package(0x2) + { + 0x3119cb, + 0xffff7000 + }, + Package(0x2) + { + 0x2dda9a, + 0xffff7400 + }, + Package(0x2) + { + 0x2ad76c, + 0xffff7800 + }, + Package(0x2) + { + 0x280b95, + 0xffff7c00 + }, + Package(0x2) + { + 0x2572ca, + 0xffff8000 + }, + Package(0x2) + { + 0x23091e, + 0xffff8400 + }, + Package(0x2) + { + 0x20caf4, + 0xffff8800 + }, + Package(0x2) + { + 0x1eb4fe, + 0xffff8c00 + }, + Package(0x2) + { + 0x1cc430, + 0xffff9000 + }, + Package(0x2) + { + 0x1af5be, + 0xffff9400 + }, + Package(0x2) + { + 0x194716, + 0xffff9800 + }, + Package(0x2) + { + 0x17b5dc, + 0xffff9c00 + }, + Package(0x2) + { + 0x163fe3, + 0xffffa000 + }, + Package(0x2) + { + 0x14e329, + 0xffffa400 + }, + Package(0x2) + { + 0x139dd6, + 0xffffa800 + }, + Package(0x2) + { + 0x126e37, + 0xffffac00 + }, + Package(0x2) + { + 0x1152ba, + 0xffffb000 + }, + Package(0x2) + { + 0x1049ed, + 0xffffb400 + }, + Package(0x2) + { + 0xf527b, + 0xffffb800 + }, + Package(0x2) + { + 0xe6b27, + 0xffffbc00 + }, + Package(0x2) + { + 0xd92ce, + 0xffffc000 + }, + Package(0x2) + { + 0xcc863, + 0xffffc400 + }, + Package(0x2) + { + 0xc0aed, + 0xffffc800 + }, + Package(0x2) + { + 0xb5985, + 0xffffcc00 + }, + Package(0x2) + { + 0xab357, + 0xffffd000 + }, + Package(0x2) + { + 0xa179d, + 0xffffd400 + }, + Package(0x2) + { + 0x985a0, + 0xffffd800 + }, + Package(0x2) + { + 0x8fcb6, + 0xffffdc00 + }, + Package(0x2) + { + 0x87c44, + 0xffffe000 + }, + Package(0x2) + { + 0x803b7, + 0xffffe400 + }, + Package(0x2) + { + 0x79288, + 0xffffe800 + }, + Package(0x2) + { + 0x7283a, + 0xffffec00 + }, + Package(0x2) + { + 0x6c458, + 0xfffff000 + }, + Package(0x2) + { + 0x66678, + 0xfffff400 + }, + Package(0x2) + { + 0x60e33, + 0xfffff800 + }, + Package(0x2) + { + 0x5bb2d, + 0xfffffc00 + }, + Package(0x2) + { + 0x56d0e, + Zero + }, + Package(0x2) + { + 0x52387, + 0x400 + }, + Package(0x2) + { + 0x4de4c, + 0x800 + }, + Package(0x2) + { + 0x49d17, + 0xc00 + }, + Package(0x2) + { + 0x45fa6, + 0x1000 + }, + Package(0x2) + { + 0x425be, + 0x1400 + }, + Package(0x2) + { + 0x3ef25, + 0x1800 + }, + Package(0x2) + { + 0x3bba6, + 0x1c00 + }, + Package(0x2) + { + 0x38b11, + 0x2000 + }, + Package(0x2) + { + 0x35d37, + 0x2400 + }, + Package(0x2) + { + 0x331ee, + 0x2800 + }, + Package(0x2) + { + 0x3090e, + 0x2c00 + }, + Package(0x2) + { + 0x2e270, + 0x3000 + }, + Package(0x2) + { + 0x2bdf2, + 0x3400 + }, + Package(0x2) + { + 0x29b74, + 0x3800 + }, + Package(0x2) + { + 0x27ad7, + 0x3c00 + }, + Package(0x2) + { + 0x25bfe, + 0x4000 + }, + Package(0x2) + { + 0x23ece, + 0x4400 + }, + Package(0x2) + { + 0x2232f, + 0x4800 + }, + Package(0x2) + { + 0x20909, + 0x4c00 + }, + Package(0x2) + { + 0x1f046, + 0x5000 + }, + Package(0x2) + { + 0x1d8d2, + 0x5400 + }, + Package(0x2) + { + 0x1c298, + 0x5800 + }, + Package(0x2) + { + 0x1ad88, + 0x5c00 + }, + Package(0x2) + { + 0x19990, + 0x6000 + }, + Package(0x2) + { + 0x186a0, + 0x6400 + }, + Package(0x2) + { + 0x174aa, + 0x6800 + }, + Package(0x2) + { + 0x1639e, + 0x6c00 + }, + Package(0x2) + { + 0x15371, + 0x7000 + }, + Package(0x2) + { + 0x14415, + 0x7400 + }, + Package(0x2) + { + 0x13580, + 0x7800 + }, + Package(0x2) + { + 0x127a6, + 0x7c00 + }, + Package(0x2) + { + 0x11a7c, + 0x8000 + }, + Package(0x2) + { + 0x10dfa, + 0x8400 + }, + Package(0x2) + { + 0x10216, + 0x8800 + }, + Package(0x2) + { + 0xf6c8, + 0x8c00 + }, + Package(0x2) + { + 0xec07, + 0x9000 + }, + Package(0x2) + { + 0xe1cc, + 0x9400 + }, + Package(0x2) + { + 0xd810, + 0x9800 + }, + Package(0x2) + { + 0xcecc, + 0x9c00 + }, + Package(0x2) + { + 0xc5f9, + 0xa000 + }, + Package(0x2) + { + 0xbd93, + 0xa400 + }, + Package(0x2) + { + 0xb592, + 0xa800 + }, + Package(0x2) + { + 0xadf2, + 0xac00 + }, + Package(0x2) + { + 0xa6ae, + 0xb000 + }, + Package(0x2) + { + 0x9fc1, + 0xb400 + }, + Package(0x2) + { + 0x9927, + 0xb800 + }, + Package(0x2) + { + 0x92db, + 0xbc00 + }, + Package(0x2) + { + 0x8cd9, + 0xc000 + }, + Package(0x2) + { + 0x871e, + 0xc400 + }, + Package(0x2) + { + 0x81a6, + 0xc800 + }, + Package(0x2) + { + 0x7c6d, + 0xcc00 + }, + Package(0x2) + { + 0x7771, + 0xd000 + }, + Package(0x2) + { + 0x72ae, + 0xd400 + }, + Package(0x2) + { + 0x6e22, + 0xd800 + }, + Package(0x2) + { + 0x69ca, + 0xdc00 + }, + Package(0x2) + { + 0x65a4, + 0xe000 + }, + Package(0x2) + { + 0x61ac, + 0xe400 + }, + Package(0x2) + { + 0x5de1, + 0xe800 + }, + Package(0x2) + { + 0x5a40, + 0xec00 + }, + Package(0x2) + { + 0x56c8, + 0xf000 + }, + Package(0x2) + { + 0x5377, + 0xf400 + }, + Package(0x2) + { + 0x504a, + 0xf800 + }, + Package(0x2) + { + 0x4d40, + 0xfc00 + }, + Package(0x2) + { + 0x4a57, + 0x10000 + }, + Package(0x2) + { + 0x478e, + 0x10400 + }, + Package(0x2) + { + 0x44e4, + 0x10800 + }, + Package(0x2) + { + 0x4256, + 0x10c00 + }, + Package(0x2) + { + 0x3fe3, + 0x11000 + }, + Package(0x2) + { + 0x3d8b, + 0x11400 + }, + Package(0x2) + { + 0x3b4c, + 0x11800 + }, + Package(0x2) + { + 0x3924, + 0x11c00 + }, + Package(0x2) + { + 0x3713, + 0x12000 + }, + Package(0x2) + { + 0x3518, + 0x12400 + }, + Package(0x2) + { + 0x3332, + 0x12800 + }, + Package(0x2) + { + 0x3160, + 0x12c00 + }, + Package(0x2) + { + 0x2fa0, + 0x13000 + }, + Package(0x2) + { + 0x2df2, + 0x13400 + }, + Package(0x2) + { + 0x2c56, + 0x13800 + }, + Package(0x2) + { + 0x2aca, + 0x13c00 + }, + Package(0x2) + { + 0x294e, + 0x14000 + }, + Package(0x2) + { + 0x27e1, + 0x14400 + }, + Package(0x2) + { + 0x2682, + 0x14800 + }, + Package(0x2) + { + 0x2531, + 0x14c00 + }, + Package(0x2) + { + 0x23ed, + 0x15000 + }, + Package(0x2) + { + 0x22b6, + 0x15400 + }, + Package(0x2) + { + 0x218b, + 0x15800 + }, + Package(0x2) + { + 0x206b, + 0x15c00 + }, + Package(0x2) + { + 0x1f57, + 0x16000 + }, + Package(0x2) + { + 0x1e4d, + 0x16400 + }, + Package(0x2) + { + 0x1d4d, + 0x16800 + }, + Package(0x2) + { + 0x1c56, + 0x16c00 + }, + Package(0x2) + { + 0x1b69, + 0x17000 + }, + Package(0x2) + { + 0x1a85, + 0x17400 + }, + Package(0x2) + { + 0x19aa, + 0x17800 + }, + Package(0x2) + { + 0x18d6, + 0x17c00 + }, + Package(0x2) + { + 0x180b, + 0x18000 + }, + Package(0x2) + { + 0x1747, + 0x18400 + }, + Package(0x2) + { + 0x168a, + 0x18800 + }, + Package(0x2) + { + 0x15d4, + 0x18c00 + }, + Package(0x2) + { + 0x1524, + 0x19000 + }, + Package(0x2) + { + 0x147b, + 0x19400 + }, + Package(0x2) + { + 0x13d8, + 0x19800 + }, + Package(0x2) + { + 0x133b, + 0x19c00 + }, + Package(0x2) + { + 0x12a3, + 0x1a000 + }, + Package(0x2) + { + 0x1211, + 0x1a400 + }, + Package(0x2) + { + 0x1184, + 0x1a800 + }, + Package(0x2) + { + 0x10fc, + 0x1ac00 + }, + Package(0x2) + { + 0x1079, + 0x1b000 + }, + Package(0x2) + { + 0xffa, + 0x1b400 + }, + Package(0x2) + { + 0xf80, + 0x1b800 + }, + Package(0x2) + { + 0xf0a, + 0x1bc00 + }, + Package(0x2) + { + 0xe98, + 0x1c000 + }, + Package(0x2) + { + 0xe2a, + 0x1c400 + }, + Package(0x2) + { + 0xdbf, + 0x1c800 + }, + Package(0x2) + { + 0xd59, + 0x1cc00 + }, + Package(0x2) + { + 0xcf5, + 0x1d000 + }, + Package(0x2) + { + 0xc95, + 0x1d400 + }, + Package(0x2) + { + 0xc39, + 0x1d800 + }, + Package(0x2) + { + 0xbdf, + 0x1dc00 + }, + Package(0x2) + { + 0xb88, + 0x1e000 + }, + Package(0x2) + { + 0xb34, + 0x1e400 + }, + Package(0x2) + { + 0xae3, + 0x1e800 + }, + Package(0x2) + { + 0xa95, + 0x1ec00 + }, + Package(0x2) + { + 0xa49, + 0x1f000 + }, + Package(0x2) + { + 0xa00, + 0x1f400 + }, + Package(0x2) + { + 0x9b9, + 0x1f800 + }, + Package(0x2) + { + 0x974, + 0x1fc00 + } + }) + } + Method(VTCH, 0x0, NotSerialized) + { + Return(Package(0x8) + { + Package(0x10) + { + "VPH_PWR", + 0x83, + Zero, + One, + Zero, + 0x2, + One, + 0x3, + Zero, + Zero, + Zero, + Zero, + Zero, + Zero, + Zero, + 0x15f9 + }, + Package(0x10) + { + "PMIC_THERM", + 0x6, + Zero, + Zero, + Zero, + 0x2, + One, + One, + Zero, + Zero, + Zero, + 0x2, + 0xffff3cb0, + 0x249f0 + }, + Package(0x10) + { + "SYS_THERM1", + 0x4d, + One, + Zero, + Zero, + One, + One, + One, + 0x2, + 0x186a0, + SYTB, + Zero, + Zero, + Zero, + 0xffffffd8, + 0x7d + }, + Package(0x10) + { + "SYS_THERM2", + 0x50, + One, + Zero, + Zero, + One, + One, + One, + 0x2, + 0x186a0, + SYTB, + Zero, + Zero, + Zero, + 0xffffffd8, + 0x7d + }, + Package(0x10) + { + "PA_THERM", + 0x52, + One, + Zero, + Zero, + One, + One, + One, + 0x2, + 0x186a0, + SYTB, + Zero, + Zero, + Zero, + 0xffffffd8, + 0x7d + }, + Package(0x10) + { + "PA_THERM1", + 0x56, + One, + Zero, + Zero, + One, + One, + One, + 0x2, + 0x186a0, + SYTB, + Zero, + Zero, + Zero, + 0xffffffd8, + 0x7d + }, + Package(0x10) + { + "SYS_THERM3", + 0x55, + One, + Zero, + Zero, + One, + One, + One, + 0x2, + 0x186a0, + SYTB, + Zero, + Zero, + Zero, + 0xffffffd8, + 0x7d + }, + Package(0x10) + { + "BAT_THERM", + 0x57, + One, + Zero, + Zero, + One, + One, + One, + 0x2, + 0x186a0, + SYTB, + Zero, + Zero, + Zero, + 0xffffffd8, + 0x7d + } + }) + } + Method(VTMT, 0x0, NotSerialized) + { + Return(Package(0x3) + { + 0xb, + One, + 0x5 + }) + } + } +#endif + } + + + Name (WAKP, Package (0x02) + { + Zero, + Zero + }) + Method (_PTS, 1, NotSerialized) // _PTS: Prepare To Sleep + { + \_SB.ADBG (Concatenate ("_PTS:ARG0:", ToHexString (Arg0))) + \_SB.LED1.LEDR = Zero + \_SB.LID0.LIDB = One + \_SB.ADBG ("PLID1") + \_SB.ADBG (Concatenate ("_PTS:LEDR:", ToHexString (\_SB.LED1.LEDR))) + If (Arg0){} + } + + Method (_WAK, 1, NotSerialized) // _WAK: Wake + { + \_SB.ADBG (Concatenate ("_WAK:ARG0:", ToHexString (Arg0))) + \_SB.LED1.LEDR = 0x04 + \_SB.ADBG (Concatenate ("_WAK:LEDR:", ToHexString (\_SB.LED1.LEDR))) + Return (WAKP) /* \WAKP */ + } +} \ No newline at end of file diff --git a/sdm845Pkg/Binary/845/AdcDxe/AdcDxe.depex b/sdm845Pkg/Binary/845/AdcDxe/AdcDxe.depex new file mode 100644 index 0000000..743af29 --- /dev/null +++ b/sdm845Pkg/Binary/845/AdcDxe/AdcDxe.depex @@ -0,0 +1 @@ +B¹7®E‘L¡–ÙfŸÓG£k0_ú}ôÄJ¤}ˆ/‚ì0 \ No newline at end of file diff --git a/sdm845Pkg/Binary/845/AdcDxe/AdcDxe.efi b/sdm845Pkg/Binary/845/AdcDxe/AdcDxe.efi new file mode 100644 index 0000000000000000000000000000000000000000..0c09b920dc41df86b0f6ee4aef3659dfa3ca13a5 GIT binary patch literal 40960 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 literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/ButtonsDxe/ButtonsDxe.depex b/sdm845Pkg/Binary/845/ButtonsDxe/ButtonsDxe.depex new file mode 100644 index 0000000000000000000000000000000000000000..f943d352a92f2640dc80948557c912e83a8d80fc GIT binary patch literal 72 zcmV-O0Jr}F!FO~x$7#|LjyV9J$!T&s0!3VU6|y14L%Mu|FYaIEnF14=bzr}!{zkXv ed3*aaUGoBFTcn$$?;J#<Q?8Rdp(zfI7ST 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 Th(L%yh(L%yh(L(ImI(X{IzxQS literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/ChipInfo/ChipInfo.depex b/sdm845Pkg/Binary/845/ChipInfo/ChipInfo.depex new file mode 100644 index 0000000..26bd57d --- /dev/null +++ b/sdm845Pkg/Binary/845/ChipInfo/ChipInfo.depex @@ -0,0 +1 @@ +B¹7®E‘L¡–ÙfŸÓG£|Þaž'™(OŸ=2Ø \ No newline at end of file diff --git a/sdm845Pkg/Binary/845/ChipInfo/ChipInfo.efi b/sdm845Pkg/Binary/845/ChipInfo/ChipInfo.efi new file mode 100644 index 0000000000000000000000000000000000000000..ea036407a7c51b39ad680c20bf87e4eca2bee93d GIT binary patch literal 40960 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 literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/ClockDxe/ClockDxe.depex b/sdm845Pkg/Binary/845/ClockDxe/ClockDxe.depex new file mode 100644 index 0000000..14cd96a --- /dev/null +++ b/sdm845Pkg/Binary/845/ClockDxe/ClockDxe.depex @@ -0,0 +1 @@ +B¹7®E‘L¡–ÙfŸÓG£iv° —zH¤µ(Û{EÎñ \ No newline at end of file diff --git a/sdm845Pkg/Binary/845/ClockDxe/ClockDxe.efi b/sdm845Pkg/Binary/845/ClockDxe/ClockDxe.efi new file mode 100644 index 0000000000000000000000000000000000000000..3a448e13f0e0918c903c6682fcffe576df86f3e0 GIT binary patch literal 266240 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 BYKH&- literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/CmdDbDxe/CmdDbDxe.depex b/sdm845Pkg/Binary/845/CmdDbDxe/CmdDbDxe.depex new file mode 100644 index 0000000..2a47cc2 --- /dev/null +++ b/sdm845Pkg/Binary/845/CmdDbDxe/CmdDbDxe.depex @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sdm845Pkg/Binary/845/CmdDbDxe/CmdDbDxe.efi b/sdm845Pkg/Binary/845/CmdDbDxe/CmdDbDxe.efi new file mode 100644 index 0000000000000000000000000000000000000000..9a76ff42008a447aec0c014163da71ef496eb1e1 GIT binary patch literal 32768 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 P0s#a92m}!Lmk{{>oegiv literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/DALSys/DALSys.depex b/sdm845Pkg/Binary/845/DALSys/DALSys.depex new file mode 100644 index 0000000..098cfdc --- /dev/null +++ b/sdm845Pkg/Binary/845/DALSys/DALSys.depex @@ -0,0 +1 @@ +ÐÇåô9ÒËGªÍfïv28 \ No newline at end of file diff --git a/sdm845Pkg/Binary/845/DALSys/DALSys.efi b/sdm845Pkg/Binary/845/DALSys/DALSys.efi new file mode 100644 index 0000000000000000000000000000000000000000..8bfecd4f41e2376b9288483ef9b8f62bacb438f2 GIT binary patch literal 294912 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 T2ZlK?%z;M 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 literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/EnvDxe/EnvDxe.depex b/sdm845Pkg/Binary/845/EnvDxe/EnvDxe.depex new file mode 100644 index 0000000..2a47cc2 --- /dev/null +++ b/sdm845Pkg/Binary/845/EnvDxe/EnvDxe.depex @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sdm845Pkg/Binary/845/EnvDxe/EnvDxe.efi b/sdm845Pkg/Binary/845/EnvDxe/EnvDxe.efi new file mode 100644 index 0000000000000000000000000000000000000000..a13ca00bc793391386a2c840771a5a405e569acb GIT binary patch literal 69632 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 U90VK$90VK$90VK$J~9aWAA*NcEC2ui literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/GlinkDxe/GlinkDxe.depex b/sdm845Pkg/Binary/845/GlinkDxe/GlinkDxe.depex new file mode 100644 index 0000000..2a47cc2 --- /dev/null +++ b/sdm845Pkg/Binary/845/GlinkDxe/GlinkDxe.depex @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sdm845Pkg/Binary/845/HALIOMMU/HALIOMMU.depex b/sdm845Pkg/Binary/845/HALIOMMU/HALIOMMU.depex new file mode 100644 index 0000000000000000000000000000000000000000..d1a2d1459cfdfc02040ba0a378112746bb4af792 GIT binary patch literal 234 zcmZSjW*?V!#_fvWEDMGS>h=eHnKqu;rRJ1>MR3n^hKA!d9gR$z&;^PLR?6PlYv4We zW6^@G`Tw<;+Si;{M=_%VUEtxC``h(d=exA;n<4RM;&x-E$I2;7#N9r6?)-mo|4P9K zOQy}}wn+SNOi4<1@!MKZyUXydN-)!-j4-*z7NEmELLK%M-RVv{&DYhtPV`wg?Pl8i L%kGPrkpKq(v_@pq literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/HALIOMMU/HALIOMMU.efi b/sdm845Pkg/Binary/845/HALIOMMU/HALIOMMU.efi new file mode 100644 index 0000000000000000000000000000000000000000..20cc2f0f3ee61c5f0077095cb623d92d3ef0f129 GIT binary patch literal 45056 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 literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/HWIODxeDriver/HWIODxeDriver.depex b/sdm845Pkg/Binary/845/HWIODxeDriver/HWIODxeDriver.depex new file mode 100644 index 0000000..d24065d --- /dev/null +++ b/sdm845Pkg/Binary/845/HWIODxeDriver/HWIODxeDriver.depex @@ -0,0 +1 @@ +B¹7®E‘L¡–ÙfŸÓG£ \ No newline at end of file diff --git a/sdm845Pkg/Binary/845/HWIODxeDriver/HWIODxeDriver.efi b/sdm845Pkg/Binary/845/HWIODxeDriver/HWIODxeDriver.efi new file mode 100644 index 0000000000000000000000000000000000000000..094cbd9dbce71964769bb194a4693f86afb45e3e GIT binary patch literal 32768 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 E0c_9-lK=n! literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/PlatformInfoDxeDriver/PlatformInfoDxeDriver.depex b/sdm845Pkg/Binary/845/PlatformInfoDxeDriver/PlatformInfoDxeDriver.depex new file mode 100644 index 0000000..d24065d --- /dev/null +++ b/sdm845Pkg/Binary/845/PlatformInfoDxeDriver/PlatformInfoDxeDriver.depex @@ -0,0 +1 @@ +B¹7®E‘L¡–ÙfŸÓG£ \ No newline at end of file diff --git a/sdm845Pkg/Binary/845/PlatformInfoDxeDriver/PlatformInfoDxeDriver.efi b/sdm845Pkg/Binary/845/PlatformInfoDxeDriver/PlatformInfoDxeDriver.efi new file mode 100644 index 0000000000000000000000000000000000000000..125906cac08ba654ff4b4cd19ffd6550f5bd0186 GIT binary patch literal 28672 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 Mh$9e3;0qD>Kc(t@lmGw# literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/PmicDxe/PmicDxe.depex b/sdm845Pkg/Binary/845/PmicDxe/PmicDxe.depex new file mode 100644 index 0000000..743af29 --- /dev/null +++ b/sdm845Pkg/Binary/845/PmicDxe/PmicDxe.depex @@ -0,0 +1 @@ +B¹7®E‘L¡–ÙfŸÓG£k0_ú}ôÄJ¤}ˆ/‚ì0 \ No newline at end of file diff --git a/sdm845Pkg/Binary/845/PmicDxe/PmicDxe.efi b/sdm845Pkg/Binary/845/PmicDxe/PmicDxe.efi new file mode 100644 index 0000000000000000000000000000000000000000..ea02b91c4c2f4b3259245ebb2523d4acd588681f GIT binary patch literal 200704 zcmeFad3aUTx%j{KISDx@C-VRy0ZvXBOb*Bp##2Rh0<;W@LU3&FB>}Ao0Wl7(L6HO; zfH<&~YK!-|1X?X8YNZyfX?rgTwicy>XtBMw?KKGwAwdQ~O}x_lKJOmF$svHf-~WD( zJWtsBtnpp%de^(&X{~+54eI~=@4BS_bJedZeuaUrFz^)yzQVv)82AbUUt!=Y419%w zuQ2cx2EM|;|4%S*)oi71Y;gA(&2cqW`CKHu$$z2n@BpQ@ z{NuaLI}ZMeRuQDCijwede*B0 zr|;Inr)Mfd@&cNA^RQbLdNjQ|a6HjyachO`ajN@poN7#@eQBdTPH$}Q>6yHo@`vN} z?s=4*uX*>^DfQCnyNklKX-M0LdwQPyA~~n4Yl#;A^jcT=)Rpe=>APcqMKgL{9dJPE zf8cjNf6}cryf?`8{AX^}(3Y${FYUF&spmh~79W1^NpHCAQBSyGeNNZJOtt%G$!bfd zTLo8WgEn10NbPQMr#F0{sVy1xnz60eePZW8wYYtm+xYBV)i`jwW@w2ui(1?R8`>y$ zh<-A)dtb~7D5Hcr9pL2an#*Wl?Cr}27aoqSN$VW$GCG#1?x5gdcy__f&E$cP0`>d1 z<~1i7ALb;4nct z&AaKnALyT#_4F)$u30VIR-mffyzjYKtNK0l_xx0=D*Xq)CumiH-nXlSy0>}%koOkeKjgiQ_n9iWu95dn-fz@W>OSH< z7rM#gPc@|)wVs+q#Ya+&5v&^)bjJ5m)Ryn__Y{AgAu4T-rY7CU8n{o_jP0fMi=g?! zHt6S&+u!iMJG0>fcSge&%2rTj=lXAU6|gRXnrDB9re0$G7^m-^#hRMQ+A0orEh!3r z5jVR_)?FkF&4YnqPMQI?F=2>dP4>8B4}7sIDg61($<#}sek$#xu{P7gr(caRq`!Ok z`;_%4eV%f=8oF3J;q}>F8{d`WotgQjOpETby8r-~p!uvdTdfi+tvo1fZ z4F5>?iQ(YAe1|gPNn65i$}LXJs9EF>xKA8QuUWK9OW%KjHFJC6qgyizjjf-tCc7?D zjsFWSx~V5~@1%XxrwmD3;!{7(rCs4!f%Y_`jruL_!3|RGPf2P^EwJXsDWf<}9e9)9 zqun`mQnu8q4g`)%d4J&>r00^}YV(NK_^nhrzcb(&nGOEq{%OsmC8*50Z72NGMlc^2 z+4HxL`TL6w-f%Uz(NapaF?aI(q&26pxIdl1*IiG_X0@M@Uki&BYu+I8wm_K>?>;nVAtA@m~j@V2IQGpOAK zj5UAbg2wz9HOa4OoqL(HUK+hF-Ppbu8m-SZZh$srokZp}mykCr($Z1fHeT*|@xX+D3SId{qCnS5rTCkTKD& zzgB6T>)<)k*PS&Rw*HWPK=zd>Oj=Uo@x;IYk7CN1w(mQ2eD`0MyyIgfkpo`(W_s%1DD0_-_ zbH^IH`suT5D|thP8R35N0#fgxVa5(SZ;W!)ZPU^__d<91%$J9;&ta^7&DANiv@UXe z2>$<#`ZeQ>$NFizS=xSctWjs@Nqz905fD6PsAcCQHEMHkP*2>zvDN$_^IZeu* zj4L*2?9`S2$@;bAK#|8zftx3wF@KEuX$$a3*~jePMUiVv@bWA$?3!RKw_yme`q0c~M?;fCzM zIN6%y#LmuyXQC`2}&|a~|F{+>W3P>Kf^4oc3 zcjx>`cxWOp6)80d6`@yN@5Rl&sYY2W^}41SsnnBoBx|(Ytp(K@^_02i-(x+^G|#@R zlJ;5ZnYR9xfZWcULT|g>UiL-k4!*ZbjhSW?*N-$>;px(Dsq(+ml3etnvsNS5%k7je ze|c6na_&nV;9cGUWVg!H(I<++LQ9JJ7H#?ar7fYW!|(%Hdp}cMKZjTDYJqoZ2WNHv zk#wtWdV@nBJ#Ov5CqC7E>Pq&OyU`zBRi=C*>qh9*l225F=jjEF=qTOo;IJZIZxni4 z$DC!V<8MuN*L<80zNDX4Xa*T?i}1jyD74(@dSH4LbH$?8`sV680Yj$1TVopZEl~GuaP{+3PiP zuYa6=`&%0iq8ptH)_;$Lb!W)fJ{@`j-ZjAL!0{IK4+GoAv&QOecqFR6Io9+cg)1ZK zze;^{s)kKx)sJtuH>!TwWmf

+3)siE$y`o4x+qUtx>^{L)b( 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�^);4_)^O@Fb|8C!Se+9CL(_**N7u~)NvF50^@ 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

t*dG|mju`ix81&j>yAKla(P zCj^hx4fsx+!R!@%68(ecx>wVX$YJxu(B*yPupJKHRNSYKP^ zITJgsjxUQ(+#Tz(?bS%+-+Ru9J(qbQe2PD4*{v$ETT6WICsn4uV}$X})8r5_MD(}k zd!ytT5oG_8tOM~iYrd3yv5aK~@=ri!ZgQ^@kh{G9U2NGF#)3IkIEQEdAJgL3y+A*t z%oW9R7Qo}EgWa4g;~{mqf0*^3*ejp*c=YZ=F?L(pRp`9fL76{0Xp{E=V?*67>_-bd znQ~X=mG?C;zQx#Uv9)!`SH2e`FPZD|-L|{i;6>={ffu2@in8T~z4wHc^F7ig_1=S4 zGaeNq`|D-wkH~><@iX4Up{oXAliamMQ@(8N0(t*UH2Z=W_6NNCW+i(X_B}y(u+AZj=L_YG z=FViXIe~%KGS6BZj&+AdnYk1J)~Sd1Q#BXrn#3l^rQn4HMw~=++U4!f+Q54im=7Wg z?4gm1Q>3|C6wkrTrcdP#HF-AuSw4jO{mJ{+=<}`g_gyV*-LKK%v!0&g<(+8z3gPh=(MCskv?ONXB5S?ovCJA5T7Cq0_{ zx`{D+lRt{;xCy?BqWo?2yRe8njpD5Q^5m$1kryMjOKiRP!w1MUOC)~@KbV||q_p{t1$%XnbigpJXx%NWuL=?FOLJQa*zG7}+XBzok%2;@(n$K`^ zr*de{-zl^3in!ano^$1cyi-$X+)Yg22xXOw6XTM#75!1^{q^Uu(O&=$-l1};xf7Ui zC~wuKtgCuQ1v_~URwZ)=Tc4r~StN(z2II?s@29V_pOIW{`8^J}#9NAi!`B9T?=JC_ zvG8T-&IZw)trO85;&RdGj_BxiczSX54ejQ0vIF*#UyEIufu3H0zFy8g_Pas!*Vv9g0x_q;b_QZ$koyYPyaN1MKt*(<8 z=P<@Y_6f2tsC238cJt@d0`FnJ-lx3eE!HjhY(Ov5DNBsNCw_BXx{~u?>zth5LNg`; z#}6zoD)3%DpWj5cGDcl@YE(BL3;7*M*Oo>nJZEO$+wk5t_#}RyokM2K6a0y6e2!!My@KzxgS|it=Qct1 z2eKECbDEjPIZgbsQsM-a=&!KYt-5&k$n&@Qb6&WazyHJ8xyMCaW{>~* z%zz9G2neD93WJ)=cn4JI=73r%-Bh;iTW#Q_LeY{gyOi z+is|}tJwv!-2LwEuK=x3ylz%fw*21ba~THL`h9=jKjt+vpU-nS&w0*s&Uwx`&v|~; zH~T}*iEp~yn^!;6o3|xN+NjuCXN#<9xYnC{iuPXR?8Qdf&gkDa`})h`vNc;|;V5Xe z%Hp?gjr47hmeaw}tz zTq*VB=y~>5Z{Bk^dGlu9(l`4Z#^S%hoA=T*Z{G9Z<^}NbBCr?gV{+EKklHu<%hb5+ zoyu9*GnEHM*Y9$#`0_a?3`d937wOn=A3LI$H3>r-dppqIb4w-NE4@% z!KuJv;qg`QxB)yqOTPk#g-aLoFaun=z@_2K>%wE<&)`w|)ZoDoeyz-S5vSxMytr0Xt!1``mKDr z+va6Ykmf%V(LYP%gY3CK#1=GX?!CFh!|q4Fu34X?PEUc~iEd=Yj&*OtxQl4qNZDWF zuSWkecx;@$pFuAU%;6JSKNR*Q5^q{M$~WJf1Bn6p1|25!Y`5quk>Ceiw$_0>aW5I; zo3eAPuiYMpoyqX0%l)Im6OO#3>JM$v>i+~B)nnAujbqpYBiGxOg}a~U-h-Ci#8GdR zeK9fB$fp;#s{NvuNlf)$!?`P(zFy|;$DYu;@c7O2cP)0}X8W3TTeN8Xj&dv3=Nn|H z73<^uEB0vgwsUvcvEzmz2mf7vlYQ)A&MSULjvBGmJjvOi4%1$<9vpH1$l6uRD|_9J zH#cgWUr)-a>bLvy=7_4xJ9#hq^Ff=lrmsD!u>Jn9}Pju=_x06?JgO<07zE<;mHSPFs_XeJ1Ph8CTGGZ%=WUnT__tKX5y9@1{ zOUKUeVNW%B%R%qL1>Bol-Y>4#+vLcb_g^Ik-lom?{*LUE{rdJAWsCK=Y|$PkI_OJ1 z!rdFQyn$kMQQ1sn39ZqegQsF6)h3y@9{5 z&g$;;y6e%IWp6OouADza^vzl@;JxIizoo{@*t5yiAo~!BJJ<6L7b-MM@N#EOPedH?eWG za0Y;Txc%tLYmv93pUvjI;-H{{%aXAyl?ao>=fjiH?0ul!!(F#3Mo?E4V*7WS8;xAc-TPu{>$EotAi zT8y*s0q>)0=yL)6iOzh9%nS3u+8TYD`R1%j)?nVtGweI%&FsNNt{vvxm*~34g1|8T zAJWUFv9?v#9X!kASqsljVDl9ndpOSq@T``;PxDN(^>Jcn3Y?_OX-x%EdG`gsMSqqy zHc}qtEAdO7eWBZ((>&x73h4W2#@!4qMVI~>8}JVBg^wZYKWSU~%C`4)5+fEkMcq`s z!)fO$ese}&Z~GYSoUfaHf5!xTEaXx!b<~(5Z=fDK+PM6%@=WBBBlAkPU#bHX0&LAE5y^RmUx>17W@rntQsHSYsY0Xor?SMz*B|5b9}YWB+< zz{#=aTOb#kv7eFj5QncV06lqiNk6-$t75gZT>XvUHu>B6(tY!o!$(+iEW_uV(wFi<{xIu4+KL}}rMvaVk^|#xwz6S1TcMn{d4zeZ(_)>+fa@go(qU6dau0{cL|sq6 z@mCJ4xt(#1x@lg;m*&`P>8i+1zq|FZ+4ZsA#@IG2j!zNaZmo))Ql@Ez`}usXX=M*B zOq;%RVOsX^3>n{&{Nck=EunahE^Nn9v$T(z-tXrK%cJ*dILcKRINBKsoC3o!WO^8F)+~-l@tJKl&}Qqzku}oRHF06SQ+$gY za?;-McnAL_e@EY}WA=E?ka3sff6S`54P1O-_A?V-sEvM>>TuhF>*b@xu_?m4%PZ2R z-%*j4Jqw)F@L8|Lmd$gmN-j%(B>7OfFZnK|l}WzN&&lhz=Xht)2`$bku?F&gWYwDF zaB?w>pE#)I&Z-z-QCU0xV?o7C`UfBST+Bqqg{~!8uXivPhZbuovc6+kuj@5?Sv>2s zOtTj*=QA?nk>pkBz~EYztl2buy^f1h<-3n`7G*5frjN@}<&%)B*T6@>b=F9wvcoez zNS**3E2?_?o}1v>x5lCNW3NuUE>TSlg-2-ce0UxTFDyL1IBj|Zd@{aAVbm%uzVIY| z*s=$->0)cUHvS^tab%3>4ZHtiZpB@U&sr-pp}{clyIjX_n2z5WjBmhVdy3#=B5Uz_ z*63WuwUm#H^=ige$k?JXRwQqxpBdn{k1k)+JhB!#m&y4{2l`+n`d}3H5hpryH1@n0 z;uGw?@1c{8_T;nTCpl~Ho%KDsVKiecMRrS$gETF=z4e!zfi!hJ(GlJv_x??VVe!Z8 z5uQ4JmtMhnT;x)z=Suf+d$O)?mGwj)eCw{KQY zZ^z)J5x(Z@$iKfd#&_hGDvyK{@>6=^Nd? z-%RrcPB>LZS<+SR=XYPUW6;bVzAr|ojzPP6`0ix9U)gQ-585WWzaSn19l4`5TXk&M zebbJo=BG~oq!L=wv?$k=m(~or@s0{?v7_H%uEJPv&Gsi=_3(U|?d=#;F}UJi zygR7dv{m^J*Lee1k#plPbos^fDeiwE)9#owJ9mZ_9+i{+N%G-=e@}jzrTbK6|CG-r zTv{W!boU_VBsStpy`Mh#U8G;>U*PEN`TNbcReWU+_uK$qd>#0A0>7riuj%}-2!6QY z!4%*R*Ljf5o>DlwPl2E z>%jlngQ+PN4cS!xvR&Ba6YZ&m;mp|t=IiM`Mb6)=Fz5Pys{AtMdnP{eJ0>m49mBWa z=KZXt$;a7`+yQPx$LwH_@(B3(j##9|KDQPg29_nPg)zV)W2yoNucJo>Y2?{(&)N^B%vJCr78>{wd$_TyQS_8I7?YmUTdXO?~p6 zXIKkAaNhL@ZJb(|Q87^J;^X=ZSk6)AQt*2l_)V^uSs}QwaJ=X|9M9HqoSf3%>?hTp zT-ZW8(${t1SaKT~{ls`iFeVv;&rOB5F<#;=8Apsq$|c{QQDKygWu0E+`JO$b z;7M>QGWsrX`5p5bo%KlaDaLscn!MTWUAPgPZ9I?OMNirW9-h(HaeosBDTQAx=r?^f zv!8P13?`cJ+m|#~6f1v$zU@M65E|fL>95}9`-J5w=XVTYl+LW~_dWEd_XM`>) zZ7CY`AUFzQ#``PS*Lwa2?%$-}3-Q)4O*PbQ~&=1olsW{pkn8Q)b?kN($4|vR&X=g$JP3~nZC_yjJMG_AnQHK0ojy_vpYC(3 z^BMZM3|S&Lf0wa54qyA1-oC`UCDQ)D3d&>;y!k=aLx0aU)}qkg-=V)0o&HjE-uy>> z4Thy80sltY57+5$qI2LPSB2>Ge`LKq4c!$eiO)^)T*hExJao zOHM)-6d?$X_wA*}RJ#?z;*i-QyYi zo!oKry`Dc$&RiyY{tJKUo#?EeYsqDYUhFjV-fPfnD0?HZt77x1xIqQNfLClsHvK!z z^W&mx(5tUTzb-`2o`SwT85_?e;%M!B*faE`uTjj$Mr_Eg$oXd-uFeo6uuK?{CI7EjDej z4NE-9r`WB%$lw;9i(Oj$GI7}cL>{yaE^r?mk?$_OSaZ)EuH4|hA@uG6Vn*=AcE5LE z-N*QpWBZ*Ay-(Mj>2*urZRoXf2A$k@PKi};xb`LY{_oWICHSo8&E)=STXb0!c&o;* zEU_yJe{p4$#91WzSK|BF0AEVy*?lurpoHfo)RQ?f=Y{jth7ZI#7uUI4_Ct}(PZaay zWWJ)AH}*n{dXmG{?h~AR2Og|*zTc2{=UePHXMynt;FbLC=h&kxnyDzC)mCwB3f z%+dFp5zSYTOT{*s=r5!E zO7JFniQtIbmL1FwXJu~+o|U~?kFQFGey;@&*MN_!!Al|dnF9SzCf}<;zi#GG{2~|1 zb6QWETk%WJS>d=6m;CMt3dfAhlNr-n5Q)V!yAkk1t~AFRyp7$5`X^?as!Bs zLTF0jEK9(nycd2o7kDN9EeP+9u|arczR&EJc!l2nEbQUp)7i9lazM{ng$})k{SNU2 z+h4KZnMvG-z|$C|!*dLHs_09~C8|X35lHjks@~oPOxvjwb2+)6G6wtV@FmxoFv(f; zdBAk++fE%OS8c9uGH^=WGn|=wm3p2xCkKdCFP{Mn@3H5_XR{rAoZ7Wi`83Wo3T{+Y zly6j>#Ais{{J4WsPGHD6)44tBOy{;YC_jEBdPys1zUaS188|t^9G27n>3^F2zjLY2 zP5;uj#Ae_1=0tZBSJxHCx$+|^49#6hEqegv=g;!mGX8y}o9+ju(9*OxYC zyh)s#UHNA6Zq{qwymx?U#^c<<)=Trvd{oO@N__6DHCo=|Vay+G_v<4u z!(Tx?p)N#00Yb`}~qJ@R(DM8H0UlyH}5c71|P8&ClL1F+OI$ z@TM=<+c!5*|L_yG&2g-=)<=x9_QJ24ACmL-&icboMAf%G5?L?2DiT@d(bU6p$(z+Y zAROB2qsI$(@cWg6_BP6q@=;;@Wt{ia^<`5s$Ms64u8>3_p0CW7TvJAD_gv!YJj8dW+xynI@z=2~@`x23UCdoPE$FaQr0m?exs`jhaxeCY z$`zWPPqKyc|KE+*0&U}$1ioF5&*~~IumMSr$QL9u)Y1qx5o27uKxOd66e<2fBPq#$y9x7WL)Sg zoIg`pmzCw_e#AV~!#|75HJx_~FMdzvi*kGTmht&Gw=VzjLC1fOuWS_ccA916*&q4c z{uI1LbJYApo`X*Z;~zICHy3+i&R2h)UjM~Y)9PD!{?(sj>kmC^_kHnHPhv8;HwZmX zd`l;TIAC1N!AWqi862E?*4xn&ygvfo4-K&UPJkb&cl_;W&ekP*j=$XtnUdf?u{);z zk3-a2S=XbW1!Q*4NN6-JghuU)y^p!x8Rsi_dYsNjKWgF*b?E3hWWaXhXPqrZy0W3>W#0ZhC4hd|=kC`S^?CvV=DYUs|7`+?Dtx-{yNMc1`qzQ&XV% zDbT#hGn-g2?3MU%q=ulybk&U%5+&2Zpa3Fy816!dMB6!m~f5?r!Q0z+bh6 z|0jV*)}_qFA>fg^VencRx{b0-k9tjkw&vXvs|ed+|EJzx58e(T>%ze?&3x=7<{*~eVyB%&AF}?*|K<^$M`P?Q zhOBO2jNEk{1}~Hx&+N;)(^hS0?DNZ}Ui&q6G%MfQ;g8PG z8>0LNm=}R3(}EA2vPPQLqU%&6`}P0_cxgh;)-FZnOa3)W=FdUq3#{-dzuZOFMp>z| z3E4ycO}2Q>wJ|=4W0Ba&D#j=AFkY2L_^2^o7W|>HE}^k90-NB}f{!`u1|PW9b)^{a zAaXmM@1KIV6nGWz3XCGVx1pa9Yoo&&N$iinYQZVvk}_)<3u~`Q)?Pg{6bY}I0q`^V zxRCV)wQ^rGx%ZI6&w*bVhv>3a+z)hf{@M^4@iemzg6kte31c0^{0HfY@n49ZE_4n7IBTUp=FzxYhBZ0KgqggN0r*mfz>W-P z+77+fXAmb0>=H{O^z=1&8p5}%Q=$KjHqFq%z2t_XjHQE1Jy`?L(stsuwhbYUeFNwA z1n(uxjnMC7=!x**CgH;$Ku5$S3%_n~6{Uzi*H92=+=(c0aJ|5{^l#DK%aoV115#ef zx)vn+y2?BJJt+S*xPqV8hUQ#6?UcPn_j6m;8Hi25{5bUTIXSLd;H%Nll<=B5Y!Hmi zQ)R-P4SzshG@S(QlfZHEoUVs9xJpxf67SlRxbSyuRnw%N>1m{mjnpkD z8LZzcGI^UfFM;;Uc(QE0hPU&{`U@Wz=FC5ArjpsY{Pum8X6ySvv9<)b>k1NXvP*4wzJ+*}9Pv%1Tp zAb&~p3xAn3+2EN%!wDv@)OicEFc%u0Ve!Iam-`A*4V_JBcn0H_`LJ?vJNUhl7*N3j zbR3M06x*Mivo!dok&{aI10!3{&oK<_oC%k`Z5Qu6QmNd3lsGTugmye<&<8SU6WrAj zcNNHtpAe{24*eX4;C|AE`TCuuOPC8;*JaT4JjU`qdxGHlTAPIaDR-l$WsP7Q<7jUd z^jCS#UVfTqXY9V@O6=e*z%n~7|Nf=FubQ^(imGY%sHOVdCc@i`9NdSDUbC9#YZg>Z z8yDZR{0w`l1KR3jo!>y$&qLSYp>&D4dS`dXc(!nEXcPAA2qe_Ve8bolitFKB0@RX&1VzO$0}e z#fJs%RcegPjo1#w&aVI7Ff0!|au-W?JxTb?H|R;{+tU6_`_i^WZ*9K=Yj44pYmT{Bj^^PHcD9^!ZU>s-dG&x56Rvd*J~_b^^v zkARP-!|UY!5ooIxI?;7mSB3Hwq-#Fnjj++BWtGvt4SEpS2&}cCy2JbEoQAwH_6L^E zd?j^4&#Ga2YZ9AV>BXGygdc2REz-7U`;Wv?L#r}>bBuMN!{J)2!SCf>n6#`y+A?g} zX%Y*h-xFZ*j^NqY@&BGnU-$twyrzTn>t=rF!y`FI_Ryc?QSQu!Cx-S}5$`LQ)XUWE z53NsCqv5-&t%QP2b7yhf9c4u&Gg6G+O`GV7a6VhCALn1y_r5Y@Lu|tXCsLP6_^zE zG?7Oy^A0-Q<~tA8blyvSowg~z(VRQg819q&X|3bMKAz^Eg`Kg)v>&b|mnHg2#}r_i z#QI^*x3y#&dY=Lgncq+7OXk!yG6`DJvYuibJ%Qs?wl{Bq@N()4tfFfy#}-&+wheDG z>OGg_`zPyO>~h$Wn^<2`*8f5qF!3$<&EL&2a+AMEKVM=y{|a04*Q&?9ul4nK;rkS3 z07ocacCiM9cLevPrXC=?A>RdWP+fY-|G3`oy4Mqa9eU5M@GHTQ&Z}69x=voH>OTRG z$n#qClz>`m^KHO~1Woxe_4Q63UGm8bpVHw)ehY7MBg5-M*Utp@_lNB|&aW_WZs{UI z2l^PO>!4m+D9!D$1?!EZo-XUasbv$`7vyo>eMT{ql|9IJ@RIZMcvrLj#MdD5LdI&I zzwn5?LhK{IIS1Nb=QVefr#=`f#C1|N}F_9-SW z*<&Nt`CR3JBQ`a55BPJ2OT4(yqQu`P>idvp@OGT`MSqfg?#ry7D(F;lK+VNB109cs zXEn$kWgmEX$;7AYAH97-v+(-{(U(ejx5wm_E=QtIeA>vq2GI*w^6rRv%_Aqf&S{6{mUx3Yp|WEW{fMnd__xfR@a!412X8nvi~Wpi zPdIlz8+R%+QdjU7l!1o+-C*k94XdDWL;p^|pG00%(ZNSEKjZ=PLhrg8r(c7g;FpGfq95q~ z)lBGoj_`6V+vi?bdNv)If0QxHSVec0J+SC$cQS`@@*Dd206(qJ##&_AOTddf@0v%U zjkcH|Z5(~C^9fn=_!M;ik?3P5!Kbt@xLyT(-R?co@7BgAh%M4u=awBpXvtyHRHjK& z&p}h0OqyEBSh~&my*-1l>;VqRQziWheY7GcyOsTGY_RMfC<_DD*S9oamSHn1@nZS2CIByCg~ZNzOfe68S1FF&2~@o~mkDAAeH z(c5I)kHORMWi*Ii$?_>Nh9-Ru#5Q5hf!HQ4VIJPzH7qZ5uVS6iz0jVr+T^X`&)4~D z1iA`74SXKk^m!NCA#*W@{~{wx%{`aKyf(AH0uJ~Lx*#wHc_X&3g69kygYetlz|>Cs z!AnuZ{Xl<{z`NM9ujG3ZbDV}QzXzPpV@#`-WcwawU3*#ALepYr5MR|bdDzkLmH6SU z*N>Lpab;7m?+CBkK)W+&cM$D~Ol+f$n>rcPNz-g)4+HDq%jI`O*)ZxKhA%xw9q#+k z`Gwq%MG!$i_(vjbkVh!1p8xEN1HwZj7v2{B%lePzzvMG}f&aJj-@$)qD65YD@HU+n zLlaq>_+QF@p&zlYzl1y=0^bqcPVh7vJ|J@4m57bQ#MQpN2G7xXOvqmQxXH6GWP^Bt zIzKh9GJi5R*1T@oI8mQl2m3d{ljvO=`4-(vc}3nJr&w2$q3v{Y4LydgF7Ud}^!3Fs zR%t`dAIsc(%`#h=`%wL9lgVFQ>B&ABV?m>Fo=WKRQQ#FHk3O%+tRXS)CD(wb3y=B2 zc9%J{u?e^>dq=3<<)@yX@2jW=uAoj~()mdHu&_B>4sfHa*Hhy{LqK^jk>kb*40K5ZM3sKWR9iGbB}Y!r5`?wPE}Gj@&5U= zv6(iY@h+L%fDPP)p$GL(u%6_ss_;Qsi;wWTfjV(PI!iO?%&a4Hc6JZC33D7857%z) zZ!RROKcW2pME4ZG=RJaR^a`EIeiKVi3eL;6i-Rys zqn-D_g_M3h1#y+*lrH1-0qh9l~ z%J-Ix?O9{qUd87K27cOx2m61M{#T=0oM7B<4^!oh7Zu#U zfxaczMICJ@e0?iuqX)jeFGJgSYecY(dfI@e)ruV1a<_5U@C?qI){z_IF7|(-lP2Kv z4UT_#mRVO~1rq%KN&Rn#>ku3}8PgZclinxewfb~rx`k&qS@XJzI`HeJdU9<{fzI{& zw}U?3D~X4lNIWdLkauf(tV-SZU+s|d=PmajbIBE~hz%5(Co-a$*xxGpwq#Qf&OIZ8 zV-z^=qR%$T(>n-TGWusb^b>s}`*GKvWb$Q4eMp`N)=gjw_#R>KKLg+Ij|yog(f=!} z9nJ`e&ykq1JkE%Y7M?BgVi;?#fqjnPEe-pC3w^W&U+~5rtV7NxN=(*m%(37o9()~l zre(2bs1?8TYMz|{Z^OUq)alLj*P*`G;1?Ts|0R5G@LwkfK35TC;IgQMHmq^if76+> z3_1voy)-)r^C;kzn8-eShuVGcUDV!#zF&&IUy2M9J6$yJ$T~+?Y??V!`E*^;jEkLw zo~Y0PrMwl_;3j`7I)&(iwOT&07wpOOeLwp$u{EVD)Aq!E!?Ha|zRzzs7kcJ8YygYG zISZ@#gcfuf1RkLWncJg%R7X920^xP_=v>0D1g?$vAdGkm!**B(TqVHOMx9CITbDYK z*dT|7i|s}BWWbESR%9r8(`gl%fByz2a+duhx~uH@jCPlrdpKIWDQskGDei|iZ9j#qDra6?wm1*_xx8h}?P=o6XJPZ7 zji`KwGFDvVH=GZ%a*p0co9D+v%3UtdjOQ1~7uNPviOrvcoSTEpcDr(Xnd~tYdrYCR zm!=g4oaiB9ui5vlVHX!UDD!tUI64+Omb2KlUN-DS#q|63G-trW04zOEbdn%GpT{`uS+QY%gO5%6N(9#9ytiZ;exSge^nY#WeCA*y3bvW(zk)V( ze4FiVq7J^pL=U_``tkGM#((+!Q*aHV4MQjF9{U(-3zW4c_?%?!|3#jaA}e(p54=;S zUDm4DdXB(5gkE&}8~c1&|5nVHj7`?;Qh13T^KbH!m8{ux){N8_ULtfYw3kVYR3tG{ zvL+?=XtQguuMS=!>)Vp0vd-TFPo?l3lb#Je9XA?W<>-2Y-23nzcea!EB@RRqzxy*44 zb8XS$z5K2>VcxaN}$=mA>)v}v!&O?!cQLw)j1o8e++43Hf<6Rphsj;$ zyRqZQx)q<2Wqbbim)wbg{A{!r<6AIvYUEXxAJ~py7o767p-1R*kjR;y;2612nLgxf zNW8##-5-&~8nRgFwglPp3N2awCRzWX>tqt|fm6T#1CjNy`2U3ONW53*`WHT8t)ZWa zk*p$Kq|}IuthL=|*mccy(=E>SLi_cH!I2IZa#Zw&cI*XmpS1WX+QnuvfW6XqmDg?k zD{QEZ*6^`e{kUf z7q!$s70O3n?yCPJbvFZp*s%qMEh~(5Cu>&P`kdI@E0DD!e?>2T^`G|Yq79*&3;3PjwO#vc zE0_0l*-wK%vGrU^pTdiZ#E%5rmcJO@X|4HFy05WL&o8XUP2WI&cGiK#lWU;QP=DOK zIAaZ8$R@?5xl@ZTXKzBTntA9gt2X5LRxX^Y`@CeY%X;%%#94!vbl*;ze#TJZs5Swc z?6o6ZMogkh?s8zi5fv_W^Qf`{&K9?s`a&t=`a5+*FW!K?U?{L6cTUN^K9l+~*ZIiz zlhhwc{Z8!eyY&2a5(}%cI?!DK0b*Z+oHcq@Sg%+nU9zFzXq63vLE{Jzb6A@ z&$5l^dZ*1XmQ!aVWmZ#0Y-`U^M(mF^_G&^;(*K|7;{~&SvFkrhc`H^e2Htr*l+GQ* zQJ8c5*=~cUKTLV+97d4;r`m(%KA~JIyhz3;wyy^%|CRaw4*uWI|E-h}+_OHr#nr;o zPKjTC72jQceKW517v19qt0`mI#a-}deJ-gB-JO!Xn8eqYpg-mR2l88W#l3{?1L4o7 zly{g9JBz-j7M&wFrhD=IHydY5WDoreFh@c&(yvvBl_7I>#cxs4-ESc@fsU|U>O`S4 zirkmA;)VCgyTs7(9AiAQjaUZJL*@dj$aq;7q3aghH-yGNLJzv^y^v2PpEiC>$(cG&R)#8Z$s9b zPGjfE^*QLl=_03T1AEi|a_Cr*!rXn~($JNN0bNzQoS|5=9&)yIauBWp+Wg6a0NZ!kv7*J$Vm zjl_Hw#WO!z)~ocTw|jLj{C#q-4)<};j@T5WjRV@*H}KbYufLc$O0)h3>PLewOYXU@ zj`N9c{)ovVUGsVwwmq}_?~6}2>Yg%}z~r&!vIV_EA1}I@%mXlN|Ec-1 z&fSzyM#{=u*~+`=lls{NYab@_AF8YB>(Jcq{wyzjpgS)OgB79$={SaY(0M)lV-9jFvP(C?jxY8d zm%c_tzZ(IrWuF>4=FahUd=OFW*PZD9DrBR9`7&L*_lFG6Ofd2~O-bneNC zP-}%pi@mt+_Ap-y<-WqEAY)uYUGWt}9vR=^s)7&m?$7}4Jw&gR7$}MJJPNOubtS$< z!53@yw8ZInwDrkHX}{av?rD57nHlC768!(#+4)2gV?U_hwVl*H1DPj%bW%@X%tD5} zOj`+xdwmR>8hFU?$=W|of9M)H;$M_HQXbz&p41&kJ@G$@ZYn&b+OWYixhe)4v>gJ& z{{aSB59_HL#kZ`zAV03gR~9Ur=Kq+o61#%F(y$p@_lL;3kF=P5Cxbfc)!@DmTlW<9 zaYnv}&D0Uz5PBYybc(mC-^uHf3WcJk%yGqqZVTyJ;u3|O1_Wty+(`iysxQg=#Y7jFt^y?as(G))D!(`5cRBi8;`Cl z=Y$L94bkD8O~1lhWo~C-qqNGo+J*$n+)Nom&*9uYXF+8Teu21y29fKbI?jr(js4YD zp)=qS-Cd8}wQ%bgW#DYbC}5HEGYNh#eF+Wg_6Uh-g6@z0(`YA~b_6G)!+V$`zr~j` zvwSDeGll*bcQ^UF&%(EEOTdP(+c*>4lYS(R`8U~OpYOVR1~^4m^N1XgvB*7hO6B^* zAEWbyN?Uy=ewjnWA=V*JbU%yiC4f`tP7$-zFH)`5?C)6N|Fb}tzlj03!n|J$#~1xLO8Q`mPQkI84>+b{NU8MA!rWnMSR z$_AUSbF2yopS)&NzWcg7ueFL7_VG|$}(uNS^8dTl}TaNRaqcZi%~ zGFKbA&Qw6(x-RZoe7P?Xc%%&{Yg2ev3F}kWeXTMR#`&CPnbt!Ro1*DFE*g8ftYy6{ zF$B=^DcAMn^8kMZpIl+mSfc;MMr>ZtQjpfK#%7muY4H7e-pl-3^Ij@*O&s- zl*=~D$Xw`U8ZI^94uNYSaNPqAq+Tg^uGT_tTi~^E*v;Z?vHQqRYv}IT!dr~HYOMU< zf=~MK$bCC42Lxwn+y#Kmjsr}4|_VN43j0zZbv`4Q#W@z&i*&_EPG2Y-@ zHOo0Coqv&UG0_t%xM1AYICNhKc^HIm>TQNeY^kQV7ba!FpZ>hB>_3g?($9}?v!4;Z z7Tf=rRJEch-3L2U(-i?WSeJONOlBE_# z?!;aK&ziy5$>+0H#_C~=lYhn8%gf_>rR^*zhsTIbuxU;bv4AuB`)I4<3<1H~G`5rm4nc@}*$^VtmS~^SZ=eY3Nu9{y&*zcTVpr`+`{( z-qLhDqG#5W`~klC^goxr|A0M6u?}YtFRka`XP#Tf#bw>;QGsd9brko)z^8IVPFZ{L znUvLGy(Bf*?zHTW$7x0Xl2iZqS+TbGs0o{by(A6BeCmCY_<*ZgYftJK*JA zbjCZA&h-3ZvbKmL*p>sWEyJHJ@!dKNl*m5Rprr?Z^=Ikm7TFIQ^b(|@#j;m5p3SGe z+_PsVZ%L4zCq#9lXQAa;l#{!m&X1es%!`NoirllRc|Pw+JPmTInz@ODR&q2==fQhl z(WZ`@p~~kNGR-5hh&*H1@RB^ez>V+#8DmXo7&oIWN^KodgB~A923H}&!u0wS#;USe7hFmuEoCJ^PIe!PH%0ETuV-r3$T403k zGE-H2VtKz_SF)zSE3rax*szUsMmGJ zi+-oQhdevwlb8=V*Zc?8n(!9+-9pYkcxgb|5PUsCKkMI%(C?$w=cBcM$b2Mv_WseB zj~NqLd&|>w{!q^x34aiH{>d7*@X5Vqo~yxUCgXC>nYW`7e7e9{bbM4zHF%PKW&AJk z|ES&RpZtM$hn$_XvChC}Q$1rXW2`xhbsOvO8glgzlQ|k)tLZ~+gs;}-sQECS7%FV4 zBeb41wyf*Ep9S8Af#)OOG4Rus8>Bmah?f|rvf!)4U`LiI?)r4le+ls~^508) z@Pg5E@Dq6YsrVvjM&yi~^9G0hQs5GrN5AN}mw9st9v10mWD`T@C5BwaiZyKE`9k`) z;7w$zzITe?zF3LDc{idQJQWFi0;dHdFm;2mn)?sMme@#Kn7}oO^?D3@oCVuFV6&O9 zfxp_&b6_K|N6K3K8vWYRtPrTf16y=u~ry)CwcQk@)54pR9U$8GKbHOKs zr^xS}jF&Y-zD=!6_7kD<6q(V)B?ui;p=-f!NkMvzB|k(*7hIQ8#zDUlH{_sSY1d6Z z4*DDCGWdoQ7^JU!`c2^dIN)-D`_R7hHSt@qQy4rd+*}VkQ@hr~7d#U<1O{0b3b+M^ zP`Y~zc!Y1>+d8ph0C0n|+Lgc^8Ds0Ho>H#Gc65=jkvfcftJEKNxFx=e#bMcL1}%Dsp>@K0ln( z23JBqQ^1$l(5_wK-61$*&+X*S%^iZDD(0+`T(4boz|5@&7H2M&lbOhtwn<`+pu>TxvoSO%h*;j|Kq@WI{a!6JQduq*B#*-%6%~8LR+|=yF6?> ze-geG1CMlYzg8M&RPgTo{c^E0<(pqQQ-nX`&w{oS{kMWEFE+5>($862-@-qIogI4@ z`o>)1s*h+Ty;%QoQ?yPa_hA9@^qc2Gst>?%;crSw%U@z=KAPKmwUxNYsUUEC+Q z4F36-9xCwHUTWdzNowKl9%|ui%FUvU6{@%MHgxOTqPZt5!?Hmnh^NUj!4bg z2mIx3GQRn=IfMRRp}jlNxrfKGcevOa7{Zz@yO>xG z_P7FXl#cT>4*{Tke!}0Z%ORn0S!-g`FAb58ZP3+G=m)xPDuaHahebUla_L@e)w&vR zHbi2S>E|SSjT+!7h5o96XNKra9{;Zouxes-1@q1 z9H6i3m)~MtgWqu`&0Q|vzv-V<2_7$z-_TDHc&nzpRlr%x97iotQ&%ogzTUQICovWQ z{6@Hg@dF^g#^INeeDp2j*+XZ`epcWAu=q_5>Uiw_g97QQ_ z;MfS2wVFGehU_e49Xp)YYR|of z=f=ek*BpgcQ-3w>_^JPq7UgWeCb8E7{>Sw->RWd|W@69T3_UyDUiX~K$$JS868Sv` zm?pV0oVI)wKa_KDqVwrftQXyzIQhM@=BBFh%%0>a zf7s7`5ow+~!o5@f8-L>Wtmz*vP0KpRx_>h4;k!jglJeh?$FvjvD|z3K-~Q%PZT3DM z|3%(~FZJ^-EY?!WO0=8rSKu4nseG#TbaFA@_h{s5x)@nae2A<&_DSS}Of9P-mw(UO zlAqd*?lR!V&Kw87Bhioi+*^CyFz=%uMXBu*_`hEDE!zp~k=(sFj`SMeV~w8Su7e10u}6z^!s9w(!xMWQB_FL~Y|j3gyOp^A z*x`1!*dwEc+uVI+ZJ{50U8%YM_%HU)==EppseTzhbM7IQZj?IPS=2^+`@J$pSq2>% zwl1+FIXo+Vuj^6`J0C=cnSC+)p+x^}(5L89^O@UY*bp}}N5t&!`;f6&Ha+Y9>GSXS zL)JFjvu2P^?_y(_Z?#XHp3#1S{~EJ>y{un+6^2eV(=6K(Qnnzp?BDR)n`M7#mYwmN zu6D$WH%IS!^u(>-qFM! zqM?lM>its!=)L6k80#yWI>aYyaNb1k4&im^zP@W#sI%-B^fef&-_D_~d;bt0`{#y} z8*+V~L0r>wjP(i4UW0Dt8c2fyM|b8FtbGU!m`!JoKqp1V1H+~>AGvec8ynIPXueox_h6nDig=Y1UCv-ozS zE8mVDKRDd`=vO~>ZkK(PgJ*>*YF`hYUCbGj$|dUbA?~}03nz9STVXRiH;vpO%?W&S zHb~xspW_6S#bVJfah@+vQ*{jwOf zKO$1)-4(5ToQchoF$~gr)6f_rsl{G5587?Z1JPRG{-)da@1_p zY&FBpvF(kKeBQDC|D@lqfIY1MxKA#AEo`Z8-3n!|*+RV@=-}^CK7lf$w1}E8K3{?R zp_k;l-)F57Yu7PijMu$|-^?5I%N@Slb9@?o%!e)@canaIp0|p<#E0B-`rBOPW^AW7 zBI~5TBlPE3x^kUUv)9Z!zWC7s6}@i~c&}D{$BtCdH5&IHiw+`XBPln4ax;O;#eP8M zEu3#Z-$Tf8J<+9nE}-=uEvzP%Ihv>AB)X=FK5v7b zqM;#~w*gvA>Nhf5DSpcSOb`31x5PyX`z{O0P}W%pBhC`fb7;acW1qt0rN=^=ilM zwQ5IMliKk%cM{9INngY1XO9*}uJufRJh&Jb<9&^*&T5u3#tiUK170TMV`{TU`_Z8i zxogos3OGNXtX>@m-3hIBGvwOV4fdoz>FS7K9ulIy4o?QU`4{d61C&cb!x}E&CuB-177L# zefoMti>+z@q4Kqpz`H<;-8X=~d)RC>Gw5p{@Vdcun?1%qBr<)>32^O+@#YO?z~yt_EHZ}wf6E!aAR?<;BN zBicEM9@*@KUSq2+{|fs;1UNf*QngxKb9Ww^i+9&dSKFlVNoj2b*;(`>n-&w4t#ZP!2w&0$_r<0zxQLsfoSI7 z!ygwMu#Z-GJqEGPuc0jOW$lyi-7oD7r;Qq0-!a3$hYcDY1#SiaH#CqpDBhbl82pU9 zh;j5|e7whInio&IcG{4(!sBU={^Ks9kABjw&0nL%je(By?AWM=(%x{|bJ3og|3b?G zS5N9|)NkXy7ANaO<|7Om@lf8)w~ca9lxwqx`OyK!2#-Zp!A z4^YH382=Oew!g@J&^Qa#Y+wI3(ZvN$be?Xxf{yDpsII*J-^reGnGx5rZ3i~6-Lj7f z=f0O7*m)wbOF6(rBzCDN?!&S9=Fna$u}+r}>jeIYxv+CCT;on0?m%%?O?xU$?LRVD zx5Hr;BK~5CR=>Ts+P0Jr{@#uvzD1W%jXiwnpGpqfQy=f6tu*Cq_hKth32Hk$ya65I zl#4R%@5aN2iP1SkycV$oqW=v0FY@u>|CRf9ZtivVjo(lfJ*7kLs*rmtzFXSE_gI43 zFF264+k3XpFd84TQKzA z|2m$XqpuX=L~p^jT1A`}=Y~7>(9bb`i!M~HVUH5O3;h{;F^4~jvr}IB5gL@S3msm{ zI)K;{ExP=Hz1(6gA&gn(*9GYtS zb})C^pwFJQCGERWKj)M}oWK;;!(`UQB-Y1OtdlFb7il7~N;W+VcCLMV3y-P(v2(P%-)#PuvuHcbI@@_BcC~SG4xMN1l#_i( z34Hp$nOk``2YWy>v}xLXYF#GYUj{df&2txHI04O_guk59dhR>*Gd$}d!6$b6^UuxuIhdYq&_X7cFW2knb3 z5&o|8;48`5)yDW_&WfPZY;w(Zy-)OiOT31>+e)mFlq-eKC-G@vE?Sv8Sr7Q&^)in^ z!-A_qp?BuxDe8(1Q|i~V{*O_o8GT~Ok5?ZU&OJ7FGQQAQ#gpJjY>gK>!*hk;hg?G;iMdJ`Tiaez{GDP?C;7JJsV9#S@`ds*RIvUZvy@?V?HxXByTv0QmO9#Zyw zFY5HzJwNFeuY=>=8nRP^C)nT(c6dY>yn_Tn2kzNPx^_1IIFVAuNy8{esA>?!|C^(y8ZR7|Ajr-8F<>A zJ8#|bxxmeOzms=&@b2%no;BaAWT*Iy_kiz{>(y(2V@$F79Wr(Q9I2W=zFsx{GhT~* z`06xAuW`1x_SD8r)2g&v?&mJEM-OeOo>r%g|Gou&6^5=V_T98m+|R`SJ!7!@N7PM= za#Y}Qx63~JIR5EM zEwa4?pT{eV+25jkO)-vMX*P#G<`=@f9dEg0%suomzseZLNgfTx{37o*yJgG~HE(Lh znAK3lIqR;RA!m!nLl*_eihN{+p>LgaN}kNbtn~7}xPGQ2mzLrXyNFVe0;SajKzC@)R6nbxD&Mn)_`F19eZDLarf9IxK zuM$49{Y&_+{C3d3Ek^iWBD&4L+mS4rk=2J~H#$Ey>RVHHe-wTu{j}K=_uXf6Jp5~0 zQjIR-;Pn%Ex80Ul^R_LieHnVV_=l$R5uR%GW5qB1RQvb;O#Ao@y0w1^|1bUjY=7p@ zv@bCMq3~z$f51<)PfY)(pO3SD+GsC6_<6|h^j|ylXX*DljqeAI@BD(?PsgRJ)5L}p z)v^BbnIi?wskq!v1%E2;vQLFqs<Qdvo z;L=ai)J1nU6C*FrgMHFpw?5NzjlR+^`&7N5&2dMPh3dMPh3deg56j$L3N z&LB80uQ{%?ha7sHw1=YgI%yB}{8Ywa^<}Mt{m`l7>bU7gIA5Ahz8;IlFXYd+XnZYl zEE9s2SV7^#Nvp@}`5J}BuQcaZey8)hFFa3vkK*?Z;(my`IX#~7ZABmGqx#ew;jYYa zT0;9KaFm2!aXWgR(C@R@qePF2V!S1+uL4<{4)OrhaYivAEo&^YO7TwG6MSFDw=Z(h zfgLIBNABmN&q!=d<9@W4Tk~V#K-!;aw!fiY)wF_=TwfaP3ofJ&fkWogD&Gj~3OmZ> zG3;M2Q^ZLbe!b9kmLwSM#F%h~+TTSVN&q(QcJ&RV4Y9L3Xs4tgGZ+iht*s=Zt?#!R zW9Hp9Xf!VrrqJ>mVvO=9C~u8HufzC%s?H2_7#VjV6zj*TR*| zL1rBL>9PGK9;|&P^B}krxSTP@+y-$!&}gTzYn;J(*(vX~<@y5VJAqBteb0`C=l9Rb zf3u6XGuB`|Ez@Z8r4ZOcW1D0y4xnoZj}%`(0qX&|AhAS#x%<#T{QVi;89X-8zlQh1 ze}$$?`7L{a$(^znNaS39!oJ_|4Bd^iWIElzce`@7oKFLPVNC!lx^#m7ZtjAWvQ{kE z&#gbP*F45Y`V^RZ)2FOO(eX1T9Y-UxmF)Q0Yr z$=)H7y{GJ5B}aZUdmPcngnne7hK;U4_NWq1CGk_MbiEt>X_;{@$gxf0`cHiwBWBvj0;T5n}oTbBZ$v4p6iXG!>^HR0OS z&#h^Y3C?4wrqat^rPrNLuos zx~~sIuel9AwiY`yw5`Wxu7!71+lnhD5eJpFo&4138&#L6{Wnt%zP3>2T*|D>D6Vir zljE#1S!(|@Dbus7%)}xKxp8+rC-PkrgmetyCAHfzKjh~(M;c5G^^N9-N zonw}v+hsyu^4kH8iqEqRnr!#v*B{UFa&N1#uWo-yBR^3h_qQtjUQ-2q2u<$cOj9W_ z9!<0<^X8@90zPWsCB7Nxy9GC1;;Vut6z?Qn8#_Y732ZQy9Ra_TzDGV^FSqpZd$$T7 zG5m}0mImdu`S!8bZWLZ#qIBD*;4E`Sgifb)-A%Xc+#R<6TyZS>zBu-M@$CD0vF{6$ zdJSKu**72VW7{ly?$%gsv*1eXr@}Lc2jZUINbc!%)E^p8ez|3-XWwFsg1;yE{tX=+ zoq1Kq!_YsmCQr2Uy9`^zQ9Jj<^1Iz`^R;nz?2)jlUQ@UymJN%qen76femrqYLoTha z2G8}}{VTZMyme9imfzoB|Lh@czwn^VTk~{WZ~1-h1#x}f1#qoJ8Mq!4g6nd|*s$!D zv!mGS<&YOh>?;QEmJPuy)HF<$!@9AM6~+dnsukNgoop> zoeNHcc4zV(jjdZXI(!A`mkK}d`!*Q1Y}vb2W2@QZ0S8 zZ`=26Sfp$!S_RTt^ZTBApJ%pA0Q-J^|NX*ecxImG-gD1A_uO;OJ?Gr>)XRQxa$X*` z(jIjddtCP>-q|W^%J$K$v2%Iv3T0Yy9XsyNF?w%bZtPgfJi6~%gWUWX-4Ets+uft% zjThisOv4X!8}~-Buf7BSxr6frrNHaTGw^HacSeewU;Ys?9lwUi$OY7?CO%nm(;eYl z!6@pC;Qn2CW@io5B2j-jj4aIjkjM$3m|6Z4U5L?LYlzFf)_wai5@b4k# zT9>mvAYWLkwq=eXPrkn?GybRe!^kyF544?(*JHzN-P>vH!C*yHpjr_E6M!}$w_^Z@c2fA1fZU&yL`*tj$=W)m@OHf43>)mWN$|GVyTk@7ej@mTb3++9e}vza zO?KU&Y&kcMzN2Jn7I8FB7iDieOw84~ltG7I;LIGk{|n}&%voWuhD)ws2iGm!dpO-u z@CfgT_&#T$r{W8}g^%yDF&FJm9kTGTFB5Ay7+Z77$Pw6^FP_6#J&GPAw((}#Vox=W zGwWfogNxl$WZ@+A9W^(wLmnZX`@xw;@Q&+8IyVowWAf{~_fK@c2@{RCmLhvUAO}?+ z&yVsvZRn=S2C=s<$-4pRi-WZ-<>)+l-%4*ccuMZwOmz3%tZ#df+0vHihKp(MATTSi zUy6Na4=|xO@n&a9J|X1;l=pxXGWRkY^qE+hr+c1~XOp^_lX2(Of23sY1jZ@q-#g*v z95uE_(M=SbeKwro-Et258DNQRI5GYl{b-xyG+2UOmB!e8jNU3bo9Ja-@b~a#jt%F8l$y{v91p-qpJNKOAeJ zb>0eiUGgebj5W?&FxGMRx|xoTTCs6M^9MxEoss$5$v4iv>wzJ>gH`F*>^JJEBQz9! z`b_0B5PGV2b>;j3y+hiP_rA4LE+g0R(b&%_cV!L@KOl8_86%M$e>hjh;jHc(f$O8M z`=I~#4M*<}jKQz&XPp(kkJY(tAMpyI*ZM(k9p^0iv8BV1ZF|LQBShA+j^At$5hbwa_0Q} zt;a7CAF}p;O+5*HL=O`Bh#U~zN9eyvHl0T?ftvrj-v zJI4gE3yRl-hX49%l%_U4e@DH(RP@R~I`-oc$n25Od=#`F4d0!?d(l(FGFL^9ka_wj zdfr9IA0Kk3g1FyCWMsvG4Z$YlBgR)BD{8=qoDC_KFnFpC$IF# zUg3M#J9J+1O_^^FQ?z{vTt3Dh@)3ReHha3SuD_J?|3`oCLPq$RKU-zqVAF1f&z1?j z&r-hrO?~spjXiEym|P6KyI&;MVcpQ|8~)LEKlak2f;VHosqk=d?;+M(qumVe#Xi1o zYD)NmY0A&MEt5PVhb}b~e=dW@UF_e%aZ_f)SqiW3ffsO|e)l5sjf4M<*zkAb^QX-A z<6pvNKgpQm1irMxy=_ONoo6$`t>-&bKA63=jd%a)7X9j zSovq8g8=K3jkJMJ;N?m14Knx*Xd!ToNAZj8Wv=g%xt$3A4z6xMU$ou1ylr?24bhUoo$0b|F0e1M~{Kio0Sn3I*- zRoBd%xSX?i(q7*}X!`TCaNj&=3f_Go=F5xt@9E3av~7}`v`g^nx-^_dd(G%j2btGr z{K`>qi0iCT#ra1W?`g>D*~HQ8O&y#w_1sApwZj+fqf_%&634TG^|FCjp6jNNbDei7 z4f#)rODfJ69-2?R1=RCRAm@MTupE*1=M#(6c%G5JoEV!X;%Wwc%TZ8YpOHW2j-vb{ zv^kczpZkbwVvZGzr@p~@aS3hS&-VlP%fHF}PT-6I{`;vDbGBVE=AzLVlP*fRVUly? z4P%_6Zb);!O&eoqW99EN@>6IBn{+|z-5L4!)foBTJi{m;phWWK=(%SMRs1nQ<{t9C z#J>O1S>YgS-`^PD`WILSW)$Y{t#src8R;lEmd3j@vGwgf>drsj(Fk21Q?v+qA5?>tS(`;hzh zS`f3gGr5ZU?g}kXm?kvP_MJ}LJy>}Z8Uyg<^+ptX>WG?yPOEyR2 zWNxs=<}5{Kimvn}TXQys+<1-dR_(dnR!>u9$4WrDKq>Kxf^@9_b_YFvI^sA_F!)++29x+E|GVf z@=W$&cWh?8WZsIL=@R)5AA-a7(a>S{PqYk@IGmk4H@L6hcTG@dS=IMXb-$O<-{S%F z&}wq9BeP#h*<2@Md$Z9M^qKEWMwdz7&pQA-#pDj9zk|MXV;%O3oMDWg-IsCnMPifc ze^Rj{^-|86!ZVy_K(-Cak-gM1bPM74iN^ZL#Hg)&jc4UXd*ra1-RCU^;*(^z9)0XNb2ZUwgyneR+)Ng1AA$zIFGUA9Vg~ECp6E%*c>8b2)cuw7 z^A9bBADJ_|nKOT5zN9cW_VYO(8CR4tbi|&eoEM{y%Yj!3yazcSjNaj@0ABXF9b#(I2~ZGuISM-I6Qkz z;DiYb*?Y~eEX_XvP7A=P0-TD#N#y2yaGK8i9Fa0?#9?rH3D~ckZOq99-d};21-xQ# z^7f>LSFLF~u@iWr%Z{lm&QAr_U|bOt2fAd}C`L~?mDEQh4M?u#x=uW$`Rt)Cz5;ULA8M?pG z7Is{0yyLqkRF>zD2Cp-~YYcdONcrDEj|t#+40=o*G-1SE%CnAfertSp`l#}J{J{mo z!6yxT@RyBypZjm!u^@jxbzkJ!OFa7(&l+g+DL!G^-D!*+(E}WGFXExccRy3LApZl( z|CI7iQvM0bi@bb>w%?)MqbUDU;Sr-3=D$xp;pLIgYa;ZT0KM*~omXk^F!X<&GqdkexAn=s`=vj~ z#O~(T=I0-$o*&w*fHp1A<^t+$;L}Wd?+xOt33cXD{s`r7d%Yt6CUCnI+%|yQVd_?Z zTRP=)C@=4EIzste%FF(FH*qGScijG3Y5seZy`OgOqn$fx=NNdsM!na-?MLjLKcJpz z)ypLILdLo4cg6WPGR|LToNr^CMb{Nx+j)Cg{`0{44X}O-ETP$S@NfXHhjEy~`Bj;7 zBPstb<+oLq^ejN2@5*hKjs7-L54r+m-XOSX!x)POv_*>P!jqP<=a z`vY%i`B*YOeEq-rCdyn5pl|r0M?Lf)uSCHV+7Ixl0p`(vk$HkMkWaFQLeJ{HPkbe; zvku^V#yz3uG1jOsFr?l4fwKWPGg+T*2i8MF9N|f{e*hfAz#I#Gr+qeW?E1=aXYOMk zwf9TtWyDXK$ZgqIiOwr|n*IjtrQoM{W7)Vc_RER?peAUY%RJ?}VcrwICuiSvffr%ZrHh=0#IAGyQzOS$BM z<9bPsqrk!S5Hair$j`QnD`zaX8rP+tGx_5ic9FlSy9|2uvIpNhmVF_8KTbZc-Q4f% z8<{QrI>Eg^!lQ?(E;tAogd`LhOxyN5@cOvrp$Iz4ZxY^BmX9c(hPg)|3My%kq!Gqle+y zBk=5Tc(#Qx5nkB9xV*u?*w0qY>;XWmhwWbcLW&@6apD*PilS}Qz03f#lSs1YAh zzMS$R-$qoGDERE#3no%tWSq!~5qv~eyfJ8mf`1w1MLw5~D#`yF_>@uJLHR<;?*#UF ze1^d5hm0X34gr4_<%O0aFGSZkNIY!{?>NYTk4uJNJK)`8TUggiId}Ot{3U(HkQD~& ztjde_Fnfx7Qdp0N=djM+EA>T35&cB$gp!9WEv;~C39#VZoUcFP$d-8HgXASM&|ee} z+B!_n#PC*d$%LmfN9vqZ7eZ&^Ao4^{_!o1+#xI?i*<))!k@-dESb+{&rHo2fbx8y1mGWu7~=ze~b;`OmIE$xY&XQJTtIq zHT}fakt6$ZnRj9bm6$)--$|UM%)vuR;(05W*L}p>n)J&-EG2fK-ZX4(hbb#?414~f z*DaU%OF8jrckprWPM{;iUfzNIXX_A0Zx-YGD1OFl#@5euWXgmU#K7g;aea!j`^E<+ z%NhA>^xtaq3p2%g?qfHkIG_K8<6mCB4kt=5M z{owtQ*K*VfGbJr&H{V%ba{fxWy=UDvdEZ$ZC$Gof*}x~VCz>XCm{an84BePhn+_9G zc{_c%BW1*^Cp(vLr_ecd=v$vQoyC4+9Q%^->`x|O|CosVV~E&4HjT#)A@mhmAA`o? zUz0t^Vr&zSu0Q8Q-@3us6Uj5kyNv zy^goD=Zc$mU3D==s(fl{Sk}#3fFt?Py3vKz{q?D*gi{3^2kX`{+LIh4#?I96Uazz@ zkvTH1`>wx}qsK5ll=$Eeu-AO@RM!LKnB9SoZqv5)*C-zy?>BlibExe1#3!&6dM<&k zi=nS;>!(dl_Ig8=&G>$3^bRz76&fAj9a0&bPlettS;OTwe(#(=^L|V<&%p_vXWg6F zeF1Yso_`Bl*vquN5ja90Y!5jHMv#+}Ic(EP`~X6)!>LB^e$|gjO18*3zF*K+vHM>9 zkG`jm(4Q7yy@3pQntkDGT!$&%NX0%jlzr+j@K2*3!|4y_RlZ98V8*4Kab1hu$DWIY z{FZ&D%s*K#ks-(z^nKRHeN*-RYxwt=gBP%N&tolRehDufXDxk?we$(r(%F<1IGZDL zF(sT+t>>bY#XKg@j}rVn2XJB_?^=$$a$lUX@yl)1Dit|Hivd>3oEfLETbI{?bKsq@Y2>;&ZEg*%EcPq#&ymW?LWz7y?NpKap#m= zH~gIS*QGkw8AA?dV}}zQhQlk+>dj1h{y)}t|6uM({M#UPJ-d4WwEXx&I~V)7S4WH& z-kb<;E@UhhFs2oZZ8>8+A6rBj{HgO2pLcz#6T5ic<1@yc^Nr4P&wQWUHT&s@2VLWJ zWYnJ?cjW)@hEeByk~)6jT=0FHzBCn0-}r0#^K1I?Cv=bF#^jB%*WE|GChEPPI(p$Z zsds|%U6j9tvP1a(EM+IAp0)9TV>j&DdHv*bj-`&y`2xKE9^>7LPPAt)w#~kw*?X}8 ziXVsg+nlfd$q4syW^fgLiSpGq+)Xgc)(^NZammMs*SnfCQ%~ODxaSk>W1pp-k@G&W z6W?5Qu2WnE!n;F|I#yx|5tN6w;JlHUx zc?M&>1wIj<-7$O(S}sgt-Qhi7spsbW3VYaR@Y*M=m&ecrh_^*=w(==0Uy;9TMB2td z^m#C2J%m`f`In7xid|{HF(l{wuU_yhIuo*H9R9hK6*uBLeVh8?(>(w@(ZSNeeKfkr z0?M7i8M`qby7SXGpZnJ3W1Js?ugSaB%u?goBfyZgWD77P=gtve9I|w{t9gDq^$(^_ z%6SkwwZzE$oH9Mksblm(bdBAA7k?TtT<8j-6No-?4822i5^_9rZ)SfWb5Z1%;=j%5 z;bp-1QU-QS3zpPBaZ%yc{r8uVHzFf%IItu}THqbK$k-}y?D;QttWS9N=VIy}>>haS zuYi}a^KM(kNBkVf#BC9o)0GxJh`ifVOpapKb8yaktYN1*v7v@-uWhW5n|V99~sX+T4H*5?=$qcf^n5|IlH+h`FNLE^|#B}C3Rokr5KZU z*M>W0bXa1W4x~EP3Z9wZD0FE?)^>yAtKhc>+^WLB1h>t=t)X1(866#4!+W6Mr&#}^ z?R)&L(CbCxE#B$QbMjoRH^M?E){-}cMhEd14EN7h@7p+tO-y_^A)d*aEcwAh*vk#x z=OOkpk$=m#XjzL*NqkvPBP)9=us2>X6WX0ctQ9yae_H0nD-TY8aI&n2R9aTa#*&)JVGY`)TugVGP-0lOb( zq1!_Xp-1MGXM`oE#UA2zg%|4UFD>{Fa9URX)q*Pec7(n?0X-!T$(^Usx0;x~&5^#P z_V)$L`srspL~j-SO2z~|7WpB$Acl*t4&5JLFykcSGn}z8p}(xL_t-qP^9S2cKW3C5Pj`>raU*)M9S^2?LgO`vHq`G=^>2yC{nysM ziQ;4bH1IRls1(+!{_zlf>(ky6TK>~JSe?0QUT^e1MvhZ~1^sd|ubia%eQ0an{Vwh; z`lCGQUj=wQUo$Cv67K*rumA8|(;ak8#2g{LjJ<>1Ey^g(? zd+Em63*D~|TZsTw!ji3!ZWM|J`7bPw+y5IRe&-Rrd3!|%UfV;5RcwjkqT?5pT{ zqo%$*`9~=e(tkvbboW0~S9ZNRH$R0Kb7|{AzW<3FJ!-tbaW5ZPZ*~Aro$nP|MZ%j?wC}YsdI`JIq*5l_Hi+01?4~{oh?qlB0Fb3y{u0ZTh z9%ti_i=%Vir=QO;2S%sfIa%ykJ&e;l{N_8sm3ZQd52`U9o%0&+ZTyHi`y{dR>^Clv z`+G%p+pzfFM$S)sNON+a*SvYg$_H0u^46XG zao?P4;b$3BiA_qo@hsj~)OGhU_NK?>O!s8tL-K*RQkXMh(-`kD!q-CIS9m7-{hgon zU0hFn8GoT)X64!J8zkS*pl*>%Ox==nBsq5CHHiQVuIYrA@vkno7j z6I~zleQ7-SMc|D)JG_*7tH6Drc8JJR{HNOg`Pt!x{Emew@t=y zN8NAG`}jTh0WRa2%+(d^qjPm8G6=pWW<5S8f{#*8+(p{Kk@g#ijzB6eo@JV zecU(kN4eqPs`A(A^3Pl4 z^;|m%{3E*j(~sG7$tx52SmG8{e?Go!NGD2iKGBLazo6_dKVVB5U zJ&XA$@?B)UeLleMKd~d*hocX@!d2Fx zT=qu_=QMDRt5-t3_U!Opt6uZ@j;+Io5ZB5zi@q$g+P2$_Jr_|9&xkH1x)Xah;lqN1 z=#20o@fk(|`{6fx(EAQxzdndOllVz_AN@upPYSmhU%|h>UY~;yoZ$60jhC{+g+svU zy3Ft|Eu5bFp^jgA8QlsQpF_M)LH2cNPVkI7&lC$IWw?g%1TgF~P>HxR*O;f|Sho5g zae=H)_bR+u)8cSWIJfZtI3>apnJO@Cc)VBkv|xQ5SpPg@@`-_TF0l(9PaT3DA~{M1 zcb~vUsAKfBZE)V7jSpX(PF`JXEg9Ha3i*DUWoy}eKJTc6KS#V*m@hW@QP|jJUwa38 z*jM>HhOOn*^9=M2@`k=g-XF`(KZP=4=NG&32<-Ojwh)sv&2Sy2+Vq1Hjiul=bl-} zJ<%&N!Q*D^VCnd%mSR+O1YFaXn-Ak6n6B{&}U4_ISYjj&-2+r z`xjm}`5ei|>HQ-4A^&WwoN8UWST|*k*ZcG{$T7WL$ECjh0kxH9q|i2Ok3`> z)Whq~F$^F-=HmCfRO9dla+b+& zv3V47Pv-prcz!s%D6+8#Jf0qHgbn!g1?IS1pWxj&%aB1kCrNy{k;fdu&x~CG9Bu&z z-VcI3BO~X0aFKBtNsi$6X=6G#nc&pJy`hZHe)h@XmcsnoxWAG6H`2F-&}FuaCA8T% z=$wsjQRX&mL9O8R0kP`ov~@IfM9$HaF$?jt-ThX|*jF=#IzHN)GInD&vBV#wtbgEk z>{suC!&AWC2JDA`{V=cx!2>ISy@q4^5Td6HRXRu zS@8>r4>skxvFAKhk-1Uqw_-;a!ybZMa$yH`W)tsKNWBv3l~QjSbvEiY9Nf?N0`Im$zm@%jA-N043x6ZI2X>>&p8)o>Pm6ZlH}ZzNm!?eExEsF7 zOvi@;@0df$EyaABHi)?Q3k&my;O`uUzjG*lI>GfNKKp3%7INuj3>vcH1=@XA>`36c zW2EEmtB0Sxv6%8xCmRKY)X5|UEfd@w$V&4}gM3^m-LHsVWg07&30}*{PlC;CKQPXx z%{}lrarFgznIlud>6es6mUYwrx5%TKHwoHES!oYHSono$&rfCzId-JC%+y-|;w-1})N3kvKf$n>u z`99#jOMUTwKg8!IMe{)`Ui@dD3p^Hm0~`hJHN%H)Y@qMc!256fb_^f3aR~L!qd&d; zHjm%1YrcP3{&f1uIye!zKS$P~`SAKD*kai)_6ncNcWwLcub2OGSlJ2L%ZiQtI56aV zcNV@a_Pu#~ zS;xfIEBOkDHB!&Y$z`+G8@(?&1pX2AteH4+@nK?<;2qW2Kv|cUqn}}W$XWOyah{pv z)kLpTHXzzLfR5h=j^aPqxwxeF41AwQ@r{k>c4Xg<&UXi~&d+hy?*R6_4UEeo*3;R8 za@0EnL>|n%w)Mnj;)-}5%0iI`8}OZ-2@R!uEpWw7I|drdd!3%br;>QSOl*1f8M8KE z)TE4C_%bjK@<~YGe4f3JZ~VZe#?~&e zZPBmYj7eIJ5&kPz!K)eAl5e95_=5LV;2+?3Ex+a2aD03F_$|*WxF_{ja$mk@@$A3( zE#>6*pZLDv`;KhMZT#f-<83NphiYC@qVjTzy=OGEXomji5O3D=k(@9Fz7?g{@;rNs zwg*XB&UyZnb-sJulEF$ZLnn#o<?%1)c!`5KL;DsbQ8L3 zc^8-Xi)9|lI|poCaRj=e?0W{X$>uYzk~=B!Od5M{`WB7TmpB>OZ};^XTPH9c_Pf~s z&b-=9pQLYs>tixM(NzUsav{n4U$^fDPvL*d-q-y&{jtj&Q23{Hn}R=ju*7cIeOw3* zvF|89qRwQzJ@LB;rkIM-6F&$SGdeqcYa-<=?J8NW9rZ=mdTcxOY-W4uS=@Q94O z%BxDq=gs@Ni!+{m9Q<1I3%3Rwj;*&}k6rsB<1PG<;rA|;^QYujLxMm$LRzIl07b?gW4I)0_wA8p^)M zxZ!V@5qTG(?0c|LY|HG?xz<1CJt4auQTCi|nJ?>{!oLGo=IypA%wNMbJN!KUsG>*a zgk{bfj7J29smr4?sP`>B51g|Z?{SootH?vSjlfMdtww?10;+JcS2b@;_RN*2ZQ0%Nt^^@6rF z%X&Oet|^gEtdDw+$=o$PB`U_Pl=to8o7yC{D=#1MK{aqCpKjP|P7U8|ObtsuIe1Te zO3L>obIH-E>t9U$$FyBd)mL@NOD8rs?@sD(o+|r7RafkBE!6G0Ue`UJx=$q5b)<(M zle)&V@XbBZy0UhQ|7_=SU3VgNSM&Qwu%!10bQhZs`he_v$BE5nRG@@2grg3>0L|W~ z%+9r;6U?*i!>M^3xn>E9vF@%;72Q z8%BgmdY7;5Jh6ara)ddfip)vlo?hd}sktL-`@ED1hhLzdvX3L5fU9!6BYzb2o)|KG z<6{-_4x9^CU`uyBcs;QapZ2-d;YV=rTXY?frE-QX_AFoI{WZwfe^4fgeC^(aU4c2W z33*hIx$I(idR({IElk$GamaM}{ad>Xy0={>%ssK^*kzu#%b>5@Wj1iHhj}dP!w$ZS z>=B)#c{FEcL|!Dk4?EEwwfzTDC!<@|OW}R-qxi*s0ey1FTd|PbE6WNNTswtzM(%B4 zPKZo3*fZOHEE7l-9u8n&Yzu9wJ|nv@|9LCU>}PfE#7=y-s=wB#m{@{dC2N1@{$^!o2o zSM+<4qnVs1y^ON~^8K^-`tD!EcR3&31^xER_jJ9VS;qP1-IQ^%F3LS6gP9XcP$;E5 zW4TRa+;3$bddaJ8`2n;XCq@?DZ$Uq7$sMs(t`a|YBWD3OL))3)vup}>Jz`)p$aM*P zmwJaO*Eh60+a_&@43YWwIFVXFbeBymB-90vZ&a?)WaCR7acI5EhyeaetyofDfEt>bX@UM3YvY%)0&bCK6 z7ik!rT{Y5P9juNvJ&@S*0_l6b<(es`jB57{ucV}Hr}b;i_BJWY@*|eFMiccDPc7xtjCXW4pedt-3EUO zZ&t#SUGS25#))S(#`5e=;=muqE@kno!QQ%u{j6uupzvtMN%&QKYRyGrx0;-H5dTJC zfuVB4&X~>lV{$OG@H?IT)NS})C8ld#8GD5@^cmPazbV}6EpzlPC0|*|$g$sU;F-Wz zyyn%u;xX*U4S1Gy@TY?7QRexh&|YG99wkoh+WnkwoNn~4c_=0P)sIrbYl~9CKgTa5 zyt|utJ$EW{13ReXVBVK{PWRAp@}A_gyLZB4nB{Yl*SLD$II!82bDA7E6#AJ1^EPkcplQYOAShq=`E;_#FDV4vQ?d|E%` ztxq?SN85cS`>V6i!N(CpIi9oaL&CMdv|~QTKtEXrwn<#=Fr)WB*u$of`>kg^`irb> z=r!y!)VVU@hl~-%hwHJcOYVig4w`iMA?8K<@>ThgmpJ1PXS$eEq8mv)kyVF)$Jpn5 zNWPyiv5Zm&-N+?+gyAmfHO@1({~zGXzEtWw%Xh<=u(5z~kb4uR8QWLDKkHVetXxK0 z>wcl%Y4KOq7+E*dfpL&_7WkX<4^77R&wD%Mo`c`AmS!9vUjsOyZxsAa(fh3K4Dq?r zSK*}$+7aEY2cCS8w)anW^u9*>4}O@D{~q6eh`sY~7Z|;p{j2i3kSFNko6`IjhYxU1 zWX$lCbMoeWOXIeiKBjPvvKhN*I``eL>-&4SKM3A$qt6nr^oLgTrj&7q_k6){1-Q2t zU$KY$l}G(0y+ZfB7jV80I~8<dQ{w4G56F>bk_zxe#dw-umPK`HQAD|B%BIXl& z_}znePtjq1xA1#?O2*wUjxe5vetEA?dF6peQpVpscpT@*X-i^np6o)uP8of859gj6 zxkqg54q00d(e`hyD^Y8~F62s4W-9s6iSu5w;zT=Z1hQAnZFAy@XZ~o(ot~-U&)0dt z#@5I_8o4w<<|#44%>5qT!T11pr$LX5|3arb({Qb%%_HD(@wFwr52lPi{19j27~5^j z;UkHmOX(=-eHWbEjJdg{<%F~=WAA3{k%=zhwGi}L%~j;R#Ah7*$elm$AnQ5LZ$);= zo>b=6t;}zk+kGEpt&9e17Ekms}DlIo#@^VLf0;?LwNR>VQg## z?sGirfp*XFY%^EEH52_$;5p&n0&Uv9i!q5T}FFKZlJe6$)5Zj^5x{RFCT-O<|$ERlK4`E5TW);=wT zcL1aeQ!-fKe7aHm(TkC-q+ws`Bu=c3{47IMti5ZqwqwQS=@y;F&g&;Sjl{~!UhwEY z)fnc;x-cAlpAO2q%eJpL*U?J?MWw4^znGIj9Mx|2T8)z(y}qJU^1zD?1DiYa6niYc zSvxa0hb=L)8QnjI#)>ys^F?nZXI!u7Luxnu+(7QSRx_uo1ve?Ask>2a})5J zpDf;5X{2rBeX57Ig5$A?g+CUamAv1X2Ites`+d`yVo#O)I{j^se)b0Qpmj6*&K%_8 zf-Q5x)ocAHcBW*o=hpc#kumo#YZN^rBS+{aI=R?;&j5Z8^b#K23;zbht$048L#GC3Ure*DYr7;+lw@emDG{?ocGu`A6PeA zuzcL-eE7yjVEr0cqR(qP7U$4-$HFr3xm}edww}5k>|ewrzYCj zLOcGi6&D<2{S^A$jBQZLt@?Z4GtHEfKCQCo^gQog9YfzXa8Kye$@9(JTLzrFfFp7J zx87cQA{!q<{hq>tWqIsD@EM6N=0lgFb?TE??fWBf)hc=^HW$_M+; zcWBEwF`dgrdY^bd^Yk9A|qsu z+w=P8&`;L1d-1CYoCEY<&O$oib%D8s>vHJr9)gXU@1kegxm{%bui)7_o_Ub-%joa_ zfS2sK{~}lN*8NGY?DhUASN5}S%N3qlhD?&Pd=BW!oPX<0?n^!l_Cj&zzgpFPFPd}7 zp5G>O$!IQMe8zSE?H7IbOFUxh^cSoXfpDrb2z$*URNZpN#%Flf_}%?JJ{#+px-U0Tw!KIfqgz< zGycGI`gPkNc?VGX;S_l9Fy-VOo-!US7b7ng8R1DvpU9B7*tmDv6O-I8e*Y$DcM9A1 zrhl-%5S(RwK0z#dFEmy7GiPMp(Z4r^mVZwj)-C?bk5h+2^C2pRh@2M@pXN@Hb83G# zIp@)02W#osvJYiFo!FhO_MsCvBg@(0src)mJM>a>A(8(_ox096!tHHd z;coQ!Tg7V@+XN+Cc@9M+PC4`*TiymJNEq&Uwvm&rN2JcYm^0ot)31u^KvsQYgNGCVCH0-v$Bn> z;_||}e0~&pLcU6WsH4ggT;U6vmtAh^8qSWOzpcr*#`ub96m>Q>@+=XC)6?kF#b_rh zYjH)jt2!IvN=5U0bJm(!`fql&dHLn$tZ0!EU#P?1=24_SSvhB*GwAgt1r-Y-0WUgd zRqX#js#ST`NH??GO|{+zcbR{Uuc5G`sMFul;N}KT{jHs?i`)F(K!er2N?%)3M{_oS z?fO6#BHBN%Fm;O*%r+|8I()%4PfL_M)d7f7v&t82@wA(&lGXberUhY!sRm^BC5(s$ zH6seryuh4IV;YNp8};Hq`&vNAD5~+de#W65>Ch?ZQyB94{d%Y))JfKHyWHvYUfA(} z+j+Y^STKTDghz$gHs2-ih7o0%m{Nw#)LC)E#(-FZAtPg6W(}3eAX$@u@)p3vqA}3p z%f~*jD@9=^2TjjF#A+&AO2 zZj`q4Bd5~HJ@&e7=>k5s}`{n{KwR{a*o!8Gel)gKTx_ zbaBzVVApo~f__g+Z6MfTq6{19g-&N_oy%QXR^cwKtE;JlnL0cjogwpb^Soeox=|AJ zqokF#bp+Se29U=>`hJD8jYZx-s|f8TU$A72ud>i6?Cc24_q9>n{u^v`4ZQ%bY!Ox} z`;)@M6Vv2>BLT$Rx#oEuvosil0|XUwRJtMU#xykF*HPwg@l^(zD%u(YN$VFkHZAn6 z6#xyU=1BE5DJ%>9;y_!YzX?MH&QbYuS=Xc1HH!_G{2j2aGph9OO$+pOgZ29n>pGZ? zru^B@ix!!ofY%Iq1rreAcTu6stSGU5m(4d_SJjrHk*+y!4bK~!+#PG%eRHj!eC$ZT^m=fV_HqTm1EIZ(~z~r^BN#)6`v5TvO#1VKcw9&Rtts=qjtJ z<3`#1l0sLZTY99+4S=K?=((oCMYc-*kl7aKFhiZ~?XW7lP*5{Fnz`L>;h8HOk*vR( zXI3{O82xkwZueg+AgzAF^~HhKR(7}$T(MO$AaO*CfB}zwPzHuk+UBWmp~}*dn)$gW zMHWs*32!nPO!i4@W7uBmSxrU;h|)Hl3ca#nOiG4!{mcdLD9R6nf!$_pFdz(JRt7u` zf=e~zuk)?!^ats}=fXZlfDF{A9wWQkwSm=arE5JM&1y_y`pjU>og0w@c6qz^W=u*tS>YRijT!jjAT!wOX|bk6!0YV{!jQS92t74tMDiu$Pbx3< zP#IPh*>PTj8A?`6RvD*fl@wEpoVi4LYU)vT))b#~xb2E-{2i*ERSWTcvT?8&s@4+< z#jumj4O%!EtXxZc!H~>u=hCtkPpG-d-zKOn3AA*0ntWBOjG{oG!xbp6tZ}-UgT7F6 zprxUrjr%nr=0#hBC)gk*oB?m-F*|y%7`M~|!&SGq)X+l88kD6CfhKgYP`lIL)K=42 z>2LI5`-xNswmrps4c0oj)URf*(-zc5NpVHnK$tl@L+!q{1}UN;L3Wof*jg-u+SXx6 z|Em0<5Vz^SQPxBw4Hl;vYG6u39VPz8#t2G=%pHq2?J4A3>S_k4r=^PFZ&D^T-Ae^u z=vV1)E%!Gym-ry1QHyO(3shgQu)V#czNsqIl>DwMAall$|Ij*`K$FsyzE!@KDo<#I z0+0BvXmABud_hl}*JmiJV^KiHLd*7w2F5YzZO#R^a|S=WM&wptv>X%Ht$+nfml)xj>h7)6>ZEZ3w)8Unb{Et z#-eQBg5XWe?7~i1L`E^-Yitam`B^__N5AGpzg`4sRW)fKwqEr2Y(+`^EHCDJq^c7s zPA@EGEN2?n696<<`Mo|V!0n2*;+Pw*K)||ZRqS`euF~1s?xbTziS>o~6znK$Xn+dV zozk|3xZfq6LB(iMY>WJ!kRo%WU-L2J_*x>Ah!n61W<7U>d~Ko9H61};tIy?YZ8y{n z;n(P|%E0RA50}5y7wBZ-w1wiQb6Jz1Yt*6dwINp8dCFd^y$U0)VSicT39`R4gkS>E z8I(Qv)F6@EMHyN*v@z`Rbf^2s~7>Nf9kT<(jaI z&Ol>Fl3S4m6hx^Pf5%>aqzxH?m_}@fx(AkkQDEc=V3I!&By=y6REc{a@~*VCy<@H7 zDN8IelRaybDhcQ(K|i8MuavpD=9NX2W^o|sGd(RW0WaLi66dTctwOP09iuJT>yDen z%%>-YY^PiSXREI@X-gp4*lnU}O&eP^Rv>=N#vPpKRY zW~Z;w?`F*iu64IA(aWvA#af(jM-`Gi*MN(1sJ%OH9(ipQ%#xm zqRLw;s#ZWnS&GqaBc!)hE=%2q1~Ut>7*L&|3oS4} zks=D&P!yiRIoU30ejw0bx&o%G_i`0o#O}GJrzo1Q_O~k)zrz;Ok)f~}j!;6W=oO7M zD_j8qnw0-ex7DV|s-PCONSn!eQeERh{|j_BH7DR7>7MGy=K+}%O*M2ijk?`7XK7)jdtvES>Bdr|G$M$#Q`KhK2n5qnblAK^ZkpEJdTY+G zWf1en-1FAx|CwfHUFm#xakZ;bHa*iA3&-PdoA>)G6kVbYpcK zCRf^x#v^#8DRvFjL%YDrflH(t*3PLT5VbY<%!<5X_8aL&ldr?wyxPrLDSEsqSY>8r z;!m$Nf`;E{Gdhf7quKEAtI6>3f1%ONzY?RK-&ID4|C5`=)XohJ)I?X;Hiih}BupqN zi9gq}k_}+k!5G`ppzJLH)N|7UfiBGYp)5tJJrQ0>xJ0!e`hcQuiLcRvJ4qJwWYbK_ zX>#^&B(h7?wnzNHr?aWGv9(a0i5Ve?-fOC!2*rI2L^7fX3r4Y(wvu9OVvn zx84vXZs$EvTk&%DwA%_;l$B{}F`FKSWaMR{Bx@d#ZW~FzY%DUoM!;xI;Jjj^5pK)n znOxzz(<)U2$GZ4eYSbB5QM;CFjj_b2Fr0j93^9GS&{`8vLj&+~Kk6!Gs}V-j!*>$4 zlQ9&!S_30BlM*(8!4t>xl@sV2k)sD8`BP$vv zv4-AoDdSz@BQ`PY_I(XWF^_$yCJ?n};nvBDeIP+HvEH3*aqq;Hh*ZTO@Q zY@@8K&?u{1Tv1|_Ep}GaR2wy=RmLKh!KTPvRZ=Baqtd@f3X}vrO#$pB>^uzFCzUQK zGRnD@xRw}oi>oS(B^7n9iW*~nO;LqWTvTopxtzw8wN*x4ag|Y0RcJVYT3QKB@ z;&LV)*Sb2sS2_(B&&o>{swttFOPnDIR54~5*VMF&vc*QO!52hQd_}ZYY$2Vl(QH}Bxwg$)(Z-Gdxow=+kb53P z>GZUCvDcfk@U>u~uUr3E=F zWiuwKd`G|=Xqju4Hu}pk@8#KdOjMhQ%O<`mSV&RD^QTp6E*e4;mReQA@~L>*;O}-F z+eeQ(eNaT8%C_SqZA+2G?G3W?7`SOER7N;a%Sp=A)JAy*mPx{1u_csRBAk|tr4$E- zAhkgBDwndX87D1zEuLgOucc^m{w{0@BJ9^Hoh}(LnJwCb4Na4SP^9woM@)Q}CEC^c zmDtH6J-{(1UU86RBjqq8X|SgxlOiZ{ zU)a}fK{qYJ*&kL@k+WYp z!HCwCEgrJl^soYNlZCsAeH$}-KSs%gvcc>oQs=0EZ?gWZ&P&U6^bUgMgERf!dnwd)CE?{vQQWddipQNu@7zj zoo&b9SV1qY0Ba=P$n486mm;>C)(|S1*uH-FakUdX6IUsdu_&sksVpt5&d!>3`Q^+zwR>Ny4K$wvu&BhbwK5HHOo+B1%42mh zmA4wrc0dN!%&Pb{X&LpTU!Uz&Hfa@T=WkqF*4d`q>iz2CiXkdo8~Xb_6kPk?Q~+J= zEfQaO(QH}!SM)0c)5DYkHAOp+uXQLY;kvQAF&+YvWlrKhc_)0X408oWVVN-`l*(qAS}lD$CCFlmf}e+p3hTcLwT|%tH%Czi}xc^0vVeZ2fmi6>aUEh{NQZQq$SN zQ!UNaBu=EC(+eAUn@?6kgD&jAtY6=W)|Ch%wvB!d3BMu$MnstiIK9X0UntmGNI0WC(7}h{9 zq6-aCm9YbTJgZQ~WC=p&BF@KW7S}GGVbTQ@3l;X$;;#>SQ0Ng>5*WlDtdr@Gi|QJv z*SNQ;Z=wETj{AB)lSn~P7b5g^1?GD>^k7kYuF@qUKSN>>Y`HQ%CW*%Bc~xsC?Te!Y zi5m;Tg@A93Ku~r|Ab9K+LUz|9F;2kK3Q=-S2AVdzZR-BNrVtXc&X^oyBclkGI*^kX)y{5?mqBtl5{eteH8}{$^gIcWhrtH{wK$ zC0yu?tfJSpdPEeowhNiLp>;krttF23V)FtsKU*OoDA^ymkuoTC@Q|T{hYZty>GJo| zUsO@!h;^Ow-}?8Lt?N$f`s_Y^{}0x6??@{)q|I<=jGP#2K#E=@34Mn7{|;|b3# zgC%n)Hsq5Hh;mr6wNO!sro=#+G3IAA=Om0z$15g>(qj8PYgZF1Y1(VQ7|UZ#*^#z2 zH;7?CHbAwleykAT+xnIN@bkN@R-W<7JA%axe9StY39L9kz$EvlzpX+BL+Kv_=9{OrA3A1o*^w zGn0~D$F`a(Fk0~%WL19D7z9|@RiXu3hYM$5u6Iy{*mHk{RE%7>u);=keJ6OgQ6VKgvt56!N5|D z%Y8zh?*&@RbjRUh{9TQ=y0vLqEX1Gd+_-X8jZeaDU z_q7nU5pifo9>t-qu*2jhCtU{y<*CP~bXuS+UKXzQ%KVToaSggp-2q% zrRVYCWXXF!*R)DSgqnT&ct$c}oPG~Z1~?QOL7Hn?@d^>jelDWhvmQEWGC7+&N{CC9 zd7&Z3)2%GPAztU&kR5p!Lo-Wwp$=oLX6h?PW^GkPvANh;WVTyoV>_;7AmNXEFRZO~ z*OfX;U2bRjVpj=1ikQ%o$Q+L=NF2Z^%M{mCmYlMXtA<7^YO88WN~LUcQIvJH-GivI z1U^b=^r2XC^+O#l(#rOW0*O<_s?fjd!fq;Rkb}l*8R=J50!>voodk60fr+c2Zp96i z9uAkYwAvZfAJ~zL9o#}BQI}9?I0@pDM*5+U01A{P#8%K5uwOCJ?9fl?MW-cnY~c*> zB=jKgIi`RnMsfW7Rt?7%BFu1Rpm8R#t*Ak2h3r>D0;*%H=u$IGJi6L)g6dMI>Lbzc zK(%YtBd_jZXz_Kyj5ks#gydNE&9p0?LyC-PK4X>BN8)O4oROJ`6Kxl2kK=KuM^h zi4zg02{B;F={8`K1LCO8u31B_w(0f?5>H5(n>xI$-^7evHtovlP)MTu8ECCaTG(<& z+L(1P7iAu>hc}r_CI>AM@R5n3CswjCQ2mQyBK?S&WtzJsRz-C#zR#A@5=S9h#jtQV zMY}fkb}g-qL`QN!gd+$w1_Q08nH2xH37UvG!bBfSR8>U*3F!nFVg#~BDY23|IT+X7 zBxLv68qI)xkHJ=J@77YGNUT=&lSpjAL9H}Cv)#sBkIg_V9Mc?w8^0_Ku+r#}Jx%!K zOU(tP6|O>2C%r1J3non5;%H}l`BD|g+;58L4ydDbHUt@x2;`U$uEa%AqiQ*}@nFIZ zFl`VwD&e_-7S2nUg|!vY{hzK6A)F2EERgmIktmTgK%Y7wdb;2eYZvSDij@^b99^96 zuC3uDECCeuIY#rM+*xSTIuFhan|tkbK#gN-VKU~^ST$K|H4sf_JCZWmJ0by+8X$DV zh}nXT5rOm0;Hrq~acU5!>Qmmo*{4zoqmJ*aGQFttl{#=dUisGpWNnAd@+Bq3wMiqo zBC2SeFWA|JCxdv@T4zZTnW74)hbIRl2QE!)k3J$Z&?q>x#|q1Nofd)ZwdcJ=l@Pcg zIyROFqNv3BY(Gsd%cV>lj5s7CYfJJ?j;WM91a1gtMx-HAi=QTmq?WjH6$b!H%`E|S zUM-PjPYGmIJvO6Lf{B7HmBVZC{g7Mz=DsD6#A;vDsSNzgUt5XRDHReBcGqDw4K_q2 z8Kx6m+XhaEspb+bSO$`e13eXjJ4;*0AcQNR43Q$PP8+t(R!kt8i4)**l0&&4=m?pw ztmD%xC*q7uphdrmiSU(~P-KGi4GV=}ep=dk0;MIpo^qUj_i z$Jujwoi=V|Rg{yA zx~Z5)iei{ycowUr6EQEgJ2!EB+Sq7w=;y`5T@i;#OmneIQ!KJp5lf3ex=5&>>aT4Q zkAo=lioT1(9$K6Zy7WldA5Yq7#E3ay=>+rZ3>0}0lx#LUkIe!Pr@MBJPV*sHq}U z`UA0M&?)LFR+b4vT$<%QswU zQc|C+ZlktE4%BR58DlmWZ32WF;m_V{3LC+i)ONyo}{bD+saahn9VCEo$g(_Jq`8 z>i70!SZlABVBtFPhq2a5ediZKT=|?V}H4EV`l0E@q z#128%qlA>ewOoW(?6N055lpn5$+tuiIFZFlne`(>V+*j5R(v#Y?Vz{(<_1^onU7wj zK$=y`zUVTB!Mkzd{_OiB;_eDm{Wp1l`*z%h{n#!)+`eI5?fYjW+_!()&+Xs#^^5kG zglk5^Z@d1^k^0*{>pGakxAHg5x~d4wvLz~Y27cnkRkP=QxkHZDyF0XE?hdVOtq-*1 z)?=hk@)W_)uY_!^aK~Hs-Ih}?&=G}^tOQHKT2;cDGZ6;YTN5Qei3jtMwK7{=|2oYK z?OUm@;#g4yT)HJkhZyCYstf%lpE%>?WRUEMbYM%_s?&h2#el@L7PYqP(6rO8)vqtO z-eb=>WVO$4Tw{xtY-=eajf?WrBw5;ZKVxXquao^-WPz8p2b}eibrSHptNlSN>STQ5 zfyAO1FMS6BLIiLYk(peUu(n9fkd|!I#wivYLfH79two#uGBtm}egC}nf8Oj`v^;vc zo~@}I*GJrmu`?P@!sZdG`7S@Nfzu(aoW<|J%gC=8X1#Sxo*%hJEFf2Ktte@zuO90> zzN)E~I|`etoBiHqX^DWQR&oK$GAQulfGBLN`l#PlhfadSNo!lCz+8n$(k_@{oe7Xq z1d&S+nFOG`5dopuFP<`*7z5S#Ur|Gi38@L@ z>P$-^*2Tz)UIHbniQ9`ENmcUmvKHA$0*dEi8B0NmlJMW=ttduzSIGRPveqTCM+6NP zeh1r!8M{?$wwOxIK(@>5 zN?`p{HJZS@r#0Xp=2#bhdsjfB5`cdaSD;rAFr4@{|^Q~2KxWw@n=UN zr~TbXEr~u+`?y%SYdtqTa{6PgHX+#JT7pYOi5mMgCc}60?wLEQ6r&XYvT`hJ&h?FR z`ARPN+axSndWb=ANnvG0i6tH)-H7Qp{f2zTiL*7GuA8i{A6wTezo>uP1WP zR=6=2Hq^1vD*E)w83fTwq_qA;HZ!vQi|QcnGf?76S=SUlLB-{a$``+%Ho(RhX?5!WXNuA2y%){HBehPztj!U=U2O{3Y`n}Il}$`s4?>j z^fz{MjebbOSsJUl)u_9i4wLOPI(pHbMEd8p6c~~b_iv(Ksmt_|pw=d`Jqv@lYKq;? zimOZe*H&i)PpeY`ND^aclEY9+o3tS6B}r6Dvi`D)u8AXo}Id{PWIlO@7SRW}- zH{wf*(x_JDT)b@@uv6dV%(GfgJxrpuCi%(v>&OA*R!+98!QjO)WS-=jrS{2WTO=|; zo`B-NK3!(ZSTAU6EWWmuizb%w(1=8MvzK-%P(8tJIE& zNEK_ykcHSB*hyf6wu-5R06PS!-Z)@mqMny6$+J(UTh+wKA3;hDBr$B!QiS5IlHH=x zyDL2ed9XBg0LQJR_@BejA@*k{2XE zHjqy4`HZ>zHjFh1|7J#hpZr^5J;PYcSw_ppWwO6E*7XhM?5=&daB+vf1!?1x(;G<- z8fICiY1#hB+>`X@>Y%ntafFz0mAh-}YM6>Om7F`4928as$!yN~7+oNY`%=!8No^5HLsn|N^xivfWeF{sug&OT*4B67F zLvL+8O$Zo{@gy%~Jtg5|OQ>vBL=qar;kATv8&?@+ORUpN@~u^l;j?ZiC!k)5nQf7r z45ZPl$7Dk9PY@t@f?!K=thV-?ZBK!M9&Bw*~(=uTE0G1f3k< z!LF~YTS?VnOVJTehe)IrvuHlY&y`k&xYFTBL>F|*0oiiSd&9&UW^@oqA`zIa3~b5T zjKUM$4U}*qs+U}uG-(NOS`r|60|KcI$Vrlbxf(lqzZwn9utQFtvm%9*&8lF1fOlswE|e3Q#>2dE9S!0 zo)C+HS}%MZ5r0s`%qS0{i=YBqSu?-pWIzeYR)=3Dq_-`)G-@<0i{9Mxg1k7aRM{|P zt<_P>SY9DHCu7YOB%;wO2O0s3EJU&ht0Jo{OKBwRDPkZLqbC-+>HtyG?AvF~oN0SA zqFXI%Wm^)BmX~m=bP@>Ht=4OTEjwg0uAddU+-0sRcWJe&w63Che!5Y!5cDO6aIPvW zrZdqHU_{AOto(7ARIv3eP{Ye^Ja~ab&tdJ|Xb{5q=|9L=+NqNckq%sDZ4LvDZ9UYb#b#TQwN-P!X9% zf<6g=a*G#Jnf%t6ohUi_x9Fy(7|3N;49~zr?r3TKl=mqlGrmR;X6%#%P`M-AErCG0 z8cK~bv0ZGt@ws_SdJ&=*p|xa+SYu}b)U4}mMMJurGP;mo*R`X`B10mzg<-5HGo&F> zBha31ND5I2WRUC?aTpLntr9?bsoL1lYUt+pW&<%+w|LsD+wwJXKiFv94K_ya5v0TZ zYpwmn`WboN=m~WQ_3UP>pONRSfsplxZ;`u;*>PEMw}h<}7Q1Tdu5!yU5BMYY(bCF7 zc31uH*Oeu`TUuPRq%=9CvO=ee1Qf1h^{Q%|)@>(w6I;+UL*!GeK*RKqbB-j(WLONK zh3a1wWL#|IH}5VaH{Ec~Q7P{+SpSI~*8J6ok3IgNHT;?XXA zUfk6y*sOl*aK`>bu#w5E2uVYwlAW2If)Fd4U9Crw6=9lE@4Pv>M(a=Cv99@R_3skv z+GE{!S-%^sYrA#rvaYvVS6*KW04!-^_?UcV@p15}<+F@WyZjzy4CW($k6*9b+iqQd zZe3rpuCH0wKUmklSl4~l^@w%-*t&jdT`Ny)c@Es0VPv@AqHGFFQ+&C*hi8ISaE z@=_;pvE`a9m7I3wChA`+B`w=t^hiXy30YM-db5xO5>}Q8EBY_e%6V&YO-dG`8ZaW# zlG0-au7OFc2qmO{0hRbqC2Iw95#|2Y_76ZQ&akd)tm`Az zb>!Xpd9LwgtjLNaigP7D>NuDY? zifutJzDj}9nPU@fCKR+Y4o6ExQ1B8`ZGnqxJodgQ_EPn{hPea-E+F{~2zaM*NfwB1&fAG?~6MpY{Xa1jW{A}0Q2QD@?O`rFC)h}+o>Y^bB z9&kK+;`cYa;XeL@vb(DvaQ^3ij{W)`V`z5ii#vXP=uf|F|BuG1`!CA8eAorw9em;k z0nbHizc>GZj9KS5pa1k+&;OJ+dk%k4^}wC^6JI@i*B8Ej?s+@v=L{?V+OKadf9fY5 z?*NeNpv!$)B{CZ<@>SeBzxglM z?wWCETiO`!TR%=O+*mQ=%T;&2cEiu+JTYWYU|i8Ra;r8M+qr|2JFedOBC z;-6mj)9z=!_R?jI*F5s=M?UyM$;12Jn=)<9iap=GCarhyJ^ysv)wAIJODC^cIOUq^ z`>tw;()*{O(Nq4s;;fRJhwSKhD$Vo2mf7cAQ~wQ~&(q@(P8g3n#=N(B+ASLwem8f{ zH?KXisNoX?Dlb=+%oY8=XGzb zX}GKQz*AM<*)yWVf9D;K{BrSmpG|n@Yh^p$T>Iy%GM^cB_4p~9v&t_nedJqXKdf`? zI49iqA9wyVbJzSIUGV(XDLv+q)cr4|W<3sn%+&NmDMg1pm;06(U;n zP4X6Gd-5Qq_zfgq-WzzC_gi*ZcEdOO)VTldUBA5hY<@iQn(y}mo%8KKHutQbT7C1S zXl+Znc>T#&Fa8kys{2uV_UijHSL^o&e(LAn`R4Qi&v(zAU%&JK4V*gu^wxzxKm1}k z^4|BK|M=FGU(cNRZR^Iz`_6^UscYYM?o7?S!7k4v&ps6*XKy5rf3oz!rIXsjSOC#l!thZQe61_}R|k*?<2m>S?6Eb{r$Sywc9k!nv!ve?i_ow)dtta_8M6 z^$f4-y@khxJBBWwiu5cGf3AHg#$St^7V|%g@imbdF)xh`*BKZ2wwU*c@q;2a#e7JN zqav?wuX776@YWE300bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U< z00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00I!WT?E{= zk1PD)KQTIZ%tj_fq?CLW)bkMN#MW${HhnqP2l8Za1(64+>Ae#bBwmZP!AvG`5Xk7SmXZkMkE zt`h$PBn-t+jkJ+9az?=@8YQD_@DqgJXOc&IqqEW72v{L2VJVhsWv!f5u!>g2 z;wKv;yf0XiDh_d~PR*%14X5d}oVL?(x=zpOI}-D-3Fc)!=4SyGWFeMd3R78{Wm%3D zSdo=jnN=8Jd>KjVj7V-9S%-C5kM)Ohyb|_4KDWK2R<&L2RJ+4HNTbs0{9KL{NRgCC znN$cNRZ=5$(jZOJB5l$kUD6|cB559NLi1`q&94Qtpcc{+nxd&%TFYuVt!S03GT#%i zs#eXaTMeseNw&wHu)Vg=_S*qFXou{Ct=OuawzGE5{^x%9CGgJLQE8nQx_L=Z59tYA z(N#UIXZ4(3(2IIWFY6VZ=vBR@*Y&2}(mO`i=o^wbVR}u!88Aa;!c@()*)u$*&kUN1 enKcLN;t2u}fB*y_009U<00Izz00jQ`0)GP#R2u*Q literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/QdssDxe/QdssDxe.depex b/sdm845Pkg/Binary/845/QdssDxe/QdssDxe.depex new file mode 100644 index 0000000..2a47cc2 --- /dev/null +++ b/sdm845Pkg/Binary/845/QdssDxe/QdssDxe.depex @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sdm845Pkg/Binary/845/RealTimeClock/RealTimeClock.depex b/sdm845Pkg/Binary/845/RealTimeClock/RealTimeClock.depex new file mode 100644 index 0000000..2a47cc2 --- /dev/null +++ b/sdm845Pkg/Binary/845/RealTimeClock/RealTimeClock.depex @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sdm845Pkg/Binary/845/RealTimeClock/RealTimeClock.efi b/sdm845Pkg/Binary/845/RealTimeClock/RealTimeClock.efi new file mode 100644 index 0000000000000000000000000000000000000000..e9de2ab530e3a62bdd429b13a2c91603800250d6 GIT binary patch literal 32768 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 literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/SdccDxe/SdccDxe.depex b/sdm845Pkg/Binary/845/SdccDxe/SdccDxe.depex new file mode 100644 index 0000000000000000000000000000000000000000..265ee7cb4747c4002003849c640b7ed406f92946 GIT binary patch literal 36 ucmV+<0Neip=K2~WUx;i^r|QCvt9ira0<+AzCPHu25xnOBfX6(DfddFv9}%Gd literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/SdccDxe/SdccDxe.efi b/sdm845Pkg/Binary/845/SdccDxe/SdccDxe.efi new file mode 100644 index 0000000000000000000000000000000000000000..a55215b5d09d4b6310e5babdbc33b59c7e43201c GIT binary patch literal 118784 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

vV==x8<)a2|{Qq*VxCwoZ1@W zvzMR`?}Ue{bR)J_BTeKOGU>eUUIOAGki8vo+`jRHulI*v5|foe9H7YaPWuUvwGtcu zYvP)6*-rp3t~dfO_!IFjh3EtmY3l-Ig!lU4GZ!DH_|V0c!uGCzA0KW6Fk)9t-9_Ga zm}?4NW52*3Ps!L^7yn1nWlzWl>`nNP`ed9R@ZS{mp;6bz)b$~C$v%-F{J=SeF7i5a zZ|d5f_k{$*|Ne`5pQeqgJ?Iy0*1(e~;7RzL$k{!dafkhV-~~Q|@YxYVbihk{DdwIn z=pnrKVnQ9zwGC^7@@5e876Y=bJE5_7l;2kC2lu*#Nk(l zA39Cm7n83$B(WR&tWnq;>?1Sk-p-s?@czc4?pXG1KizEK>{E!GVP}ai0bZe_y_~^j z%Cj*>ye7Ew`07YkbAF?I9}DQ8!1O6F3QPiT^3>`}{m|=5ikW zY@Dq3v7SDj8SY#i+vms~;vZ}tuC11s_q@+L^6V$idGZAIJ#xnx-k*o3N5SKY!-)CuGJGJe#4V0E3odm}~H0??>3+qF>#m&-?u` zQ~G*vaLb(D9~0I`!59oYkAqhk3*R*Z&hjvHi;j7HC5M>VSM>ees*WG(b$t1UwkKYs z4v9a~$9{;Sz28I6cIc?>uNpR_zE4HQ>k@NK_7Nk;RJ`oF)bajEMZ^Ii5Fe?t45 zPi_A%W4>MdTJ0OzAM+D^Pxq_Tdx`gFsP7rRUoHD3{vQkepYHl}Te3ON<-BQqtybAVvJ z!%u6cA-Ca^u@(NxZ!K|J^8J~h*P_J!7N5NPtpK&}X{eQP}8+e%gPHRN)eDE#warl*ChbBT7FDK2Y+r4opyo5NJ;mUw7YrJV4OQ@u z0{+X`mlC%Z#P=?KUvDAvKGLG^9UcJ<30|q+UW$z-Pjn!=Rqin%zO|G!3-kRq+#P_A zxmDh$0fXc{#Xf)Nbh>CJ zyz+Tj;U%PPk+f*%YF&=xw9An?!xv!s0DcLq5}WvU_HCH4i3%R-6JN2&XYix$BbJy% z-*`lUrIL1R=p;qV+d_lK${JWRWimA6mvldS0QzAlG)libHsjr4{G}2Den#oW z5nj$;Q9c9F8w>5)YSHgay~;PX@fp>R*?a#k`!S4jH6D<@AU}HAgCczr`5&nwfX{Rt5EnD>ub@2;1itloeB?$i|OCt%cp%`|4%Wos>h&Z!L_s%$eshK`wL>E z&qknAQ%|0fT@l_?a3=2t@lJgI?pN8DhE0x*4^N5kp830OBMw5Zk+ory=6`O)jmQ~| z+fALrIiQ_x7lOYppkIj-G0W_xjFKTno9Jd!*)K2W8BLM&?<+Wk=W(7YyjpB!CvZ$< zy=^`?KZ|Z}`ZPn-TKk}0*V>1ud2^WfSZD{i5Qt0=-;J!jj|o(3MU&34_P&!f@lAnA z_awqYN3gD&!XCY7^ynDqPWH4FT~fL(ay(4+Z5Z{6@2Fi~R;ZF^1Pdw8KZ|Gq@3hkzXQ=wg%muCBgy|llDHqoi47DI=%rtZ^aUVg^8 zRkHq7sK&A*&agLFedpRfVC~5-OkJ|(V;>wompL=o-i*&)V1JbJ8`$4f5gV-ZFZ*fI zp<#6n@*ZqQb1j-ZnAuY9CDx&Ff)_uhm=7`|`AnVZV)s24dfsyZjvFU8mO326=bl4^X-_@_)rLV)Edr;q2)v zXKZrvtd0u!>EDpuLMs8#N%U^+sev|4yvKp}Sc7Ks6i@3MH`7ISHk@G&`^rvasnV%^ z=jCg_23zyR6A}_7_ zzLj6mUtqP1Klf$u9Q2)#%2`2=GG_+w`a$In;Yak%{)C*FL)*>JP#b%4Qi#z+MsAJUJ;)~|{i`@Ar^51`3N-Jh_6{_w5vWkn11ynSA>?tpC@xn zXi4IE^!YQ`zLxblef|t8@&k9$&;Nig+1duQuZ8dAx9G>h1CIfl=qY)Mw-|eW@za~Q z5xkhZvAb`cJ8!vD4!``Al}oW%u@`Eu&)t@S?MmH>S7+0f`TZ1UjL3Hz<8m1JwC)>A z+&ad^+}j{}t{JZ;dx^W=2O;9B^K6xe2hHBaDfm(eYdQ*GJiD{+( zUWscxPmJruS6IV`-(0%2Z`=cv%^jjmwQ!bO<4AqoaU8N^F*?q{4Yp2eAKO_A8O=L6 zJ5ZMok>1JtmVM`W%;C_r*Js6{cgfuPg!Q2&@QyBD(Zn43AlX^}5wTMrKH^;cF}$BR zUPtp}&2cGNbNnDOY_hB)ef*^6_;5J;HW`!Cz#=eV2PjXS09I#pgNp!j-K+<_~eMhVO3; zSUL!sUU6uJc7N1^tdE{pn{p}` zS+-zJ`0#b$s)h5@owPNdG5l%Z>rrBZ&gJ>ZlTOF)*7O;EDd0%dmhT1*FIpQiT=-3K z;IXL9F>gc_+au#N_?+;fU6dF9g9Y5|e9Tgj%y0KoTD`o><$KO2){1Z?f&kj)FC*r{>t++>wvX^T3*r;f=t5_;p}lpRlwg@k&D9600Pdk8`vwytRn70!O^IW768xQxDO0{@U>2!6V+-QM@J? ze#ZVi+AgNOb(E8}-;a!Xmhqc?4h=u!{DP0MBbv0n$B!zTvEv>KbB}xL8$H^<%sY$S z&7LNa^P=lNh@Kn>zl&u)iCrqT2|9*~n-;oMwz-w_MMr9JvR3j8dXUUtv0I5*u57f{ zM9DlBzGv$HzB=`vfFp@>?t(%jF1W-0EqrS1%BU=2LLB4PhGnIOX^!#4G%N_v9O)sN zV}d{Hzzf2%GHjY7Ho#dQ&fL5(>iWsnIRmm5anEFOuIAvbXX0pe*_p`Lq{`jC2Hp2{ z1ZDLb)h8<;TpKu-y>GV`YL1j*%@ISH*fr5vaph52_9>xRDdn0Yb(Q9rw?*F{_K)-= zkr9GB(TRFH^I<7C;*QaQU!c1z;Vw<_TSYP_blx6m?~Cv9ZHfO6!VeAHQs);r`k4aU zBc|3n1n(KtQ^Oj2GcqT7Z{La-78(zNHU&qiq|IO3 zFDq@Bf7TdieJr#d2knb)BDhmJ%0GpJD0oZ<4obnn9{6z2IEd;I2SfiCaq!m@>=kUs zL0{x4eYdgilX)B*tK*;;+>DLw(&yyvXVr8ccNz1J{>m8=@$~m>^sY?V_aftMZ`@f4 zZLr46*uO&j)tJ7FeN_Ax=nW!|ThJk7?B$$}cklzPAHPVLAtd-wQ(fc!FfLVOf0%y~7e4)U78aM@B6IQv~PW;OGz`F|{SUa6k*I3~F zAi}x2fc26VU=Y3A0$=$ExKG>}HgG5K3V%#Q-pA}3V(vHC8lw$Sy7>K!nb4-#=egns z;Je^33mZ=V9UZ@q?;_X##M#pFUd|#A_+El`%sJobTmc`sBxmcGaw&_p&}YOC=7{Bf zh*(Wq-OPNJ`C z+lv7S?D9J)QXRp^M`$W-b$~P z@f8^%aW{%L5oc8^yn%GVS%B!Q@EXxs3O~0v;FtT)_{90>aV3eQ_|Ure@%D=i zA@M5G-dT7bW7F=#J7dTau`R@hCo<(Me!O2YW;OWH&M{vk&0IGVK5}ll7Wcfo2R<2R z;I%Kt*DWyikjQ*TY=XsO-=eJ+|6VZizZe-mcB{5Jl<(u% zKOcyk7r7Y7zS}t7G1h9|?W~(Eoc*cA_aDohDD1Z%;7p9Wkhe8rQnt`tfZ~&;9bd!T z)ciM8W+3lU;NJo3!#$kC(F%^SU!uLDC&!Q;b41RVvBVz(PJaHu#@*kht?#?uqUP>~ za9JO)*K#*mGxY@YNt7{FYh*H)q~06Mde;n7^&ar4S9C*c!|l18d*|-|lgzzuZsFXl zz@qi&J*hMU!mdZKl)8O^zMn!T3d zhZY_7W$KqRJA%-KT1a#EC3Y0NG}HcyhqQz<@bY3m?9~2zf;j(sw8oitVHJhM&lVCp zyPJMBqRUj`_t)@+vNlm~(ty|z&CFZQAgB<0gRlK{j7!|2n>-<$PY}#_*(_UjG!1$r z%8&J*WJ_?}A^Nfl`oC~5zDi)IcvwqVO52>P>sShGN%a5Bz0vXPO;0E!y-;8x{btfz z?)^^ur<5t;T`BKMdB^#^4v7m9THHe0A+))XrxltAbQfQdeas)y|Bv7|cE&kn7`7}n z#?RLd&3X>`RPv^lke{w4Jj?uA_i%JV!JE+uvft31#66(wQCX46ll>uL;Pym3&U}F@GF|w`qU0bU2u zFP|XJ_IPk+*yOW(7Fz;?MGySL-wc0wkn(e&TZp`6pDFb8KKK-T2yTUD`aoM}c%Kh$ zgsuvpr~8$UHo`j!8WWmgKeHnidXhP}4m`+Qo*QaO$RV8=BgX^%osRWEPDf2&r(?69 z)6vAaB0+rYH-}Bm2@I>qLvNVRd@6!}6@$MTxBE&iYYgn4@fI*ffp0hy{OE6}zq7Ty z&-C><){BDZyYx4h{=d$X`RcUHaN$A@zQyh~@6zfc1oK^fS- z68b0|$bE&3Q7GdT#(4eWzM)x95$FE&eF0fV7`MVdL?^t#*flVA72ri^S#S{nUH$^x z2%QU$HEBI&Y?Mdx2)`AYH+@6m7g}+QyJVsN0%+Wq{zd-y=6m9A-S=e*5BT30`z&MZ ztGkT-bMWx?vB#eO|1$QWVHHPv82cl}*at!9fe+<$jQvdL-2tsb_hHa|I5g0Is*L}t z7oLF@&NKc4pochUJ{)=wS_r%)Z1OSQ=R*r&$dS#AztF@5(q>yC>Vz&v+*1C6<~Qr@ z5NKkZ4^4zX6QR(ANe3sOgEyc9Uw+Xm9o#UyS2}2Zy=};+&_U@xpo2ls!MBwM7va?+ z6C_^XW~Gl@A20FMrfd*CTgcoM8gj$)R(1;3#stb^ap3JFe?1e!^Mog{;q+{CGcn zIFvcnA3P2KkL9B^$8)SxDf=0GgoAGj__i`1;RpM3)3pSdb9u&`^TIQW(D!6d&AuLZ z<~^_D3%*W2A6E2$!1aqnm$J{oE)d-%PT-HZ&J!0NP$x21;75+PD&2NK;`8zxL!P3h z>pd%sJZa>?&QN*UlC3Adx=CyOa(Mv0_CWR=1fh2Xv*#d$b#AMNHun!hzanl`#kHAn ztJvhk%tYIXpO4?OG3v^X(7)apf$w61R{s@#e(sN5B>DjNnlEBs(xSHqioQI|`&ay= zM_$f3BzBSbxmiCti2ttjvR{;4bn1)iEPGGCPdq;Ly#Iof8N&IdTI&Ps@p69McCdMZ zuD3ODmg3ow?17-qEBv(9G~j$@;~iJFfXjz0!Npb(7dH zR&^J^NN{WFolf|?=6`?X^PDFyc-Ch6b=Ns<`kA=nC`XoS>YPg7yd_E3Hy?8Lu5UK# zbq@8Z^IPegC($>lKLxl0{O+$zBaf+tL*E=D`X;hS~%)YYU!moY-@7oQ(I?R5ur@n(; zbaIj7Fg)?;VVdKo>`%LaIXc=>lesM2k`TrmZiJ8JcH!${6NrBM34Id%wuC;H(BBgJ zCpLkc>$9BlCjS*ZRQTUn;_Eu|yUzD>-11t_I$~C+=uYT~=uQ6#*BV+)e~92?XD*-VEm9drk*HcB=SY(;M_N~PI}@7A3gE3p(oB$dZK^DZq}8- zOG7c^EIQ&5&Oi7B-H8}Z2eD4xd~`)GeGW#>KR6g)2eN%1`oOd30#Bvm(?CCXh_s)h zkM5%#FS`W=^M}))m&WTd^8A}B2LT`Y{>rs$RiE86$~A?k!PXEt}^JH+!=#%g3`eZ{)$_>i4u0RHIrh_Bjkb%B>;@iJ#8}c#qwwyfI(kHEd?OC6!`d^}x z|Kh9{@yAqmp_3?II_aWQ{y(FWQ2&afUFf6{IuTn!=p$6-1T-P`g6M~08-(&HQF>uS z-QhgelF=2;ke~Ce8pfc5jwSy%@)OJAc!)6`!{-_3{M(HlNY#{Pwli4 zGD^`zH(EKOr(cU!=0htVK`YDt0j;chM`C8W`S-SV@<9-bq~J<&IJ!H2|WrOpq9 zeuJT7(KnT@Dg2wcBIkdK9T^NS2!ekG!B@rCZ1!_3d_Z_Ybhv*7J{AXi6&y!dTRekL zg5T;)RXM9k^vp(RNpww-d*IUhk=*-d=$hx@=NI7LP4Mmk%s1Ir%wBj$9`i2}{F}O_ z;NKrzvk&-3rf!unkal>Cf-+>UaMZ;*7Jy z_`OyA4r^)Tz4!>7_(w!e1o3Vj_nbv*K`l<+o#RfmXf31#-jLmVH)lhVXAgK3`Ou6% zMb<-`89#wPfOOLr7|ngZjqKwR-PQNItOJM-=PdXsw)h=iFh%ox%5x!p;|o^5kwvp718$KjS<8O3$Re znr9R5!+7TNjMIYZ&=U^a*vGl;WAsmZ=gRd&d^Axz z#D)FZq4&>ghs0Mtf_N-xyP38<>uY!1;1^nV=BxXjuRXVB+c@s? ziO~Y;p0fDWjW_!CdMNjGS_gQ4M7zXDc%zem`?EFA`)}~<_MVXi zb)ttz-azt=B;QitiqZV)WZe4j^zs}t$r(2X|6UBA`IEG`LM?2XeYW$EceZvYfOz?F zn$xj2K=X|EcRFHtqN6%~&N|7cn#3KL( z+e9BnfQLHp!d-QYS%??gj<~OA?}TFyvKj+j4Md=MEv$QiE({NYjM^^gu$!+kMn_u-`KQ6qmq6Q zaXeQ$^t)Z!q2D$_XDK?o(&h=;dc-oIuH~zB&wmEI<(2`*N78m*Kfk&>+By!rap1by z8tNSrXq)yaxV9TI=>q=b7+@a3oc%2_XaYWw1<13r??mZ`L(YUpD3d|nWb)0Wo*4Wpap2o}{i+v|NDt%tJl>5)Co8+T z{DpZu=Tgt_spm7+pc{js*8w#%KgK@o2hKjYT6pTyXzqSpbNi_e*JPYJw5XRumuggzar=mBHVxA*Q{CO{PpK}$xQqOqmsPh{-Z5;UUgN7%8n~}f`4LC-H zI~_NIpNaU6M&m<@84rJG1RsNgH8>BkY>puEHCz3?MVdBEcr5Dx4tS)p zuYK)EY$jPxvjHXP@}#S@!|{{n)2lpF&p_TUT=iDp@@a8+8}D zkibO04n9Nv7Hr?ceYMs-0o~!dz6*TogLL@5CSA$~BTpj1$8EGF_!9a0_J*6-LL+Mi zT6iSqGVJ7BvZrL7gV=??at45tbH@KPII?aR$tzL9rldAH*0wgW4yUEvJ!Ui^)YN5NrUxPCSnW6~gYt>7)yGEkjy_+Ym& z2=spFQ#OYC7Gx}B41Pl&^)cvvR@1d;g|jK2Fll8c{ry(7g0DQ+7?<8?`^vBxl)p;oT=Ynx^+MpM-^9R1+RK2SzKCt# z5C^TJYulmwtwqqf4H{oDD5y?i13o|(Oyswm=M^%P^#h|X&ArflZI`|z;)@fUFE{#v z-oF*!W&8c!pDACXe(nN&GVaFYz9Htr_o>Tw4OQ=7$K0JF{b6s9tS8?j{lQmpmhaLJ z*4i4RFWZ?rZu-LdNb6+!A!`?+Uz`0XB(CJOZgdymz0HSqcHgL<30p&);=Xrjhq|PW zQ24+ugSO+qM^7|3+oztRu^lux(r0YV^;L6huSJ8GC4S4`SKn|hjZNoQ`%QjjhYxk) zSE0S~s|H_w6{W+u9~#`R_|@2JF4nUSHllA~qo0p)T0N&n%6b0L-Vhsk`)P{CgkMPBP;`0DM*n=4CA1}v^^8Vn zr)8h+HX;f>CUuR0cga)k$d&V_oAc4bNt^!z z%c8XP+M;!Ctzyfh%~5fzbF!f92^poWn&nXEPGoP!2XTzJIqo<0aE8X}RMzQ)7n0XA zE>&A}n0&F=7lrq@S2Yv=*q=JzbFrRHY{&rWF1sggm7E#UM4J*TJp6aMT`%x`PJaX+ zVbGJtT1m})&PN%C^S{6+pMV#2WeeX~4(&g7@Ht zAkW)R-K=Eb(0;_PGG@`%pcX%5;2Fxw9^bRr6jI071>6g`des%-GcEFNq~;;cpLc`2 zCA_QQo$!t$*mA-T}Gl$Oi(IRg) zIS0ZQBICa;48Hd(zo}s8d5^2Wa;fcw%)#2jm4Xj=$o`mYIcv?L_PV~zTz`f2^tY(v z4Za^f${H7Atn&Rtzbj7aM{kM8Ru6x9-im~m*?)8no{}?8t8}gn$%^!^i4y<*>(t{- zkIXunWUm|Jipnas1kSIq3<`dNe(yt%dJH{E?)iHKyZC+bOB-kUT^AqIpu_VzKAsn7 zOXQiz@$H!dJ#B54z2eVjtk8iXi7_C)dYvV17U$844B1WHte5PsO5*PNe4XEjy!r$2 zeyR^4Q&sxs%y|vIpwcq*bAo?JTT;hX>R2iMAmqQ?fgp7IGUd9MRqjsx%;5XTpJenmCJlIG{~u{4eENQhNbk+Umw=;f z05Ob{by%j8Cj7e=9xOPnc{#SOiTNdP4q5AbbOP@`#h=xTpZRshXI6<;afb45fa65) z7?S~BC_fFjL`JAK&+9PU4h({8!Lu)ZS?|~mFW4{gpW)Fzj;?5= z{uA(jnfo^C<#RxMYSJ&kT@v+PWG=I>U&o*3P<_6cbb&?bGCbo2@Ay*N*7?OXCU@XI zAAHI>r z$yv*}_yOc>d6OQFD_uvYg}F3)GEH9o;1M?>%cNDzoc!g)3`)<-=$57 z6aQ%2?D~&~Xz{NE{4VMhe3YWg_{L}lt99HCo-5}Q$+#hNl+OA*^|WpD=bYCN)^|f$ z=k3pW?*P_)!&t)(=iEGhkJK4~KJz7ZtmsFa^`XvrWski*3mwPH`t>Pb{9=sOx-wcj za0egahPPf~UA(z3`zAPNE^v7w_qIL}71W3Qc73j|ywg$}6^E>)+Nj+a9+%w|zRxZ|`*KKK)Fey_=%7 zh^wq;bEb#)WA=l#f|n0waW?^S_6vNkLQ|X*>e*-gF5)?)<>evlp`;&Ap+7#e@w-># ze9LrXV(#jDl&vT>Y_w%ii`?C9*wzg)k3?S;+qw)~8#+US=nPHwpfkiy^rSc0d zc?dnADXu8stU4twY zp0b{~8G?Qu!hYqkSK6j?-c-nw%J>NaRvk7=S_@-ugfroY6uco70 zpm(fCXW04_vE=xJcm2IB`$Ke>ACTrD4Y^UFk@gWZ{VH*`cd~Z19-YL((+_+-4X);< zA(P*?cyd=UMjAS*AGSL0PP0e$C%nIr_k!0N-pAB%b`g1U&$k_9KUAyK^*ZMu$$f7} zhyh;9d=t1DY0vpt+da{KF+M+&@v-`y6gvJDbswSLTq|{gTPa&?)NvlY z=san^M%P_WpRf@Q?6Tf|eZMF zT1(r(uWkiaaPSgUBpPwvRaBpHn(L<9n$s{(uY~KdM7Yn9xr)s4ikz-Q!)QaMXV_O`$SypOStco&~6K2y}1qQ0L{V#+TvuOyGGElGUyGCRECJuruNu7~D$ z?qlD>=A+u8GuGhaIdPoB0dIZ;`=O0JcZJaS=I>h;i9CO>k7dy;(zgChTXgo(o$t(I ze_txGGzX_Wwj(HhXVf#aEBKUl7b8pJ_>>c8Kan`w3VeS87k1gnSsS#98=_M0IYQfy z$sJgHo&~OP*vvl%j`=0mWxWTC()MvnaIl=MwHtV5MRIN`X-h4k!SnC5EK+B*0n<7o zy@2$(ceO=_$S-XPj--37BCl*?eah3Qc(M{znM~QKgac-V~&I}JmH`psS^|Ua~f#ZX$#hx4Nor>;%6XltQ z4eZ_W77ER)GoP??pyvuR;U$$oV@q1}Z#r zcdVxcfAdajaLWenx_8UGe_HnMiQN+A9S8q(u3n?;8L9J$Z`xieB2Odw*g58>*hQr= z%!f%5Q!?vq$+M*2m6sZ)C+*!$+S|+nxex8kDLrPRRLU}!Umiuh@Db^2lQn7Y=~MU# zMp`@{RN)(DUHHS1=%>_|>qlL*(l>W6thBEPFq!Z@o9m`qmL^&fD+#e2>;FEv%(xb0@$7GcHYH=o^`5yGcu7J@Smz zhKvqu3B)e4p`*~({aV6IPtqD1i5pef&}*kMFzP z{gCBhw|Ks1ylb(>&`xj*{`}7E)Z+I>Ut474ll3Cn`Ac zQyS+cZuvU-lokK=4SZOqy|7I4KlZz@o$oA1ha3x@lgQf$pGZ2t_Eadg@v|{6@5tB2 zZQjJ^RV~!}YRHjy^7(Ayb3Baiw&OcC@yTcXCAV?*alwmre(kmxK1r;523%OH+H1B3 z9G5l&sWWcWYdZv%d@azsiI2b}XM#lAtZ$j0B*w!U=}fqR58p53+GgKVBYHUT@6v{^ zKT%^0Mdk?qZh}Uu;9p~qal6|3O%r;JFnlT^f6TZzlLlCKmpxXk*rW&8Th+P(ej0=Q z7{J)eTKIhAd%%SS^<%gvtUqb&NAaFGc(>z(^2{xsUJbDECx&%9r_+J4{_0 zR2f;%IjYXaGy1n*VA;*x!AW7n4*S5#98m8pvfjeG-Nrj#KexzY)0ZcuC?i?&3x zNbG}21HSdfjHBL({+`NS>cwZJU=9H0PUU7(uAr}{z$jNZ+POEd4|l!ujHNHRM%!ka zZ5uVtenX#ury~~|L>`LYNYm-iaVCOwKi106T9v)l06%37(CIkSuj5R^I%T&d?$y3O zbTaiRy$P7a-?(2p)R(mlVET1m&nyEb=YNSE*STHhiSiei?Tg>)EOBhubJ!)$)=urA zGYbC9w#G_*$@rm=VV9Qp!IL}gw!MUmmwQe`Hxu957wAoYb+Prl#~JYt77N@YOt+bE4?W*(mgj`~3H|4Affhf>-D< zrGvfqfuD1giH?2TEp{FAL-@le)=mXJIa^KLu?8*Wldq8dsLv3$*}T-^X!$p-eh)fV z^nY3_j>5zDVz12l#81V6d9hb=zV=i5N_TQD&(pkbfwraYV&Xo|LEDUzYRlZib7@J^ z-pj~Sb1%Mz8IoiNM%k6-#gQ9c>FwYIWLcEhhqbuY~r`j`;5a~&+gWU zr7+`eIX8~)$k79Z)GhHxFH>Itu@~;8i4J65k?6E3*fAp8WUNhkJp#T(KHA~KXRJfH z(?j#7;osZBJdkyXF`RQ36saZ1`<$uhro$5NK^L~q9yafu-P9>DLGqim?33^(bl%z> zJk>t#UDUgtPc!w(+KBLP`yed={wsR<$)o5Cd-&LaQ|#WHm6i(OZM1nZ+M-=pVR>-J zQr^?I2u_x&+#owL!OlM z;!xJ&fqy5ThspB^?>|`@`lQr*Xuan7C9ww_II7lmVxegZI6AH7aDeycj zP-7xvQwSXa>w%!cyaaGNC5L)sTn1~FI@y!=CyV9ydxNzE@u_iEzU*c24rN}6{w{Ee zZv@3=`yqJ0ysP0k0r<*zP6BuMV_PS|H%It|9Uq}|zah|M_p@8gHKTz4RPlt$7KCmN zG$FswS}n?+6Z!*Y6@OMsdLExZ?5SDUZ#N7}y$9b}_IllpnlkG_dvZ`Ki zzRsXenKv?*3!zDYr4d>*bxPr@U3qG(qCYu@u)}^59<>wt!>`yXc7X8jTJ+l&;MD_Z z6Q3-!KG>U!?k;PW`g)}B{7CN{p$G7K37+%TH*!v}oB_wV?&zJnzG*vn!GMQ#kp@}& z5nVxWaYD%fecz$*ER$dD`878Gfa|ZAa!us0@N=0L0%s8L`0}knd*G8=95P0oBNpL( z4gX+Qz9Z{4;Qo1$1Hnf&eJ(sx#xfTChk&y{))hm*yXfn}%XTsr%(3jWm=il5wghkf zIsK4#0sdO6ybq$xG5DK|hm_@RoK}3la@HoiRv(Y9eaMAxOS>90FMLqu&mP)zD;^ry zlEipNWApnDTX0Vkk?sdE?R{Wm0OTPQ^ zB;mCJuLYin4!lU#V}x#e^(sTBvcCZ?k3g5|4zU^B*#IrTx41*BU;CMAQa85M{urBn zX0oi&FZ#9NGY<$>KI;XHrJ+kSXxl?PM}yHNSi2m{9MgcMy^dV{tYqCkW9iOkwEvqcatG30=w8h5WRpu_R+2d>z>nl zuP(HWvrUSViee|On%m`XaatO$V;85UXQ#*M)y8SbW#y~?M-|O>RaLu7^JEy!I{#T% zvdUIg=DW<&S$WG`Is&9y2Dp%npu{%XHgVNN{f~amoN1fbk;Mm+Yv$9N>oJRO6VIl=Pb|2FUXneUgauCtWH|#E-uI+fw%6Gl_iTy-T7q&M)&j)i=$$* zJT(h>m_Ki^=`E5mPD?GVc2$<<6?dQ~y$qx*yvtQtoL6pBg^Y0+YcpyXYg42)X&SVq zS2ebyO4}GnrJZhsWd0S+iBPs5WR9WGPawIp|UYZ`kb|q-=M*+ zS$%5noZt6_SqKJU)ZKH{^bA0Zrs5>GZ!K|}0VSjP&r*!0Bdr^n%o_it3bWkzxNNa= z-IZ0D^`u6T>KOR2bKJ7MOK^yXj*$D!Cb9 zGil;P&7A#uk1}1=D=SNH%PU^#>e{WIr*p@2>kL$vsr)a`GZVaa=F~nxuRWc*mornk z&!{dq=rp6cyz?0+13#Us?KE||yy`x;x>2eSYL`;iATiOnd;nq^>R4wY*vwjBJ|3pEMp;$0ln?Y`D`FJv-kj3v%GDWV@O5Y)s~|sr_9~Z_xU#zJR#z!08tw<<&tI#-&!9Pz2DE>$ z1vTx;4P<$Jh^8Imqvyva>?kLR{9T=@Kf?%Ul|P&DoM=3q#xuis<{Hm(<5^=ow;In~ z#&f^%JYqZ>jAx_qJa0U;>3X|i#?xjzCmK(u@ysxuxyG~Hc-9!tt;Tbg@!W4bj~LGe z^;kp%+%~T{~*tt%*1PT1vq=JU+)EQ{DUkCj%(yulA4{I())W8^BIYmi3@tqrUr3w z`s_K`bCR>?Tmz=La}u)`XU>7#vleG$EX=%S<}50c%*hKEEJ#eBos*iLBLv03WnBXl zh%$X)c1~hi+QKE*0!0lXP2@nv*Qid&Gc`T+8boeT@PdW6U8}i_C7C%3({psXpc{fI z98$ea_azxQx1}yjOUzDPcnzkIm64URVBzdusK_O<%~oBAlPEv0)K*$nZCmQX8zxSI z0ya<@{9UAdrmZlq%9fN@V9RnZ$KSHD(xu(%sE8IRZvin zwxrTs?XqQ5mWgL=#tgFDl~;@lDkHBF;fycA%s3aH9G6Csc_rLmJ$}e8X%YUP9>kZ+bHYIPm@!fl-T|DyLy@5;aaPF&I zSiAIl7XQJecfEdN`cEDnRq8xE`R*@1pZ%K$1e`0GI#AhJ`m@-0?lPW9#YOJ2_!+kB z%*6DpxpOj=c4E7`5G$=>rE8_j=B~22O3JHO+k|yi=9N~7e_U86v!RkjgczM~CNcCy zsSD#_o)a~*(j|G7rQ%0!FK3joEnQh{n?2{Y)Z{risk77O1lcr0-_!LO>SR4d{jrXs z{@V3yei=ik(($H4YKc1KL8ZE_m65mHRVC&KhFxMY9K6JZ^@iop@k3nqhEF@wh2F19 z+ycXzb94I$0Kmo_CE8PX4!^a?&lx{|nZu<84N)jh^D!SFu$blY?TVqtx&91+k`r5vl0kqz2>4pAH;i5-$t2f>HFIq}jepzvkMbgWv-OE(OmL^VI9H;RbhXoFfd{q_Nn0iW1Tde6f%v@lT#!zJQ(RcHTZ7Pol0AcreccHl| zwZvVD4(+lfXDmihbd~12_(`T>_tMHdq&}*(nt;lElpP88&95Eh%Y%P1ZJ1Fqc#B3}piZam7V>l3NV}`N{1TH%#>5zEwUUyfR>e_=KBUre7A9M}f?PGj)}4j4qB94N~`-GvF93DwD8|a&vH9 z1x6|wT7j}JU6mO{)$J7+>w4JCWK7oiP9<3te=0!XnW49AOfa8%du*JM(uoQKT_1+_ zY#k6L(?GRL0Lmb&2IH(tPThot%^1c|7aG(%B*m4+TxF0`hp%hxirJgriz*4)~7el63MQ`&TWCAR9}oBQx!h;9NqnpQ^u^AA@bzLYTI%!T_skv{?3;UI|RQP_k65#_+-aal%gfN zMJn%XZrnFyFyT}lC%xA8w60KPQymUP(wfvpVYs z%4Z?kjk^?PEHQGbQ8nNISLHIMdyuA2dvWAdp_t}ZE80V!T8S{CnBt2{h3-PzRm#XvE}c1N8Zqipnyp5$Y&h`$-faAIb5s<^Im5|fj0*V~r5tJ_=e zC?K#d#me=8)o=ykO~w~9s=$O;XECYSDnT`IVR5 z?W!CHzgd!@EoQQl4I`$~H(f0ZEOo(e3*1#=4;4sGvbaEVskoVzWOU@whp%1sLF?^p zb*{M6YC!i{x4g1!Wx4Vw2#24ju|^Z0U~&p5SpUs@DKCR@=|o_Rjjar48y&%Sx7^ja zprREsn?jRmm~<*5j+cMFfBKM^2<_HC*hJfaHm&W%D<@vL`9#|{ZQp#>_FmiH+P-T0 z>Tuh-w!1I?=Vxu_+s+TTdgA62lTZAu_lQYhiC4E!-gFppW zGiS=RUooDspMD$yImKqPeC^cJ^^Z&(E=RhpNP-Dp!y*KYwLyd|eVg{c^I zcIsTG>MOD8a)jUHw`I!4?X4x97Nv6qW$hR?)*%0tl7b?G|8#G1hFUqr zI@7t)GPkR^z*tP|9T&3LY8Z6A7C?Ez8b+ft$xNRvJ`l9$xb`TtXX|AId_|-02(*{` z$N22j)An*bk6O=pdv3!A^JX!{T$zQ}Ku(t|y<(?JzFyFiP#jDb6q4uZ_V$*4VF!0jLbCZ#N(RfB0&jjOnr}0!R>R3S}AP~gon3{fT46EJ}>QzFb&9y4u z1j9T{bOxW?pt*;P;!=SAzA4}tG0FARI)L|3ipX5vfZ6u#q zKI8br^O3N#oB7CcZw4Rna!7d*uIy9O!fw>GUH4m53}4OTKQwjbu0~3sdwHR)s+?XR z>Pxw#L|0B{*it&b5W$7{wOR+1HX2X!kH4$NGvNLI+ur#HMRDB${Asn4%rrSCNsFzS z9w{+oR1TCHu&Hpr;7&R2xZ@OR%yEX}M?JX9od}wYC8)i z4z*yKDQ%rf)iflgYMsV1Mk{tYk+GS!-}m+{+ySSj)0zI!@6N#Y-tKqbe)qF)ci(=$ z-?uB5ALJ5Tc}hf|d62+gI__5FP7HXmr(QK^Fpys`p>Ae}H)aOAS2340ZFq6IcDQ;w zl*rX0WT}|+IU&9 zx006?d;Pqu*xSO(ioNZ;e5ZznuF7llaXHB487^tB;!YY?tiIf`V&_b5TCvOG+Lj#M zh1jstgOmNAiY0Nn)3?L;72=!TZEBBKPE@@EJdQLJq^BKNIZzcFV*yt$9d81;+TfU^ zSGOfDaCZmk#VvML?fSSmIa8Hj7FXiA4n%LTLF%~EUidgEEYy<1VyD?a3Y`w{6A-J> zLQ2bsrOf8C7%Wth;<{3*Uxc=Yp=>p=J1u6i+6>MHD=D(- z%tWs<5gp`yl-n%CuD1~AdJ_lK<{4anUDqmATH^vSx0k^z#9NpWZI)ow3yz2n14fFQSJ5Bfb)z6^b@aC?QIO! zGF7+_G*$=iB}SGV1)D7lIyN^vV{U*nf9U&?N2@a7E?L^>_JZ;CYDa_HU&UCdr=8g> zPlP>*ELX#YmgX$6i!QskDtCEEMsdpdSYSXE`1&B8L1QE1w{^I`%FhHrxT7;aF(`tM z)CosxvL6~UW6VDOun4=t+a%~y_lF)1DfDcseQ7*2Lho_(en?{|5S(C9`{gv^ZE^=| zmnd`8jSay@=Ffts&iGZq3aZMo36j!+N3=RffZ52_fO{A1kwB`Xr`Zp83%J=aKNJw5 zwbIMNEw)WnoPKbALm)VzfmEpwhVyxEp<}gCSAyJTpvg?ryka$&$+V?S*Q8hr3<7Fe zBYVJONBNejTOf$YeE3Xt`u45mez-*2rDuzr9|=sSuY#d+Pc@8XkI3Up*2SJYbPu5W zNk^r?X$QSQ545MLXC8}ZRtG#DIMZra7F0qD8tK6T$DXIg!xW*~+hSrs;oPUqSJ?pT zqu&A+43F`;A!|U;jbF-Sf55yATi=jy~* z?3ny2o=Y@2i$Kn>O0W>d!fb$K4ajPNTmUMjTVR6cdA+ z6IQTDO{=-vb*VXV>t?gmjU=`!8$PiMcWOHumCE-U`lm1qbt(kKm^5>cZpg@T8#9<5 zq?y5$2(kqsZRHucJEf$Djwc=d3|`nnr#>!!#pMYu&v5xMmw(~%3YY)j@^da{spb00 zcsZejD1zb%q%O1|dPy0_Y(Vn?+1vCUyOTrV^8ac&Z#3dMOC({zjYg>4v`0sg5AG~sAZs&5+{#gEiWx$y7(mltV z`kez=f3%KWTHbV~eOELucjbXM%YC1{IaFF(K6drWjwb8tAGuWLHJ4_T6zz4ayYaT6 zZOw;EtS5bcb`6DBwWZ{ny0;$s@#`lmdOqtox$@?MQ-&9oWM~%8>w3@iP{;OjIZtVK zI=8J@`p9Wt+S-y=E2<{;H<13E@Z!avlthfj`!7D%H}LW#9;a>$Y`@f(ZQX4-z4Z%2 zPw#(t$al@%x8@6T|nB>Rm|ZF%UewDGu}-0xOoQk6}kM8|{QuCE`v z+HWhypAy*YKTRsf>Q49j+9ds%--)kpx^-|K5VjzwJ!R` zbB)~y-_~^)UHW2eNzu~0VsnYJT%*<6^`>Px8u|)w+lCqq`vOKFsByrXGvLd`$GD$Y6T&k36CBM`xwMeZ}yVN0tBvI;- zdZm78P#Thkr3=!CG%AfrBf z-%)D4kC4=mDw-NqM>C>XQB%|wEss`4{n6%VOSCmgSrXt?aL`7H;e-T`01`j~NB{{S S0VIF~kN^@u0!ZMl3H%4S9|lAK literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/SerialDxe/SerialDxe.depex b/sdm845Pkg/Binary/845/SerialDxe/SerialDxe.depex new file mode 100644 index 0000000..0dc7ce4 --- /dev/null +++ b/sdm845Pkg/Binary/845/SerialDxe/SerialDxe.depex @@ -0,0 +1 @@ +öð£J&ð>òàÞÅ4/4 \ No newline at end of file diff --git a/sdm845Pkg/Binary/845/SerialDxe/SerialDxe.efi b/sdm845Pkg/Binary/845/SerialDxe/SerialDxe.efi new file mode 100644 index 0000000000000000000000000000000000000000..3ed13632851fde5c60f212e80bde9211df542b5e GIT binary patch literal 20480 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 QMIeem6oDuL|8xZY2eRDsmH+?% literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/SmemDxe/SmemDxe.depex b/sdm845Pkg/Binary/845/SmemDxe/SmemDxe.depex new file mode 100644 index 0000000..2a47cc2 --- /dev/null +++ b/sdm845Pkg/Binary/845/SmemDxe/SmemDxe.depex @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sdm845Pkg/Binary/845/SmemDxe/SmemDxe.efi b/sdm845Pkg/Binary/845/SmemDxe/SmemDxe.efi new file mode 100644 index 0000000000000000000000000000000000000000..22a535df047c5806315527abf26a24dcefb791d4 GIT binary patch literal 36864 zcmeHv3wTu3x%S#KxlA$%xeXT~l0AqxGlURgz<@yZyyDVtNgls&OSNU36EUscGc90>*X?!Rghu&$)-A z{Txun+5v$9yF85j@pFN{I6#)yvC&K5)wqZt^^QmN$D=i?*6y`a1Hm+h-KkCa35*@d zayuGaHE1BX_OLr1)t|svf%^P;_YB4^3LL9Ctv~GR(;oJnx#h6$(+!7xF^uj0bVE<~ znOl0g`?NjXr}aJELSQb1J%L0kOKLt4YV}(Hf;NV;f;LpSg!KHv*#>E}$ zVCfMFa2e2yzhf&;(VvRt@HV}P8qm;JUf`EWxLO5nWcf7xTAC; zJJ_pD^B?BeZbK(0?k&(>?4H1?`fIe})%RIo!ah#q65A_!wG;fO0CyVmjOQMGd6JQd zl^AmtJh_Y0h<>cSzviZ#Gtup-=Wfx6XKgGPPkgv#vUyz(`oIq}`~AtKT!Q%5DG5H9 zgTWKS#CnY|fAe=)OEqIv9pJ|{w4c*vSg0Q~<}^+f@(u@B%Q)lj_q@%;?fBsP!YB5@ z!K(c|Y~@}vYtiEQ@GP$7_ZWZpXIxA5r+A;kweYwbfa9=_wQw3%^|yE013zH{^WHYH zltGTQeDn?roX41pHX)cfjfo$E-Z>f}nDQhWI6XKx@j?xrHRC$|f#)*D=7QD}jiB{~ zC%Bb|zs_3vp*#1sIR<()8Si}r+&=~GKH$!0tfddQXT?FcfZN40@gv}_WkN6txbGmE z%0MS*I&9}!>@lqBLyT{_nWZk*vbl$QxE7{mRr`TYBzzjya*=3_W>tN_mj!%(1HM~; zPx~Z0bPMqb<6i`PHQ=GwExmwGjAB)%0KW|I=Kya7Jcs!w0-kX1B3R(Q0N6&%*9+K0 zz@7(e3}9mbn*i7gz2Hd9r{}O2b0Pwp2e*y420iOW)4DEz-&WnRpb1<$K z{L?Uf$0_jdKk&SdC3L)l=fC2)7tepi^C>(RvZRgxp3mXAmP_t9k7wBK1<3ybV@cu` zU3*1AW|BA^c7t}q^RS&4aCPI-rL)u$j^(27_~S>IxUagi0y>{_3i@+eo8kWt?RfuR zv5iS{*ekFf@%pAB*i<2GtH3v4v-+;Z77vi!h11Y;6KL3$ zBx)5JqF|GQ+UOJ4T;qJ7tV_bUWQbUon(zASQ6kN^5ZA}BN1F4pR^uOl?fAA% z9@v%y9%yy`Q^5BL`pLH5$MYrW+2H?oJYT`{Qf*qt5^j8l$;ZTuTeTN&0pIJMXJS0s zYl zYP0Ft&v@V^pJg;9i>ENYS9_D6;I4viTR7$M zXy?)1r}&67cxNmP?*{mc@&1ep8F?R|ErE^i*n2S}Zw{VwagqFvLVjJEw2nqL1+MSq z3XmE?Ot@nk_QKKMte?M)@po)vrg z|JDjY_~U~!f%`0cc0KwUxcFl`NBHcAfv1FNJ2IH&oQ5y?- zRrNwgNzZ!0Z@OPex_RL83dE328sGJ;OeB3FeRzjs2eGJwaagPAm9l^-isfc-+_~2v zvyhHHn=J0Df{yl16z_v>lAVP2^;Dwo@l>&LjJ`hVyOt`JDt#H8_M8TKHEcZLE}ASB zDlkUS)DL+OuXWMTP0+IjW41q7m$w~09DaY;{99IGe6>NmT^YZbapxX`&!M?m+qdoM zLL8tNbPD?NGGItA>Yx|lG;FySIQ~3IoTlK|jWKl-Sl%n}%dLzZ+y>uVhq*Uv*nIHT ze|=K{WNr0bi7gy%&)}8)9^m>XgP5e?Qe%4*^oB(-_yjqwtL^aB68~wW$45(xlrFe^d<1(d8Lnhf;zW-)097w zUZ^zu1u+{j)NcaswQ)j_cry)p$aHhXf_AOg2YsTk)hy$^-X!bGDxOP8QwP-C?>!nc6#mx@7Q<&xs26!DYjsMVLUw(59ys~xTa->%PW2j-IQ~j%b+6wUXgzO zoDKYo33z)UJ8p{*B-@k6r};0hcumfawA_g+dKSFA0=m5k`OE7}@{c;Kf$|pFKQh1W z)v^F`q+mZ|xz2bYkk9GrAA_xoXBSS+)wcf~^B8EJKIjT!%x!abcK92O@R_G7teE_tobUcaiXMkt> zsI|uVn?{V^qKq#aF&;Ucf5)it@&0d&7~iLiUlca}In0l|&EGL5k{sPPH@#UsY=Q^wzn@jGE3=P~YE&_~igRriL=JJCN2IH*75Tfj%|Hkl3@ z6aVSpMACV(ak2q=zEMp06XqrTC*31^jDzkO+c~j7&_KtSNO_3)1tBQMuM9sAUHrWG z@!_?>XTt6F5@Nw4iv1H!bsDNYWP6q9d!3yKj~ztMW$0618hjLVk;YRDi;0r!4zd;a zG^ys;reUx-x%N0F#WC4$(maE(Q^J1~^ypw~?4_~*y@%6AKE=6S2)>Exb_? zsM{w5$yf1cll;^X@T61nQ+@^>2(X>a>xZx7YEt^Z$M`er ztQE4eK$aHbK{s;8Jn(rU))3O)s5``hsyoHLwDg?&W&1Dy<{)5R35PK*hK`pk6e|>% zJ29X0Ng)^)#SU7GLhyH5c5vpcLa+mOb0YH7G?qiU`XFE^M=ebeg6(*>6|#$i&?U&W zsvdoP73629=A62PiA}(B1Td&=gLPWu*T0Cpcv{UZ7cP=~ZW(lG68w1{*Zy}6Y-|8L zCEMvlu4Y88hFt#G2hrp=C;7n_#NuM`st7zQ1n&yKL*(eL-%4?%zYujLXxXl5ugC_D z$`_00!4tF(>nk{p{@C=K zzbJhw&UWCm0w>}7ml0#O!~x&JeDPn$z_*Y3cIS&Hl|JNOz#-FF62(rO(ei%EUkERF zSOt3InAoln3*OL(efpboURTDR(;5M*KQ|K27>hZMYsG*9mw`M_fNfTTPO=H$4E=c4 z4q0nDqH);-b}6Iz8#s5`gGGdpFeZ4 zFD9M&_UGpN2yX_jeb>gbi2fDS#`ZX3WpPVmR=8IrA1|7$FH9{K`L9Eqv7Xc*16h z2BIfEQ{zj>)%t$2aIx=)2{KJ_3BuFb4Flif=2DJ zZ>DdS_)2(pWIp2CnS0Img4CzExE*v7FMpJtkNG!Ca}be1Sr1*1|&2 zl8<#2NU+31g0*A{m}8-D+(IpQsF7qEpUEUystSU-&#z4ueDLiDjXJ@X&$Q5`qEC7! z?ww3BQFRx7co)X(Vx37Mcd;mNTP)j6u}jT=rxo1!?)xjW@4la}eV2b!|L)#9weJ=d zl}_kgA>tlz7<9>b@A}wdPsd@ODK2@EG=_s79md$bG=9BKYRh<1C%qF+ zz@G%XUxkPN0-l9oc+zixCt(acGJL9pXK@&wsW-qgZVWs!{Ir58?-IXsScoZ82qH!w zFtxE@9r&u|H!3f|10@fRl6{j9E&f*WXFc7-9~BO<>HvF$1*>5@gwMEz1^e)9%EsOb z-bKKBZ5kKlmB@ zqiRl_3w^(Yi|C$+*fW8(KRtd6#n|+mKOqjGW(;=E6M_TS_jpgLMJM{-*XYhY4}JG9 zpuHM{|E3xyF5xD17_IEYKO^6iYSd2$bLIXF|1#&sfqLK>xt|mqxu29AD;g89{=8Vx zHFAyUvr=DYtXQY?h38s4@fsInoM;rH#Mcm$s0RCvoGTwUhU%I$zvq)sU2~jWOB9X7 zbJPkIz)O74ZI^35wN_JWy^t(0#!6%OabmGTizIi96QDccHW)reiZd9KhcRS>=re4A zZuIA~9E$fw7T;lkA6~MEr7nFWxsqzUBj9tsk*_zRcBVZ?RnNll+OY>+@c1}!S{Po` zyx2SAq#S*CEyetlzi*2X+O}wP9h9HE4_;Ay^+(XYWtzO-FjJA^QOHr|gCSJ2hVz|x z+=KB1(?>Y~@zKmRJ@&dC!A4XFap}FQSB$OU-y}K zJ7d`DE73!AU=Mm2UUf~q(QGxte0H3=OslIN5Rea-!{F)H3}v9-8_NAi6kBa%?I&Nu zedJo~XxoDIFirbO9`v51JzlJto_~pFiYZ5$2^(XY)OM%|4t$jN&$@H*?1pehmGNAR z45v}K<``?=1Fqjzs}lWv+3AC3U#$OwPN!B-l4lck*Y z*w!tC)hQ5N0Nm4G=JVu|Czm+G8PNi?;p5R>Q*eh$Ius6t| z9zs1}5ds;gb0D9pQ`q+=oku;k`+2n65}-q%y*m|l4%(@vK;3w-D@SPC%+l(&)1E)_ zTFP%3a(3F!c!hF*%ptAq;qjvRTjcvDV?RBO>Lkk#HF3utz*@m8g9KBWDy{!C`aeMb zJ?Oh4#a^|B#NLOp|0cmVr%CXHZyCWt_EP)fhEO}rQ-r>c&=+olSl0m$)?TNqxn0Mq z-bX$AHm>Rz7CeEwGX{IL;7eU93pnA6w`0B3U#Ag*)j6y!t_OQcs2A;6y8$w#wOX*o zB@YMz)1u_mjGlrP*mo7ycfmP<1$2G0MBoa(k8`f6SaTZMJxeVTt+WS4Im&6R&N2z~ zLS-*lE7~hqrUiTAY5oDZO&&9CW@t>J0!w?cD(ra$HXb<6$BxTc+LI$TV*Up)_p7M; z$AMP+1R?M@$XGhx$WP8`vamn}WF3#a(jC|@3*Qe|16YaH9}Ug>(SS^&{l1}j-&W?m zfu7MG^q6|~efT+5&p1WTj*=Zk%QbdL&(NpnnN;^n`(}_!E_7|HMhHw&b?L1M5|2oi z-Tt2>0f<&@uX zY4J9kRTibJdWc6{_!zXR``RDh`?^#EOLAUd4(Zn^%xo(;z{`|x5 z%!J$@bUt{)N%n;O(gS{{5L^McbDW`m z4dAE`=QxJaXdysnSv+8NaRz;PGz(zIf>Wxb(zKb$YpUaVy=cvFJ4Apf(x3R@%JLeG7$ zdHB)*;UIo}8}sb_U2IDiU?Gp=o;6uv@-SGEWqBO87sK|VW=sCzg4`zY_3yB8@N*aO z^DOX}f}bX=OYdwrv>E&~f@cXS@g3X1Cz_Ym|03ScYW4mlzZVYWr?3_c>Miz^5vrkLXls1Wm(e+@@i3X^->>@<5`i1orwNzROT)YXEJOvl4B@KiWt7 z1Lk>~OFTAPL+6PFzDwBKSNBP=ue&S!TrdH9a8j-)?f+x%|8*v|C~Nu`_OZ@rN6*Rbrl%&}-svbphX@)&N+)lv6`4 z$90(Z4Cd8gUczg}JUYymZ>!Qmh;C@_0}B zkUeC=9*7R20euDrx@qm&$_#*(gOR~e*J(A(~<83X;82RYYqE?gyB6!1gQb6%Ri{pt_INwjJ`PoSuijItrgkH0j_I zGp|>_qn{(R?dA0K8nizPzm*6dsf%SRGq}Y1HP9)`Bf`_?updi4_9bJqxO}euxsQM| zpG&I$Irr2a%018E%sM`UrQ8F5=Rpm)YqAhHzzy8-ZUIZVinvU1jeJS?S;K(s4JnTI zZkn327yd8^zc3T@q;PtD!y+b5i$6B`+i}PC-21S8%9RK7Q^-HB#TgmxNqhsm67W61 zH!;tEX410XMh)EILcZ}}D*PT7zwEFkuD%=J0j(%g@iENR0yv{) zy#6HcJb!R^1->b0+Y0~rrx+Iab1G|le*$ZJJ%+W_0I31QuwRCIr3( zy>6Vw0(a25Ko@Lp_g3)k1^DdEY(jmn_KC^A!FuX`P+(?UEa+kNkZ%>i&Z9M8&99=r z8Myl{J^XUxI3YkZCLu;$u+Ba96Iwq@Ja!`P_j`7M-a6#9{4W!q)8d;UjvK#>*0dgb zm?G%+gZ|%v{*EyE2WF?|90UC=z{@X&J?c*Ed8R#ON`iLcvL|4Vzrp$%fzyupe*%0> z$hotUQ9I0l{$XwPGgttAemBt@FY!FXB7$Dh?JH^ID~7(sBVD36L^@9T-4FYz3yY8a z(5ti1AJXf3=ug6|_~$4tdAXf?I>57;IK!rSK0>Y00eb47f7?Kho$@B8tKR~?cY}9N z0XCnFtJjFjAA-I~ygZFDkBuuZOLi^XF4^^^E3j+uH(${?oN*X>H%!gh3_dQPXXsBA z__huBc7o1bka7GLwsQLxCXUx6=+7p><`8Eo{+&Vm%IC({7ht|VoPC_WUEV*TZ*y?2 zX`wnK4t2c4ZoZ>Rh zU3M1xYG;-C&SE|r@TZ*ZN+EM_g+`hhWy4Z@Jg3XxeHhSCgwClM)6Dtd^nrse2e3j&AiD9JJ#u!bNXd( zbDaLnES8$0iPKw_8&Wl}Gfg^^VwG-^jDz+KRU9xmRtA5V zsAB;$`p%-ZdJ6cTLd`l8xS=D#e}heBa`7F=)q{VQ>`Q}h>$EuQi^7>-H2irC^6Xfg zm+J7{t45^UMT+UuqQ#|TYlvUlv8Q)-A`4Q^Z|OmP!hu$NpCjc;W_A&|rz8_I{QX>v znF;$klV@FRPXPZ$$f)th8t7cwto&D;H+}+}{>PmeIoDwK&qnQVQ#>d5t1`e4;K$K>Z; zNA7aV^}$>np5u@o`89DJD`p8#za7tBDZ=|+HmSY`w8tf~+lxY zxKmwyBVe8i0tEw>8h zGK_(*)SsWveBIFLH*ryJYkH*m=TsZ?qjrpk{bplK^79EI>1-KtGkqNDWyH3bW?u#E zLDgHfyAN~vdL43ls)J~KlI(xGIK&^?zcb4`I$)g#9_?H#)#he z+bS-HYPG;6X%G3hu{%m?BmD3q$KgK@u-q82M=$Ti?^fhQx+LLXGCX{bwCD9>;JFEF zfX_0}oz7qBo~+!#bLky=FWs?L=?;EKcZ$0NPjaI>`ER;cLqBOwwXS5nGS7MC&ie8s z8L(4IyK-lzm3QSXDDZ;PFDUKRy$hxBHk-$5uc^1y)YaS8+MNyj0=|+O_!^hn-P-JR zx|;Y}hu2Z#b=2}8{w*w!epIy6uT**8Iig+d9|^Cvf7$y;{3d076~B5P38&7Zwih|p zw5}_4uF0xlce&h+b}w&S#G6d(UCvtGV&=2W%v4xnt;oYmf!*UMb$YyIc6YtQ%`aTU z%OfhiZfDavc0YT7X9cZm*P?GEj!OGlhYW^!Or}*!mRBt|gRwM_pTTEu%$9$1%>1H7 zeD)AXk;CJ4HrXY%-w3YK)#|QsjEO27#R$5vIA!4I4jNWw-$=_e+18cU)Y|THZgkXI zy#=k#hFTjM(Cch$ZCusltZ~&U%PVy>t@GBIfmj_6%)~_Xbull`2tYGi(&Tlxo9qok z>{;#tQ&y~ZxEt)vyfjEzeI~D9$mAt~%$Wy?$fz=hQ1UbRIhahQ;wzJ0=xS~Q3X-BE zf8});>7fOEE`O|^8mChhb%;A-EnJ2BBC98L{Le04oewG)qAR4M#B5dXM(73`QkgI) zrYf~*nAji?MHnO*exV{N9zs%#0PqUJk)UDNhr@?=sDp-ZkBu5D10l*(W`YjKVrB}J zkmi?Fb|y1zl+CLczY@Yq=R*$ObeGfZ@yh7Uk~Y#@a#y9J#?@3ic3;@aMh%l(&Zt(0 z-Ca{R3|WQ4)7s#bOvn^+SdV6#`B}WlB17V_^tSBVz|7hF92m;bkRs>$Rr7K;-kt+b zD#>|Xu9+WuFrPVMEJmoRA&*dPrNptZu+HwTa;?lRN?Tpx|{B?H?%rNE^BOa9x}J#M2#@zuWV;3 zc_HT%GSC~F)97((%V>)l!GmEIHKH#}P6~g9qa9{CBf3W0)+kLSMIABf1}a8*Nf<#e zLz(L^1YX4g=c6h{m_Jmc0~1zrns7uIk65o_7_RCT-UE;1TB`FxU z(bVVcjdtWU@*8C`Ye_fI$SNIfr@f)v<@WN(!&tnvva-0M%2s^W5?gUa#fl27!)y1p zdiX{Bt!{HXD{?!L9~3uv-EHMAxB_HU#!?1El*L1JVwq1%UvEXy^ZqfMffxGQH^&w8yrpc#xbBBo*K7P&YDMt z(NbrVV|i=inlaMFVz=9caJAmiFls6#`5cL?$g$p8<0!X#>qdl5$xv=U%tHx!K{S>O&!d$dbbQ=TH*HOqnS7lP`%v=C?X}m1C{5qP5BE zY;?f%No_q<_B9QP;jOEv8np%*QQ&fU#{yr{XkX_ju{YH=jJCdYm7{U3E2tb3zijpr zA!G7U>KQe%-0kwZYFrIt4q5K!imDM}q^!Y^{Vr=>;C87X@9D(+i&r zk3S4#2!XYxrPb+1?^tw_cNmKy)Gqt~ku+PzZmw)?Cg1F+EwwkTYlWOWqgGquS|dxY zQF`)>F5l4(=Z@eqa#EA2V8x2kV(W6VDSOc(*eJ8Q8?DHLtDu=~8S7_MzTtp(xg9M_ zno1s;jbKN=RT3UV9E7zR3Dw;WuXHC!-lXOa6=gh4=A^BZR=2%@mte@vHMzXJeLePG z$SQbe6Ys5a@P*~8GWj}36N-Fq9e^5~Yut8s8((8@B6xViRtPjJo@Fx+BA?CP(BP`U z-c4C?nTj(^s=Nmw)v@T-S|cw(d)u1nEt6lhG9Gd^p? ze~KHDOl*#g3;1Tc+urEmJ$0_uhFVD#p<2rko5Ce2L4H})ayuGblFo%ImV{}Dg zhA2{(!hZ%sLS$r0DXpaSYa8tAJd0%gxPi{7s1=htLt+o9JvpNo3|w83jF;8!(CQ6Sv!D*e3O?Y6fq;K_IMs=G#lC)wp1gm=jqDOw#;b{-sd zA#OAxA0&q^JDMzc)EJUo)5cTkrO1zDz5rt%bh&wz4AZT(X1>;i;7ox?G6sqfe6!nC z<1tD#7XA@%;Y^#g?p2STs$u7BbdL_K;<`p zk22_&i~~ISWzUiChm`x0ru9f*YUKc^teH5K307sIa%gGA4krSp>{J^Z>+CgcV4gZG zJSw7*Z*pvqQK_pQ3bGVNY+jO*%|S&eBD}&!kD9-*LVMF~UW9TrtwJQn{m+KmrndF|^csUdmWmMp)=TDqi25oc%_ zVGGB)i9`R64<6`OjgPVE_h;q4Fi(D086atqL}fD-*-*(W=wgk%rp{5jfI{i&OynLz zZ%jHJp!|W(KO~a%^q5xP03;w^Vy@P7zMRZPKl%dh20@ikg64hw#p^<6^|Y*RjprWQG|#uS6L2) zk~CVuD90trE3s7r{n!{%LTMQCR7zJ#ad;fEAvu-RgBpfIQsyXy<}AL-an!?};o57yS$cvc07%_vy+#Q@Q6V z_l3&6NV%6P_bTQ7b>&{G+z(o1yq|TiLM`EzDo^MlmVy5c5xIOVCH5t7kEq8z@a<*T zf63xyuZ707I2j%CnY;^4lJw$v2%)~owV{c(qMlKT9;K2A&2sC;EFO?nF9h4{rJ39g zd+iNIz||DAddC2ec7!N4svg$a*xcY~gb1(#nu02-dAXq?4&s*AumKgZv};sBGp}fB zXyfJb+kpb0aCudEVHFOuzZmR25^UINLdZXx2VZ$bvM?k6MmP}RK!gJk4n#N*;Xs4~ z5e`H+5aB?C0}&4VKj**^{D_E}_pDb+mih(%;lc4ce|Ng{`(-j|uRi{@+oSvU2!{qv zKKcjS)gRsU^zuEG@4lPziGZqkIVB<9=qHB`^{@VTA!0=I`s0%8M+^r{QUiA7qaT<7xvAWa{rp| zo=kZvpLM?Jbl=HIyQ_?K;t%NP_m*;(-#-7}!4bdD9}$6waNvI?2Q(n-5U%|m`C48u zM>#E!>7Bj7<*uJy=W2A!e$dfW?`-nSo^wauocXquwiTM6yv*s%3@n#sdf3?x6dzKvV7I* z*;Z>sVadGQ*(+;Yjpg<0X3O8Pd1hB)lO7+ch3-Yg1*`5>-?C~O@Yj`*UxWh@4n#N* z;Xs4~5e`H+5aB?C0}&4V&)|T-*g~SDOV^d$HK~j5GIeEl<#h>NC0*rRtGlYZ>bjb{ zHg>glZR^_A^=wyXS9jNeu0vfC@jPSG@sQ^ed?mhJzD{4a?||=+@2Ky%@6Wzo-+&LD z<&04YzwyQP7q`8*>%{~65A8p)|LA@+;kyF-U);Fmbqbv&o#maYJF7eEI-5H;cD8qJ z>)h4(Y-eX@cP9Xv8T&f^ZtAi{wN2O=DZa3I2g2nQk@h;Sgn Lfd~h_6bJqVp3d$0Fr94b1Ha2P~;L@r|sz^;3ZrXqIjVZ zr~oPu&>W=O9_SeYwn|E|X$70i^fW~6ZZuwqv`+U-_m~9Kgm6jZmQpb9XPr|OiU>~s z<~Ps#$NQM)$y0UCzODUTYp=cb+H3E+<%jBj{dY%?|8>#t3Vw&ccL;okz;_6Ihro9T ze22hy2z-aYcL;okz;_7ze*}SP*DG~b(0);G+SEvuVB^&^jsI{`3ZL>H`Ro21dB2Y` z;d}{^cmKm@bhZCOR;6}Y_1{&csrvsh^WUFg5yEkKg*$tyH_Nslr1Ed#fAm zd#hUp@2&p&k-gP%N^Si5k=pGogKM`p+H1ETN~qobV5~|%zhrOqdAl-Rk5wDDLxIv% z==_q}?fdLSA9t=)_2-vp)#oQFL(NKS8md?&+&n5Tk=qS>v&)jaSK6R_T`uvg@ zXwi($H{9tiew4}g{ z279ky6ZsC&PKLJZ)!rUuJZV!KkATSyn#~B(_vYDsa$8~pJzEFcj3Y%Vv{w2yxNpwA zwWNVZj(YFI$(m+--Y>D5;gJ4doHFLwbl>uysv$OE!S~Y!3jw-YBeeVdZ>^;iw{k2wB{58*`wX!Te)2U-` zwJOtWs_^*1K+P+vi!jVH&S=LQe} zQTKu@Wt^byyObV^q3-cQ(=E^mO?ykUvXVGec$D(@4^Ta)+SRzdwOX07tHPJ5&yf0T zs;pgTja7w>)Hjm)j#J-Y>a#zo_6!!BDE|`qi^-2%mo<<-DMl4Gk$(#LTgmSyzef9+ z0CKZ}f2CrKaz|iB!SEPk2;+tUot}&Aj^jU%e@B1SbCRaU{*t___9B-nkt3Ll`j3Mp) zmj5%1M``nv-4^U%>{PGp+p#(s4D5~|IBxusbQxPgzMnL|rw3o;`)R&Uwx?Cxq-9iO zS1ZGPg}r?+xR-8IhKqMaJlm1Mr1ZcHx5wUoA}ugurH_vuX;xyGimjLD8G zRn1pm5u%*%KJxC)1ZBv(q6GEpEb0}V<;jjUnke63?-P`KQ|WIxv}VOCqaa?@Pv&`; zyj>S%DUIiJbVf$d-R91_hIff7qhd?DJFhlbZG4M= z;opAv_na-Q;y%?6)%WTQ;o%Egm7%M^1C9JgczM|5XJ+tsloQ>shtH>=WB=m|e5+N~ z_|+==>gzQt?Q?Y5^Q8T9bzjF?B=X_xU9=;n56uH65N!gLk)9pIb1s8eW>Z z_NlKspKa9CuIw09-(t@Sx;1C(8ZeIN{w|sLd8|wut$UGpjDRPs;=L);p z6)7_*sxHarq`t0t_QV+l=i-dUgaNtpsYmK)wR>ncp|yKHPdx289LB70KDW|Zb@bQY z!tLsbwyBxnT_J*So(j5ohKrh3|z9*p6;I;?IL?DRx!YK+nkuG*WRZL8{iHF-iS0&a60xU=jZm8%qaSF>WDdyn)H{_o=1=U0xaS2VaEm3K-7 zu5DDK#s}1v2_^7C#RRSmsDGItX;OzgE2ZrSsQev~clM)?ZIE*LDyCh}*1u%>M-J_E zvvp;7bgjNvt$4YZ{2ryXZ%5Au)c3o}f2ywe==ra&9RGZx>bW;Xm6apI#k5gO8?z7p zWJ9sC?I>3E9a5i1#njJMHbdwbyeQ$L*-AsTT6GpHMLwbHLfw*YZ@Mb;N7WgrZ+64t z4bgR4_1UP;7N&6mbzOT=eNU*sj6Y`mzVD~Bo3CP94|Q}FeuiA!t>P=BuUnP9^?5aP zZ590N-seO1*kHMer4R9~&yjAm7hfUI+rWg+iaqGeEENb1QMQU${)^zH6WWX5?Ih-x zn`mojf4zE6%&76}#xAd}hCkUu{MBoRFROM8(W-;Pzh52KUsb<6HorQ;o1!e$eu(yl zGJc*66m?)1geVPpK{IZAW# zUPKQ>>X-Jt!wag1kDXZk)P!Z#s}h%+GzdMe;kN3;vG(d$CVap8mx&fl&P08K$jk7t zdbLM6>k5>!VrYLq`BZiGkOJzONL_DL7wES3ImppH{k3XIFCAht)8`Jin|bDsU1jBi z|IOG4Pfd8NTJk>8f2o;w^^j%Nl6UR!<<;}Y#z4b_>KFQ7TfKeA_rb}c#jdnE!FE=l z;LCzjorQ14s9l1);Qt(S3dXCDy8`~7=)c^=Rq9 zvb$|6HmTU6op$U|yB@;6-1QQ=@(4EQJksWCuDW&VVjFbQ`Oar2DSL%m*;;K`lfD$W za4D?$mwNm%XJ&ojW9uG7%GryqI(jBqPwa_z*GHd3R=B>dd6`dO0e)(;b-=Ao7 zf{W0$TxqT7{6cB#p}^`*&tcb!P2I%&_bU2Y=DAYlxr^$!ojUYX<9N7^jg%?vrSf)T zXFh~}U5%|-O54kA$_KW=^GgbtyZqIs<0p0qzR`7+{D8V*l8pZf*ANTN{t#8hlzf-rqVXoVv z>#3D`_Vh8rc6J6dTY4o=^oVJ_3nteuYs_8FsvlxEwTJBQq zS)NHhQS@8-++BX0tF-Ak*Q%bbfSR5^N0mADsp*qP2l_fEsGbhqPrg>)kW-7z_cvAV zzCxAh6T;N^geKB~@z9nyrZ&TjL7nV2QWZUKCt#%uIOB`zCT%zB# zTS-IS26f?fL8eY75A3)gH!Ao>yxJvtCSRqsLQi21JeX@^USwPkzQB)41=b~-sdxWi zBk@9;mFOTVZ4+s4r5Ul8Nb^X!vFXOw=PVsC9NoVKe!qdkHKA#1TvzcQ>M>HavPxeq7 zMZP8P$@l_OM_g(={R}yE$EaU7K#%0z5PtSsIc02!yak!B9$nEl0bC_-GHGRe zrjXW2TGkWVbXV@`zMd6oy1P`B<%}}=PKNFxEoWW{^IZ?VPyM=coM1kP@4A0bv|j1z zzqZHf|DsFq*&}ISd|x;%x{so3WWMx<`;>*;HZY$Ijr5sk#=1}D&u04W%AlWoZy}G2 zIeE@O#}CtVpU^#5i9Sj&_26>+AH}vUo0#y%3QrU0M^8%!bkZcDs)wTIkfR9X-@j! z70hd`G^zhcY+%L|EigmIL(-6h&61}Ic^Qrjtt0Oi>RBygp6@sNbL!SP>o&PnVrwrq0~{@AU72T_ZfI4fhLuSol!5U(Dmi_AiR^ zM0ZNR+)@47F0u)I`Qd(voJv0vki8;guM`<|@a!(p%r!``sVGk{P~CJ$V>@)_?>|;$Q6vs}CQC)5NYg34Uk#1!lyWyh`^DK$g-{(kg`3UC7dUTQAqTH`Mf3Vl~sZ z_5n0BTn!{s(dYs>kIG1X4d=BfckO}I^wi^#ll=Jq$u zIk#jcF`$1^f%Cl#m!{^2HUq$j@Ye6|aNX(Nq-UyL*wGu^p& zgTYa3b+D?O*WSyh7@_#}&-OJU}V#_YPQ z4DEZ!4Y>6Nvj`sl$=ujNf7W~hb7wH8Tltc3c}Gya|gf7zKC(Gf4DTCz}T)@iL9F0RiJ+|`XHa~$;>m@9I+fx33st+`6{ zkjyFa8M@3KOAT@?dnyg~0lC>{(JA&A)&X|b0k+^7yXJKy=^@3KMu%YYs@x7UZzf~2 zmp8jb)rkL7e9?y)ub(nr+vC(muUU`O**kbsD*jcp_Rjx; zwg`Ta&oA%&H+-w#+^hOm@Ck)+oMiSt793;1&>lPsmVzVxac>06oUL|4)>_%Ax^Fvc zXVIxG_JO8vy3yX-+horS-UPmf@Ht1Y-30wI4~YGfhMpdy1-_Uod<)KB-uruV zZu%;@Z^xJSYS3@PM{Gx4*=Ji4%f6mw{Jr#lg`8Zf539p{Xu!7~q5sZq^w0gf>AxP@ zu7k#j&{}{W+h6@v{0*kfAK^piN_+k3J7u0rqz_5-!7h7~m4b`dmf{Bzd}pe_7u#13 z=y(X9bs_)Ff>n=S&ZvHW-2<-m)Atl<&Ux&0Ua*}GGdA6f@pD%hdl_evUol5C4pzn% zo2qHdFvq7?);{LAoHi;lzj@#9=zR7h^98)DtX}z#9h0F!_B@Bh$lR0`JbkCk4Y$y@ zo7w-gn{!k1zv;eauye;^|3HV^Y3=7dWz%cKo_Sjvn7f8{Tk(ND9e#I2bLXz*-DkY3 z48Kco4alt!`gmv3HGi~8S2Z;KRmz&QUA&GQW8#taKjKj`)WTzliAS1=$6vxYltR1N zULdy%hjp|i^QPEg3V!JDKQ&%l?t@G%G<-+yZQo=-H_H~3g9z6AJq3v^5VeJ+cS3nR2gczE-e zF53SQ+D}2d*cUIa{85M47u&Eenv#Ww>A`bLgoiVrcRKPpt(rcVd~AY`MGp2RS+^9$ z@Ch#qV%0dYy-eTK)&$vKGyQKZc305tQSA-b)83L8;}e^+)sGFmeP!>w4tRC=$pYVy zL^bxlI6d?!I`=d7piY6^-T2C0&{WL=-gm~T(C6dznuUCi@2P73M7f5Q1-@dJ8atPF zjg)IbpGdh9$`w#<9`Bb^?hxhX^L=His`&%uN??*_)i@J_0rbC?cU6b9dhyNe=JQCJ z+GzT!uy4$~`q(gD>A_U;??#Poh z{YiwDmCfiq308{zTWcVb7a+Cyfv1b$hpy zcRu;B;oB}Ji-OUmWKrZ`F8mi=nt{D+)}5Uft~(=W2px>ALh9cRk429)QdiY;cjVDW z*6u1-Xd27jQ*15=M_{n#Z=14e#9KA%l*o3*qkf-Cw z{|URpn@W1jGX0s#>ykDf9^u-20=Y_sXIFf^@Ziv|iw|D8Y}!HNX7%XfiE8l^4z>8n z7_~U1r(Tn~EM;b8idt->tHmdf!A^AkAjWB%=9tnjBDmS04*RkZn-d+%mo<0x9(Mr$ zi0ERSwYq#}p_9qqNSj&smRaNb{u{YC#Pckk*=+RvC(lhh`*|MD^T#|3cGdJb0DdxW zKN!Jp&-cRkr3L-qCwkJvAj^6`fp<^AE73piBU2xsf0FSF%N%k!{gX+V&XwrX+mq2v zDdBJaAWIo*GP`gf}&mwbS5ZR2(h0(I9-Dt_?IqH}ERbd_K?k<}# z6S`zGk-Q?C!|B&ien-#SQq3q>0mmo`rPfeGH+Y@{@=)dIlI-u+p_({ju!h`a32r<)A?^k-u6R-GfA&` z$MyE6DSvTp9>#m|>wlY_oWnjwB6j2!Eu-~K{5?)h*6rH7M)YY1_F_cOBtHG)JzFlJ zXSPnac)14rC4VMsi*dE=S}nRtL?XCRJgUo*41Bi7KX;F+^bpl z?_btqrdv~GW72-sw}JAJ_=iLGG_M1BSg@>jKgPRvcfpv7k8NpFHWpk}G3o10%Racy ziW9>R;9UiFA|JnJj666}8E^9W2zZFSvybm$CoF|*n4I@MPM%KI+{EnRyCEh3*TR#PxKNZ`mCu5FSqb2FY0>&B@jLmtB%a@2RS{!f1)~wD^ zV_%0xd@+^S8I^CJ@rNE<5o^q5zAdQCGM;139iAhxNSV2f*dm9~p8?jQ$f)U`GIeg0 zf9k(acRm}f`?lT(zwovEJAHbGx+Oj^03Aw?H*UF25BXQ=9aYp9@x5GJpELMQxB5!% zx9Y2=KCQ3B9J;-8&|_j-ZA8CcR34uFYqNaEM@#~qB45pXY|b$TQ*}}RSNNy zH|jOWK<-VRkNXmj<_d=Ofand+&IDtHEimIv{BR9D6){%*;ZNV-UY?(UrlS*y9VOrK zeAYnF)^?3vQx3gN@%?ktZqf1*laz1FL|c6ir|cc41yf>`uN0ndhuqs)zBJ8Jl9Y z`~GkB>I1}zh)=_##uy{>?bV|)RY+uG0)9rROXzE`_YZm+l8trLBm5OVNgLxKd*$sN zSu1;W1lYSnUUG$h*F2{TCweVwYvv`GUsNkwAG(mZmag_amMU@amHb= zem)RSfBOVK55yS{+8jnsZM^Xn`v9k|RMlCw{EuZkuWjpmy@c{YpU~FCIwrN7jMqM7 z$#@&@A4SKw>EFYA?t;#Zj7`BQP(b_>GB67nC;+DbJa3X1TzI{T`d5MPinYqu`ap0- zV5q8@|Fi8g&Y|0-Y+cLh2VQRdmj~W!Upr$YzW!T@Q>%E@meb}8%vk?DwYZ%<{ilAS ze1rQ3W<0%2`2s6#2Ac*xk4iR-CzP)V+hFBW$~Pp;|G;d!A-uOCAIviw%h}r(zOgpi z7#OVZeW~5ju4h+_spCF6)%mR8JR2H|vt&J~8Gj}39_iO5#^KxK7o8Fr!&@J*__rN= z4%ZQ1L|QUFoX@H6(|h%r)Ao4jXWJ7$>OJ!-_$6&U-!~&ic)4wb&3NHMRa4cZj8$Ox z!YrXZ-sGY1?{mg%u|5CecdoQ-Be8Q#+EZc;2jf-dSNR-rMc5u?FWXFiE7t7Wzd-9x zY3H}Z749Zhc$ckzU16MMcb;ETh(4Z)UY>z|o{pZz9$J7sG|`GJ#3x@_#Xqr$xx3L9 z65HBn?~|LRcFuUQr}Cxgfd|gSn7V3r3jIZ2@BAhC3sUlpRVvnq^U9ia0OKdkjBVYg z@;}z``R}D{D*0tSD>~jRGi`!#CHYrn#Tr|CDb^Dg$~92Vv?D^Dugm9N((91FTj^W$ zd?#~8#P%%>>LC|%_9g9K+4I4NFadr^KJf*;2*1V7ar@P1)~dfq%Xs^KBpINPW!Z;&Z89Ik00pzLID7->B4qjoU^V0hb=wll%ciR`posiSkz&xBCdXx478v zWbGw>xQM?eVf}4;mWTa4jI9H+_?P+7v)bZSJ#<9;c2&|h_V&`led}6FPmAyBTLZL+ zJ&JspV?^eZ$i7}A9;tI>JZr0d^r1hv4`6K-FKepc`e~RzJ3c`;mdH>}K8&9*M2G556&nc(K2%dH+w5 zzBs+3>BIf5U(PtuPhZ?v;rG4r&guu6pz9EHN!k0a)@l~m)Z%?%JlJ0!*YaY45Bs{T zR&ai4U#Ajhd z|3B(9eSKzM|7`W^Mre?+(KTjHInDn189VdfjL3;RpaS{oTWG#@6HXRZs{wsFZGMwiR@!_AD_`N zVv_eZXc^0Y8vi2K5q)|&dP=rf^t90D$oOP_-NpVfV3`Dk<9&Ffx8e?u?EpzJrMvnQ4oe1NzJ z(_XBy8?yIS(VMeYv|Zv*g%R6V?1mSxiJP$78>;lsd&8OkXzP2(dp~saoy?Q}5vO*& z#{bXxZ^rH+rhHcq;t_iADL$IToF(~FtlIT7zM8gr=jMg6YB#Y*V^i@9=N`8$IpXu}8k;5mX7Ot%{F3}Wd;mj|^_pzXqde|< zYm*b5`U2-kK2grrkiB1UKluF<`1tH%hxQ4sU=2L{knYt=Jo}@@T}!l+(7@se`~-@Gb`D zo55Ky4}kS2=-|ayDdTT^UeiwxJ({dSd3S1-ib+ z_r0mAY$ofhCiKm4o)6(WzDup>yJ|FN(0Cq$k0{v4IUiyZz5P^3X!e4kd>@yohl=o( z$vfFcx#AG(fiO-p!AbNkvKVAfWn+j>*~d7W+`r?@?W}vE;%8(oKZCrBo{9MLWN!Z% z@^J)T-Xznfv>%_6V{ad!dnWBJ)y!7=>o$D&AXj?>bl4JiD#knrDT-8}SXv`Zy9hbLMt`_1XCAI%J>j zS!h0sO)viI6TNibRn#SQe?i8Z0$S4*gSZ)bJy}2 zs#<)HlK(g1&ra;$PUu)3r$WTQXGYK0*oAEl?0gq;a}pX`nD-L~=)U|r)ac2`&CS}H zP5I0l8&kJz5`Cq?GqK?lVv(Bx%I8Hl7Gv{FVtt^%L+nxF7tQlz+rfT5dQtWV*28-a zW`q{-e1J0TJSSXDyahU}I9v{&xEUiRb2@!acQoiecX(_!FeZe*j$am36aUpJbFMr` zuakuSd)c=yrj3YSeE~QMO`K&kWB*q})0`&yN4sD*fDoe`P&+>9_=$&s&hCNL-4Sv0{xu%^UIg6cM|I9TC}6JD{pk zjIC+b*m)m5O8Gp-#4nsxGZ^RIC5eHa=k8tefSezD0vrR0ff;q^uF|Cz-XVKm?~-S< z)aCa6^BmMGJ|7$7h_j5|qKRs>j*a_6Y+2&dzM~|ztTfs)y^bS#P4xU0;nQdAU&|Qv6La)4@_)=6DSX)v zPh9ANH0;45O|{E>)Cvtp?G>9=kdN4;+~LS)0s6X@ywc8yL_KtCf91O+Munb$h7{@z zVprQKD|2QWWu7O$+r)}6?@tnFl-Bm4R38G2|K^QPEk*jyL!Ro3E-tYz+iuTqDU^-|9< z{O69*dQBE}+>Va?v+F-LB`lwMP-1~!PyKmc_S?%uzq*-En4=0W>|ONoo+SQGWTDCy z=qb7(I;{sfEZN>`ij28e3a+j=uq?A*^U}wMF?Y#0Y|Bs~;;ciS z50x)kmv$7rWyObrvFFbzrVcJ>i}E)kv$Y;%wm8-B&^HAg(K-bgJD{@ij8&Yie}+09 zL`qjpZx+1J?K)@d*zX&?HQux{4w$~3B?EHVgL-xXbh;gCbQXS)syH={c=V9OBF!P@ zWf3wpmUS!i9*EG}LK&g^zxhlcMm~Z016{arJoQB9`&eReNpC^72);Y%*8#qxrw@2a zQ%(H7I1#1i!LM<+g@+tA(=-2}icjZMF7on@R(m(X*fl=t)e8%Mm z=un03Y!2()@Y?i%r?{ut-p8~jx(i+lKH!|hYHcZUB}27b*&ECQ=S=!gOn=NV zsnU#sX_-c2TL0WS#;=0U}@-O+hG-)G!j*V}j_oM$uT=iqmCGCz4edgvYe2E(q< zLlu1Hpw}AGRBjf0noAzJQRl@ZIB{4@Tc z<2)0?iJv1gxNo{LV$fyS20IV){(0`i*lSbm ko!bb2~ez7#~KOjS9Y%qCF(5_o0 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 A*#H0l literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/UsbConfigDxe/UsbConfigDxe.depex b/sdm845Pkg/Binary/845/UsbConfigDxe/UsbConfigDxe.depex new file mode 100644 index 0000000..8f72e31 --- /dev/null +++ b/sdm845Pkg/Binary/845/UsbConfigDxe/UsbConfigDxe.depex @@ -0,0 +1 @@ +iv° —zH¤µ(Û{EÎñÐÇåô9ÒËGªÍfïv28E\z²!ÅCº|‚/î_噎—ëßÏÆI¾KÙ¥²† \ No newline at end of file diff --git a/sdm845Pkg/Binary/845/UsbConfigDxe/UsbConfigDxe.efi b/sdm845Pkg/Binary/845/UsbConfigDxe/UsbConfigDxe.efi new file mode 100644 index 0000000000000000000000000000000000000000..e90cece8231db75cafd30e208473b30d547a879b GIT binary patch literal 90112 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

)0Y>0L@>@s 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 literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/UsbDeviceDxe/UsbDeviceDxe.depex b/sdm845Pkg/Binary/845/UsbDeviceDxe/UsbDeviceDxe.depex new file mode 100644 index 0000000..2a47cc2 --- /dev/null +++ b/sdm845Pkg/Binary/845/UsbDeviceDxe/UsbDeviceDxe.depex @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sdm845Pkg/Binary/845/UsbDeviceDxe/UsbDeviceDxe.efi b/sdm845Pkg/Binary/845/UsbDeviceDxe/UsbDeviceDxe.efi new file mode 100644 index 0000000000000000000000000000000000000000..531da44ce2f71fdfc85cddc9e50f4e70a0143153 GIT binary patch literal 45056 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 DV$IOj literal 0 HcmV?d00001 diff --git a/sdm845Pkg/Binary/845/UsbPwrCtrlDxe/UsbPwrCtrlDxe.depex b/sdm845Pkg/Binary/845/UsbPwrCtrlDxe/UsbPwrCtrlDxe.depex new file mode 100644 index 0000000..2a47cc2 --- /dev/null +++ b/sdm845Pkg/Binary/845/UsbPwrCtrlDxe/UsbPwrCtrlDxe.depex @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sdm845Pkg/Binary/845/UsbPwrCtrlDxe/UsbPwrCtrlDxe.efi b/sdm845Pkg/Binary/845/UsbPwrCtrlDxe/UsbPwrCtrlDxe.efi new file mode 100644 index 0000000000000000000000000000000000000000..e019c2cdc01e42687f3a271fc76472116d0cd9dc GIT binary patch literal 45056 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 +# +################################################################################ + +# from ArmVirtPkg/ArmVirtQemuKernel.fdf +# +# Implement the Linux kernel header layout so that the loader will identify +# it as something bootable, and execute it with a FDT pointer in x0 or r2. +# +0x00000000|0x00008000 +DATA = { + 0x01, 0x00, 0x00, 0x10, # code0: adr x1, . + 0xff, 0x1f, 0x00, 0x14, # code1: b 0x8000 + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB + 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res2 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res3 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res4 + 0x41, 0x52, 0x4d, 0x64, # magic: "ARM\x64" + 0x00, 0x00, 0x00, 0x00 # res5 +} + +0x00008000|0x001f8000 +gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize +FV = FVMAIN_COMPACT + + +################################################################################ +# +# FV Section +# +# [FV] section is used to define what components or modules are placed within a flash +# device file. This section also defines order the components and modules are positioned +# within the image. The [FV] section consists of define statements, set statements and +# module statements. +# +################################################################################ + +[FV.FvMain] +BlockSize = 0x40 +NumBlocks = 0 # This FV gets compressed so make it just big enough +FvAlignment = 8 # FV alignment and FV attributes setting. +ERASE_POLARITY = 1 +MEMORY_MAPPED = TRUE +STICKY_WRITE = TRUE +LOCK_CAP = TRUE +LOCK_STATUS = TRUE +WRITE_DISABLED_CAP = TRUE +WRITE_ENABLED_CAP = TRUE +WRITE_STATUS = TRUE +WRITE_LOCK_CAP = TRUE +WRITE_LOCK_STATUS = TRUE +READ_DISABLED_CAP = TRUE +READ_ENABLED_CAP = TRUE +READ_STATUS = TRUE +READ_LOCK_CAP = TRUE +READ_LOCK_STATUS = TRUE + + APRIORI DXE { + + + # + # PI DXE Drivers producing Architectural Protocols (EFI Services) + # + INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf + INF MdeModulePkg/Core/Dxe/DxeMain.inf + INF MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf + INF MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf + INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf + INF ArmPkg/Drivers/CpuDxe/CpuDxe.inf + INF ArmPkg/Drivers/ArmGic/ArmGicDxe.inf + INF ArmPkg/Drivers/TimerDxe/TimerDxe.inf + INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf + INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf + INF EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf + + # + # FAT filesystem + GPT/MBR partitioning + # + INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf + INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf + INF FatPkg/EnhancedFatDxe/Fat.inf + INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf + INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf + + INF EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf + INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf + INF EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf + INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf + INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf + INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf + + INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf + INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf + INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf + + + + FILE DRIVER = 9A5163E7-5C29-453F-825C-837A46A81E15 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/SerialDxe/SerialDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/SerialDxe/SerialDxe.efi + SECTION UI = "SerialDxe" + } + + FILE DRIVER = f541d663-4a48-40aa-aabf-ff158ccae34c { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/SmemDxe/SmemDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/SmemDxe/SmemDxe.efi + SECTION UI = "SmemDxe" + } + + FILE DRIVER = 8E9BD160-B184-11DF-94E2-0800200C9A66 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/DALSys/DALSys.depex + SECTION PE32 = sdm845Pkg/Binary/845/DALSys/DALSys.efi + SECTION UI = "DALSys" + } + + FILE DRIVER = 8681CC5A-0DF6-441E-B4B8-E915C538F067 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/HWIODxeDriver/HWIODxeDriver.depex + SECTION PE32 = sdm845Pkg/Binary/845/HWIODxeDriver/HWIODxeDriver.efi + SECTION UI = "HWIODxeDriver" + } + + FILE DRIVER = 10e193df-9966-44e7-b17c-59dd831e20fc { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/ChipInfo/ChipInfo.depex + SECTION PE32 = sdm845Pkg/Binary/845/ChipInfo/ChipInfo.efi + SECTION UI = "ChipInfo" + } + + FILE DRIVER = B105211B-BBBD-4ADD-A3B0-D1CF4A52154C { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/PlatformInfoDxeDriver/PlatformInfoDxeDriver.depex + SECTION PE32 = sdm845Pkg/Binary/845/PlatformInfoDxeDriver/PlatformInfoDxeDriver.efi + SECTION UI = "PlatformInfoDxeDriver" + } + + FILE DRIVER = 9A00771F-36D4-4DD5-8916-C48ED9B16B86 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/HALIOMMU/HALIOMMU.depex + SECTION PE32 = sdm845Pkg/Binary/845/HALIOMMU/HALIOMMU.efi + SECTION UI = "HALIOMMU" + } + + FILE DRIVER = E43128A8-8692-42B6-8AFA-676158578D18 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/ULogDxe/ULogDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/ULogDxe/ULogDxe.efi + SECTION UI = "ULogDxe" + } + + FILE DRIVER = ABA01FF8-2CCB-4E12-8B2E-CD3F4A742993 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/CmdDbDxe/CmdDbDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/CmdDbDxe/CmdDbDxe.efi + SECTION UI = "CmdDbDxe" + } + + FILE DRIVER = CB29F4D1-7F37-4692-A416-93E82E219711 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/NpaDxe/NpaDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/NpaDxe/NpaDxe.efi + SECTION UI = "NpaDxe" + } + + FILE DRIVER = CB29F4D1-7F37-4692-A416-93E82E219766 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/RpmhDxe/RpmhDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/RpmhDxe/RpmhDxe.efi + SECTION UI = "RpmhDxe" + } + + FILE DRIVER = B43C22DB-6333-490C-872D-0A73439059FD { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/PdcDxe/PdcDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/PdcDxe/PdcDxe.efi + SECTION UI = "PdcDxe" + } + + FILE DRIVER = 4DB5DEA6-5302-4D1A-8A82-677A683B0D29 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/ClockDxe/ClockDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/ClockDxe/ClockDxe.efi + SECTION UI = "ClockDxe" + } + + FILE DRIVER = 1B52138D-3FA3-4E50-B958-20887353F809 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/CPRDxe/CPRDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/CPRDxe/CPRDxe.efi + SECTION UI = "CPRDxe" + } + + FILE DRIVER = AF9763A2-033B-4109-8E17-56A98D380C92 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/DALTLMM/DALTLMM.depex + SECTION PE32 = sdm845Pkg/Binary/845/DALTLMM/DALTLMM.efi + SECTION UI = "DALTLMM" + } + + FILE DRIVER = 04DE8591-D2B3-4077-BBBE-B12070094EB6 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/I2C/I2C.depex + SECTION PE32 = sdm845Pkg/Binary/845/I2C/I2C.efi + SECTION UI = "I2C" + } + + FILE DRIVER = 2a7b4bef-80cd-49e1-b473-374ba4d673fc { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/SPMI/SPMI.depex + SECTION PE32 = sdm845Pkg/Binary/845/SPMI/SPMI.efi + SECTION UI = "SPMI" + } + + FILE DRIVER = 5776232e-082d-4b75-9a0e-fe1d13f7a5d9 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/PmicDxe/PmicDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/PmicDxe/PmicDxe.efi + SECTION UI = "PmicDxe" + } + + FILE DRIVER = 11faed4c-b21f-4d88-8e48-c4c28a1e50df { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbPwrCtrlDxe/UsbPwrCtrlDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbPwrCtrlDxe/UsbPwrCtrlDxe.efi + SECTION UI = "UsbPwrCtrlDxe" + } + + FILE DRIVER = 94f8a6a7-dc34-4101-88c1-99179cceae83 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbfnDwc3Dxe/UsbfnDwc3Dxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbfnDwc3Dxe/UsbfnDwc3Dxe.efi + SECTION UI = "UsbfnDwc3Dxe" + } + + FILE DRIVER = cd823a4d-7dec-4531-ae5d-4134fa4127b8 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbConfigDxe/UsbConfigDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbConfigDxe/UsbConfigDxe.efi + SECTION UI = "UsbConfigDxe" + } + + FILE DRIVER = 0A134F0E-075E-40B3-9C63-3B3906804663 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbInitDxe/UsbInitDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbInitDxe/UsbInitDxe.efi + SECTION UI = "UsbInitDxe" + } + + FILE DRIVER = 3299a266-15f0-4346-8318-716336736d3e { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbDeviceDxe/UsbDeviceDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbDeviceDxe/UsbDeviceDxe.efi + SECTION UI = "UsbDeviceDxe" + } + + FILE DRIVER = 5bd181db-0487-4f1a-ae73-820e165611b3 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/ButtonsDxe/ButtonsDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/ButtonsDxe/ButtonsDxe.efi + SECTION UI = "ButtonsDxe" + } + + + INF MdeModulePkg/Universal/BdsDxe/BdsDxe.inf + +} + + INF MdeModulePkg/Core/Dxe/DxeMain.inf + + + # + # PI DXE Drivers producing Architectural Protocols (EFI Services) + # + INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf + INF ArmPkg/Drivers/CpuDxe/CpuDxe.inf + INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf + INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf + INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf + INF EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf + INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf + INF EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf + INF EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf + + + + # + # Multiple Console IO support + # + INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf + INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf + INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf + INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf + + + INF ArmPkg/Drivers/ArmGic/ArmGicDxe.inf + INF ArmPkg/Drivers/TimerDxe/TimerDxe.inf + + INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf + + FILE DRIVER = 9A5163E7-5C29-453F-825C-837A46A81E15 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/SerialDxe/SerialDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/SerialDxe/SerialDxe.efi + SECTION UI = "SerialDxe" + } + + FILE DRIVER = f541d663-4a48-40aa-aabf-ff158ccae34c { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/SmemDxe/SmemDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/SmemDxe/SmemDxe.efi + SECTION UI = "SmemDxe" + } + + FILE DRIVER = 8E9BD160-B184-11DF-94E2-0800200C9A66 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/DALSys/DALSys.depex + SECTION PE32 = sdm845Pkg/Binary/845/DALSys/DALSys.efi + SECTION UI = "DALSys" + } + + FILE DRIVER = 8681CC5A-0DF6-441E-B4B8-E915C538F067 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/HWIODxeDriver/HWIODxeDriver.depex + SECTION PE32 = sdm845Pkg/Binary/845/HWIODxeDriver/HWIODxeDriver.efi + SECTION UI = "HWIODxeDriver" + } + + FILE DRIVER = 10e193df-9966-44e7-b17c-59dd831e20fc { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/ChipInfo/ChipInfo.depex + SECTION PE32 = sdm845Pkg/Binary/845/ChipInfo/ChipInfo.efi + SECTION UI = "ChipInfo" + } + + FILE DRIVER = B105211B-BBBD-4ADD-A3B0-D1CF4A52154C { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/PlatformInfoDxeDriver/PlatformInfoDxeDriver.depex + SECTION PE32 = sdm845Pkg/Binary/845/PlatformInfoDxeDriver/PlatformInfoDxeDriver.efi + SECTION UI = "PlatformInfoDxeDriver" + } + + FILE DRIVER = 9A00771F-36D4-4DD5-8916-C48ED9B16B86 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/HALIOMMU/HALIOMMU.depex + SECTION PE32 = sdm845Pkg/Binary/845/HALIOMMU/HALIOMMU.efi + SECTION UI = "HALIOMMU" + } + + FILE DRIVER = E43128A8-8692-42B6-8AFA-676158578D18 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/ULogDxe/ULogDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/ULogDxe/ULogDxe.efi + SECTION UI = "ULogDxe" + } + + FILE DRIVER = ABA01FF8-2CCB-4E12-8B2E-CD3F4A742993 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/CmdDbDxe/CmdDbDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/CmdDbDxe/CmdDbDxe.efi + SECTION UI = "CmdDbDxe" + } + + FILE DRIVER = CB29F4D1-7F37-4692-A416-93E82E219711 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/NpaDxe/NpaDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/NpaDxe/NpaDxe.efi + SECTION UI = "NpaDxe" + } + + FILE DRIVER = CB29F4D1-7F37-4692-A416-93E82E219766 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/RpmhDxe/RpmhDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/RpmhDxe/RpmhDxe.efi + SECTION UI = "RpmhDxe" + } + + FILE DRIVER = B43C22DB-6333-490C-872D-0A73439059FD { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/PdcDxe/PdcDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/PdcDxe/PdcDxe.efi + SECTION UI = "PdcDxe" + } + + FILE DRIVER = 4DB5DEA6-5302-4D1A-8A82-677A683B0D29 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/ClockDxe/ClockDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/ClockDxe/ClockDxe.efi + SECTION UI = "ClockDxe" + } + + FILE DRIVER = 1B52138D-3FA3-4E50-B958-20887353F809 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/CPRDxe/CPRDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/CPRDxe/CPRDxe.efi + SECTION UI = "CPRDxe" + } + + FILE DRIVER = AF9763A2-033B-4109-8E17-56A98D380C92 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/DALTLMM/DALTLMM.depex + SECTION PE32 = sdm845Pkg/Binary/845/DALTLMM/DALTLMM.efi + SECTION UI = "DALTLMM" + } + + FILE DRIVER = 04DE8591-D2B3-4077-BBBE-B12070094EB6 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/I2C/I2C.depex + SECTION PE32 = sdm845Pkg/Binary/845/I2C/I2C.efi + SECTION UI = "I2C" + } + + FILE DRIVER = 2a7b4bef-80cd-49e1-b473-374ba4d673fc { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/SPMI/SPMI.depex + SECTION PE32 = sdm845Pkg/Binary/845/SPMI/SPMI.efi + SECTION UI = "SPMI" + } + + FILE DRIVER = 5776232e-082d-4b75-9a0e-fe1d13f7a5d9 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/PmicDxe/PmicDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/PmicDxe/PmicDxe.efi + SECTION UI = "PmicDxe" + } + + FILE DRIVER = 11faed4c-b21f-4d88-8e48-c4c28a1e50df { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbPwrCtrlDxe/UsbPwrCtrlDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbPwrCtrlDxe/UsbPwrCtrlDxe.efi + SECTION UI = "UsbPwrCtrlDxe" + } + + FILE DRIVER = 94f8a6a7-dc34-4101-88c1-99179cceae83 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbfnDwc3Dxe/UsbfnDwc3Dxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbfnDwc3Dxe/UsbfnDwc3Dxe.efi + SECTION UI = "UsbfnDwc3Dxe" + } + + FILE DRIVER = cd823a4d-7dec-4531-ae5d-4134fa4127b8 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbConfigDxe/UsbConfigDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbConfigDxe/UsbConfigDxe.efi + SECTION UI = "UsbConfigDxe" + } + + FILE DRIVER = 0A134F0E-075E-40B3-9C63-3B3906804663 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbInitDxe/UsbInitDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbInitDxe/UsbInitDxe.efi + SECTION UI = "UsbInitDxe" + } + + FILE DRIVER = 3299a266-15f0-4346-8318-716336736d3e { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbDeviceDxe/UsbDeviceDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbDeviceDxe/UsbDeviceDxe.efi + SECTION UI = "UsbDeviceDxe" + } + + FILE DRIVER = 5bd181db-0487-4f1a-ae73-820e165611b3 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/ButtonsDxe/ButtonsDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/ButtonsDxe/ButtonsDxe.efi + SECTION UI = "ButtonsDxe" + } + + FILE DRIVER = 5af77f10-90df-4e7e-8325-a17ec09d5443 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbMsdDxe/UsbMsdDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbMsdDxe/UsbMsdDxe.efi + SECTION UI = "UsbMsdDxe" + } + + FILE DRIVER = 0d35cd8e-97ea-4f9a-96af-0f0d89f76567 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UFSDxe/UFSDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UFSDxe/UFSDxe.efi + SECTION UI = "UFSDxe" + } + + + # + # GPIO + # + + # + # Virtual Keyboard + # + INF EmbeddedPkg/Drivers/VirtualKeyboardDxe/VirtualKeyboardDxe.inf + + INF sdm845Pkg/Drivers/sdm845Dxe/sdm845Dxe.inf + INF sdm845Pkg/Drivers/SimpleFbDxe/SimpleFbDxe.inf + + + + + + # + # USB Host Support + # + INF MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf + + # + # USB Mass Storage Support + # + INF MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf + + # + # USB Peripheral Support + # + INF EmbeddedPkg/Drivers/AndroidFastbootTransportUsbDxe/FastbootTransportUsbDxe.inf + + # + # Fastboot + # + INF EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.inf + + # + # FAT filesystem + GPT/MBR partitioning + # + INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf + INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf + INF FatPkg/EnhancedFatDxe/Fat.inf + INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf + + INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf + + INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf + + # + # ACPI Support + # + INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf + INF MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf + INF MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf + # INF RuleOverride = ACPITABLE sdm845Pkg/AcpiTables/AcpiTables.inf + + FILE FREEFORM = 7E374E25-8E01-4FEE-87F2-390C23C606CD { + + + SECTION RAW = sdm845Pkg/AcpiTables/testing/DBG2.aml + SECTION RAW = sdm845Pkg/AcpiTables/845/DSDT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/CSRT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/FADT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/FACS.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/GTDT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/IORT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/MCFG.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/MADT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/PPTT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/TPM2.aml + SECTION UI = "AcpiTables" + } + + # + # SMBIOS Support + # + INF sdm845Pkg/Drivers/SmbiosPlatformDxe/SmbiosPlatformDxe.inf + INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf + + # + # UEFI applications + # + INF ShellPkg/Application/Shell/Shell.inf +!ifdef $(INCLUDE_TFTP_COMMAND) + INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf +!endif #$(INCLUDE_TFTP_COMMAND) + + # + # Bds + # + INF MdeModulePkg/Universal/PrintDxe/PrintDxe.inf + INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf + INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf + INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf + INF MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf + INF MdeModulePkg/Universal/BdsDxe/BdsDxe.inf + INF MdeModulePkg/Application/UiApp/UiApp.inf + INF sdm845Pkg/Drivers/LogoDxe/LogoDxe.inf + +[FV.FVMAIN_COMPACT] +FvAlignment = 8 +ERASE_POLARITY = 1 +MEMORY_MAPPED = TRUE +STICKY_WRITE = TRUE +LOCK_CAP = TRUE +LOCK_STATUS = TRUE +WRITE_DISABLED_CAP = TRUE +WRITE_ENABLED_CAP = TRUE +WRITE_STATUS = TRUE +WRITE_LOCK_CAP = TRUE +WRITE_LOCK_STATUS = TRUE +READ_DISABLED_CAP = TRUE +READ_ENABLED_CAP = TRUE +READ_STATUS = TRUE +READ_LOCK_CAP = TRUE +READ_LOCK_STATUS = TRUE + + INF ArmPlatformPkg/PrePi/PeiUniCore.inf + + FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 { + SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE { + SECTION FV_IMAGE = FVMAIN + } + } + +!include sdm845Pkg/CommonFdf.fdf.inc + + diff --git a/sdm845Pkg/beryllium.dsc b/sdm845Pkg/Devices/beryllium.dsc similarity index 92% rename from sdm845Pkg/beryllium.dsc rename to sdm845Pkg/Devices/beryllium.dsc index 55659c7..534da82 100755 --- a/sdm845Pkg/beryllium.dsc +++ b/sdm845Pkg/Devices/beryllium.dsc @@ -1,26 +1,26 @@ -[Defines] - PLATFORM_NAME = sdm845Pkg - PLATFORM_GUID = 28f1a3bf-193a-47e3-a7b9-5a435eaab2ee - PLATFORM_VERSION = 0.1 - DSC_SPECIFICATION = 0x00010019 - OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME) - SUPPORTED_ARCHITECTURES = AARCH64 - BUILD_TARGETS = DEBUG|RELEASE - SKUID_IDENTIFIER = DEFAULT - FLASH_DEFINITION = sdm845Pkg/beryllium.fdf - -!include sdm845Pkg/sdm845Pkg.dsc - -[PcdsFixedAtBuild.common] - # System Memory (5GB) - gArmTokenSpaceGuid.PcdSystemMemorySize|0x140000000 - - gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferAddress|0x9D469780 - gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferWidth|1080 - gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferHeight|2140 - - #uncomment section underneath and comment out the above section to use full display, including the notch - #gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferPixelBpp|32|UINT32|0x0000a403 - #gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferVisibleWidth|1080|UINT32|0x0000a404 - #gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferVisibleHeight|2234|UINT32|0x0000a405 - +[Defines] + PLATFORM_NAME = sdm845Pkg + PLATFORM_GUID = 28f1a3bf-193a-47e3-a7b9-5a435eaab2ee + PLATFORM_VERSION = 0.1 + DSC_SPECIFICATION = 0x00010019 + OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME) + SUPPORTED_ARCHITECTURES = AARCH64 + BUILD_TARGETS = DEBUG|RELEASE + SKUID_IDENTIFIER = DEFAULT + FLASH_DEFINITION = sdm845Pkg/Devices/845.fdf + +!include sdm845Pkg/sdm845Pkg.dsc + +[PcdsFixedAtBuild.common] + # System Memory (5GB) + gArmTokenSpaceGuid.PcdSystemMemorySize|0x140000000 + + gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferAddress|0x9D469780 + gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferWidth|1080 + gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferHeight|2140 + + #uncomment section underneath and comment out the above section to use full display, including the notch + #gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferPixelBpp|32|UINT32|0x0000a403 + #gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferVisibleWidth|1080|UINT32|0x0000a404 + #gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferVisibleHeight|2234|UINT32|0x0000a405 + diff --git a/sdm845Pkg/Devices/beryllium.fdf b/sdm845Pkg/Devices/beryllium.fdf new file mode 100644 index 0000000..c55876f --- /dev/null +++ b/sdm845Pkg/Devices/beryllium.fdf @@ -0,0 +1,612 @@ +# +# Copyright (c) 2018, Linaro Limited. All rights reserved. +# +# This program and the accompanying materials +# are licensed and made available under the terms and conditions of the BSD License +# which accompanies this distribution. The full text of the license may be found at +# http://opensource.org/licenses/bsd-license.php +# +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +# + +################################################################################ +# +# FD Section +# The [FD] Section is made up of the definition statements and a +# description of what goes into the Flash Device Image. Each FD section +# defines one flash "device" image. A flash device image may be one of +# the following: Removable media bootable image (like a boot floppy +# image,) an Option ROM image (that would be "flashed" into an add-in +# card,) a System "Flash" image (that would be burned into a system's +# flash) or an Update ("Capsule") image that will be used to update and +# existing system flash. +# +################################################################################ + +[FD.sdm845Pkg_UEFI] +BaseAddress = 0xd0000000|gArmTokenSpaceGuid.PcdFdBaseAddress # The base address of the Firmware in NOR Flash. +Size = 0x00200000|gArmTokenSpaceGuid.PcdFdSize # The size in bytes of the FLASH Device +ErasePolarity = 1 + +# This one is tricky, it must be: BlockSize * NumBlocks = Size +BlockSize = 0x00001000 +NumBlocks = 0x200 + +################################################################################ +# +# Following are lists of FD Region layout which correspond to the locations of different +# images within the flash device. +# +# Regions must be defined in ascending order and may not overlap. +# +# A Layout Region start with a eight digit hex offset (leading "0x" required) followed by +# the pipe "|" character, followed by the size of the region, also in hex with the leading +# "0x" characters. Like: +# Offset|Size +# PcdOffsetCName|PcdSizeCName +# RegionType +# +################################################################################ + +# from ArmVirtPkg/ArmVirtQemuKernel.fdf +# +# Implement the Linux kernel header layout so that the loader will identify +# it as something bootable, and execute it with a FDT pointer in x0 or r2. +# +0x00000000|0x00008000 +DATA = { + 0x01, 0x00, 0x00, 0x10, # code0: adr x1, . + 0xff, 0x1f, 0x00, 0x14, # code1: b 0x8000 + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB + 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res2 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res3 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res4 + 0x41, 0x52, 0x4d, 0x64, # magic: "ARM\x64" + 0x00, 0x00, 0x00, 0x00 # res5 +} + +0x00008000|0x001f8000 +gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize +FV = FVMAIN_COMPACT + + +################################################################################ +# +# FV Section +# +# [FV] section is used to define what components or modules are placed within a flash +# device file. This section also defines order the components and modules are positioned +# within the image. The [FV] section consists of define statements, set statements and +# module statements. +# +################################################################################ + +[FV.FvMain] +BlockSize = 0x40 +NumBlocks = 0 # This FV gets compressed so make it just big enough +FvAlignment = 8 # FV alignment and FV attributes setting. +ERASE_POLARITY = 1 +MEMORY_MAPPED = TRUE +STICKY_WRITE = TRUE +LOCK_CAP = TRUE +LOCK_STATUS = TRUE +WRITE_DISABLED_CAP = TRUE +WRITE_ENABLED_CAP = TRUE +WRITE_STATUS = TRUE +WRITE_LOCK_CAP = TRUE +WRITE_LOCK_STATUS = TRUE +READ_DISABLED_CAP = TRUE +READ_ENABLED_CAP = TRUE +READ_STATUS = TRUE +READ_LOCK_CAP = TRUE +READ_LOCK_STATUS = TRUE + + APRIORI DXE { + + + # + # PI DXE Drivers producing Architectural Protocols (EFI Services) + # + INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf + INF MdeModulePkg/Core/Dxe/DxeMain.inf + INF MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf + INF MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf + INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf + INF ArmPkg/Drivers/CpuDxe/CpuDxe.inf + INF ArmPkg/Drivers/ArmGic/ArmGicDxe.inf + INF ArmPkg/Drivers/TimerDxe/TimerDxe.inf + INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf + INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf + INF EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf + + # + # FAT filesystem + GPT/MBR partitioning + # + INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf + INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf + INF FatPkg/EnhancedFatDxe/Fat.inf + INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf + INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf + + INF EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf + INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf + INF EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf + INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf + INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf + INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf + + INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf + INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf + INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf + + + + FILE DRIVER = 9A5163E7-5C29-453F-825C-837A46A81E15 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/SerialDxe/SerialDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/SerialDxe/SerialDxe.efi + SECTION UI = "SerialDxe" + } + + FILE DRIVER = f541d663-4a48-40aa-aabf-ff158ccae34c { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/SmemDxe/SmemDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/SmemDxe/SmemDxe.efi + SECTION UI = "SmemDxe" + } + + FILE DRIVER = 8E9BD160-B184-11DF-94E2-0800200C9A66 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/DALSys/DALSys.depex + SECTION PE32 = sdm845Pkg/Binary/845/DALSys/DALSys.efi + SECTION UI = "DALSys" + } + + FILE DRIVER = 8681CC5A-0DF6-441E-B4B8-E915C538F067 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/HWIODxeDriver/HWIODxeDriver.depex + SECTION PE32 = sdm845Pkg/Binary/845/HWIODxeDriver/HWIODxeDriver.efi + SECTION UI = "HWIODxeDriver" + } + + FILE DRIVER = 10e193df-9966-44e7-b17c-59dd831e20fc { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/ChipInfo/ChipInfo.depex + SECTION PE32 = sdm845Pkg/Binary/845/ChipInfo/ChipInfo.efi + SECTION UI = "ChipInfo" + } + + FILE DRIVER = B105211B-BBBD-4ADD-A3B0-D1CF4A52154C { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/PlatformInfoDxeDriver/PlatformInfoDxeDriver.depex + SECTION PE32 = sdm845Pkg/Binary/845/PlatformInfoDxeDriver/PlatformInfoDxeDriver.efi + SECTION UI = "PlatformInfoDxeDriver" + } + + FILE DRIVER = 9A00771F-36D4-4DD5-8916-C48ED9B16B86 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/HALIOMMU/HALIOMMU.depex + SECTION PE32 = sdm845Pkg/Binary/845/HALIOMMU/HALIOMMU.efi + SECTION UI = "HALIOMMU" + } + + FILE DRIVER = E43128A8-8692-42B6-8AFA-676158578D18 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/ULogDxe/ULogDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/ULogDxe/ULogDxe.efi + SECTION UI = "ULogDxe" + } + + FILE DRIVER = ABA01FF8-2CCB-4E12-8B2E-CD3F4A742993 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/CmdDbDxe/CmdDbDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/CmdDbDxe/CmdDbDxe.efi + SECTION UI = "CmdDbDxe" + } + + FILE DRIVER = CB29F4D1-7F37-4692-A416-93E82E219711 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/NpaDxe/NpaDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/NpaDxe/NpaDxe.efi + SECTION UI = "NpaDxe" + } + + FILE DRIVER = CB29F4D1-7F37-4692-A416-93E82E219766 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/RpmhDxe/RpmhDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/RpmhDxe/RpmhDxe.efi + SECTION UI = "RpmhDxe" + } + + FILE DRIVER = B43C22DB-6333-490C-872D-0A73439059FD { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/PdcDxe/PdcDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/PdcDxe/PdcDxe.efi + SECTION UI = "PdcDxe" + } + + FILE DRIVER = 4DB5DEA6-5302-4D1A-8A82-677A683B0D29 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/ClockDxe/ClockDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/ClockDxe/ClockDxe.efi + SECTION UI = "ClockDxe" + } + + FILE DRIVER = 1B52138D-3FA3-4E50-B958-20887353F809 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/CPRDxe/CPRDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/CPRDxe/CPRDxe.efi + SECTION UI = "CPRDxe" + } + + FILE DRIVER = AF9763A2-033B-4109-8E17-56A98D380C92 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/DALTLMM/DALTLMM.depex + SECTION PE32 = sdm845Pkg/Binary/845/DALTLMM/DALTLMM.efi + SECTION UI = "DALTLMM" + } + + FILE DRIVER = 04DE8591-D2B3-4077-BBBE-B12070094EB6 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/I2C/I2C.depex + SECTION PE32 = sdm845Pkg/Binary/845/I2C/I2C.efi + SECTION UI = "I2C" + } + + FILE DRIVER = 2a7b4bef-80cd-49e1-b473-374ba4d673fc { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/SPMI/SPMI.depex + SECTION PE32 = sdm845Pkg/Binary/845/SPMI/SPMI.efi + SECTION UI = "SPMI" + } + + FILE DRIVER = 5776232e-082d-4b75-9a0e-fe1d13f7a5d9 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/PmicDxe/PmicDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/PmicDxe/PmicDxe.efi + SECTION UI = "PmicDxe" + } + + FILE DRIVER = 11faed4c-b21f-4d88-8e48-c4c28a1e50df { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbPwrCtrlDxe/UsbPwrCtrlDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbPwrCtrlDxe/UsbPwrCtrlDxe.efi + SECTION UI = "UsbPwrCtrlDxe" + } + + FILE DRIVER = 94f8a6a7-dc34-4101-88c1-99179cceae83 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbfnDwc3Dxe/UsbfnDwc3Dxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbfnDwc3Dxe/UsbfnDwc3Dxe.efi + SECTION UI = "UsbfnDwc3Dxe" + } + + FILE DRIVER = cd823a4d-7dec-4531-ae5d-4134fa4127b8 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbConfigDxe/UsbConfigDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbConfigDxe/UsbConfigDxe.efi + SECTION UI = "UsbConfigDxe" + } + + FILE DRIVER = 0A134F0E-075E-40B3-9C63-3B3906804663 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbInitDxe/UsbInitDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbInitDxe/UsbInitDxe.efi + SECTION UI = "UsbInitDxe" + } + + FILE DRIVER = 3299a266-15f0-4346-8318-716336736d3e { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbDeviceDxe/UsbDeviceDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbDeviceDxe/UsbDeviceDxe.efi + SECTION UI = "UsbDeviceDxe" + } + + FILE DRIVER = 5bd181db-0487-4f1a-ae73-820e165611b3 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/ButtonsDxe/ButtonsDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/ButtonsDxe/ButtonsDxe.efi + SECTION UI = "ButtonsDxe" + } + + + INF MdeModulePkg/Universal/BdsDxe/BdsDxe.inf + +} + + INF MdeModulePkg/Core/Dxe/DxeMain.inf + + + # + # PI DXE Drivers producing Architectural Protocols (EFI Services) + # + INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf + INF ArmPkg/Drivers/CpuDxe/CpuDxe.inf + INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf + INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf + INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf + INF EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf + INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf + INF EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf + INF EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf + + + + # + # Multiple Console IO support + # + INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf + INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf + INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf + INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf + + + INF ArmPkg/Drivers/ArmGic/ArmGicDxe.inf + INF ArmPkg/Drivers/TimerDxe/TimerDxe.inf + + INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf + + FILE DRIVER = 9A5163E7-5C29-453F-825C-837A46A81E15 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/SerialDxe/SerialDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/SerialDxe/SerialDxe.efi + SECTION UI = "SerialDxe" + } + + FILE DRIVER = f541d663-4a48-40aa-aabf-ff158ccae34c { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/SmemDxe/SmemDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/SmemDxe/SmemDxe.efi + SECTION UI = "SmemDxe" + } + + FILE DRIVER = 8E9BD160-B184-11DF-94E2-0800200C9A66 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/DALSys/DALSys.depex + SECTION PE32 = sdm845Pkg/Binary/845/DALSys/DALSys.efi + SECTION UI = "DALSys" + } + + FILE DRIVER = 8681CC5A-0DF6-441E-B4B8-E915C538F067 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/HWIODxeDriver/HWIODxeDriver.depex + SECTION PE32 = sdm845Pkg/Binary/845/HWIODxeDriver/HWIODxeDriver.efi + SECTION UI = "HWIODxeDriver" + } + + FILE DRIVER = 10e193df-9966-44e7-b17c-59dd831e20fc { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/ChipInfo/ChipInfo.depex + SECTION PE32 = sdm845Pkg/Binary/845/ChipInfo/ChipInfo.efi + SECTION UI = "ChipInfo" + } + + FILE DRIVER = B105211B-BBBD-4ADD-A3B0-D1CF4A52154C { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/PlatformInfoDxeDriver/PlatformInfoDxeDriver.depex + SECTION PE32 = sdm845Pkg/Binary/845/PlatformInfoDxeDriver/PlatformInfoDxeDriver.efi + SECTION UI = "PlatformInfoDxeDriver" + } + + FILE DRIVER = 9A00771F-36D4-4DD5-8916-C48ED9B16B86 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/HALIOMMU/HALIOMMU.depex + SECTION PE32 = sdm845Pkg/Binary/845/HALIOMMU/HALIOMMU.efi + SECTION UI = "HALIOMMU" + } + + FILE DRIVER = E43128A8-8692-42B6-8AFA-676158578D18 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/ULogDxe/ULogDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/ULogDxe/ULogDxe.efi + SECTION UI = "ULogDxe" + } + + FILE DRIVER = ABA01FF8-2CCB-4E12-8B2E-CD3F4A742993 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/CmdDbDxe/CmdDbDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/CmdDbDxe/CmdDbDxe.efi + SECTION UI = "CmdDbDxe" + } + + FILE DRIVER = CB29F4D1-7F37-4692-A416-93E82E219711 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/NpaDxe/NpaDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/NpaDxe/NpaDxe.efi + SECTION UI = "NpaDxe" + } + + FILE DRIVER = CB29F4D1-7F37-4692-A416-93E82E219766 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/RpmhDxe/RpmhDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/RpmhDxe/RpmhDxe.efi + SECTION UI = "RpmhDxe" + } + + FILE DRIVER = B43C22DB-6333-490C-872D-0A73439059FD { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/PdcDxe/PdcDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/PdcDxe/PdcDxe.efi + SECTION UI = "PdcDxe" + } + + FILE DRIVER = 4DB5DEA6-5302-4D1A-8A82-677A683B0D29 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/ClockDxe/ClockDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/ClockDxe/ClockDxe.efi + SECTION UI = "ClockDxe" + } + + FILE DRIVER = 1B52138D-3FA3-4E50-B958-20887353F809 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/CPRDxe/CPRDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/CPRDxe/CPRDxe.efi + SECTION UI = "CPRDxe" + } + + FILE DRIVER = AF9763A2-033B-4109-8E17-56A98D380C92 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/DALTLMM/DALTLMM.depex + SECTION PE32 = sdm845Pkg/Binary/845/DALTLMM/DALTLMM.efi + SECTION UI = "DALTLMM" + } + + FILE DRIVER = 04DE8591-D2B3-4077-BBBE-B12070094EB6 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/I2C/I2C.depex + SECTION PE32 = sdm845Pkg/Binary/845/I2C/I2C.efi + SECTION UI = "I2C" + } + + FILE DRIVER = 2a7b4bef-80cd-49e1-b473-374ba4d673fc { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/SPMI/SPMI.depex + SECTION PE32 = sdm845Pkg/Binary/845/SPMI/SPMI.efi + SECTION UI = "SPMI" + } + + FILE DRIVER = 5776232e-082d-4b75-9a0e-fe1d13f7a5d9 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/PmicDxe/PmicDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/PmicDxe/PmicDxe.efi + SECTION UI = "PmicDxe" + } + + FILE DRIVER = 11faed4c-b21f-4d88-8e48-c4c28a1e50df { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbPwrCtrlDxe/UsbPwrCtrlDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbPwrCtrlDxe/UsbPwrCtrlDxe.efi + SECTION UI = "UsbPwrCtrlDxe" + } + + FILE DRIVER = 94f8a6a7-dc34-4101-88c1-99179cceae83 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbfnDwc3Dxe/UsbfnDwc3Dxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbfnDwc3Dxe/UsbfnDwc3Dxe.efi + SECTION UI = "UsbfnDwc3Dxe" + } + + FILE DRIVER = cd823a4d-7dec-4531-ae5d-4134fa4127b8 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbConfigDxe/UsbConfigDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbConfigDxe/UsbConfigDxe.efi + SECTION UI = "UsbConfigDxe" + } + + FILE DRIVER = 0A134F0E-075E-40B3-9C63-3B3906804663 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbInitDxe/UsbInitDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbInitDxe/UsbInitDxe.efi + SECTION UI = "UsbInitDxe" + } + + FILE DRIVER = 3299a266-15f0-4346-8318-716336736d3e { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbDeviceDxe/UsbDeviceDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbDeviceDxe/UsbDeviceDxe.efi + SECTION UI = "UsbDeviceDxe" + } + + FILE DRIVER = 5bd181db-0487-4f1a-ae73-820e165611b3 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/ButtonsDxe/ButtonsDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/ButtonsDxe/ButtonsDxe.efi + SECTION UI = "ButtonsDxe" + } + + FILE DRIVER = 5af77f10-90df-4e7e-8325-a17ec09d5443 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UsbMsdDxe/UsbMsdDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UsbMsdDxe/UsbMsdDxe.efi + SECTION UI = "UsbMsdDxe" + } + + FILE DRIVER = 0d35cd8e-97ea-4f9a-96af-0f0d89f76567 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/845/UFSDxe/UFSDxe.depex + SECTION PE32 = sdm845Pkg/Binary/845/UFSDxe/UFSDxe.efi + SECTION UI = "UFSDxe" + } + + + # + # GPIO + # + + # + # Virtual Keyboard + # + INF EmbeddedPkg/Drivers/VirtualKeyboardDxe/VirtualKeyboardDxe.inf + + INF sdm845Pkg/Drivers/sdm845Dxe/sdm845Dxe.inf + INF sdm845Pkg/Drivers/SimpleFbDxe/SimpleFbDxe.inf + + + + + + # + # USB Host Support + # + INF MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf + + # + # USB Mass Storage Support + # + INF MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf + + # + # USB Peripheral Support + # + INF EmbeddedPkg/Drivers/AndroidFastbootTransportUsbDxe/FastbootTransportUsbDxe.inf + + # + # Fastboot + # + INF EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.inf + + # + # FAT filesystem + GPT/MBR partitioning + # + INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf + INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf + INF FatPkg/EnhancedFatDxe/Fat.inf + INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf + + INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf + + INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf + + # + # ACPI Support + # + INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf + INF MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf + INF MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf + # INF RuleOverride = ACPITABLE sdm845Pkg/AcpiTables/AcpiTables.inf + + FILE FREEFORM = 7E374E25-8E01-4FEE-87F2-390C23C606CD { + + + SECTION RAW = sdm845Pkg/AcpiTables/testing/DBG2.aml + SECTION RAW = sdm845Pkg/AcpiTables/845/DSDT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/CSRT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/FADT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/FACS.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/GTDT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/IORT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/MCFG.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/MADT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/PPTT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/TPM2.aml + SECTION UI = "AcpiTables" + } + + # + # SMBIOS Support + # + INF sdm845Pkg/Drivers/SmbiosPlatformDxe/SmbiosPlatformDxe.inf + INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf + + # + # UEFI applications + # + INF ShellPkg/Application/Shell/Shell.inf +!ifdef $(INCLUDE_TFTP_COMMAND) + INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf +!endif #$(INCLUDE_TFTP_COMMAND) + + # + # Bds + # + INF MdeModulePkg/Universal/PrintDxe/PrintDxe.inf + INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf + INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf + INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf + INF MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf + INF MdeModulePkg/Universal/BdsDxe/BdsDxe.inf + INF MdeModulePkg/Application/UiApp/UiApp.inf + INF sdm845Pkg/Drivers/LogoDxe/LogoDxe.inf + +[FV.FVMAIN_COMPACT] +FvAlignment = 8 +ERASE_POLARITY = 1 +MEMORY_MAPPED = TRUE +STICKY_WRITE = TRUE +LOCK_CAP = TRUE +LOCK_STATUS = TRUE +WRITE_DISABLED_CAP = TRUE +WRITE_ENABLED_CAP = TRUE +WRITE_STATUS = TRUE +WRITE_LOCK_CAP = TRUE +WRITE_LOCK_STATUS = TRUE +READ_DISABLED_CAP = TRUE +READ_ENABLED_CAP = TRUE +READ_STATUS = TRUE +READ_LOCK_CAP = TRUE +READ_LOCK_STATUS = TRUE + + INF ArmPlatformPkg/PrePi/PeiUniCore.inf + + FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 { + SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE { + SECTION FV_IMAGE = FVMAIN + } + } + +!include sdm845Pkg/CommonFdf.fdf.inc + + diff --git a/sdm845Pkg/dipper.dsc b/sdm845Pkg/Devices/dipper.dsc similarity index 89% rename from sdm845Pkg/dipper.dsc rename to sdm845Pkg/Devices/dipper.dsc index 4425a17..08b1c2b 100644 --- a/sdm845Pkg/dipper.dsc +++ b/sdm845Pkg/Devices/dipper.dsc @@ -1,19 +1,19 @@ -[Defines] - PLATFORM_NAME = sdm845Pkg - PLATFORM_GUID = 28f1a3bf-193a-47e3-a7b9-5a435eaab2ee - PLATFORM_VERSION = 0.1 - DSC_SPECIFICATION = 0x00010019 - OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME) - SUPPORTED_ARCHITECTURES = AARCH64 - BUILD_TARGETS = DEBUG|RELEASE - SKUID_IDENTIFIER = DEFAULT - FLASH_DEFINITION = sdm845Pkg/dipper.fdf - -!include sdm845Pkg/sdm845Pkg.dsc - -[PcdsFixedAtBuild.common] - # System Memory (5GB) - gArmTokenSpaceGuid.PcdSystemMemorySize|0x140000000 - - gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferWidth|1080 - gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferHeight|2248 +[Defines] + PLATFORM_NAME = sdm845Pkg + PLATFORM_GUID = 28f1a3bf-193a-47e3-a7b9-5a435eaab2ee + PLATFORM_VERSION = 0.1 + DSC_SPECIFICATION = 0x00010019 + OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME) + SUPPORTED_ARCHITECTURES = AARCH64 + BUILD_TARGETS = DEBUG|RELEASE + SKUID_IDENTIFIER = DEFAULT + FLASH_DEFINITION = sdm845Pkg/Devices/845.fdf + +!include sdm845Pkg/sdm845Pkg.dsc + +[PcdsFixedAtBuild.common] + # System Memory (5GB) + gArmTokenSpaceGuid.PcdSystemMemorySize|0x140000000 + + gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferWidth|1080 + gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferHeight|2248 diff --git a/sdm845Pkg/dipper.fdf b/sdm845Pkg/Devices/dipper.fdf similarity index 96% rename from sdm845Pkg/dipper.fdf rename to sdm845Pkg/Devices/dipper.fdf index c134763..f3db33c 100644 --- a/sdm845Pkg/dipper.fdf +++ b/sdm845Pkg/Devices/dipper.fdf @@ -1,343 +1,343 @@ -# -# Copyright (c) 2018, Linaro Limited. All rights reserved. -# -# This program and the accompanying materials -# are licensed and made available under the terms and conditions of the BSD License -# which accompanies this distribution. The full text of the license may be found at -# http://opensource.org/licenses/bsd-license.php -# -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -# - -################################################################################ -# -# FD Section -# The [FD] Section is made up of the definition statements and a -# description of what goes into the Flash Device Image. Each FD section -# defines one flash "device" image. A flash device image may be one of -# the following: Removable media bootable image (like a boot floppy -# image,) an Option ROM image (that would be "flashed" into an add-in -# card,) a System "Flash" image (that would be burned into a system's -# flash) or an Update ("Capsule") image that will be used to update and -# existing system flash. -# -################################################################################ - -[FD.sdm845Pkg_UEFI] -BaseAddress = 0xd0000000|gArmTokenSpaceGuid.PcdFdBaseAddress # The base address of the Firmware in NOR Flash. -Size = 0x00200000|gArmTokenSpaceGuid.PcdFdSize # The size in bytes of the FLASH Device -ErasePolarity = 1 - -# This one is tricky, it must be: BlockSize * NumBlocks = Size -BlockSize = 0x00001000 -NumBlocks = 0x200 - -################################################################################ -# -# Following are lists of FD Region layout which correspond to the locations of different -# images within the flash device. -# -# Regions must be defined in ascending order and may not overlap. -# -# A Layout Region start with a eight digit hex offset (leading "0x" required) followed by -# the pipe "|" character, followed by the size of the region, also in hex with the leading -# "0x" characters. Like: -# Offset|Size -# PcdOffsetCName|PcdSizeCName -# RegionType -# -################################################################################ - -# from ArmVirtPkg/ArmVirtQemuKernel.fdf -# -# Implement the Linux kernel header layout so that the loader will identify -# it as something bootable, and execute it with a FDT pointer in x0 or r2. -# -0x00000000|0x00008000 -DATA = { - 0x01, 0x00, 0x00, 0x10, # code0: adr x1, . - 0xff, 0x1f, 0x00, 0x14, # code1: b 0x8000 - 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB - 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res2 - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res3 - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res4 - 0x41, 0x52, 0x4d, 0x64, # magic: "ARM\x64" - 0x00, 0x00, 0x00, 0x00 # res5 -} - -0x00008000|0x001f8000 -gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize -FV = FVMAIN_COMPACT - - -################################################################################ -# -# FV Section -# -# [FV] section is used to define what components or modules are placed within a flash -# device file. This section also defines order the components and modules are positioned -# within the image. The [FV] section consists of define statements, set statements and -# module statements. -# -################################################################################ - -[FV.FvMain] -BlockSize = 0x40 -NumBlocks = 0 # This FV gets compressed so make it just big enough -FvAlignment = 8 # FV alignment and FV attributes setting. -ERASE_POLARITY = 1 -MEMORY_MAPPED = TRUE -STICKY_WRITE = TRUE -LOCK_CAP = TRUE -LOCK_STATUS = TRUE -WRITE_DISABLED_CAP = TRUE -WRITE_ENABLED_CAP = TRUE -WRITE_STATUS = TRUE -WRITE_LOCK_CAP = TRUE -WRITE_LOCK_STATUS = TRUE -READ_DISABLED_CAP = TRUE -READ_ENABLED_CAP = TRUE -READ_STATUS = TRUE -READ_LOCK_CAP = TRUE -READ_LOCK_STATUS = TRUE - - APRIORI DXE { - INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf - } - - INF MdeModulePkg/Core/Dxe/DxeMain.inf - - # - # PI DXE Drivers producing Architectural Protocols (EFI Services) - # - INF ArmPkg/Drivers/CpuDxe/CpuDxe.inf - INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf - INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf - INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf - INF EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf - INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf - INF EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf - INF EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf - - FILE DRIVER = af9763a2-033b-4109-8e17-56a98d380c92 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/HWIODxeDriver/HWIODxeDriver.depex - SECTION PE32 = sdm845Pkg/Binary/dipper/HWIODxeDriver/HWIODxeDriver.efi - SECTION UI = "HWIODxeDriver" - } - - FILE DRIVER = 5776232e-082d-4b75-9a0e-fe1d13f7a5d9 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/PmicDxe/PmicDxe.depex - SECTION PE32 = sdm845Pkg/Binary/dipper/PmicDxe/PmicDxe.efi - SECTION UI = "PmicDxe" - } - - FILE DRIVER = 5bd181db-0487-4f1a-ae73-820e165611b3 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/ButtonsDxe/ButtonsDxe.depex - SECTION PE32 = sdm845Pkg/Binary/dipper/ButtonsDxe/ButtonsDxe.efi - SECTION UI = "ButtonsDxe" - } - - # - # Multiple Console IO support - # - INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf - INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf - INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf - INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf - INF MdeModulePkg/Universal/SerialDxe/SerialDxe.inf - - INF ArmPkg/Drivers/ArmGic/ArmGicDxe.inf - INF ArmPkg/Drivers/TimerDxe/TimerDxe.inf - - INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf - - INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf - - FILE DRIVER = 3299a266-15f0-4346-8318-716336736d3e { - SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/UsbDeviceDxe/UsbDeviceDxe.depex - SECTION PE32 = sdm845Pkg/Binary/dipper/UsbDeviceDxe/UsbDeviceDxe.efi - SECTION UI = "UsbDeviceDxe" - } - - FILE DRIVER = 11faed4c-b21f-4d88-8e48-c4c28a1e50df { - SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/UsbPwrCtrlDxe/UsbPwrCtrlDxe.depex - SECTION PE32 = sdm845Pkg/Binary/dipper/UsbPwrCtrlDxe/UsbPwrCtrlDxe.efi - SECTION UI = "UsbPwrCtrlDxe" - } - - FILE DRIVER = 5af77f10-90df-4e7e-8325-a17ec09d5443 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/UsbMsdDxe/UsbMsdDxe.depex - SECTION PE32 = sdm845Pkg/Binary/dipper/UsbMsdDxe/UsbMsdDxe.efi - SECTION UI = "UsbMsdDxe" - } - - FILE DRIVER = 94f8a6a7-dc34-4101-88c1-99179cceae83 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/UsbfnDwc3Dxe/UsbfnDwc3Dxe.depex - SECTION PE32 = sdm845Pkg/Binary/dipper/UsbfnDwc3Dxe/UsbfnDwc3Dxe.efi - SECTION UI = "UsbfnDwc3Dxe" - } - - FILE DRIVER = cd823a4d-7dec-4531-ae5d-4134fa4127b8 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/UsbConfigDxe/UsbConfigDxe.depex - SECTION PE32 = sdm845Pkg/Binary/dipper/UsbConfigDxe/UsbConfigDxe.efi - SECTION UI = "UsbDeviceDxe" - } - - # - # GPIO - # - - # - # Virtual Keyboard - # - INF EmbeddedPkg/Drivers/VirtualKeyboardDxe/VirtualKeyboardDxe.inf - - INF sdm845Pkg/sdm845Dxe/sdm845Dxe.inf - INF sdm845Pkg/SimpleFbDxe/SimpleFbDxe.inf - - FILE DRIVER = 0d35cd8e-97ea-4f9a-96af-0f0d89f76567 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/UFSDxe/UFSDxe.depex - SECTION PE32 = sdm845Pkg/Binary/dipper/UFSDxe/UFSDxe.efi - SECTION UI = "UFSDxe" - } - FILE DRIVER = 2a7b4bef-80cd-49e1-b473-374ba4d673fc { - SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/SPMI/SPMI.depex - SECTION PE32 = sdm845Pkg/Binary/dipper/SPMI/SPMI.efi - SECTION UI = "SPMI" - } - - FILE DRIVER = f541d663-4a48-40aa-aabf-ff158ccae34c { - SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/SmemDxe/SmemDxe.depex - SECTION PE32 = sdm845Pkg/Binary/dipper/SmemDxe/SmemDxe.efi - SECTION UI = "SmemDxe" - } - - FILE DRIVER = 10e193df-9966-44e7-b17c-59dd831e20fc { - SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/ChipInfo/ChipInfo.depex - SECTION PE32 = sdm845Pkg/Binary/dipper/ChipInfo/ChipInfo.efi - SECTION UI = "ChipInfo" - } - - FILE DRIVER = 7a32bd23-f735-4f57-aa1a-447d2fe3be0d { - SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/SPI/SPI.depex - SECTION PE32 = sdm845Pkg/Binary/dipper/SPI/SPI.efi - SECTION UI = "SPI" - } - - - # - # USB Host Support - # - INF MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf - - # - # USB Mass Storage Support - # - INF MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf - - # - # USB Peripheral Support - # - INF EmbeddedPkg/Drivers/AndroidFastbootTransportUsbDxe/FastbootTransportUsbDxe.inf - - # - # Fastboot - # - INF EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.inf - - # - # FAT filesystem + GPT/MBR partitioning - # - INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf - INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf - INF FatPkg/EnhancedFatDxe/Fat.inf - INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf - - INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf - - INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf - - # - # ACPI Support - # - INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf - INF MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf - INF MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf - # INF RuleOverride = ACPITABLE sdm845Pkg/AcpiTables/AcpiTables.inf - - FILE FREEFORM = 7E374E25-8E01-4FEE-87F2-390C23C606CD { - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/DBG2.aml - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/DSDT.aml - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/FACP.aml - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/GTDT.aml - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/APIC.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/DBG2.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/DSDT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/CSRT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/FADT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/FACS.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/GTDT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/IORT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/MCFG.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/MADT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/PPTT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/TPM2.aml - SECTION UI = "AcpiTables" - } - - # - # SMBIOS Support - # - INF sdm845Pkg/Drivers/SmbiosPlatformDxe/SmbiosPlatformDxe.inf - INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf - - # - # UEFI applications - # - INF ShellPkg/Application/Shell/Shell.inf -!ifdef $(INCLUDE_TFTP_COMMAND) - INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf -!endif #$(INCLUDE_TFTP_COMMAND) - - # - # Bds - # - INF MdeModulePkg/Universal/PrintDxe/PrintDxe.inf - INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf - INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf - INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf - INF MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf - INF MdeModulePkg/Universal/BdsDxe/BdsDxe.inf - INF MdeModulePkg/Application/UiApp/UiApp.inf - INF sdm845Pkg/Drivers/LogoDxe/LogoDxe.inf - -[FV.FVMAIN_COMPACT] -FvAlignment = 8 -ERASE_POLARITY = 1 -MEMORY_MAPPED = TRUE -STICKY_WRITE = TRUE -LOCK_CAP = TRUE -LOCK_STATUS = TRUE -WRITE_DISABLED_CAP = TRUE -WRITE_ENABLED_CAP = TRUE -WRITE_STATUS = TRUE -WRITE_LOCK_CAP = TRUE -WRITE_LOCK_STATUS = TRUE -READ_DISABLED_CAP = TRUE -READ_ENABLED_CAP = TRUE -READ_STATUS = TRUE -READ_LOCK_CAP = TRUE -READ_LOCK_STATUS = TRUE - - INF ArmPlatformPkg/PrePi/PeiUniCore.inf - - FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 { - SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE { - SECTION FV_IMAGE = FVMAIN - } - } - -!include sdm845Pkg/CommonFdf.fdf.inc +# +# Copyright (c) 2018, Linaro Limited. All rights reserved. +# +# This program and the accompanying materials +# are licensed and made available under the terms and conditions of the BSD License +# which accompanies this distribution. The full text of the license may be found at +# http://opensource.org/licenses/bsd-license.php +# +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +# + +################################################################################ +# +# FD Section +# The [FD] Section is made up of the definition statements and a +# description of what goes into the Flash Device Image. Each FD section +# defines one flash "device" image. A flash device image may be one of +# the following: Removable media bootable image (like a boot floppy +# image,) an Option ROM image (that would be "flashed" into an add-in +# card,) a System "Flash" image (that would be burned into a system's +# flash) or an Update ("Capsule") image that will be used to update and +# existing system flash. +# +################################################################################ + +[FD.sdm845Pkg_UEFI] +BaseAddress = 0xd0000000|gArmTokenSpaceGuid.PcdFdBaseAddress # The base address of the Firmware in NOR Flash. +Size = 0x00200000|gArmTokenSpaceGuid.PcdFdSize # The size in bytes of the FLASH Device +ErasePolarity = 1 + +# This one is tricky, it must be: BlockSize * NumBlocks = Size +BlockSize = 0x00001000 +NumBlocks = 0x200 + +################################################################################ +# +# Following are lists of FD Region layout which correspond to the locations of different +# images within the flash device. +# +# Regions must be defined in ascending order and may not overlap. +# +# A Layout Region start with a eight digit hex offset (leading "0x" required) followed by +# the pipe "|" character, followed by the size of the region, also in hex with the leading +# "0x" characters. Like: +# Offset|Size +# PcdOffsetCName|PcdSizeCName +# RegionType +# +################################################################################ + +# from ArmVirtPkg/ArmVirtQemuKernel.fdf +# +# Implement the Linux kernel header layout so that the loader will identify +# it as something bootable, and execute it with a FDT pointer in x0 or r2. +# +0x00000000|0x00008000 +DATA = { + 0x01, 0x00, 0x00, 0x10, # code0: adr x1, . + 0xff, 0x1f, 0x00, 0x14, # code1: b 0x8000 + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB + 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res2 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res3 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res4 + 0x41, 0x52, 0x4d, 0x64, # magic: "ARM\x64" + 0x00, 0x00, 0x00, 0x00 # res5 +} + +0x00008000|0x001f8000 +gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize +FV = FVMAIN_COMPACT + + +################################################################################ +# +# FV Section +# +# [FV] section is used to define what components or modules are placed within a flash +# device file. This section also defines order the components and modules are positioned +# within the image. The [FV] section consists of define statements, set statements and +# module statements. +# +################################################################################ + +[FV.FvMain] +BlockSize = 0x40 +NumBlocks = 0 # This FV gets compressed so make it just big enough +FvAlignment = 8 # FV alignment and FV attributes setting. +ERASE_POLARITY = 1 +MEMORY_MAPPED = TRUE +STICKY_WRITE = TRUE +LOCK_CAP = TRUE +LOCK_STATUS = TRUE +WRITE_DISABLED_CAP = TRUE +WRITE_ENABLED_CAP = TRUE +WRITE_STATUS = TRUE +WRITE_LOCK_CAP = TRUE +WRITE_LOCK_STATUS = TRUE +READ_DISABLED_CAP = TRUE +READ_ENABLED_CAP = TRUE +READ_STATUS = TRUE +READ_LOCK_CAP = TRUE +READ_LOCK_STATUS = TRUE + + APRIORI DXE { + INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf + } + + INF MdeModulePkg/Core/Dxe/DxeMain.inf + + # + # PI DXE Drivers producing Architectural Protocols (EFI Services) + # + INF ArmPkg/Drivers/CpuDxe/CpuDxe.inf + INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf + INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf + INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf + INF EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf + INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf + INF EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf + INF EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf + + FILE DRIVER = af9763a2-033b-4109-8e17-56a98d380c92 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/HWIODxeDriver/HWIODxeDriver.depex + SECTION PE32 = sdm845Pkg/Binary/dipper/HWIODxeDriver/HWIODxeDriver.efi + SECTION UI = "HWIODxeDriver" + } + + FILE DRIVER = 5776232e-082d-4b75-9a0e-fe1d13f7a5d9 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/PmicDxe/PmicDxe.depex + SECTION PE32 = sdm845Pkg/Binary/dipper/PmicDxe/PmicDxe.efi + SECTION UI = "PmicDxe" + } + + FILE DRIVER = 5bd181db-0487-4f1a-ae73-820e165611b3 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/ButtonsDxe/ButtonsDxe.depex + SECTION PE32 = sdm845Pkg/Binary/dipper/ButtonsDxe/ButtonsDxe.efi + SECTION UI = "ButtonsDxe" + } + + # + # Multiple Console IO support + # + INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf + INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf + INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf + INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf + INF MdeModulePkg/Universal/SerialDxe/SerialDxe.inf + + INF ArmPkg/Drivers/ArmGic/ArmGicDxe.inf + INF ArmPkg/Drivers/TimerDxe/TimerDxe.inf + + INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf + + INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf + + FILE DRIVER = 3299a266-15f0-4346-8318-716336736d3e { + SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/UsbDeviceDxe/UsbDeviceDxe.depex + SECTION PE32 = sdm845Pkg/Binary/dipper/UsbDeviceDxe/UsbDeviceDxe.efi + SECTION UI = "UsbDeviceDxe" + } + + FILE DRIVER = 11faed4c-b21f-4d88-8e48-c4c28a1e50df { + SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/UsbPwrCtrlDxe/UsbPwrCtrlDxe.depex + SECTION PE32 = sdm845Pkg/Binary/dipper/UsbPwrCtrlDxe/UsbPwrCtrlDxe.efi + SECTION UI = "UsbPwrCtrlDxe" + } + + FILE DRIVER = 5af77f10-90df-4e7e-8325-a17ec09d5443 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/UsbMsdDxe/UsbMsdDxe.depex + SECTION PE32 = sdm845Pkg/Binary/dipper/UsbMsdDxe/UsbMsdDxe.efi + SECTION UI = "UsbMsdDxe" + } + + FILE DRIVER = 94f8a6a7-dc34-4101-88c1-99179cceae83 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/UsbfnDwc3Dxe/UsbfnDwc3Dxe.depex + SECTION PE32 = sdm845Pkg/Binary/dipper/UsbfnDwc3Dxe/UsbfnDwc3Dxe.efi + SECTION UI = "UsbfnDwc3Dxe" + } + + FILE DRIVER = cd823a4d-7dec-4531-ae5d-4134fa4127b8 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/UsbConfigDxe/UsbConfigDxe.depex + SECTION PE32 = sdm845Pkg/Binary/dipper/UsbConfigDxe/UsbConfigDxe.efi + SECTION UI = "UsbDeviceDxe" + } + + # + # GPIO + # + + # + # Virtual Keyboard + # + INF EmbeddedPkg/Drivers/VirtualKeyboardDxe/VirtualKeyboardDxe.inf + + INF sdm845Pkg/Drivers/sdm845Dxe/sdm845Dxe.inf + INF sdm845Pkg/Drivers/SimpleFbDxe/SimpleFbDxe.inf + + FILE DRIVER = 0d35cd8e-97ea-4f9a-96af-0f0d89f76567 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/UFSDxe/UFSDxe.depex + SECTION PE32 = sdm845Pkg/Binary/dipper/UFSDxe/UFSDxe.efi + SECTION UI = "UFSDxe" + } + FILE DRIVER = 2a7b4bef-80cd-49e1-b473-374ba4d673fc { + SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/SPMI/SPMI.depex + SECTION PE32 = sdm845Pkg/Binary/dipper/SPMI/SPMI.efi + SECTION UI = "SPMI" + } + + FILE DRIVER = f541d663-4a48-40aa-aabf-ff158ccae34c { + SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/SmemDxe/SmemDxe.depex + SECTION PE32 = sdm845Pkg/Binary/dipper/SmemDxe/SmemDxe.efi + SECTION UI = "SmemDxe" + } + + FILE DRIVER = 10e193df-9966-44e7-b17c-59dd831e20fc { + SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/ChipInfo/ChipInfo.depex + SECTION PE32 = sdm845Pkg/Binary/dipper/ChipInfo/ChipInfo.efi + SECTION UI = "ChipInfo" + } + + FILE DRIVER = 7a32bd23-f735-4f57-aa1a-447d2fe3be0d { + SECTION DXE_DEPEX = sdm845Pkg/Binary/dipper/SPI/SPI.depex + SECTION PE32 = sdm845Pkg/Binary/dipper/SPI/SPI.efi + SECTION UI = "SPI" + } + + + # + # USB Host Support + # + INF MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf + + # + # USB Mass Storage Support + # + INF MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf + + # + # USB Peripheral Support + # + INF EmbeddedPkg/Drivers/AndroidFastbootTransportUsbDxe/FastbootTransportUsbDxe.inf + + # + # Fastboot + # + INF EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.inf + + # + # FAT filesystem + GPT/MBR partitioning + # + INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf + INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf + INF FatPkg/EnhancedFatDxe/Fat.inf + INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf + + INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf + + INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf + + # + # ACPI Support + # + INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf + INF MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf + INF MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf + # INF RuleOverride = ACPITABLE sdm845Pkg/AcpiTables/AcpiTables.inf + + FILE FREEFORM = 7E374E25-8E01-4FEE-87F2-390C23C606CD { + # SECTION RAW = sdm845Pkg/AcpiTables/minimal/DBG2.aml + # SECTION RAW = sdm845Pkg/AcpiTables/minimal/DSDT.aml + # SECTION RAW = sdm845Pkg/AcpiTables/minimal/FACP.aml + # SECTION RAW = sdm845Pkg/AcpiTables/minimal/GTDT.aml + # SECTION RAW = sdm845Pkg/AcpiTables/minimal/APIC.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/DBG2.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/DSDT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/CSRT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/FADT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/FACS.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/GTDT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/IORT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/MCFG.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/MADT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/PPTT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/TPM2.aml + SECTION UI = "AcpiTables" + } + + # + # SMBIOS Support + # + INF sdm845Pkg/Drivers/SmbiosPlatformDxe/SmbiosPlatformDxe.inf + INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf + + # + # UEFI applications + # + INF ShellPkg/Application/Shell/Shell.inf +!ifdef $(INCLUDE_TFTP_COMMAND) + INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf +!endif #$(INCLUDE_TFTP_COMMAND) + + # + # Bds + # + INF MdeModulePkg/Universal/PrintDxe/PrintDxe.inf + INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf + INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf + INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf + INF MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf + INF MdeModulePkg/Universal/BdsDxe/BdsDxe.inf + INF MdeModulePkg/Application/UiApp/UiApp.inf + INF sdm845Pkg/Drivers/LogoDxe/LogoDxe.inf + +[FV.FVMAIN_COMPACT] +FvAlignment = 8 +ERASE_POLARITY = 1 +MEMORY_MAPPED = TRUE +STICKY_WRITE = TRUE +LOCK_CAP = TRUE +LOCK_STATUS = TRUE +WRITE_DISABLED_CAP = TRUE +WRITE_ENABLED_CAP = TRUE +WRITE_STATUS = TRUE +WRITE_LOCK_CAP = TRUE +WRITE_LOCK_STATUS = TRUE +READ_DISABLED_CAP = TRUE +READ_ENABLED_CAP = TRUE +READ_STATUS = TRUE +READ_LOCK_CAP = TRUE +READ_LOCK_STATUS = TRUE + + INF ArmPlatformPkg/PrePi/PeiUniCore.inf + + FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 { + SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE { + SECTION FV_IMAGE = FVMAIN + } + } + +!include sdm845Pkg/CommonFdf.fdf.inc diff --git a/sdm845Pkg/enchilada.dsc b/sdm845Pkg/Devices/enchilada.dsc similarity index 89% rename from sdm845Pkg/enchilada.dsc rename to sdm845Pkg/Devices/enchilada.dsc index a42e735..1cf6a9d 100644 --- a/sdm845Pkg/enchilada.dsc +++ b/sdm845Pkg/Devices/enchilada.dsc @@ -1,19 +1,19 @@ -[Defines] - PLATFORM_NAME = sdm845Pkg - PLATFORM_GUID = 28f1a3bf-193a-47e3-a7b9-5a435eaab2ee - PLATFORM_VERSION = 0.1 - DSC_SPECIFICATION = 0x00010019 - OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME) - SUPPORTED_ARCHITECTURES = AARCH64 - BUILD_TARGETS = DEBUG|RELEASE - SKUID_IDENTIFIER = DEFAULT - FLASH_DEFINITION = sdm845Pkg/enchilada.fdf - -!include sdm845Pkg/sdm845Pkg.dsc - -[PcdsFixedAtBuild.common] - # System Memory (5GB) - gArmTokenSpaceGuid.PcdSystemMemorySize|0x140000000 - - gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferWidth|1080 - gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferHeight|2280 +[Defines] + PLATFORM_NAME = sdm845Pkg + PLATFORM_GUID = 28f1a3bf-193a-47e3-a7b9-5a435eaab2ee + PLATFORM_VERSION = 0.1 + DSC_SPECIFICATION = 0x00010019 + OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME) + SUPPORTED_ARCHITECTURES = AARCH64 + BUILD_TARGETS = DEBUG|RELEASE + SKUID_IDENTIFIER = DEFAULT + FLASH_DEFINITION = sdm845Pkg/Devices/845.fdf + +!include sdm845Pkg/sdm845Pkg.dsc + +[PcdsFixedAtBuild.common] + # System Memory (5GB) + gArmTokenSpaceGuid.PcdSystemMemorySize|0x140000000 + + gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferWidth|1080 + gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferHeight|2280 diff --git a/sdm845Pkg/enchilada.fdf b/sdm845Pkg/Devices/enchilada.fdf similarity index 96% rename from sdm845Pkg/enchilada.fdf rename to sdm845Pkg/Devices/enchilada.fdf index a0c5fdf..8f36fb6 100644 --- a/sdm845Pkg/enchilada.fdf +++ b/sdm845Pkg/Devices/enchilada.fdf @@ -1,343 +1,343 @@ -# -# Copyright (c) 2018, Linaro Limited. All rights reserved. -# -# This program and the accompanying materials -# are licensed and made available under the terms and conditions of the BSD License -# which accompanies this distribution. The full text of the license may be found at -# http://opensource.org/licenses/bsd-license.php -# -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -# - -################################################################################ -# -# FD Section -# The [FD] Section is made up of the definition statements and a -# description of what goes into the Flash Device Image. Each FD section -# defines one flash "device" image. A flash device image may be one of -# the following: Removable media bootable image (like a boot floppy -# image,) an Option ROM image (that would be "flashed" into an add-in -# card,) a System "Flash" image (that would be burned into a system's -# flash) or an Update ("Capsule") image that will be used to update and -# existing system flash. -# -################################################################################ - -[FD.sdm845Pkg_UEFI] -BaseAddress = 0xd0000000|gArmTokenSpaceGuid.PcdFdBaseAddress # The base address of the Firmware in NOR Flash. -Size = 0x00200000|gArmTokenSpaceGuid.PcdFdSize # The size in bytes of the FLASH Device -ErasePolarity = 1 - -# This one is tricky, it must be: BlockSize * NumBlocks = Size -BlockSize = 0x00001000 -NumBlocks = 0x200 - -################################################################################ -# -# Following are lists of FD Region layout which correspond to the locations of different -# images within the flash device. -# -# Regions must be defined in ascending order and may not overlap. -# -# A Layout Region start with a eight digit hex offset (leading "0x" required) followed by -# the pipe "|" character, followed by the size of the region, also in hex with the leading -# "0x" characters. Like: -# Offset|Size -# PcdOffsetCName|PcdSizeCName -# RegionType -# -################################################################################ - -# from ArmVirtPkg/ArmVirtQemuKernel.fdf -# -# Implement the Linux kernel header layout so that the loader will identify -# it as something bootable, and execute it with a FDT pointer in x0 or r2. -# -0x00000000|0x00008000 -DATA = { - 0x01, 0x00, 0x00, 0x10, # code0: adr x1, . - 0xff, 0x1f, 0x00, 0x14, # code1: b 0x8000 - 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB - 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res2 - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res3 - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res4 - 0x41, 0x52, 0x4d, 0x64, # magic: "ARM\x64" - 0x00, 0x00, 0x00, 0x00 # res5 -} - -0x00008000|0x001f8000 -gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize -FV = FVMAIN_COMPACT - - -################################################################################ -# -# FV Section -# -# [FV] section is used to define what components or modules are placed within a flash -# device file. This section also defines order the components and modules are positioned -# within the image. The [FV] section consists of define statements, set statements and -# module statements. -# -################################################################################ - -[FV.FvMain] -BlockSize = 0x40 -NumBlocks = 0 # This FV gets compressed so make it just big enough -FvAlignment = 8 # FV alignment and FV attributes setting. -ERASE_POLARITY = 1 -MEMORY_MAPPED = TRUE -STICKY_WRITE = TRUE -LOCK_CAP = TRUE -LOCK_STATUS = TRUE -WRITE_DISABLED_CAP = TRUE -WRITE_ENABLED_CAP = TRUE -WRITE_STATUS = TRUE -WRITE_LOCK_CAP = TRUE -WRITE_LOCK_STATUS = TRUE -READ_DISABLED_CAP = TRUE -READ_ENABLED_CAP = TRUE -READ_STATUS = TRUE -READ_LOCK_CAP = TRUE -READ_LOCK_STATUS = TRUE - - APRIORI DXE { - INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf - } - - INF MdeModulePkg/Core/Dxe/DxeMain.inf - - # - # PI DXE Drivers producing Architectural Protocols (EFI Services) - # - INF ArmPkg/Drivers/CpuDxe/CpuDxe.inf - INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf - INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf - INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf - INF EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf - INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf - INF EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf - INF EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf - - FILE DRIVER = af9763a2-033b-4109-8e17-56a98d380c92 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/HWIODxeDriver/HWIODxeDriver.depex - SECTION PE32 = sdm845Pkg/Binary/enchilada/HWIODxeDriver/HWIODxeDriver.efi - SECTION UI = "HWIODxeDriver" - } - - FILE DRIVER = 5776232e-082d-4b75-9a0e-fe1d13f7a5d9 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/PmicDxe/PmicDxe.depex - SECTION PE32 = sdm845Pkg/Binary/enchilada/PmicDxe/PmicDxe.efi - SECTION UI = "PmicDxe" - } - - FILE DRIVER = 5bd181db-0487-4f1a-ae73-820e165611b3 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/ButtonsDxe/ButtonsDxe.depex - SECTION PE32 = sdm845Pkg/Binary/enchilada/ButtonsDxe/ButtonsDxe.efi - SECTION UI = "ButtonsDxe" - } - - # - # Multiple Console IO support - # - INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf - INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf - INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf - INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf - INF MdeModulePkg/Universal/SerialDxe/SerialDxe.inf - - INF ArmPkg/Drivers/ArmGic/ArmGicDxe.inf - INF ArmPkg/Drivers/TimerDxe/TimerDxe.inf - - INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf - - INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf - - FILE DRIVER = 3299a266-15f0-4346-8318-716336736d3e { - SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/UsbDeviceDxe/UsbDeviceDxe.depex - SECTION PE32 = sdm845Pkg/Binary/enchilada/UsbDeviceDxe/UsbDeviceDxe.efi - SECTION UI = "UsbDeviceDxe" - } - - FILE DRIVER = 11faed4c-b21f-4d88-8e48-c4c28a1e50df { - SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/UsbPwrCtrlDxe/UsbPwrCtrlDxe.depex - SECTION PE32 = sdm845Pkg/Binary/enchilada/UsbPwrCtrlDxe/UsbPwrCtrlDxe.efi - SECTION UI = "UsbPwrCtrlDxe" - } - - FILE DRIVER = 5af77f10-90df-4e7e-8325-a17ec09d5443 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/UsbMsdDxe/UsbMsdDxe.depex - SECTION PE32 = sdm845Pkg/Binary/enchilada/UsbMsdDxe/UsbMsdDxe.efi - SECTION UI = "UsbMsdDxe" - } - - FILE DRIVER = 94f8a6a7-dc34-4101-88c1-99179cceae83 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/UsbfnDwc3Dxe/UsbfnDwc3Dxe.depex - SECTION PE32 = sdm845Pkg/Binary/enchilada/UsbfnDwc3Dxe/UsbfnDwc3Dxe.efi - SECTION UI = "UsbfnDwc3Dxe" - } - - FILE DRIVER = cd823a4d-7dec-4531-ae5d-4134fa4127b8 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/UsbConfigDxe/UsbConfigDxe.depex - SECTION PE32 = sdm845Pkg/Binary/enchilada/UsbConfigDxe/UsbConfigDxe.efi - SECTION UI = "UsbConfigDxe" - } - - # - # GPIO - # - - # - # Virtual Keyboard - # - INF EmbeddedPkg/Drivers/VirtualKeyboardDxe/VirtualKeyboardDxe.inf - - INF sdm845Pkg/sdm845Dxe/sdm845Dxe.inf - INF sdm845Pkg/SimpleFbDxe/SimpleFbDxe.inf - - FILE DRIVER = 0d35cd8e-97ea-4f9a-96af-0f0d89f76567 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/UFSDxe/UFSDxe.depex - SECTION PE32 = sdm845Pkg/Binary/enchilada/UFSDxe/UFSDxe.efi - SECTION UI = "UFSDxe" - } - FILE DRIVER = 2a7b4bef-80cd-49e1-b473-374ba4d673fc { - SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/SPMI/SPMI.depex - SECTION PE32 = sdm845Pkg/Binary/enchilada/SPMI/SPMI.efi - SECTION UI = "SPMI" - } - - FILE DRIVER = f541d663-4a48-40aa-aabf-ff158ccae34c { - SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/SmemDxe/SmemDxe.depex - SECTION PE32 = sdm845Pkg/Binary/enchilada/SmemDxe/SmemDxe.efi - SECTION UI = "SmemDxe" - } - - FILE DRIVER = 10e193df-9966-44e7-b17c-59dd831e20fc { - SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/ChipInfo/ChipInfo.depex - SECTION PE32 = sdm845Pkg/Binary/enchilada/ChipInfo/ChipInfo.efi - SECTION UI = "ChipInfo" - } - - #FILE DRIVER = 7a32bd23-f735-4f57-aa1a-447d2fe3be0d { - # SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/SPI/SPI.depex - # SECTION PE32 = sdm845Pkg/Binary/enchilada/SPI/SPI.efi - # SECTION UI = "SPI" - #} - - - # - # USB Host Support - # - INF MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf - - # - # USB Mass Storage Support - # - INF MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf - - # - # USB Peripheral Support - # - INF EmbeddedPkg/Drivers/AndroidFastbootTransportUsbDxe/FastbootTransportUsbDxe.inf - - # - # Fastboot - # - INF EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.inf - - # - # FAT filesystem + GPT/MBR partitioning - # - INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf - INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf - INF FatPkg/EnhancedFatDxe/Fat.inf - INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf - - INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf - - INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf - - # - # ACPI Support - # - INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf - INF MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf - INF MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf - # INF RuleOverride = ACPITABLE sdm845Pkg/AcpiTables/AcpiTables.inf - - FILE FREEFORM = 7E374E25-8E01-4FEE-87F2-390C23C606CD { - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/DBG2.aml - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/DSDT.aml - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/FACP.aml - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/GTDT.aml - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/APIC.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/DBG2.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/DSDT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/CSRT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/FADT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/FACS.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/GTDT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/IORT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/MCFG.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/MADT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/PPTT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/TPM2.aml - SECTION UI = "AcpiTables" - } - - # - # SMBIOS Support - # - INF sdm845Pkg/Drivers/SmbiosPlatformDxe/SmbiosPlatformDxe.inf - INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf - - # - # UEFI applications - # - INF ShellPkg/Application/Shell/Shell.inf -!ifdef $(INCLUDE_TFTP_COMMAND) - INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf -!endif #$(INCLUDE_TFTP_COMMAND) - - # - # Bds - # - INF MdeModulePkg/Universal/PrintDxe/PrintDxe.inf - INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf - INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf - INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf - INF MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf - INF MdeModulePkg/Universal/BdsDxe/BdsDxe.inf - INF MdeModulePkg/Application/UiApp/UiApp.inf - INF sdm845Pkg/Drivers/LogoDxe/LogoDxe.inf - -[FV.FVMAIN_COMPACT] -FvAlignment = 8 -ERASE_POLARITY = 1 -MEMORY_MAPPED = TRUE -STICKY_WRITE = TRUE -LOCK_CAP = TRUE -LOCK_STATUS = TRUE -WRITE_DISABLED_CAP = TRUE -WRITE_ENABLED_CAP = TRUE -WRITE_STATUS = TRUE -WRITE_LOCK_CAP = TRUE -WRITE_LOCK_STATUS = TRUE -READ_DISABLED_CAP = TRUE -READ_ENABLED_CAP = TRUE -READ_STATUS = TRUE -READ_LOCK_CAP = TRUE -READ_LOCK_STATUS = TRUE - - INF ArmPlatformPkg/PrePi/PeiUniCore.inf - - FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 { - SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE { - SECTION FV_IMAGE = FVMAIN - } - } - -!include sdm845Pkg/CommonFdf.fdf.inc +# +# Copyright (c) 2018, Linaro Limited. All rights reserved. +# +# This program and the accompanying materials +# are licensed and made available under the terms and conditions of the BSD License +# which accompanies this distribution. The full text of the license may be found at +# http://opensource.org/licenses/bsd-license.php +# +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +# + +################################################################################ +# +# FD Section +# The [FD] Section is made up of the definition statements and a +# description of what goes into the Flash Device Image. Each FD section +# defines one flash "device" image. A flash device image may be one of +# the following: Removable media bootable image (like a boot floppy +# image,) an Option ROM image (that would be "flashed" into an add-in +# card,) a System "Flash" image (that would be burned into a system's +# flash) or an Update ("Capsule") image that will be used to update and +# existing system flash. +# +################################################################################ + +[FD.sdm845Pkg_UEFI] +BaseAddress = 0xd0000000|gArmTokenSpaceGuid.PcdFdBaseAddress # The base address of the Firmware in NOR Flash. +Size = 0x00200000|gArmTokenSpaceGuid.PcdFdSize # The size in bytes of the FLASH Device +ErasePolarity = 1 + +# This one is tricky, it must be: BlockSize * NumBlocks = Size +BlockSize = 0x00001000 +NumBlocks = 0x200 + +################################################################################ +# +# Following are lists of FD Region layout which correspond to the locations of different +# images within the flash device. +# +# Regions must be defined in ascending order and may not overlap. +# +# A Layout Region start with a eight digit hex offset (leading "0x" required) followed by +# the pipe "|" character, followed by the size of the region, also in hex with the leading +# "0x" characters. Like: +# Offset|Size +# PcdOffsetCName|PcdSizeCName +# RegionType +# +################################################################################ + +# from ArmVirtPkg/ArmVirtQemuKernel.fdf +# +# Implement the Linux kernel header layout so that the loader will identify +# it as something bootable, and execute it with a FDT pointer in x0 or r2. +# +0x00000000|0x00008000 +DATA = { + 0x01, 0x00, 0x00, 0x10, # code0: adr x1, . + 0xff, 0x1f, 0x00, 0x14, # code1: b 0x8000 + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB + 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res2 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res3 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res4 + 0x41, 0x52, 0x4d, 0x64, # magic: "ARM\x64" + 0x00, 0x00, 0x00, 0x00 # res5 +} + +0x00008000|0x001f8000 +gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize +FV = FVMAIN_COMPACT + + +################################################################################ +# +# FV Section +# +# [FV] section is used to define what components or modules are placed within a flash +# device file. This section also defines order the components and modules are positioned +# within the image. The [FV] section consists of define statements, set statements and +# module statements. +# +################################################################################ + +[FV.FvMain] +BlockSize = 0x40 +NumBlocks = 0 # This FV gets compressed so make it just big enough +FvAlignment = 8 # FV alignment and FV attributes setting. +ERASE_POLARITY = 1 +MEMORY_MAPPED = TRUE +STICKY_WRITE = TRUE +LOCK_CAP = TRUE +LOCK_STATUS = TRUE +WRITE_DISABLED_CAP = TRUE +WRITE_ENABLED_CAP = TRUE +WRITE_STATUS = TRUE +WRITE_LOCK_CAP = TRUE +WRITE_LOCK_STATUS = TRUE +READ_DISABLED_CAP = TRUE +READ_ENABLED_CAP = TRUE +READ_STATUS = TRUE +READ_LOCK_CAP = TRUE +READ_LOCK_STATUS = TRUE + + APRIORI DXE { + INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf + } + + INF MdeModulePkg/Core/Dxe/DxeMain.inf + + # + # PI DXE Drivers producing Architectural Protocols (EFI Services) + # + INF ArmPkg/Drivers/CpuDxe/CpuDxe.inf + INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf + INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf + INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf + INF EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf + INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf + INF EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf + INF EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf + + FILE DRIVER = af9763a2-033b-4109-8e17-56a98d380c92 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/HWIODxeDriver/HWIODxeDriver.depex + SECTION PE32 = sdm845Pkg/Binary/enchilada/HWIODxeDriver/HWIODxeDriver.efi + SECTION UI = "HWIODxeDriver" + } + + FILE DRIVER = 5776232e-082d-4b75-9a0e-fe1d13f7a5d9 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/PmicDxe/PmicDxe.depex + SECTION PE32 = sdm845Pkg/Binary/enchilada/PmicDxe/PmicDxe.efi + SECTION UI = "PmicDxe" + } + + FILE DRIVER = 5bd181db-0487-4f1a-ae73-820e165611b3 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/ButtonsDxe/ButtonsDxe.depex + SECTION PE32 = sdm845Pkg/Binary/enchilada/ButtonsDxe/ButtonsDxe.efi + SECTION UI = "ButtonsDxe" + } + + # + # Multiple Console IO support + # + INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf + INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf + INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf + INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf + INF MdeModulePkg/Universal/SerialDxe/SerialDxe.inf + + INF ArmPkg/Drivers/ArmGic/ArmGicDxe.inf + INF ArmPkg/Drivers/TimerDxe/TimerDxe.inf + + INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf + + INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf + + FILE DRIVER = 3299a266-15f0-4346-8318-716336736d3e { + SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/UsbDeviceDxe/UsbDeviceDxe.depex + SECTION PE32 = sdm845Pkg/Binary/enchilada/UsbDeviceDxe/UsbDeviceDxe.efi + SECTION UI = "UsbDeviceDxe" + } + + FILE DRIVER = 11faed4c-b21f-4d88-8e48-c4c28a1e50df { + SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/UsbPwrCtrlDxe/UsbPwrCtrlDxe.depex + SECTION PE32 = sdm845Pkg/Binary/enchilada/UsbPwrCtrlDxe/UsbPwrCtrlDxe.efi + SECTION UI = "UsbPwrCtrlDxe" + } + + FILE DRIVER = 5af77f10-90df-4e7e-8325-a17ec09d5443 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/UsbMsdDxe/UsbMsdDxe.depex + SECTION PE32 = sdm845Pkg/Binary/enchilada/UsbMsdDxe/UsbMsdDxe.efi + SECTION UI = "UsbMsdDxe" + } + + FILE DRIVER = 94f8a6a7-dc34-4101-88c1-99179cceae83 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/UsbfnDwc3Dxe/UsbfnDwc3Dxe.depex + SECTION PE32 = sdm845Pkg/Binary/enchilada/UsbfnDwc3Dxe/UsbfnDwc3Dxe.efi + SECTION UI = "UsbfnDwc3Dxe" + } + + FILE DRIVER = cd823a4d-7dec-4531-ae5d-4134fa4127b8 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/UsbConfigDxe/UsbConfigDxe.depex + SECTION PE32 = sdm845Pkg/Binary/enchilada/UsbConfigDxe/UsbConfigDxe.efi + SECTION UI = "UsbConfigDxe" + } + + # + # GPIO + # + + # + # Virtual Keyboard + # + INF EmbeddedPkg/Drivers/VirtualKeyboardDxe/VirtualKeyboardDxe.inf + + INF sdm845Pkg/Drivers/sdm845Dxe/sdm845Dxe.inf + INF sdm845Pkg/Drivers/SimpleFbDxe/SimpleFbDxe.inf + + FILE DRIVER = 0d35cd8e-97ea-4f9a-96af-0f0d89f76567 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/UFSDxe/UFSDxe.depex + SECTION PE32 = sdm845Pkg/Binary/enchilada/UFSDxe/UFSDxe.efi + SECTION UI = "UFSDxe" + } + FILE DRIVER = 2a7b4bef-80cd-49e1-b473-374ba4d673fc { + SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/SPMI/SPMI.depex + SECTION PE32 = sdm845Pkg/Binary/enchilada/SPMI/SPMI.efi + SECTION UI = "SPMI" + } + + FILE DRIVER = f541d663-4a48-40aa-aabf-ff158ccae34c { + SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/SmemDxe/SmemDxe.depex + SECTION PE32 = sdm845Pkg/Binary/enchilada/SmemDxe/SmemDxe.efi + SECTION UI = "SmemDxe" + } + + FILE DRIVER = 10e193df-9966-44e7-b17c-59dd831e20fc { + SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/ChipInfo/ChipInfo.depex + SECTION PE32 = sdm845Pkg/Binary/enchilada/ChipInfo/ChipInfo.efi + SECTION UI = "ChipInfo" + } + + #FILE DRIVER = 7a32bd23-f735-4f57-aa1a-447d2fe3be0d { + # SECTION DXE_DEPEX = sdm845Pkg/Binary/enchilada/SPI/SPI.depex + # SECTION PE32 = sdm845Pkg/Binary/enchilada/SPI/SPI.efi + # SECTION UI = "SPI" + #} + + + # + # USB Host Support + # + INF MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf + + # + # USB Mass Storage Support + # + INF MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf + + # + # USB Peripheral Support + # + INF EmbeddedPkg/Drivers/AndroidFastbootTransportUsbDxe/FastbootTransportUsbDxe.inf + + # + # Fastboot + # + INF EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.inf + + # + # FAT filesystem + GPT/MBR partitioning + # + INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf + INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf + INF FatPkg/EnhancedFatDxe/Fat.inf + INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf + + INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf + + INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf + + # + # ACPI Support + # + INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf + INF MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf + INF MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf + # INF RuleOverride = ACPITABLE sdm845Pkg/AcpiTables/AcpiTables.inf + + FILE FREEFORM = 7E374E25-8E01-4FEE-87F2-390C23C606CD { + # SECTION RAW = sdm845Pkg/AcpiTables/minimal/DBG2.aml + # SECTION RAW = sdm845Pkg/AcpiTables/minimal/DSDT.aml + # SECTION RAW = sdm845Pkg/AcpiTables/minimal/FACP.aml + # SECTION RAW = sdm845Pkg/AcpiTables/minimal/GTDT.aml + # SECTION RAW = sdm845Pkg/AcpiTables/minimal/APIC.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/DBG2.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/DSDT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/CSRT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/FADT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/FACS.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/GTDT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/IORT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/MCFG.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/MADT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/PPTT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/TPM2.aml + SECTION UI = "AcpiTables" + } + + # + # SMBIOS Support + # + INF sdm845Pkg/Drivers/SmbiosPlatformDxe/SmbiosPlatformDxe.inf + INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf + + # + # UEFI applications + # + INF ShellPkg/Application/Shell/Shell.inf +!ifdef $(INCLUDE_TFTP_COMMAND) + INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf +!endif #$(INCLUDE_TFTP_COMMAND) + + # + # Bds + # + INF MdeModulePkg/Universal/PrintDxe/PrintDxe.inf + INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf + INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf + INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf + INF MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf + INF MdeModulePkg/Universal/BdsDxe/BdsDxe.inf + INF MdeModulePkg/Application/UiApp/UiApp.inf + INF sdm845Pkg/Drivers/LogoDxe/LogoDxe.inf + +[FV.FVMAIN_COMPACT] +FvAlignment = 8 +ERASE_POLARITY = 1 +MEMORY_MAPPED = TRUE +STICKY_WRITE = TRUE +LOCK_CAP = TRUE +LOCK_STATUS = TRUE +WRITE_DISABLED_CAP = TRUE +WRITE_ENABLED_CAP = TRUE +WRITE_STATUS = TRUE +WRITE_LOCK_CAP = TRUE +WRITE_LOCK_STATUS = TRUE +READ_DISABLED_CAP = TRUE +READ_ENABLED_CAP = TRUE +READ_STATUS = TRUE +READ_LOCK_CAP = TRUE +READ_LOCK_STATUS = TRUE + + INF ArmPlatformPkg/PrePi/PeiUniCore.inf + + FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 { + SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE { + SECTION FV_IMAGE = FVMAIN + } + } + +!include sdm845Pkg/CommonFdf.fdf.inc diff --git a/sdm845Pkg/fajita.dsc b/sdm845Pkg/Devices/fajita.dsc similarity index 89% rename from sdm845Pkg/fajita.dsc rename to sdm845Pkg/Devices/fajita.dsc index cff782b..1cf6a9d 100644 --- a/sdm845Pkg/fajita.dsc +++ b/sdm845Pkg/Devices/fajita.dsc @@ -1,19 +1,19 @@ -[Defines] - PLATFORM_NAME = sdm845Pkg - PLATFORM_GUID = 28f1a3bf-193a-47e3-a7b9-5a435eaab2ee - PLATFORM_VERSION = 0.1 - DSC_SPECIFICATION = 0x00010019 - OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME) - SUPPORTED_ARCHITECTURES = AARCH64 - BUILD_TARGETS = DEBUG|RELEASE - SKUID_IDENTIFIER = DEFAULT - FLASH_DEFINITION = sdm845Pkg/fajita.fdf - -!include sdm845Pkg/sdm845Pkg.dsc - -[PcdsFixedAtBuild.common] - # System Memory (5GB) - gArmTokenSpaceGuid.PcdSystemMemorySize|0x140000000 - - gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferWidth|1080 - gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferHeight|2280 +[Defines] + PLATFORM_NAME = sdm845Pkg + PLATFORM_GUID = 28f1a3bf-193a-47e3-a7b9-5a435eaab2ee + PLATFORM_VERSION = 0.1 + DSC_SPECIFICATION = 0x00010019 + OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME) + SUPPORTED_ARCHITECTURES = AARCH64 + BUILD_TARGETS = DEBUG|RELEASE + SKUID_IDENTIFIER = DEFAULT + FLASH_DEFINITION = sdm845Pkg/Devices/845.fdf + +!include sdm845Pkg/sdm845Pkg.dsc + +[PcdsFixedAtBuild.common] + # System Memory (5GB) + gArmTokenSpaceGuid.PcdSystemMemorySize|0x140000000 + + gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferWidth|1080 + gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferHeight|2280 diff --git a/sdm845Pkg/fajita.fdf b/sdm845Pkg/Devices/fajita.fdf similarity index 96% rename from sdm845Pkg/fajita.fdf rename to sdm845Pkg/Devices/fajita.fdf index 6ab418d..eaa6ae0 100644 --- a/sdm845Pkg/fajita.fdf +++ b/sdm845Pkg/Devices/fajita.fdf @@ -1,343 +1,343 @@ -# -# Copyright (c) 2018, Linaro Limited. All rights reserved. -# -# This program and the accompanying materials -# are licensed and made available under the terms and conditions of the BSD License -# which accompanies this distribution. The full text of the license may be found at -# http://opensource.org/licenses/bsd-license.php -# -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -# - -################################################################################ -# -# FD Section -# The [FD] Section is made up of the definition statements and a -# description of what goes into the Flash Device Image. Each FD section -# defines one flash "device" image. A flash device image may be one of -# the following: Removable media bootable image (like a boot floppy -# image,) an Option ROM image (that would be "flashed" into an add-in -# card,) a System "Flash" image (that would be burned into a system's -# flash) or an Update ("Capsule") image that will be used to update and -# existing system flash. -# -################################################################################ - -[FD.sdm845Pkg_UEFI] -BaseAddress = 0xd0000000|gArmTokenSpaceGuid.PcdFdBaseAddress # The base address of the Firmware in NOR Flash. -Size = 0x00200000|gArmTokenSpaceGuid.PcdFdSize # The size in bytes of the FLASH Device -ErasePolarity = 1 - -# This one is tricky, it must be: BlockSize * NumBlocks = Size -BlockSize = 0x00001000 -NumBlocks = 0x200 - -################################################################################ -# -# Following are lists of FD Region layout which correspond to the locations of different -# images within the flash device. -# -# Regions must be defined in ascending order and may not overlap. -# -# A Layout Region start with a eight digit hex offset (leading "0x" required) followed by -# the pipe "|" character, followed by the size of the region, also in hex with the leading -# "0x" characters. Like: -# Offset|Size -# PcdOffsetCName|PcdSizeCName -# RegionType -# -################################################################################ - -# from ArmVirtPkg/ArmVirtQemuKernel.fdf -# -# Implement the Linux kernel header layout so that the loader will identify -# it as something bootable, and execute it with a FDT pointer in x0 or r2. -# -0x00000000|0x00008000 -DATA = { - 0x01, 0x00, 0x00, 0x10, # code0: adr x1, . - 0xff, 0x1f, 0x00, 0x14, # code1: b 0x8000 - 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB - 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res2 - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res3 - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res4 - 0x41, 0x52, 0x4d, 0x64, # magic: "ARM\x64" - 0x00, 0x00, 0x00, 0x00 # res5 -} - -0x00008000|0x001f8000 -gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize -FV = FVMAIN_COMPACT - - -################################################################################ -# -# FV Section -# -# [FV] section is used to define what components or modules are placed within a flash -# device file. This section also defines order the components and modules are positioned -# within the image. The [FV] section consists of define statements, set statements and -# module statements. -# -################################################################################ - -[FV.FvMain] -BlockSize = 0x40 -NumBlocks = 0 # This FV gets compressed so make it just big enough -FvAlignment = 8 # FV alignment and FV attributes setting. -ERASE_POLARITY = 1 -MEMORY_MAPPED = TRUE -STICKY_WRITE = TRUE -LOCK_CAP = TRUE -LOCK_STATUS = TRUE -WRITE_DISABLED_CAP = TRUE -WRITE_ENABLED_CAP = TRUE -WRITE_STATUS = TRUE -WRITE_LOCK_CAP = TRUE -WRITE_LOCK_STATUS = TRUE -READ_DISABLED_CAP = TRUE -READ_ENABLED_CAP = TRUE -READ_STATUS = TRUE -READ_LOCK_CAP = TRUE -READ_LOCK_STATUS = TRUE - - APRIORI DXE { - INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf - } - - INF MdeModulePkg/Core/Dxe/DxeMain.inf - - # - # PI DXE Drivers producing Architectural Protocols (EFI Services) - # - INF ArmPkg/Drivers/CpuDxe/CpuDxe.inf - INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf - INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf - INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf - INF EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf - INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf - INF EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf - INF EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf - - FILE DRIVER = af9763a2-033b-4109-8e17-56a98d380c92 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/HWIODxeDriver/HWIODxeDriver.depex - SECTION PE32 = sdm845Pkg/Binary/fajita/HWIODxeDriver/HWIODxeDriver.efi - SECTION UI = "HWIODxeDriver" - } - - FILE DRIVER = 5776232e-082d-4b75-9a0e-fe1d13f7a5d9 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/PmicDxe/PmicDxe.depex - SECTION PE32 = sdm845Pkg/Binary/fajita/PmicDxe/PmicDxe.efi - SECTION UI = "PmicDxe" - } - - FILE DRIVER = 5bd181db-0487-4f1a-ae73-820e165611b3 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/ButtonsDxe/ButtonsDxe.depex - SECTION PE32 = sdm845Pkg/Binary/fajita/ButtonsDxe/ButtonsDxe.efi - SECTION UI = "ButtonsDxe" - } - - # - # Multiple Console IO support - # - INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf - INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf - INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf - INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf - INF MdeModulePkg/Universal/SerialDxe/SerialDxe.inf - - INF ArmPkg/Drivers/ArmGic/ArmGicDxe.inf - INF ArmPkg/Drivers/TimerDxe/TimerDxe.inf - - INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf - - INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf - - FILE DRIVER = 3299a266-15f0-4346-8318-716336736d3e { - SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/UsbDeviceDxe/UsbDeviceDxe.depex - SECTION PE32 = sdm845Pkg/Binary/fajita/UsbDeviceDxe/UsbDeviceDxe.efi - SECTION UI = "UsbDeviceDxe" - } - - FILE DRIVER = 11faed4c-b21f-4d88-8e48-c4c28a1e50df { - SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/UsbPwrCtrlDxe/UsbPwrCtrlDxe.depex - SECTION PE32 = sdm845Pkg/Binary/fajita/UsbPwrCtrlDxe/UsbPwrCtrlDxe.efi - SECTION UI = "UsbPwrCtrlDxe" - } - - FILE DRIVER = 5af77f10-90df-4e7e-8325-a17ec09d5443 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/UsbMsdDxe/UsbMsdDxe.depex - SECTION PE32 = sdm845Pkg/Binary/fajita/UsbMsdDxe/UsbMsdDxe.efi - SECTION UI = "UsbMsdDxe" - } - - FILE DRIVER = 94f8a6a7-dc34-4101-88c1-99179cceae83 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/UsbfnDwc3Dxe/UsbfnDwc3Dxe.depex - SECTION PE32 = sdm845Pkg/Binary/fajita/UsbfnDwc3Dxe/UsbfnDwc3Dxe.efi - SECTION UI = "UsbfnDwc3Dxe" - } - - FILE DRIVER = cd823a4d-7dec-4531-ae5d-4134fa4127b8 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/UsbConfigDxe/UsbConfigDxe.depex - SECTION PE32 = sdm845Pkg/Binary/fajita/UsbConfigDxe/UsbConfigDxe.efi - SECTION UI = "UsbDeviceDxe" - } - - # - # GPIO - # - - # - # Virtual Keyboard - # - INF EmbeddedPkg/Drivers/VirtualKeyboardDxe/VirtualKeyboardDxe.inf - - INF sdm845Pkg/sdm845Dxe/sdm845Dxe.inf - INF sdm845Pkg/SimpleFbDxe/SimpleFbDxe.inf - - FILE DRIVER = 0d35cd8e-97ea-4f9a-96af-0f0d89f76567 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/UFSDxe/UFSDxe.depex - SECTION PE32 = sdm845Pkg/Binary/fajita/UFSDxe/UFSDxe.efi - SECTION UI = "UFSDxe" - } - FILE DRIVER = 2a7b4bef-80cd-49e1-b473-374ba4d673fc { - SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/SPMI/SPMI.depex - SECTION PE32 = sdm845Pkg/Binary/fajita/SPMI/SPMI.efi - SECTION UI = "SPMI" - } - - FILE DRIVER = f541d663-4a48-40aa-aabf-ff158ccae34c { - SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/SmemDxe/SmemDxe.depex - SECTION PE32 = sdm845Pkg/Binary/fajita/SmemDxe/SmemDxe.efi - SECTION UI = "SmemDxe" - } - - FILE DRIVER = 10e193df-9966-44e7-b17c-59dd831e20fc { - SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/ChipInfo/ChipInfo.depex - SECTION PE32 = sdm845Pkg/Binary/fajita/ChipInfo/ChipInfo.efi - SECTION UI = "ChipInfo" - } - - #FILE DRIVER = 7a32bd23-f735-4f57-aa1a-447d2fe3be0d { - # SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/SPI/SPI.depex - # SECTION PE32 = sdm845Pkg/Binary/fajita/SPI/SPI.efi - # SECTION UI = "SPI" - #} - - - # - # USB Host Support - # - INF MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf - - # - # USB Mass Storage Support - # - INF MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf - - # - # USB Peripheral Support - # - INF EmbeddedPkg/Drivers/AndroidFastbootTransportUsbDxe/FastbootTransportUsbDxe.inf - - # - # Fastboot - # - INF EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.inf - - # - # FAT filesystem + GPT/MBR partitioning - # - INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf - INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf - INF FatPkg/EnhancedFatDxe/Fat.inf - INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf - - INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf - - INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf - - # - # ACPI Support - # - INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf - INF MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf - INF MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf - # INF RuleOverride = ACPITABLE sdm845Pkg/AcpiTables/AcpiTables.inf - - FILE FREEFORM = 7E374E25-8E01-4FEE-87F2-390C23C606CD { - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/DBG2.aml - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/DSDT.aml - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/FACP.aml - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/GTDT.aml - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/APIC.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/DBG2.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/DSDT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/CSRT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/FADT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/FACS.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/GTDT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/IORT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/MCFG.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/MADT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/PPTT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/TPM2.aml - SECTION UI = "AcpiTables" - } - - # - # SMBIOS Support - # - INF sdm845Pkg/Drivers/SmbiosPlatformDxe/SmbiosPlatformDxe.inf - INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf - - # - # UEFI applications - # - INF ShellPkg/Application/Shell/Shell.inf -!ifdef $(INCLUDE_TFTP_COMMAND) - INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf -!endif #$(INCLUDE_TFTP_COMMAND) - - # - # Bds - # - INF MdeModulePkg/Universal/PrintDxe/PrintDxe.inf - INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf - INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf - INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf - INF MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf - INF MdeModulePkg/Universal/BdsDxe/BdsDxe.inf - INF MdeModulePkg/Application/UiApp/UiApp.inf - INF sdm845Pkg/Drivers/LogoDxe/LogoDxe.inf - -[FV.FVMAIN_COMPACT] -FvAlignment = 8 -ERASE_POLARITY = 1 -MEMORY_MAPPED = TRUE -STICKY_WRITE = TRUE -LOCK_CAP = TRUE -LOCK_STATUS = TRUE -WRITE_DISABLED_CAP = TRUE -WRITE_ENABLED_CAP = TRUE -WRITE_STATUS = TRUE -WRITE_LOCK_CAP = TRUE -WRITE_LOCK_STATUS = TRUE -READ_DISABLED_CAP = TRUE -READ_ENABLED_CAP = TRUE -READ_STATUS = TRUE -READ_LOCK_CAP = TRUE -READ_LOCK_STATUS = TRUE - - INF ArmPlatformPkg/PrePi/PeiUniCore.inf - - FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 { - SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE { - SECTION FV_IMAGE = FVMAIN - } - } - -!include sdm845Pkg/CommonFdf.fdf.inc +# +# Copyright (c) 2018, Linaro Limited. All rights reserved. +# +# This program and the accompanying materials +# are licensed and made available under the terms and conditions of the BSD License +# which accompanies this distribution. The full text of the license may be found at +# http://opensource.org/licenses/bsd-license.php +# +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +# + +################################################################################ +# +# FD Section +# The [FD] Section is made up of the definition statements and a +# description of what goes into the Flash Device Image. Each FD section +# defines one flash "device" image. A flash device image may be one of +# the following: Removable media bootable image (like a boot floppy +# image,) an Option ROM image (that would be "flashed" into an add-in +# card,) a System "Flash" image (that would be burned into a system's +# flash) or an Update ("Capsule") image that will be used to update and +# existing system flash. +# +################################################################################ + +[FD.sdm845Pkg_UEFI] +BaseAddress = 0xd0000000|gArmTokenSpaceGuid.PcdFdBaseAddress # The base address of the Firmware in NOR Flash. +Size = 0x00200000|gArmTokenSpaceGuid.PcdFdSize # The size in bytes of the FLASH Device +ErasePolarity = 1 + +# This one is tricky, it must be: BlockSize * NumBlocks = Size +BlockSize = 0x00001000 +NumBlocks = 0x200 + +################################################################################ +# +# Following are lists of FD Region layout which correspond to the locations of different +# images within the flash device. +# +# Regions must be defined in ascending order and may not overlap. +# +# A Layout Region start with a eight digit hex offset (leading "0x" required) followed by +# the pipe "|" character, followed by the size of the region, also in hex with the leading +# "0x" characters. Like: +# Offset|Size +# PcdOffsetCName|PcdSizeCName +# RegionType +# +################################################################################ + +# from ArmVirtPkg/ArmVirtQemuKernel.fdf +# +# Implement the Linux kernel header layout so that the loader will identify +# it as something bootable, and execute it with a FDT pointer in x0 or r2. +# +0x00000000|0x00008000 +DATA = { + 0x01, 0x00, 0x00, 0x10, # code0: adr x1, . + 0xff, 0x1f, 0x00, 0x14, # code1: b 0x8000 + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB + 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res2 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res3 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res4 + 0x41, 0x52, 0x4d, 0x64, # magic: "ARM\x64" + 0x00, 0x00, 0x00, 0x00 # res5 +} + +0x00008000|0x001f8000 +gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize +FV = FVMAIN_COMPACT + + +################################################################################ +# +# FV Section +# +# [FV] section is used to define what components or modules are placed within a flash +# device file. This section also defines order the components and modules are positioned +# within the image. The [FV] section consists of define statements, set statements and +# module statements. +# +################################################################################ + +[FV.FvMain] +BlockSize = 0x40 +NumBlocks = 0 # This FV gets compressed so make it just big enough +FvAlignment = 8 # FV alignment and FV attributes setting. +ERASE_POLARITY = 1 +MEMORY_MAPPED = TRUE +STICKY_WRITE = TRUE +LOCK_CAP = TRUE +LOCK_STATUS = TRUE +WRITE_DISABLED_CAP = TRUE +WRITE_ENABLED_CAP = TRUE +WRITE_STATUS = TRUE +WRITE_LOCK_CAP = TRUE +WRITE_LOCK_STATUS = TRUE +READ_DISABLED_CAP = TRUE +READ_ENABLED_CAP = TRUE +READ_STATUS = TRUE +READ_LOCK_CAP = TRUE +READ_LOCK_STATUS = TRUE + + APRIORI DXE { + INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf + } + + INF MdeModulePkg/Core/Dxe/DxeMain.inf + + # + # PI DXE Drivers producing Architectural Protocols (EFI Services) + # + INF ArmPkg/Drivers/CpuDxe/CpuDxe.inf + INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf + INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf + INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf + INF EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf + INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf + INF EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf + INF EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf + + FILE DRIVER = af9763a2-033b-4109-8e17-56a98d380c92 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/HWIODxeDriver/HWIODxeDriver.depex + SECTION PE32 = sdm845Pkg/Binary/fajita/HWIODxeDriver/HWIODxeDriver.efi + SECTION UI = "HWIODxeDriver" + } + + FILE DRIVER = 5776232e-082d-4b75-9a0e-fe1d13f7a5d9 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/PmicDxe/PmicDxe.depex + SECTION PE32 = sdm845Pkg/Binary/fajita/PmicDxe/PmicDxe.efi + SECTION UI = "PmicDxe" + } + + FILE DRIVER = 5bd181db-0487-4f1a-ae73-820e165611b3 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/ButtonsDxe/ButtonsDxe.depex + SECTION PE32 = sdm845Pkg/Binary/fajita/ButtonsDxe/ButtonsDxe.efi + SECTION UI = "ButtonsDxe" + } + + # + # Multiple Console IO support + # + INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf + INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf + INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf + INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf + INF MdeModulePkg/Universal/SerialDxe/SerialDxe.inf + + INF ArmPkg/Drivers/ArmGic/ArmGicDxe.inf + INF ArmPkg/Drivers/TimerDxe/TimerDxe.inf + + INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf + + INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf + + FILE DRIVER = 3299a266-15f0-4346-8318-716336736d3e { + SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/UsbDeviceDxe/UsbDeviceDxe.depex + SECTION PE32 = sdm845Pkg/Binary/fajita/UsbDeviceDxe/UsbDeviceDxe.efi + SECTION UI = "UsbDeviceDxe" + } + + FILE DRIVER = 11faed4c-b21f-4d88-8e48-c4c28a1e50df { + SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/UsbPwrCtrlDxe/UsbPwrCtrlDxe.depex + SECTION PE32 = sdm845Pkg/Binary/fajita/UsbPwrCtrlDxe/UsbPwrCtrlDxe.efi + SECTION UI = "UsbPwrCtrlDxe" + } + + FILE DRIVER = 5af77f10-90df-4e7e-8325-a17ec09d5443 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/UsbMsdDxe/UsbMsdDxe.depex + SECTION PE32 = sdm845Pkg/Binary/fajita/UsbMsdDxe/UsbMsdDxe.efi + SECTION UI = "UsbMsdDxe" + } + + FILE DRIVER = 94f8a6a7-dc34-4101-88c1-99179cceae83 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/UsbfnDwc3Dxe/UsbfnDwc3Dxe.depex + SECTION PE32 = sdm845Pkg/Binary/fajita/UsbfnDwc3Dxe/UsbfnDwc3Dxe.efi + SECTION UI = "UsbfnDwc3Dxe" + } + + FILE DRIVER = cd823a4d-7dec-4531-ae5d-4134fa4127b8 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/UsbConfigDxe/UsbConfigDxe.depex + SECTION PE32 = sdm845Pkg/Binary/fajita/UsbConfigDxe/UsbConfigDxe.efi + SECTION UI = "UsbDeviceDxe" + } + + # + # GPIO + # + + # + # Virtual Keyboard + # + INF EmbeddedPkg/Drivers/VirtualKeyboardDxe/VirtualKeyboardDxe.inf + + INF sdm845Pkg/Drivers/sdm845Dxe/sdm845Dxe.inf + INF sdm845Pkg/Drivers/SimpleFbDxe/SimpleFbDxe.inf + + FILE DRIVER = 0d35cd8e-97ea-4f9a-96af-0f0d89f76567 { + SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/UFSDxe/UFSDxe.depex + SECTION PE32 = sdm845Pkg/Binary/fajita/UFSDxe/UFSDxe.efi + SECTION UI = "UFSDxe" + } + FILE DRIVER = 2a7b4bef-80cd-49e1-b473-374ba4d673fc { + SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/SPMI/SPMI.depex + SECTION PE32 = sdm845Pkg/Binary/fajita/SPMI/SPMI.efi + SECTION UI = "SPMI" + } + + FILE DRIVER = f541d663-4a48-40aa-aabf-ff158ccae34c { + SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/SmemDxe/SmemDxe.depex + SECTION PE32 = sdm845Pkg/Binary/fajita/SmemDxe/SmemDxe.efi + SECTION UI = "SmemDxe" + } + + FILE DRIVER = 10e193df-9966-44e7-b17c-59dd831e20fc { + SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/ChipInfo/ChipInfo.depex + SECTION PE32 = sdm845Pkg/Binary/fajita/ChipInfo/ChipInfo.efi + SECTION UI = "ChipInfo" + } + + #FILE DRIVER = 7a32bd23-f735-4f57-aa1a-447d2fe3be0d { + # SECTION DXE_DEPEX = sdm845Pkg/Binary/fajita/SPI/SPI.depex + # SECTION PE32 = sdm845Pkg/Binary/fajita/SPI/SPI.efi + # SECTION UI = "SPI" + #} + + + # + # USB Host Support + # + INF MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf + + # + # USB Mass Storage Support + # + INF MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf + + # + # USB Peripheral Support + # + INF EmbeddedPkg/Drivers/AndroidFastbootTransportUsbDxe/FastbootTransportUsbDxe.inf + + # + # Fastboot + # + INF EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.inf + + # + # FAT filesystem + GPT/MBR partitioning + # + INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf + INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf + INF FatPkg/EnhancedFatDxe/Fat.inf + INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf + + INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf + + INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf + + # + # ACPI Support + # + INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf + INF MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf + INF MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf + # INF RuleOverride = ACPITABLE sdm845Pkg/AcpiTables/AcpiTables.inf + + FILE FREEFORM = 7E374E25-8E01-4FEE-87F2-390C23C606CD { + # SECTION RAW = sdm845Pkg/AcpiTables/minimal/DBG2.aml + # SECTION RAW = sdm845Pkg/AcpiTables/minimal/DSDT.aml + # SECTION RAW = sdm845Pkg/AcpiTables/minimal/FACP.aml + # SECTION RAW = sdm845Pkg/AcpiTables/minimal/GTDT.aml + # SECTION RAW = sdm845Pkg/AcpiTables/minimal/APIC.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/DBG2.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/DSDT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/CSRT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/FADT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/FACS.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/GTDT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/IORT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/MCFG.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/MADT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/PPTT.aml + SECTION RAW = sdm845Pkg/AcpiTables/testing/TPM2.aml + SECTION UI = "AcpiTables" + } + + # + # SMBIOS Support + # + INF sdm845Pkg/Drivers/SmbiosPlatformDxe/SmbiosPlatformDxe.inf + INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf + + # + # UEFI applications + # + INF ShellPkg/Application/Shell/Shell.inf +!ifdef $(INCLUDE_TFTP_COMMAND) + INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf +!endif #$(INCLUDE_TFTP_COMMAND) + + # + # Bds + # + INF MdeModulePkg/Universal/PrintDxe/PrintDxe.inf + INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf + INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf + INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf + INF MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf + INF MdeModulePkg/Universal/BdsDxe/BdsDxe.inf + INF MdeModulePkg/Application/UiApp/UiApp.inf + INF sdm845Pkg/Drivers/LogoDxe/LogoDxe.inf + +[FV.FVMAIN_COMPACT] +FvAlignment = 8 +ERASE_POLARITY = 1 +MEMORY_MAPPED = TRUE +STICKY_WRITE = TRUE +LOCK_CAP = TRUE +LOCK_STATUS = TRUE +WRITE_DISABLED_CAP = TRUE +WRITE_ENABLED_CAP = TRUE +WRITE_STATUS = TRUE +WRITE_LOCK_CAP = TRUE +WRITE_LOCK_STATUS = TRUE +READ_DISABLED_CAP = TRUE +READ_ENABLED_CAP = TRUE +READ_STATUS = TRUE +READ_LOCK_CAP = TRUE +READ_LOCK_STATUS = TRUE + + INF ArmPlatformPkg/PrePi/PeiUniCore.inf + + FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 { + SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE { + SECTION FV_IMAGE = FVMAIN + } + } + +!include sdm845Pkg/CommonFdf.fdf.inc diff --git a/sdm845Pkg/Devices/generic.dsc b/sdm845Pkg/Devices/generic.dsc new file mode 100644 index 0000000..986fa1a --- /dev/null +++ b/sdm845Pkg/Devices/generic.dsc @@ -0,0 +1,19 @@ +[Defines] + PLATFORM_NAME = sdm845Pkg + PLATFORM_GUID = 28f1a3bf-193a-47e3-a7b9-5a435eaab2ee + PLATFORM_VERSION = 0.1 + DSC_SPECIFICATION = 0x00010019 + OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME) + SUPPORTED_ARCHITECTURES = AARCH64 + BUILD_TARGETS = DEBUG|RELEASE + SKUID_IDENTIFIER = DEFAULT + FLASH_DEFINITION = sdm845Pkg/Devices/845.fdf + +!include sdm845Pkg/sdm845Pkg.dsc + +[PcdsFixedAtBuild.common] + # System Memory (5GB) + gArmTokenSpaceGuid.PcdSystemMemorySize|0x140000000 + + gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferWidth|1080 + gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferHeight|1920 diff --git a/sdm845Pkg/perseus.dsc b/sdm845Pkg/Devices/perseus.dsc similarity index 91% rename from sdm845Pkg/perseus.dsc rename to sdm845Pkg/Devices/perseus.dsc index add24f8..633545d 100644 --- a/sdm845Pkg/perseus.dsc +++ b/sdm845Pkg/Devices/perseus.dsc @@ -7,7 +7,7 @@ SUPPORTED_ARCHITECTURES = AARCH64 BUILD_TARGETS = DEBUG|RELEASE SKUID_IDENTIFIER = DEFAULT - FLASH_DEFINITION = sdm845Pkg/perseus.fdf + FLASH_DEFINITION = sdm845Pkg/Devices/845.fdf !include sdm845Pkg/sdm845Pkg.dsc diff --git a/sdm845Pkg/perseus.fdf b/sdm845Pkg/Devices/perseus.fdf similarity index 99% rename from sdm845Pkg/perseus.fdf rename to sdm845Pkg/Devices/perseus.fdf index e8b5d6c..8afc5b1 100644 --- a/sdm845Pkg/perseus.fdf +++ b/sdm845Pkg/Devices/perseus.fdf @@ -201,8 +201,8 @@ READ_LOCK_STATUS = TRUE # INF EmbeddedPkg/Drivers/VirtualKeyboardDxe/VirtualKeyboardDxe.inf - INF sdm845Pkg/sdm845Dxe/sdm845Dxe.inf - INF sdm845Pkg/SimpleFbDxe/SimpleFbDxe.inf + INF sdm845Pkg/Drivers/sdm845Dxe/sdm845Dxe.inf + INF sdm845Pkg/Drivers/SimpleFbDxe/SimpleFbDxe.inf FILE DRIVER = 0d35cd8e-97ea-4f9a-96af-0f0d89f76567 { SECTION DXE_DEPEX = sdm845Pkg/Binary/perseus/UFSDxe/UFSDxe.depex diff --git a/sdm845Pkg/polaris.dsc b/sdm845Pkg/Devices/polaris.dsc similarity index 89% rename from sdm845Pkg/polaris.dsc rename to sdm845Pkg/Devices/polaris.dsc index e07f4a0..18ba6b2 100644 --- a/sdm845Pkg/polaris.dsc +++ b/sdm845Pkg/Devices/polaris.dsc @@ -1,19 +1,19 @@ -[Defines] - PLATFORM_NAME = sdm845Pkg - PLATFORM_GUID = 28f1a3bf-193a-47e3-a7b9-5a435eaab2ee - PLATFORM_VERSION = 0.1 - DSC_SPECIFICATION = 0x00010019 - OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME) - SUPPORTED_ARCHITECTURES = AARCH64 - BUILD_TARGETS = DEBUG|RELEASE - SKUID_IDENTIFIER = DEFAULT - FLASH_DEFINITION = sdm845Pkg/polaris.fdf - -!include sdm845Pkg/sdm845Pkg.dsc - -[PcdsFixedAtBuild.common] - # System Memory (5GB) - gArmTokenSpaceGuid.PcdSystemMemorySize|0x140000000 - - gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferWidth|1080 - gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferHeight|2160 +[Defines] + PLATFORM_NAME = sdm845Pkg + PLATFORM_GUID = 28f1a3bf-193a-47e3-a7b9-5a435eaab2ee + PLATFORM_VERSION = 0.1 + DSC_SPECIFICATION = 0x00010019 + OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME) + SUPPORTED_ARCHITECTURES = AARCH64 + BUILD_TARGETS = DEBUG|RELEASE + SKUID_IDENTIFIER = DEFAULT + FLASH_DEFINITION = sdm845Pkg/Devices/845.fdf + +!include sdm845Pkg/sdm845Pkg.dsc + +[PcdsFixedAtBuild.common] + # System Memory (5GB) + gArmTokenSpaceGuid.PcdSystemMemorySize|0x140000000 + + gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferWidth|1080 + gsdm845PkgTokenSpaceGuid.PcdMipiFrameBufferHeight|2160 diff --git a/sdm845Pkg/polaris.fdf b/sdm845Pkg/Devices/polaris.fdf similarity index 99% rename from sdm845Pkg/polaris.fdf rename to sdm845Pkg/Devices/polaris.fdf index 1766a0b..e6b9318 100644 --- a/sdm845Pkg/polaris.fdf +++ b/sdm845Pkg/Devices/polaris.fdf @@ -144,8 +144,8 @@ READ_LOCK_STATUS = TRUE # INF EmbeddedPkg/Drivers/VirtualKeyboardDxe/VirtualKeyboardDxe.inf - INF sdm845Pkg/sdm845Dxe/sdm845Dxe.inf - INF sdm845Pkg/SimpleFbDxe/SimpleFbDxe.inf + INF sdm845Pkg/Drivers/sdm845Dxe/sdm845Dxe.inf + INF sdm845Pkg/Drivers/SimpleFbDxe/SimpleFbDxe.inf FILE DRIVER = 0d35cd8e-97ea-4f9a-96af-0f0d89f76567 { SECTION DXE_DEPEX = sdm845Pkg/Binary/polaris/UFSDxe/UFSDxe.depex diff --git a/sdm845Pkg/SimpleFbDxe/SimpleFbDxe.c b/sdm845Pkg/Drivers/SimpleFbDxe/SimpleFbDxe.c similarity index 100% rename from sdm845Pkg/SimpleFbDxe/SimpleFbDxe.c rename to sdm845Pkg/Drivers/SimpleFbDxe/SimpleFbDxe.c diff --git a/sdm845Pkg/SimpleFbDxe/SimpleFbDxe.inf b/sdm845Pkg/Drivers/SimpleFbDxe/SimpleFbDxe.inf similarity index 100% rename from sdm845Pkg/SimpleFbDxe/SimpleFbDxe.inf rename to sdm845Pkg/Drivers/SimpleFbDxe/SimpleFbDxe.inf diff --git a/sdm845Pkg/sdm845Dxe/sdm845Dxe.c b/sdm845Pkg/Drivers/sdm845Dxe/sdm845Dxe.c similarity index 100% rename from sdm845Pkg/sdm845Dxe/sdm845Dxe.c rename to sdm845Pkg/Drivers/sdm845Dxe/sdm845Dxe.c diff --git a/sdm845Pkg/sdm845Dxe/sdm845Dxe.h b/sdm845Pkg/Drivers/sdm845Dxe/sdm845Dxe.h similarity index 100% rename from sdm845Pkg/sdm845Dxe/sdm845Dxe.h rename to sdm845Pkg/Drivers/sdm845Dxe/sdm845Dxe.h diff --git a/sdm845Pkg/sdm845Dxe/sdm845Dxe.inf b/sdm845Pkg/Drivers/sdm845Dxe/sdm845Dxe.inf similarity index 100% rename from sdm845Pkg/sdm845Dxe/sdm845Dxe.inf rename to sdm845Pkg/Drivers/sdm845Dxe/sdm845Dxe.inf diff --git a/sdm845Pkg/beryllium.fdf b/sdm845Pkg/beryllium.fdf deleted file mode 100644 index 83cada0..0000000 --- a/sdm845Pkg/beryllium.fdf +++ /dev/null @@ -1,337 +0,0 @@ -# -# Copyright (c) 2018, Linaro Limited. All rights reserved. -# -# This program and the accompanying materials -# are licensed and made available under the terms and conditions of the BSD License -# which accompanies this distribution. The full text of the license may be found at -# http://opensource.org/licenses/bsd-license.php -# -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -# - -################################################################################ -# -# FD Section -# The [FD] Section is made up of the definition statements and a -# description of what goes into the Flash Device Image. Each FD section -# defines one flash "device" image. A flash device image may be one of -# the following: Removable media bootable image (like a boot floppy -# image,) an Option ROM image (that would be "flashed" into an add-in -# card,) a System "Flash" image (that would be burned into a system's -# flash) or an Update ("Capsule") image that will be used to update and -# existing system flash. -# -################################################################################ - -[FD.sdm845Pkg_UEFI] -BaseAddress = 0xd0000000|gArmTokenSpaceGuid.PcdFdBaseAddress # The base address of the Firmware in NOR Flash. -Size = 0x00200000|gArmTokenSpaceGuid.PcdFdSize # The size in bytes of the FLASH Device -ErasePolarity = 1 - -# This one is tricky, it must be: BlockSize * NumBlocks = Size -BlockSize = 0x00001000 -NumBlocks = 0x200 - -################################################################################ -# -# Following are lists of FD Region layout which correspond to the locations of different -# images within the flash device. -# -# Regions must be defined in ascending order and may not overlap. -# -# A Layout Region start with a eight digit hex offset (leading "0x" required) followed by -# the pipe "|" character, followed by the size of the region, also in hex with the leading -# "0x" characters. Like: -# Offset|Size -# PcdOffsetCName|PcdSizeCName -# RegionType -# -################################################################################ - -# from ArmVirtPkg/ArmVirtQemuKernel.fdf -# -# Implement the Linux kernel header layout so that the loader will identify -# it as something bootable, and execute it with a FDT pointer in x0 or r2. -# -0x00000000|0x00008000 -DATA = { - 0x01, 0x00, 0x00, 0x10, # code0: adr x1, . - 0xff, 0x1f, 0x00, 0x14, # code1: b 0x8000 - 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB - 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res2 - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res3 - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res4 - 0x41, 0x52, 0x4d, 0x64, # magic: "ARM\x64" - 0x00, 0x00, 0x00, 0x00 # res5 -} - -0x00008000|0x001f8000 -gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize -FV = FVMAIN_COMPACT - - -################################################################################ -# -# FV Section -# -# [FV] section is used to define what components or modules are placed within a flash -# device file. This section also defines order the components and modules are positioned -# within the image. The [FV] section consists of define statements, set statements and -# module statements. -# -################################################################################ - -[FV.FvMain] -BlockSize = 0x40 -NumBlocks = 0 # This FV gets compressed so make it just big enough -FvAlignment = 8 # FV alignment and FV attributes setting. -ERASE_POLARITY = 1 -MEMORY_MAPPED = TRUE -STICKY_WRITE = TRUE -LOCK_CAP = TRUE -LOCK_STATUS = TRUE -WRITE_DISABLED_CAP = TRUE -WRITE_ENABLED_CAP = TRUE -WRITE_STATUS = TRUE -WRITE_LOCK_CAP = TRUE -WRITE_LOCK_STATUS = TRUE -READ_DISABLED_CAP = TRUE -READ_ENABLED_CAP = TRUE -READ_STATUS = TRUE -READ_LOCK_CAP = TRUE -READ_LOCK_STATUS = TRUE - - APRIORI DXE { - INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf - } - - INF MdeModulePkg/Core/Dxe/DxeMain.inf - - # - # PI DXE Drivers producing Architectural Protocols (EFI Services) - # - INF ArmPkg/Drivers/CpuDxe/CpuDxe.inf - INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf - INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf - INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf - INF EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf - INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf - INF EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf - INF EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf - - FILE DRIVER = af9763a2-033b-4109-8e17-56a98d380c92 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/beryllium/HWIODxeDriver/HWIODxeDriver.depex - SECTION PE32 = sdm845Pkg/Binary/beryllium/HWIODxeDriver/HWIODxeDriver.efi - SECTION UI = "HWIODxeDriver" - } - - FILE DRIVER = 5776232e-082d-4b75-9a0e-fe1d13f7a5d9 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/beryllium/PmicDxe/PmicDxe.depex - SECTION PE32 = sdm845Pkg/Binary/beryllium/PmicDxe/PmicDxe.efi - SECTION UI = "PmicDxe" - } - - FILE DRIVER = 5bd181db-0487-4f1a-ae73-820e165611b3 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/beryllium/ButtonsDxe/ButtonsDxe.depex - SECTION PE32 = sdm845Pkg/Binary/beryllium/ButtonsDxe/ButtonsDxe.efi - SECTION UI = "ButtonsDxe" - } - - # - # Multiple Console IO support - # - INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf - INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf - INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf - INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf - INF MdeModulePkg/Universal/SerialDxe/SerialDxe.inf - - INF ArmPkg/Drivers/ArmGic/ArmGicDxe.inf - INF ArmPkg/Drivers/TimerDxe/TimerDxe.inf - - INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf - - INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf - - FILE DRIVER = 3299a266-15f0-4346-8318-716336736d3e { - SECTION DXE_DEPEX = sdm845Pkg/Binary/beryllium/UsbDeviceDxe/UsbDeviceDxe.depex - SECTION PE32 = sdm845Pkg/Binary/beryllium/UsbDeviceDxe/UsbDeviceDxe.efi - SECTION UI = "UsbDeviceDxe" - } - - FILE DRIVER = 11faed4c-b21f-4d88-8e48-c4c28a1e50df { - SECTION DXE_DEPEX = sdm845Pkg/Binary/beryllium/UsbPwrCtrlDxe/UsbPwrCtrlDxe.depex - SECTION PE32 = sdm845Pkg/Binary/beryllium/UsbPwrCtrlDxe/UsbPwrCtrlDxe.efi - SECTION UI = "UsbPwrCtrlDxe" - } - - FILE DRIVER = 5af77f10-90df-4e7e-8325-a17ec09d5443 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/beryllium/UsbMsdDxe/UsbMsdDxe.depex - SECTION PE32 = sdm845Pkg/Binary/beryllium/UsbMsdDxe/UsbMsdDxe.efi - SECTION UI = "UsbMsdDxe" - } - - FILE DRIVER = 94f8a6a7-dc34-4101-88c1-99179cceae83 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/beryllium/UsbfnDwc3Dxe/UsbfnDwc3Dxe.depex - SECTION PE32 = sdm845Pkg/Binary/beryllium/UsbfnDwc3Dxe/UsbfnDwc3Dxe.efi - SECTION UI = "UsbfnDwc3Dxe" - } - - FILE DRIVER = cd823a4d-7dec-4531-ae5d-4134fa4127b8 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/beryllium/UsbConfigDxe/UsbConfigDxe.depex - SECTION PE32 = sdm845Pkg/Binary/beryllium/UsbConfigDxe/UsbConfigDxe.efi - SECTION UI = "UsbDeviceDxe" - } - - # - # GPIO - # - - # - # Virtual Keyboard - # - INF EmbeddedPkg/Drivers/VirtualKeyboardDxe/VirtualKeyboardDxe.inf - - INF sdm845Pkg/sdm845Dxe/sdm845Dxe.inf - INF sdm845Pkg/SimpleFbDxe/SimpleFbDxe.inf - - FILE DRIVER = 0d35cd8e-97ea-4f9a-96af-0f0d89f76567 { - SECTION DXE_DEPEX = sdm845Pkg/Binary/beryllium/UFSDxe/UFSDxe.depex - SECTION PE32 = sdm845Pkg/Binary/beryllium/UFSDxe/UFSDxe.efi - SECTION UI = "UFSDxe" - } - FILE DRIVER = 2a7b4bef-80cd-49e1-b473-374ba4d673fc { - SECTION DXE_DEPEX = sdm845Pkg/Binary/beryllium/SPMI/SPMI.depex - SECTION PE32 = sdm845Pkg/Binary/beryllium/SPMI/SPMI.efi - SECTION UI = "SPMI" - } - - FILE DRIVER = f541d663-4a48-40aa-aabf-ff158ccae34c { - SECTION DXE_DEPEX = sdm845Pkg/Binary/beryllium/SmemDxe/SmemDxe.depex - SECTION PE32 = sdm845Pkg/Binary/beryllium/SmemDxe/SmemDxe.efi - SECTION UI = "SmemDxe" - } - - FILE DRIVER = 10e193df-9966-44e7-b17c-59dd831e20fc { - SECTION DXE_DEPEX = sdm845Pkg/Binary/beryllium/ChipInfo/ChipInfo.depex - SECTION PE32 = sdm845Pkg/Binary/beryllium/ChipInfo/ChipInfo.efi - SECTION UI = "ChipInfo" - } - - - # - # USB Host Support - # - INF MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf - - # - # USB Mass Storage Support - # - INF MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf - - # - # USB Peripheral Support - # - INF EmbeddedPkg/Drivers/AndroidFastbootTransportUsbDxe/FastbootTransportUsbDxe.inf - - # - # Fastboot - # - INF EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.inf - - # - # FAT filesystem + GPT/MBR partitioning - # - INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf - INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf - INF FatPkg/EnhancedFatDxe/Fat.inf - INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf - - INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf - - INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf - - # - # ACPI Support - # - INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf - INF MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf - INF MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf - # INF RuleOverride = ACPITABLE sdm845Pkg/AcpiTables/AcpiTables.inf - - FILE FREEFORM = 7E374E25-8E01-4FEE-87F2-390C23C606CD { - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/DBG2.aml - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/DSDT.aml - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/FACP.aml - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/GTDT.aml - # SECTION RAW = sdm845Pkg/AcpiTables/minimal/APIC.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/DBG2.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/DSDT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/CSRT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/FADT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/FACS.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/GTDT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/IORT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/MCFG.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/MADT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/PPTT.aml - SECTION RAW = sdm845Pkg/AcpiTables/testing/TPM2.aml - SECTION UI = "AcpiTables" - } - - # - # SMBIOS Support - # - INF sdm845Pkg/Drivers/SmbiosPlatformDxe/SmbiosPlatformDxe.inf - INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf - - # - # UEFI applications - # - INF ShellPkg/Application/Shell/Shell.inf -!ifdef $(INCLUDE_TFTP_COMMAND) - INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf -!endif #$(INCLUDE_TFTP_COMMAND) - - # - # Bds - # - INF MdeModulePkg/Universal/PrintDxe/PrintDxe.inf - INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf - INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf - INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf - INF MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf - INF MdeModulePkg/Universal/BdsDxe/BdsDxe.inf - INF MdeModulePkg/Application/UiApp/UiApp.inf - INF sdm845Pkg/Drivers/LogoDxe/LogoDxe.inf - -[FV.FVMAIN_COMPACT] -FvAlignment = 8 -ERASE_POLARITY = 1 -MEMORY_MAPPED = TRUE -STICKY_WRITE = TRUE -LOCK_CAP = TRUE -LOCK_STATUS = TRUE -WRITE_DISABLED_CAP = TRUE -WRITE_ENABLED_CAP = TRUE -WRITE_STATUS = TRUE -WRITE_LOCK_CAP = TRUE -WRITE_LOCK_STATUS = TRUE -READ_DISABLED_CAP = TRUE -READ_ENABLED_CAP = TRUE -READ_STATUS = TRUE -READ_LOCK_CAP = TRUE -READ_LOCK_STATUS = TRUE - - INF ArmPlatformPkg/PrePi/PeiUniCore.inf - - FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 { - SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE { - SECTION FV_IMAGE = FVMAIN - } - } - -!include sdm845Pkg/CommonFdf.fdf.inc diff --git a/sdm845Pkg/sdm845Pkg.dsc b/sdm845Pkg/sdm845Pkg.dsc index 446ee37..47d3712 100644 --- a/sdm845Pkg/sdm845Pkg.dsc +++ b/sdm845Pkg/sdm845Pkg.dsc @@ -182,6 +182,10 @@ RealTimeClockLib|sdm845Pkg/Library/VirtualRealTimeClockLib/VirtualRealTimeClockLib.inf } + + MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf + MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf + # # GPIO # @@ -191,8 +195,8 @@ # EmbeddedPkg/Drivers/VirtualKeyboardDxe/VirtualKeyboardDxe.inf - sdm845Pkg/sdm845Dxe/sdm845Dxe.inf - sdm845Pkg/SimpleFbDxe/SimpleFbDxe.inf + sdm845Pkg/Drivers/sdm845Dxe/sdm845Dxe.inf + sdm845Pkg/Drivers/SimpleFbDxe/SimpleFbDxe.inf # # USB Host Support -- 2.45.2