commit 1ed321552e4717fd950701d674e2d9ea8b00745a Author: David Wronek Date: Sat Oct 19 09:55:36 2024 +0200 e3q: Initial commit diff --git a/Android.bp b/Android.bp new file mode 100644 index 0000000..3b08534 --- /dev/null +++ b/Android.bp @@ -0,0 +1,8 @@ +// +// Copyright (C) 2024 The LineageOS Project +// +// SPDX-License-Identifier: Apache-2.0 +// + +soong_namespace { +} diff --git a/Android.mk b/Android.mk new file mode 100644 index 0000000..2e67096 --- /dev/null +++ b/Android.mk @@ -0,0 +1,11 @@ +# +# Copyright (C) 2024 The LineageOS Project +# +# SPDX-License-Identifier: Apache-2.0 +# + +LOCAL_PATH := $(call my-dir) + +ifeq ($(TARGET_DEVICE),e3q) +include $(call all-subdir-makefiles,$(LOCAL_PATH)) +endif diff --git a/AndroidProducts.mk b/AndroidProducts.mk new file mode 100644 index 0000000..7b3500e --- /dev/null +++ b/AndroidProducts.mk @@ -0,0 +1,13 @@ +# +# Copyright (C) 2024 The LineageOS Project +# +# SPDX-License-Identifier: Apache-2.0 +# + +PRODUCT_MAKEFILES := \ + $(LOCAL_DIR)/lineage_e3q.mk + +COMMON_LUNCH_CHOICES := \ + lineage_e3q-user \ + lineage_e3q-userdebug \ + lineage_e3q-eng diff --git a/BoardConfig.mk b/BoardConfig.mk new file mode 100644 index 0000000..1c47b8c --- /dev/null +++ b/BoardConfig.mk @@ -0,0 +1,223 @@ +# +# Copyright (C) 2024 The LineageOS Project +# +# SPDX-License-Identifier: Apache-2.0 +# + +BUILD_BROKEN_DUP_RULES := true +BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES := true +BUILD_BROKEN_INCORRECT_PARTITION_IMAGES := true + +DEVICE_PATH := device/samsung/e3q + +# Architecture +TARGET_ARCH := arm64 +TARGET_ARCH_VARIANT := armv8-a +TARGET_CPU_ABI := arm64-v8a +TARGET_CPU_ABI2 := +TARGET_CPU_VARIANT := generic +TARGET_CPU_VARIANT_RUNTIME := kryo300 + +# Board +TARGET_BOARD_INFO_FILE := $(DEVICE_PATH)/board-info.txt + +# Bootloader +TARGET_BOOTLOADER_BOARD_NAME := pineapple +TARGET_NO_BOOTLOADER := true + +# Display +TARGET_SCREEN_DENSITY := 450 +TARGET_USES_VULKAN := true + +# DTB / DTBO +BOARD_INCLUDE_DTB_IN_BOOTIMG := true +BOARD_USES_QCOM_MERGE_DTBS_SCRIPT := true +TARGET_NEEDS_DTBOIMAGE := true + +# Init Boot +BOARD_INIT_BOOT_HEADER_VERSION := 4 +BOARD_MKBOOTIMG_INIT_ARGS += --header_version $(BOARD_INIT_BOOT_HEADER_VERSION) + +# Kernel +BOARD_KERNEL_CMDLINE := \ + androidboot.hardware=qcom \ + androidboot.memcg=1 \ + androidboot.usbcontroller=a600000.dwc3 \ + androidboot.load_modules_parallel=false \ + androidboot.hypervisor.protected_vm.supported=true \ + androidboot.selinux=permissive \ + aosp_is_booting \ + firmware_class.path=/vendor/firmware_mnt/image \ + loop.max_part=7 \ + printk.devkmsg=on \ + video=vfb:640x400,bpp=32,memsize=3072000 \ + audit=0 + +BOARD_BOOTCONFIG := \ + androidboot.hardware=qcom \ + androidboot.memcg=1 \ + androidboot.usbcontroller=a600000.dwc3 \ + androidboot.load_modules_parallel=false \ + androidboot.hypervisor.protected_vm.supported=true \ + androidboot.selinux=permissive + +BOARD_KERNEL_IMAGE_NAME := Image +BOARD_KERNEL_BASE := 0x00000000 +BOARD_KERNEL_PAGESIZE := 4096 +BOARD_USES_GENERIC_KERNEL_IMAGE := true +TARGET_KERNEL_SOURCE := kernel/samsung/sm8650 +TARGET_KERNEL_CONFIG := \ + gki_defconfig \ + vendor/pineapple_GKI.config \ + oem/e3q-lego.config + +# Kernel modules +BOARD_SYSTEM_KERNEL_MODULES_LOAD := $(strip $(shell cat $(DEVICE_PATH)/modules/modules.load.system_dlkm)) +BOARD_VENDOR_KERNEL_MODULES_BLOCKLIST_FILE := $(DEVICE_PATH)/modules/modules.blocklist +BOARD_VENDOR_KERNEL_MODULES_LOAD := $(strip $(shell cat $(DEVICE_PATH)/modules/modules.load)) +BOARD_VENDOR_RAMDISK_KERNEL_MODULES_BLOCKLIST_FILE := $(BOARD_VENDOR_KERNEL_MODULES_BLOCKLIST_FILE) +BOARD_VENDOR_RAMDISK_KERNEL_MODULES_LOAD := $(strip $(shell cat $(DEVICE_PATH)/modules/modules.load.vendor_boot)) +BOARD_VENDOR_RAMDISK_RECOVERY_KERNEL_MODULES_LOAD := $(strip $(shell cat $(DEVICE_PATH)/modules/modules.load.recovery)) +BOOT_KERNEL_MODULES := $(strip $(shell cat $(DEVICE_PATH)/modules/modules.load.recovery $(DEVICE_PATH)/modules/modules.include.vendor_ramdisk)) +SYSTEM_KERNEL_MODULES := $(strip $(shell cat $(DEVICE_PATH)/modules/modules.include.system_dlkm)) +BOARD_RECOVERY_KERNEL_MODULES_LOAD := $(strip $(shell cat $(DEVICE_PATH)/modules/modules.load.recovery)) +BOARD_RECOVERY_RAMDISK_KERNEL_MODULES_LOAD := $(strip $(shell cat $(DEVICE_PATH)/modules/modules.load.recovery)) +RECOVERY_KERNEL_MODULES := $(BOARD_RECOVERY_RAMDISK_KERNEL_MODULES_LOAD) + +TARGET_KERNEL_EXT_MODULE_ROOT := kernel/samsung/sm8650-modules +TARGET_KERNEL_EXT_MODULES := \ + qcom/opensource/mmrm-driver \ + qcom/opensource/mm-drivers/hw_fence \ + qcom/opensource/mm-drivers/msm_ext_display \ + qcom/opensource/mm-drivers/sync_fence \ + qcom/opensource/securemsm-kernel \ + qcom/opensource/audio-kernel \ + qcom/opensource/camera-kernel \ + qcom/opensource/dataipa/drivers/platform/msm \ + qcom/opensource/datarmnet-ext/mem \ + qcom/opensource/datarmnet/core \ + qcom/opensource/datarmnet-ext/aps \ + qcom/opensource/datarmnet-ext/offload \ + qcom/opensource/datarmnet-ext/shs \ + qcom/opensource/datarmnet-ext/perf \ + qcom/opensource/datarmnet-ext/perf_tether \ + qcom/opensource/datarmnet-ext/sch \ + qcom/opensource/datarmnet-ext/wlan \ + qcom/opensource/display-drivers/msm \ + qcom/opensource/synx-kernel \ + qcom/opensource/dsp-kernel \ + qcom/opensource/eva-kernel \ + qcom/opensource/video-driver \ + qcom/opensource/graphics-kernel \ + qcom/opensource/wlan/platform \ + qcom/opensource/wlan/qcacld-3.0 \ + qcom/opensource/bt-kernel \ + qcom/opensource/spu-kernel \ + qcom/opensource/mm-sys-kernel/ubwcp \ + qcom/opensource/touch-drivers \ + nxp/opensource/driver + +# Metadata +BOARD_USES_METADATA_PARTITION := true + +# Partitions +BOARD_FLASH_BLOCK_SIZE := 262144 # (BOARD_KERNEL_PAGESIZE * 64) +BOARD_BOOTIMAGE_PARTITION_SIZE := 100663296 +BOARD_CACHEIMAGE_PARTITION_SIZE := 367001600 +BOARD_DTBOIMG_PARTITION_SIZE := 16777216 +BOARD_INIT_BOOT_IMAGE_PARTITION_SIZE := 8388608 +BOARD_RECOVERYIMAGE_PARTITION_SIZE := 110034944 +BOARD_VENDOR_BOOTIMAGE_PARTITION_SIZE := 100663296 +BOARD_SUPER_PARTITION_SIZE := 14105444352 +BOARD_SUPER_PARTITION_GROUPS := samsung_dynamic_partitions +BOARD_SAMSUNG_DYNAMIC_PARTITIONS_PARTITION_LIST := \ + odm \ + product \ + system \ + system_dlkm \ + system_ext \ + vendor \ + vendor_dlkm +BOARD_SAMSUNG_DYNAMIC_PARTITIONS_SIZE := 14101250048 # (BOARD_SUPER_PARTITION_SIZE - 4MiB) + +BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4 +BOARD_ODMIMAGE_FILE_SYSTEM_TYPE := ext4 +BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE := ext4 +BOARD_SYSTEMIMAGE_FILE_SYSTEM_TYPE := ext4 +BOARD_SYSTEM_EXTIMAGE_FILE_SYSTEM_TYPE := ext4 +BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4 +BOARD_SYSTEM_DLKMIMAGE_FILE_SYSTEM_TYPE := ext4 +BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE := ext4 + +TARGET_COPY_OUT_ODM := odm +TARGET_COPY_OUT_PRODUCT := product +TARGET_COPY_OUT_SYSTEM_DLKM := system_dlkm +TARGET_COPY_OUT_SYSTEM_EXT := system_ext +TARGET_COPY_OUT_VENDOR := vendor +TARGET_COPY_OUT_VENDOR_DLKM := vendor_dlkm + +BOARD_ROOT_EXTRA_FOLDERS := \ + efs + +# Platform +BOARD_VENDOR := samsung +BOARD_USES_QCOM_HARDWARE := true +TARGET_BOARD_PLATFORM := pineapple + +# Properties +TARGET_SYSTEM_PROP += $(DEVICE_PATH)/system.prop +TARGET_VENDOR_PROP += $(DEVICE_PATH)/vendor.prop +TARGET_PRODUCT_PROP += $(DEVICE_PATH)/product.prop +TARGET_SYSTEM_EXT_PROP += $(DEVICE_PATH)/system_ext.prop +TARGET_SYSTEM_DLKM_PROP += $(DEVICE_PATH)/system_dlkm.prop +TARGET_ODM_PROP += $(DEVICE_PATH)/odm.prop +TARGET_ODM_DLKM_PROP += $(DEVICE_PATH)/odm_dlkm.prop +TARGET_VENDOR_DLKM_PROP += $(DEVICE_PATH)/vendor_dlkm.prop + +# Recovery +TARGET_RECOVERY_FSTAB := $(DEVICE_PATH)/rootdir/etc/fstab.qcom +BOARD_INCLUDE_RECOVERY_DTBO := true +TARGET_RECOVERY_PIXEL_FORMAT := RGBX_8888 +TARGET_USERIMAGES_USE_EXT4 := true +TARGET_USERIMAGES_USE_F2FS := true + +# Security patch level +VENDOR_SECURITY_PATCH := 2024-10-01 + +# Sepolicy +include device/qcom/sepolicy_vndr/SEPolicy.mk +include device/lineage/sepolicy/libperfmgr/sepolicy.mk +BOARD_VENDOR_SEPOLICY_DIRS += $(DEVICE_PATH)/sepolicy/vendor +SYSTEM_EXT_PRIVATE_SEPOLICY_DIRS += $(DEVICE_PATH)/sepolicy/private +SYSTEM_EXT_PUBLIC_SEPOLICY_DIRS += $(DEVICE_PATH)/sepolicy/public + +# Verified Boot +BOARD_AVB_ENABLE := true +BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS += --flags 3 +BOARD_AVB_RECOVERY_KEY_PATH := external/avb/test/data/testkey_rsa4096.pem +BOARD_AVB_RECOVERY_ALGORITHM := SHA256_RSA4096 +BOARD_AVB_RECOVERY_ROLLBACK_INDEX := 1 +BOARD_AVB_RECOVERY_ROLLBACK_INDEX_LOCATION := 1 +BOARD_AVB_VENDOR_BOOT_KEY_PATH := external/avb/test/data/testkey_rsa4096.pem +BOARD_AVB_VENDOR_BOOT_ALGORITHM := SHA256_RSA4096 +BOARD_AVB_VENDOR_BOOT_ROLLBACK_INDEX := 1 +BOARD_AVB_VENDOR_BOOT_ROLLBACK_INDEX_LOCATION := 1 + +# VINTF +DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE := \ + $(DEVICE_PATH)/configs/vintf/compatibility_matrix.device.xml \ + $(DEVICE_PATH)/configs/vintf/compatibility_matrix.samsung.xml \ + hardware/qcom-caf/common/vendor_framework_compatibility_matrix.xml \ + vendor/lineage/config/device_framework_matrix.xml \ + hardware/samsung/vintf/samsung_framework_compatibility_matrix.xml +DEVICE_FRAMEWORK_MANIFEST_FILE += $(DEVICE_PATH)/configs/vintf/framework_manifest.xml +DEVICE_MATRIX_FILE := \ + $(DEVICE_PATH)/configs/vintf/compatibility_matrix.xml \ + hardware/qcom-caf/common/compatibility_matrix.xml +DEVICE_MANIFEST_SKUS := pineapple +DEVICE_MANIFEST_PINEAPPLE_FILES := \ + $(DEVICE_PATH)/configs/vintf/manifest_pineapple.xml \ + $(DEVICE_PATH)/configs/vintf/manifest_samsung.xml + +# Inherit the proprietary files +include vendor/samsung/e3q/BoardConfigVendor.mk diff --git a/board-info.txt b/board-info.txt new file mode 100644 index 0000000..acff607 --- /dev/null +++ b/board-info.txt @@ -0,0 +1 @@ +require board=pineapple|e3q diff --git a/configs/permissions/android.hardware.hardware_keystore.xml b/configs/permissions/android.hardware.hardware_keystore.xml new file mode 100644 index 0000000..4c75596 --- /dev/null +++ b/configs/permissions/android.hardware.hardware_keystore.xml @@ -0,0 +1,18 @@ + + + + + diff --git a/configs/permissions/android.hardware.keystore.app_attest_key.xml b/configs/permissions/android.hardware.keystore.app_attest_key.xml new file mode 100644 index 0000000..8adc439 --- /dev/null +++ b/configs/permissions/android.hardware.keystore.app_attest_key.xml @@ -0,0 +1,20 @@ + + + + + + + diff --git a/configs/permissions/android.hardware.strongbox_keystore.xml b/configs/permissions/android.hardware.strongbox_keystore.xml new file mode 100644 index 0000000..dbb111d --- /dev/null +++ b/configs/permissions/android.hardware.strongbox_keystore.xml @@ -0,0 +1,17 @@ + + + + + + + diff --git a/configs/vintf/compatibility_matrix.device.xml b/configs/vintf/compatibility_matrix.device.xml new file mode 100644 index 0000000..063ae0f --- /dev/null +++ b/configs/vintf/compatibility_matrix.device.xml @@ -0,0 +1,1653 @@ + + + + + + vendor.qti.hardware.scve.panorama + 1.0 + + IPanoramaTracking + panoTracking + + + IPanoramaStitching + panoStitching + + + + vendor.qti.hardware.scve.objecttracker + 1.0 + + IObjectTracker + objectTracker + + + + vendor.qti.hardware.perf + 2.0-3 + + IPerf + default + + + + vendor.qti.hardware.perf2 + 1 + + IPerf + default + + + + vendor.display.color + 1.0-7 + + IDisplayColor + default + + + + vendor.display.postproc + 1.0 + + IDisplayPostproc + default + + + + vendor.qti.hardware.display.color + 1 + + IDisplayColor + default + + + + vendor.qti.hardware.display.postproc + 1 + + IDisplayPostproc + default + + + + vendor.qti.hardware.display.demura + 1.0 + 2.0 + + IDemuraFileFinder + default + + + + vendor.qti.hardware.display.demura + 1 + + IDemuraFileFinder + default + + + + vendor.qti.hardware.qseecom + 1.0 + + IQSEECom + default + + + + vendor.qti.hardware.qseecom + 1 + + IQSEECom + default + + + + vendor.qti.hardware.qteeconnector + 1.0 + + IAppConnector + default + + + IGPAppConnector + default + + + + vendor.qti.hardware.qteeconnector + 1 + + IAppConnector + default + + + IGPAppConnector + default + + + + vendor.qti.hardware.debugutils + 1.0 + + IDebugUtils + default + + + + vendor.qti.hardware.factory + 1.0-1 + + IFactory + default + + + + vendor.qti.hardware.factory + 1 + + IFactory + default + + + + com.qualcomm.qti.dpm.api + 1.0 + + IdpmQmi + dpmQmiService + + + + android.hardware.nfc + 1.0 + + INfc + default + + + + android.hardware.nfc + 1 + + INfc + default + + + + android.hardware.radio + 1.0-4 + + IRadio + slot1 + slot2 + + + ISap + slot1 + slot2 + + + + vendor.qti.hardware.seccam + 1.0 + + ISecCam + default + + + + vendor.qti.hardware.improvetouch.touchcompanion + 1.0 + + ITouchCompanion + TouchCompanionService + + + + vendor.qti.hardware.bluetooth_audio + 2.0-1 + + IBluetoothAudioProvidersFactory + default + + + + com.qualcomm.qti.imscmservice + 2.0-2 + + IImsCmService + qti.ims.connectionmanagerservice + + + + com.qualcomm.qti.uceservice + 2.0-1 + 2.2 + 2.3 + + IUceService + com.qualcomm.qti.uceservice + + + + com.qualcomm.qti.wifidisplayhal + 1.0 + + IHDCPSession + wifidisplayhdcphal + + + IDSManager + wifidisplaydshal + + + + vendor.qti.hardware.wifidisplaysession + 1.0 + + IWifiDisplaySession + wifidisplaysession + + + IWifiDisplaySessionVideoTrack + wifidisplaysessionvideotrack + + + IWifiDisplaySessionAudioTrack + wifidisplaysessionaudiotrack + + + IWifiDisplaySessionImageTrack + wifidisplaysessionimagetrack + + + + com.quicinc.cne.server + 2.0-2 + + IServer + cnd + + + + com.quicinc.cne.api + 1.0-1 + + IApiService + cnd + + + + vendor.nxp.hardware.nfc + 1.0-1 + 2.0 + + INqNfc + default + + + + vendor.nxp.nxpnfc_aidl + 1 + + INxpNfc + default + + + + vendor.nxp.nxpnfclegacy + 1.0 + + INxpNfcLegacy + default + + + + vendor.qti.esepowermanager + 1.0-1 + + IEsePowerManager + default + + + + vendor.qti.hardware.alarm + 1.0 + + IAlarm + default + + + + vendor.qti.hardware.alarm + 1 + + IAlarm + default + + + + vendor.qti.hardware.data.latency + + 1.0 + + ILinkLatency + default + + + + vendor.qti.hardware.data.connection + 1.0-1 + + IDataConnection + slot1 + slot2 + + + + vendor.qti.hardware.data.connectionfactory + 1 + + IFactory + slot0 + slot1 + + + + vendor.qti.data.factoryservice + 1 + + IFactory + default + + + + vendor.qti.hardware.cacert + 1.0 + + IService + default + + + + vendor.qti.hardware.cacertaidlservice + 1 + + IService + default + + + + vendor.qti.hardware.fm + 1.0 + + IFmHci + default + + + + vendor.qti.hardware.btconfigstore + 1.0 + 2.0 + + IBTConfigStore + default + + + + com.dsi.ant + 1.0 + + IAnt + default + + + + vendor.qti.hardware.iop + 2.0 + + IIop + default + + + + vendor.qti.hardware.qdutils_disp + 1.0 + + IQdutilsDisp + default + + + + vendor.qti.hardware.radio.am + 1.0 + + IQcRilAudio + slot1 + slot2 + + + + vendor.qti.hardware.radio.am + 1 + + IQcRilAudio + slot1 + slot2 + + + + vendor.qti.hardware.radio.ims + 1.0-9 + + IImsRadio + imsradio0 + imsradio1 + + + + vendor.qti.hardware.radio.ims + 1-15 + + IImsRadio + imsradio0 + imsradio1 + + + + vendor.qti.hardware.radio.internal.deviceinfo + 1.0 + + IDeviceInfo + deviceinfo + + + + vendor.qti.hardware.radio.internal.deviceinfo + 1 + + IDeviceInfo + deviceinfo + + + + vendor.qti.hardware.radio.lpa + 1.0-3 + + IUimLpa + UimLpa0 + UimLpa1 + + + + vendor.qti.hardware.radio.lpa + 1 + + IUimLpa + UimLpa0 + UimLpa1 + + + + vendor.qti.hardware.radio.qcrilhook + 1.0 + + IQtiOemHook + oemhook0 + oemhook1 + + + + vendor.qti.hardware.radio.qcrilhook + 1 + + IQtiOemHook + oemhook0 + oemhook1 + + + + vendor.qti.hardware.radio.qtiradio + 1.0 + 2.0-7 + + IQtiRadio + slot1 + slot2 + + + + vendor.qti.hardware.radio.qtiradio + 1-11 + + IQtiRadioStable + slot1 + slot2 + + + + vendor.qti.hardware.radio.qtiradioconfig + 1-4 + + IQtiRadioConfig + default + + + + vendor.qti.hardware.radio.atfwd + 1 + + IAtFwd + AtFwdAidl + + + + vendor.qti.hardware.radio.uim_remote_client + 1.0 + + IUimRemoteServiceClient + uimRemoteClient0 + uimRemoteClient1 + + + + vendor.qti.hardware.radio.uim_remote_client + 1 + + IUimRemoteServiceClient + uimRemoteClient0 + uimRemoteClient1 + + + + vendor.qti.hardware.radio.uim_remote_server + 1.0 + + IUimRemoteServiceServer + uimRemoteServer0 + uimRemoteServer1 + + + + vendor.qti.hardware.radio.uim_remote_server + 1 + + IUimRemoteServiceServer + uimRemoteServer0 + uimRemoteServer1 + + + + vendor.qti.hardware.radio.uim + 1.1-2 + + IUim + Uim0 + Uim1 + + + + vendor.qti.hardware.radio.uim + 1 + + IUim + Uim0 + Uim1 + + + + vendor.qti.hardware.sensorscalibrate + 1.0 + + ISensorsCalibrate + default + + + + vendor.qti.hardware.sensorscalibrate + 1 + + ISensorsCalibrate + default + + + + vendor.qti.hardware.soter + 1.0 + + ISoter + default + + + + vendor.qti.hardware.eid + 1.0 + + IEid + default + + + + vendor.qti.hardware.tui_comm + 1.0 + + ITuiComm + default + + + + vendor.qti.hardware.vpp + 1.1-3 + 2.0 + + IHidlVppService + vppService + + + + vendor.qti.hardware.vpp + 1 + + IVppService + default + + + + vendor.qti.hardware.hexlp + 1 + + IHexlpService + default + + + + vendor.qti.hardware.qconfig + 1.0 + + IQConfig + default + + + + vendor.qti.hardware.qconfig + 1 + + IQConfig + default + + + + vendor.qti.hardware.dsp + 1.0 + + IDspService + dspservice + + + + android.hardware.wifi.supplicant + 1.0-2 + + ISupplicant + default + wigigp2p + + + + vendor.qti.hardware.wigig.netperftuner + 1.0 + + INetPerfTuner + default + + + + vendor.qti.hardware.wigig.supptunnel + 1.0 + + ISuppTunnelProvider + default + + + + vendor.qti.hardware.fstman + 1.0 + + IFstManager + default + + + + vendor.qti.imsrtpservice + 3.0 + 3.1 + + IRTPService + imsrtpservice + + + + vendor.qti.ImsRtpService + 1 + + IRTPService + ImsRtpService + + + + vendor.qti.mstatservice + 1.0 + + IMStatService + mstatservice + + + + vendor.qti.voiceprint + 1.0 + + IQtiVoicePrintService + default + + + + android.hardware.gnss + 1.0-1 + 2.0-1 + + IGnss + gnss_vendor + default + + + + vendor.qti.gnss + 1.0-2 + 2.0-1 + 3.0 + 4.0-3 + + ILocHidlGnss + gnss_vendor + + + + vendor.qti.gnss + 1-6 + + ILocAidlGnss + default + + + + vendor.qti.hardware.wifi.supplicant + 2.0-3 + + ISupplicantVendor + default + + + + vendor.qti.hardware.wifi.supplicant + 1 + + ISupplicantVendor + default + + + + vendor.qti.hardware.wifi.hostapd + 1.0-3 + + IHostapdVendor + default + wigighostapd + + + + vendor.qti.ims.callinfo + 1.0 + + IService + default + + + + vendor.qti.data.factory + 1.0 + 2.0-8 + + IFactory + default + + + + vendor.display.config + 1.0-15 + 2.0 + + IDisplayConfig + default + + + + vendor.qti.hardware.wipower + 1.0 + + IWipower + default + + + + vendor.qti.hardware.fingerprint + 1.0 + + IQtiExtendedFingerprint + default + + + + vendor.qti.hardware.fingerprint + 1 + + IQfpExtendedFingerprint + default + + + + + vendor.qti.memory.pasrmanager + 1 + + IPasrManager + default + + + + vendor.qti.memory.pasrmanager + hwbinder + 1.0-1 + + IPasrManager + pasrhal + + + + vendor.qti.power.pasrmanager + 1.0 + + IPasrManager + default + + + + vendor.qti.hardware.power.powermodule + 1.0 + + IPowerModule + default + + + + vendor.qti.hardware.power.powermodule + 1 + + IPowerModule + default + + + + android.hardware.radio.config + 1.0-1 + + IRadioConfig + default + + + + vendor.qti.hardware.capabilityconfigstore + 1.0 + + ICapabilityConfigStore + default + + + + vendor.qti.hardware.data.iwlan + 1.0-1 + + IIWlan + slot1 + slot2 + + + + vendor.qti.hardware.data.iwlandata + 1 + + IIWlan + slot1 + slot2 + + + + + vendor.qti.hardware.cvp + 1.0 + + ICvp + cvphalservice + + + + vendor.qti.hardware.audiohalext + 1.0 + + IAudioHalExt + default + + + + + + vendor.qti.hardware.display.allocator + 1.0 + 3.0 + 4.0 + + IQtiAllocator + default + + + + vendor.qti.hardware.display.mapper + 2.0 + 3.0 + 4.0 + + IQtiMapper + default + + + + vendor.qti.hardware.display.composer + 2.0-1 + 3.0 + 3.1 + 3.2 + + IQtiComposer + default + + + + + + + vendor.qti.qspmhal + 1 + + IQspmhal + default + + + + vendor.qti.diaghal + 1.0 + + Idiag + default + + + + + vendor.qti.hardware.bluetooth_sar + 1.0-1 + + IBluetoothSar + default + + + + + vendor.qti.hardware.wifi.wifilearner + 1.0 + + IWifiStats + wifiStats + + + + android.hardware.automotive.evs + 1.1 + + IEvsEnumerator + default + + + + vendor.qti.automotive.qcarcam + 1.0 + + IQcarCamera + default + + + + + vendor.qti.hardware.systemhelper + 1.0 + + ISystemEvent + default + + + ISystemResource + default + + + + + vendor.qti.hardware.systemhelperaidl + 1 + + ISystemEvent + default + + + ISystemResource + default + + + + + vendor.qti.hardware.trustedui + 1.0-2 + + ITrustedUI + default + qtee-vm + + + ITrustedInput + default + qtee-vm + + + + + vendor.qti.hardware.trustedui + 1 + + ITrustedUI + default + + + ITrustedInput + default + + + + + vendor.qti.hardware.secureprocessor.device + 1.0 + + ISecureProcessor + qti-tee + qti-tvm + + + + vendor.qti.hardware.secureprocessor.device + 1 + + ISecureProcessor + qti-tee + qti-tvm + + + + + vendor.qti.hardware.cryptfshw + 1.0 + + ICryptfsHw + default + + + + + vendor.qti.hardware.servicetracker + hwbinder + 1.0-2 + + IServicetracker + default + + + + + vendor.qti.hardware.camera.postproc + hwbinder + 1.0 + + IPostProcService + camerapostprocservice + + + + + vendor.qti.hardware.camera.offlinecamera + 1 + + IOfflineCameraService + default + + + + + vendor.qti.hardware.camera.aon + hwbinder + 1.0-4 + + IAONService + aoncameraservice + + + + + vendor.qti.hardware.camera.aon + 1 + + IAONService + default + + + + + vendor.qti.hardware.embmssl + 1.0-1 + + IEmbms + embmsslServer0 + + + + vendor.qti.hardware.embmssl + 1 + + IEmbms + default + + + + vendor.qti.hardware.qccvndhal + 1.0 + + IQccvndhal + qccvndhal + + + + vendor.qti.qccvndhal_aidl + 1 + + IQccvndhal + qccvndhal + + + + vendor.qti.qepi + 1 + + IQEPI + qepi + + + + vendor.qti.ims.factory + 1.0-1 + 2.0-2 + + IImsFactory + default + + + + vendor.qti.spu + 1.0-1 + 2.0 + + ISPUManager + default + + + + vendor.qti.hardware.spu + 1-2 + + ISPUManager + default + + + + + vendor.qti.hardware.slmadapter + hwbinder + 1.0 + + ISlmAdapter + SlmAdapter + + + + + vendor.qti.hardware.mwqemadapter + hwbinder + 1.0 + + IMwqemAdapter + MwqemAdapter + + + + vendor.qti.hardware.mwqemadapteraidlservice + 1 + + IMwqemAdapter + MwqemAdapter + + + + + vendor.qti.hardware.dpmservice + hwbinder + 1.0-1 + + IDpmService + DpmService + + + + + vendor.qti.hardware.dpmaidlservice + 1 + + IDpmService + default + + + + + vendor.qti.hardware.limits + hwbinder + 1.0-2 + + ILimits + default + + + + + vendor.qti.hardware.AGMIPC + hwbinder + 1.0 + + IAGM + default + + + + + vendor.qti.hardware.pal + hwbinder + 1.0 + + IPAL + default + + + + + vendor.qti.hardware.ListenSoundModel + hwbinder + 1.0 + + IListenSoundModel + default + + + + vendor.qti.hardware.wifi.wifimyftm + hwbinder + 1.0 + + IWifiMyFtm + default + + + + vendor.qti.hardware.wifi.wifimyftm + 1 + + IWifiMyFtm + default + + + + vendor.qti.hardware.display.config + 1-11 + + IDisplayConfig + default + + + + vendor.qti.hardware.display.composer3 + 1 + + IQtiComposer3Client + default + + + + vendor.kineticsxr.hardware.nordic + 1.0 + + INordic + default + + + + vendor.qti.hardware.wifi.wificfr + hwbinder + 1.0 + + IWificfr + wificfr + + + + vendor.qti.hardware.wifi.wificfr + 1 + + IWificfr + default + + + + vendor.qti.qesdhal + hwbinder + 1.0-4 + + IQesdhal + default + + + + vendor.qti.qesdhalaidl + 1-2 + + IQesdhal + default + + + + vendor.qti.hardware.sxrhal + hwbinder + 1.0 + + ISxrCrypto + sxrhalservice + + + + vendor.qti.hardware.debugutils + 1 + + IDebugUtils + default + + + + vendor.qti.hardware.qxr + 1-2 + + IQXRCoreService + default + + + IQXRCamService + default + + + IQXRSplitService + default + + + IQXRModService + default + + + IQXRAudioService + default + + + IQXRCommService + default + + + + vendor.qti.hardware.radio.atcmdfwd + 1 + + IAtCmdFwd + AtCmdFwdAidl + + + + vendor.qti.data.txpwrservice + 1-6 + + ITxPwrService + default + + + + vendor.qti.hardware.bttpi + 1-3 + + IBtTpi + default + + + + vendor.qti.hardware.bluetooth.xpanprovider + 1 + + IXpanProvider + default + + + + android.se.omapi + 1 + + ISecureElementService + default + + + + + vendor.aks.gamepad + hwbinder + 1.0 + + IGamepad + default + + + + vendor.qti.ims.datachannelservice + 1-2 + + IDataChannelService + default + + + + vendor.qti.hardware.servicetrackeraidl + 1 + + IServicetracker + default + + + + + vendor.qti.qvirt + 1 + + IVirtualizationService + default + + + + vendor.qti.hardware.data.connectionaidl + 1 + + IDataConnection + slot1 + slot2 + + + + vendor.qti.ims.factoryaidlservice + 1 + + IImsFactory + default + + + + android.hardware.tetheroffload + 1 + + IOffload + default + + + + vendor.qti.hardware.soter + 1 + + ISoter + default + + + + + android.hardware.authsecret.qti.spu + 1 + + IAuthSecret + default + + + + vendor.qti.hardware.qspa + 1 + + IQspa + default + + + + + + vendor.qti.hardware.umd + hwbinder + 1.0 + + IUMDAdaptor + default + + + + vendor.qti.vst + + ICameraVstSys + default + + + ICameraVstSysFactory + default + + + ICameraVstSysCallback + default + + + + + vendor.qti.hardware.power.powerstateservice + hwbinder + 1.0 + + IPowerStateService + default + + + IPowerStateUtility + default + + + diff --git a/configs/vintf/compatibility_matrix.samsung.xml b/configs/vintf/compatibility_matrix.samsung.xml new file mode 100644 index 0000000..d688cd8 --- /dev/null +++ b/configs/vintf/compatibility_matrix.samsung.xml @@ -0,0 +1,282 @@ + + + + vendor.samsung.hardware.authfw + + ISehAuthenticationFramework + default + + + + vendor.samsung.hardware.frcmc + + ISehFrcMc + default + + + + vendor.samsung.hardware.gnss + 2 + + ISehGnss + default + + + + vendor.samsung.hardware.hyper + 2 + + ISehHyPer + default + + + + vendor.samsung.hardware.khdm + + ISehKhdm + default + + + + vendor.samsung.hardware.media.mpp + 2 + + ISehMppStore + default + + + + vendor.samsung.hardware.mpos + + ISehMpos + default + + + + vendor.samsung.hardware.radio.bridge + + ISehRadioBridge + slot1 + slot2 + + + + vendor.samsung.hardware.radio.channel + + ISehRadioChannel + epdgd + epdgd2 + imsd + imsd2 + + + + vendor.samsung.hardware.radio.data + + ISehRadioData + slot1 + slot2 + + + + vendor.samsung.hardware.radio.messaging + + ISehRadioMessaging + slot1 + slot2 + + + + vendor.samsung.hardware.radio.network + + ISehRadioNetwork + slot1 + slot2 + + + + vendor.samsung.hardware.radio.sim + + ISehRadioSim + slot1 + slot2 + + + + vendor.samsung.hardware.security.drk + + ISehDrk + default + + + + vendor.samsung.hardware.security.engmode + + ISehEngmode + default + + + + vendor.samsung.hardware.security.fkeymaster + + ISehFkeymaster + default + + + + vendor.samsung.hardware.security.hdcp.keyprovisioning + + ISehHdcpKeyProvisioning + default + + + + vendor.samsung.hardware.security.hdcp.wifidisplay + 2 + + ISehHdcp + default + + + + vendor.samsung.hardware.security.hermes + + ISehHermesCommand + default + + + + vendor.samsung.hardware.security.rtts + + ISehRealTimeToken + default + + + + vendor.samsung.hardware.security.sem + 1.0 + + ISehSem + default + + + + vendor.samsung.hardware.security.skpm + 1.0 + + ISehSkpm + default + + + + vendor.samsung.hardware.security.vaultkeeper + + ISehVaultKeeper + default + + + + vendor.samsung.hardware.security.widevine.keyprov + + ISehWidevineKeyProv + default + + + + vendor.samsung.hardware.security.wsm.service + + ISehWsm + default + + + + vendor.samsung.hardware.snap + 2 + + ISehSnap + default + + + + vendor.samsung.hardware.sysinput + 2 + + ISehSysInputCallback + default + + + ISehSysInputDev + default + + + + vendor.samsung.hardware.tlc.ddar + + ISehDdar + default + + + + vendor.samsung.hardware.tlc.iccc + 1.0 + + ISehIccc + default + + + + vendor.samsung.hardware.tlc.kg + + ISehKg + default + + + + vendor.samsung.hardware.tlc.snap + 1.0 + + ISehSnapSec + default + + + + vendor.samsung.hardware.tlc.ucm + + ISehUcm + default + + + + vendor.samsung.hardware.wifi + + ISehWifi + default + + + + vendor.samsung.hardware.wifi.nan + + IWifiVendorNan + default + + + + vendor.samsung.hardware.keymint + 1-3 + + ISehKeyMintExtension + default + + + + vendor.samsung.hardware.keymint + 1-3 + + ISehKeyMintFactory + default + + + diff --git a/configs/vintf/compatibility_matrix.xml b/configs/vintf/compatibility_matrix.xml new file mode 100644 index 0000000..c0c43f7 --- /dev/null +++ b/configs/vintf/compatibility_matrix.xml @@ -0,0 +1,80 @@ + + + + android.frameworks.sensorservice + 1.0 + + ISensorManager + default + + + + android.hidl.manager + 1.0 + + IServiceManager + default + + + + android.hidl.memory + 1.0 + + IMapper + ashmem + + + + android.hidl.token + 1.0 + + ITokenManager + default + + + + vendor.qti.hardware.sigma_miracast + hwbinder + 1.0 + + Isigma_miracast + sigmahal + sigmahal64 + + + + vendor.qti.hardware.qccsyshal + hwbinder + 1.0-2 + + IQccsyshal + qccsyshal + + + diff --git a/configs/vintf/framework_manifest.xml b/configs/vintf/framework_manifest.xml new file mode 100644 index 0000000..82904d2 --- /dev/null +++ b/configs/vintf/framework_manifest.xml @@ -0,0 +1,39 @@ + + + + + vendor.qti.hardware.radio.atcmdfwd + hwbinder + 1.0 + + IAtCmdFwd + AtCmdFwdService + + + diff --git a/configs/vintf/manifest_pineapple.xml b/configs/vintf/manifest_pineapple.xml new file mode 100644 index 0000000..ec4438a --- /dev/null +++ b/configs/vintf/manifest_pineapple.xml @@ -0,0 +1,262 @@ + + + + + vendor.qti.hardware.capabilityconfigstore + hwbinder + 1.0 + + ICapabilityConfigStore + default + + + + android.hardware.audio + hwbinder + 7.1 + + IDevicesFactory + default + + + + android.hardware.audio.effect + hwbinder + 7.0 + + IEffectsFactory + default + + + + + vendor.qti.hardware.dsp + hwbinder + 1.0 + + IDspService + dspservice + + + + android.hardware.gatekeeper + 1 + + IGatekeeper + default + + + + + + + com.qualcomm.qti.uceservice + hwbinder + 2.3 + + IUceService + com.qualcomm.qti.uceservice + + + + + vendor.qti.ims.callinfo + hwbinder + 1.0 + + IService + default + + + + + com.qualcomm.qti.imscmservice + hwbinder + 2.2 + + IImsCmService + qti.ims.connectionmanagerservice + + + + vendor.qti.ims.factory + hwbinder + 1.1 + + IImsFactory + default + + + + vendor.qti.hardware.cacert + hwbinder + 1.0 + + IService + default + + + + + vendor.qti.hardware.factory + hwbinder + 1.1 + + IFactory + default + + + + + vendor.qti.hardware.secureprocessor.device + hwbinder + 1.0 + + ISecureProcessor + qti-tee + qti-tvm + + + + + android.hardware.bluetooth + hwbinder + 1.1 + + IBluetoothHci + default + + + + vendor.qti.hardware.bluetooth_audio + hwbinder + 2.1 + + IBluetoothAudioProvidersFactory + default + + + + vendor.qti.hardware.btconfigstore + hwbinder + 2.0 + + IBTConfigStore + default + + + + + vendor.qti.hardware.fm + hwbinder + 1.0 + + IFmHci + default + + + + + com.dsi.ant + hwbinder + 1.0 + + IAnt + default + + + + + + vendor.qti.hardware.wifi.wifilearner + hwbinder + 1.0 + + IWifiStats + wifiStats + + + + + vendor.qti.hardware.bluetooth_sar + hwbinder + 1.1 + + IBluetoothSar + default + + + + + vendor.qti.spu + hwbinder + 1.1 + + ISPUManager + default + + + + vendor.qti.spu + hwbinder + 2.0 + + ISPUManager + default + + + + vendor.qti.hardware.spu + 2 + + ISPUManager + default + + + + diff --git a/configs/vintf/manifest_samsung.xml b/configs/vintf/manifest_samsung.xml new file mode 100644 index 0000000..12d2480 --- /dev/null +++ b/configs/vintf/manifest_samsung.xml @@ -0,0 +1,62 @@ + + + + + vendor.samsung.hardware.media.mpp + 2 + ISehMppStore/default + + + vendor.samsung.hardware.security.hdcp.wifidisplay + 2 + ISehHdcp/default + + + vendor.samsung.hardware.snap + 2 + ISehSnap/default + + + vendor.samsung.hardware.sysinput + 2 + + ISehSysInputDev + default + + + ISehSysInputCallback + default + + + + vendor.samsung.hardware.keymint + 3 + ISehKeyMintExtension/default + + + vendor.samsung.hardware.keymint + 3 + ISehKeyMintFactory/default + + + vendor.samsung.hardware.bluetooth + hwbinder + @2.0::ISehBluetooth/default + + + android.hardware.weaver + 2 + + IWeaver + default + + + diff --git a/device.mk b/device.mk new file mode 100644 index 0000000..1af272f --- /dev/null +++ b/device.mk @@ -0,0 +1,98 @@ +# +# Copyright (C) 2024 The LineageOS Project +# +# SPDX-License-Identifier: Apache-2.0 +# + +# Enable updating of APEXes +$(call inherit-product, $(SRC_TARGET_DIR)/product/updatable_apex.mk) + +# API levels +PRODUCT_SHIPPING_API_LEVEL := 34 + +# fastbootd +PRODUCT_PACKAGES += \ + android.hardware.fastboot@1.1-impl-mock \ + fastbootd + +# Health +PRODUCT_PACKAGES += \ + android.hardware.health@2.1-impl \ + android.hardware.health@2.1-impl.recovery \ + android.hardware.health@2.1-service + +# Overlays +PRODUCT_ENFORCE_RRO_TARGETS := * + +# Partitions +PRODUCT_USE_DYNAMIC_PARTITIONS := true + +# Product characteristics +PRODUCT_CHARACTERISTICS := phone + +# Rootdir +PRODUCT_PACKAGES += \ + dcc_extension.sh \ + hdm_status.sh \ + init.class_main.sh \ + init.crda.sh \ + init.kernel.post_boot-cliffs.sh \ + init.kernel.post_boot-pineapple.sh \ + init.kernel.post_boot.sh \ + init.mdm.sh \ + init.qcom.class_core.sh \ + init.qcom.coex.sh \ + init.qcom.early_boot.sh \ + init.qcom.efs.sync.sh \ + init.qcom.post_boot.sh \ + init.qcom.sdio.sh \ + init.qcom.sensors.sh \ + init.qcom.sh \ + init.qcom.usb.sh \ + init.qti.display_boot.sh \ + init.qti.kernel.debug-cliffs.sh \ + init.qti.kernel.debug-pineapple.sh \ + init.qti.kernel.debug.sh \ + init.qti.kernel.early_debug-pineapple.sh \ + init.qti.kernel.early_debug.sh \ + init.qti.kernel.sh \ + init.qti.media.sh \ + init.qti.qcv.sh \ + init.qti.time.daemon.sh \ + init.qti.write.sh \ + init.vendor.sensordebug.sh \ + init.vendor.sensordebug.ssr_dump.sh \ + install-recovery.sh \ + qca6234-service.sh \ + system_dlkm_modprobe.sh \ + vendor_modprobe.sh \ + +PRODUCT_PACKAGES += \ + fstab.qcom \ + init.e3q.rc \ + init.qcom.factory.rc \ + init.qcom.rc \ + init.qcom.usb.rc \ + init.qti.kernel.rc \ + init.qti.ss-ramdump.sh \ + init.qti.ufs.rc \ + init.samsung.bsp.rc \ + init.samsung.display.rc \ + init.samsung.dp.rc \ + init.samsung.factory.rc \ + init.samsung.power.rc \ + init.samsung.rc \ + init.samsung.user.rc \ + init.target.rc \ + init.recovery.qcom.rc \ + init.recovery.samsung.rc \ + +PRODUCT_COPY_FILES += \ + $(LOCAL_PATH)/rootdir/etc/fstab.qcom:$(TARGET_COPY_OUT_RAMDISK)/fstab.qcom + +# Soong namespaces +PRODUCT_SOONG_NAMESPACES += \ + $(LOCAL_PATH) + +# Inherit the proprietary files +$(call inherit-product, vendor/samsung/e3q/e3q-vendor.mk) diff --git a/extract-files.sh b/extract-files.sh new file mode 100755 index 0000000..36d7d59 --- /dev/null +++ b/extract-files.sh @@ -0,0 +1,103 @@ +#!/bin/bash +# +# SPDX-FileCopyrightText: 2016 The CyanogenMod Project +# SPDX-FileCopyrightText: 2017-2024 The LineageOS Project +# SPDX-License-Identifier: Apache-2.0 +# + +set -e + +DEVICE=e3q +VENDOR=samsung + +# Load extract_utils and do some sanity checks +MY_DIR="${BASH_SOURCE%/*}" +if [[ ! -d "${MY_DIR}" ]]; then MY_DIR="${PWD}"; fi + +ANDROID_ROOT="${MY_DIR}/../../.." + +# If XML files don't have comments before the XML header, use this flag +# Can still be used with broken XML files by using blob_fixup +export TARGET_DISABLE_XML_FIXING=true + +HELPER="${ANDROID_ROOT}/tools/extract-utils/extract_utils.sh" +if [ ! -f "${HELPER}" ]; then + echo "Unable to find helper script at ${HELPER}" + exit 1 +fi +source "${HELPER}" + +# Default to sanitizing the vendor folder before extraction +CLEAN_VENDOR=true + +ONLY_FIRMWARE= +KANG= +SECTION= +CARRIER_SKIP_FILES=() + +while [ "${#}" -gt 0 ]; do + case "${1}" in + --only-firmware) + ONLY_FIRMWARE=true + ;; + -n | --no-cleanup) + CLEAN_VENDOR=false + ;; + -k | --kang) + KANG="--kang" + ;; + -s | --section) + SECTION="${2}" + shift + CLEAN_VENDOR=false + ;; + *) + SRC="${1}" + ;; + esac + shift +done + +if [ -z "${SRC}" ]; then + SRC="adb" +fi + +function blob_fixup() { + case "${1}" in + vendor/lib/libsample1.so) + [ "$2" = "" ] && return 0 + sed -i 's|/data/misc/sample1|/data/misc/sample2|g' "${2}" + ;; + vendor/lib64/libsample2.so) + [ "$2" = "" ] && return 0 + "${PATCHELF}" --remove-needed "libsample3.so" "${2}" + "${PATCHELF}" --add-needed "libsample4.so" "${2}" + ;; + vendor/lib/libsample5.so) + [ "$2" = "" ] && return 0 + "${PATCHELF}" --replace-needed "libsample6.so" "libsample7.so" "${2}" + ;; + vendor/lib/libsample7.so) + [ "$2" = "" ] && return 0 + "${PATCHELF}" --set-soname "libsample7.so" "${2}" + ;; + *) + return 1 + ;; + esac + + return 0 +} + +function blob_fixup_dry() { + blob_fixup "$1" "" +} + +# Initialize the helper +setup_vendor "${DEVICE}" "${VENDOR}" "${ANDROID_ROOT}" false "${CLEAN_VENDOR}" + +if [ -z "${ONLY_FIRMWARE}" ]; then + extract "${MY_DIR}/proprietary-files.txt" "${SRC}" "${KANG}" --section "${SECTION}" +fi + +"${MY_DIR}/setup-makefiles.sh" diff --git a/lineage_e3q.mk b/lineage_e3q.mk new file mode 100644 index 0000000..97c1805 --- /dev/null +++ b/lineage_e3q.mk @@ -0,0 +1,28 @@ +# +# Copyright (C) 2024 The LineageOS Project +# +# SPDX-License-Identifier: Apache-2.0 +# + +# Inherit from those products. Most specific first. +$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk) +$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk) + +# Inherit some common Lineage stuff. +$(call inherit-product, vendor/lineage/config/common_full_phone.mk) + +# Inherit from e3q device +$(call inherit-product, device/samsung/e3q/device.mk) + +PRODUCT_DEVICE := e3q +PRODUCT_NAME := lineage_e3q +PRODUCT_BRAND := samsung +PRODUCT_MODEL := SM-S928B +PRODUCT_MANUFACTURER := samsung + +PRODUCT_GMS_CLIENTID_BASE := android-samsung-ss + +PRODUCT_BUILD_PROP_OVERRIDES += \ + PRIVATE_BUILD_DESC="e3qxxx-user 14 UP1A.231005.007 S928BXXS3AXI8 release-keys" + +BUILD_FINGERPRINT := samsung/e3qxxx/qssi_64:14/UP1A.231005.007/S928BXXS3AXI8:user/release-keys diff --git a/modules/modules.blocklist b/modules/modules.blocklist new file mode 100644 index 0000000..17e488d --- /dev/null +++ b/modules/modules.blocklist @@ -0,0 +1,62 @@ +# SPDX-License-Identifier: GPL-2.0-only +# Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved. +blocklist 8250_of +blocklist adc-tm +blocklist atomic64_test +blocklist dummy-cpufreq +blocklist dummy_hcd +blocklist dummy_hcd +blocklist e4000 +blocklist failover +blocklist fc0011 +blocklist fc0012 +blocklist fc0013 +blocklist fc2580 +blocklist ipclite_test +blocklist it913x +blocklist limits_stat +blocklist limits_stress +blocklist lkdtm +blocklist llcc_perfmon +blocklist locktorture +blocklist m88rs6000t +blocklist max2165 +blocklist mc44s803 +blocklist mmrm_test_module +blocklist msi001 +blocklist mt2060 +blocklist mt2063 +blocklist mt20xx +blocklist mt2131 +blocklist mt2266 +blocklist mxl301rf +blocklist net_failover +blocklist qca_cld3_kiwi +blocklist qm1d1b0004 +blocklist qm1d1c0042 +blocklist qt1010 +blocklist r820t +blocklist rcutorture +blocklist rtc-test +blocklist si2157 +blocklist tda18212 +blocklist tda18218 +blocklist tda18250 +blocklist tda18271 +blocklist tda827x +blocklist tda8290 +blocklist tda9887 +blocklist tea5761 +blocklist tea5767 +blocklist test_user_copy +blocklist torture +blocklist tua9001 +blocklist tuner-simple +blocklist tuner-types +blocklist tuner-xc2028 +blocklist vmw_vsock_virtio_transport +blocklist vmw_vsock_virtio_transport_common +blocklist vsock +blocklist vsock_diag +blocklist xc4000 +blocklist xc5000 diff --git a/modules/modules.include.system_dlkm b/modules/modules.include.system_dlkm new file mode 100644 index 0000000..d76b9b0 --- /dev/null +++ b/modules/modules.include.system_dlkm @@ -0,0 +1,60 @@ +gzvm.ko +kheaders.ko +zsmalloc.ko +libarc4.ko +zram.ko +mii.ko +can-dev.ko +vcan.ko +slcan.ko +ppp_generic.ko +bsd_comp.ko +ppp_deflate.ko +ppp_mppe.ko +pppox.ko +pptp.ko +slhc.ko +wwan.ko +rtl8150.ko +r8152.ko +asix.ko +ax88179_178a.ko +cdc_ether.ko +cdc_eem.ko +usbnet.ko +cdc_ncm.ko +aqc111.ko +r8153_ecm.ko +cdc-acm.ko +usbserial.ko +ftdi_sio.ko +hci_uart.ko +btsdio.ko +btbcm.ko +btqca.ko +8021q.ko +can.ko +can-raw.ko +can-bcm.ko +can-gw.ko +bluetooth.ko +rfcomm.ko +hidp.ko +l2tp_core.ko +l2tp_ppp.ko +tipc.ko +diag.ko +rfkill.ko +6lowpan.ko +nhc_dest.ko +nhc_fragment.ko +nhc_hop.ko +nhc_ipv6.ko +nhc_mobility.ko +nhc_routing.ko +nhc_udp.ko +ieee802154_6lowpan.ko +ieee802154.ko +ieee802154_socket.ko +mac802154.ko +nfc.ko diff --git a/modules/modules.include.vendor_ramdisk b/modules/modules.include.vendor_ramdisk new file mode 100644 index 0000000..98e7405 --- /dev/null +++ b/modules/modules.include.vendor_ramdisk @@ -0,0 +1,120 @@ +sec_boot_stat.ko +sec_log_buf.ko +sec_arm64_ap_context.ko +gh_arm_drv.ko +sched-walt.ko +qcom_ipc_logging.ko +qcom-pdc.ko +phy-qcom-ufs.ko +phy-qcom-ufs-qmp-v4-pineapple.ko +phy-qcom-ufs-qrbtc-sdm845.ko +pinctrl-msm.ko +pinctrl-pineapple.ko +pinctrl-cliffs.ko +pinctrl-volcano.ko +clk-qcom.ko +clk-dummy.ko +gdsc-regulator.ko +clk-rpmh.ko +dispcc-pineapple.ko +gcc-cliffs.ko +gcc-pineapple.ko +gcc-volcano.ko +camcc-cliffs.ko +camcc-pineapple.ko +gpucc-pineapple.ko +videocc-pineapple.ko +tcsrcc-pineapple.ko +qcom_aoss.ko +cmd-db.ko +crm.ko +mdt_loader.ko +qcom_rpmh.ko +smem.ko +mem_buf.ko +mem_buf_dev.ko +mem_buf_msgq.ko +secure_buffer.ko +socinfo.ko +dcc_v2.ko +qcom_wdt_core.ko +memory_dump_v2.ko +qcom_cpu_vendor_hooks.ko +crypto-qti.ko +hwkm.ko +tmecom-intf.ko +gic_intr_routing.ko +minidump.ko +gh_cpusys_vm_mem_access.ko +qcom-pmu-lib.ko +dcvs_fp.ko +qcom-dcvs.ko +qcom_scmi_client.ko +qcom_cpucp.ko +debug_symbol.ko +proxy-consumer.ko +rpmh-regulator.ko +stub-regulator.ko +debug-regulator.ko +arm_smmu.ko +msm_dma_iommu_mapping.ko +qcom_iommu_util.ko +iommu-logger.ko +qti-regmap-debugfs.ko +qcom-spmi-pmic.ko +qcom_dma_heaps.ko +spmi-pmic-arb.ko +rtc-pm8xxx.ko +i2c-gpio.ko +qcom-dload-mode.ko +qcom-reboot-reason.ko +qcom_tsens.ko +thermal_pause.ko +bcl_pmic5.ko +cpu_hotplug.ko +thermal_minidump.ko +softdog.ko +qcom-cpufreq-hw.ko +cqhci.ko +ufs_qcom.ko +ufshcd-crypto-qti.ko +qcom_scmi_vendor.ko +qcom-scm.ko +qcom-ipcc.ko +msm_qmp.ko +qcom_hwspinlock.ko +gh_virt_wdt.ko +gh_dbl.ko +gh_msgq.ko +gh_rm_drv.ko +gunyah_loader.ko +gunyah_qcom.ko +qcom_llcc_pmu.ko +nvmem_qcom-spmi-sdam.ko +icc-bcm-voter.ko +icc-rpmh.ko +qnoc-cliffs.ko +qnoc-volcano.ko +qnoc-pineapple.ko +qnoc-qos.ko +icc-debug.ko +icc-test.ko +sec_class.ko +sec_key_notifier.ko +sec_param.ko +sec_qc_debug.ko +sec_qc_upload_cause.ko +sec_qc_logger.ko +sec_qc_summary.ko +sec_debug.ko +sec_pmsg.ko +sec_upload_cause.ko +sec_crashkey.ko +sec_crashkey_long.ko +sec_debug_region.ko +sec_pm_log.ko +abc.ko +qrtr.ko +qrtr-gunyah.ko +sec_qc_param.ko +sec_qc_dbg_partition.ko diff --git a/modules/modules.load b/modules/modules.load new file mode 100644 index 0000000..b30eaa8 --- /dev/null +++ b/modules/modules.load @@ -0,0 +1,467 @@ +msm_sysstats.ko +ssg.ko +blk-sec-common.ko +blk-sec-stats.ko +blk-sec-wb.ko +msm_show_resume_irq.ko +mhi.ko +mhi_dev_uci.ko +mhi_dev_satellite.ko +phy-qcom-ufs-qmp-v4.ko +pinctrl-spmi-gpio.ko +pinctrl-spmi-mpp.ko +pwm-qti-lpg.ko +pci-msm-drv.ko +lcd.ko +debugcc-cliffs.ko +debugcc-pineapple.ko +gpucc-cliffs.ko +gpucc-volcano.ko +videocc-volcano.ko +bam_dma.ko +msm_gpi.ko +qcom_cpuss_sleep_stats.ko +pcie-pdc.ko +pdr_interface.ko +qmi_helpers.ko +heap_mem_ext_v01.ko +msm_memshare.ko +smp2p.ko +smp2p_sleepstate.ko +qsee_ipc_irq_bridge.ko +glink_probe.ko +mem-hooks.ko +qcom_stats.ko +eud.ko +llcc-qcom.ko +llcc_perfmon.ko +pmic-pon-log.ko +boot_stats.ko +core_hang_detect.ko +qcom_va_minidump.ko +qcom_logbuf_vendor_hooks.ko +qcom_logbuf_boot_log.ko +hung_task_enh.ko +msm_show_epoch.ko +gh_tlmm_vm_mem_access.ko +sps_drv.ko +qcom_ramdump.ko +memlat.ko +bwmon.ko +c1dcvs_scmi_v2.ko +mpam.ko +cpufreq_stats_scmi_v2.ko +dynpf_scmi.ko +cpucp_log.ko +sys_pm_vx.ko +msm_performance.ko +wcd_usbss_i2c.ko +sysmon_subsystem_stats.ko +cdsprm.ko +adsp_sleepmon.ko +panel_event_notifier.ko +dmesg_dumper.ko +health_monitor.ko +qfprom-sys.ko +qti-fixed-regulator.ko +qpnp-amoled-regulator.ko +qti-ocp-notifier.ko +hvc_gunyah.ko +msm_geni_serial.ko +rdbg.ko +qcom_iommu_debug.ko +drm_dp_aux_bus.ko +drm_display_helper.ko +lt9611uxc.ko +qseecom_proxy.ko +dev_ril_bridge.ko +qcom-i2c-pmic.ko +sec_ap_pmic.ko +sg.ko +spi-msm-geni.ko +spmi-pmic-arb-debug.ko +smsc.ko +smsc75xx.ko +smsc95xx.ko +msm_sharedmem.ko +phy-generic.ko +phy-qcom-emu.ko +phy-msm-ssusb-qmp.ko +phy-msm-snps-eusb2.ko +dwc3-msm.ko +ehset.ko +lvstest.ko +f_fs_ipc_log.ko +usb_f_cdev.ko +usb_f_ccid.ko +usb_f_qdss.ko +usb_f_gsi.ko +usb_f_conn_gadget.ko +usb_f_ss_mon_gadget.ko +usb_f_ss_acm.ko +repeater.ko +repeater-i2c-eusb2.ko +redriver.ko +nb7vpq904m.ko +pm8941-pwrkey.ko +sec_pon_alarm.ko +i2c-msm-geni.ko +i3c-master-msm-geni.ko +qcom-pon.ko +reboot-mode.ko +qcom-spmi-temp-alarm.ko +bcl_soc.ko +qti_qmi_cdev.ko +qti_qmi_sensor_v2.ko +qti_cpufreq_cdev.ko +qti_devfreq_cdev.ko +cpu_voltage_cooling.ko +ddr_cdev.ko +qti_userspace_cdev.ko +max31760_fan.ko +msm_lmh_dcvs.ko +thermal_config.ko +gpu_dump_skip_cdev.ko +qcom_edac.ko +cpufreq_limit.ko +qcom-cpufreq-hw-debug.ko +qcom_lpm.ko +sdhci-msm-sec.ko +leds-qti-flash.ko +leds-qti-tri-led.ko +leds-qpnp-vibrator-ldo.ko +leds-s2mpb02.ko +cs_dsp.ko +cl_dsp.ko +cl_dsp-debugfs.ko +qcom_pil_info.ko +rproc_qcom_common.ko +qcom_q6v5.ko +qcom_q6v5_pas.ko +qcom_spss.ko +qcom_sysmon.ko +qcom_glink.ko +qcom_glink_smem.ko +qcom_glink_spss.ko +qcom_smd.ko +glink_pkt.ko +gh_ctrl.ko +gh_irq_lend.ko +gh_rm_booster.ko +gh_mem_notifier.ko +gh_panic_notifier.ko +qcom-spmi-adc5-gen3.ko +qcom-vadc-common.ko +nvmem_qfprom.ko +sec_reloc_gpio.ko +sec_arm64_fsimd_debug.ko +sec_arm64_debug.ko +sec_qc_rbcmd.ko +sec_qc_qcom_reboot_reason.ko +sec_qc_soc_id.ko +sec_qc_qcom_wdt_core.ko +sec_qc_user_reset.ko +sec_qc_smem.ko +sec_qc_hw_param.ko +sec_qc_rst_exinfo.ko +sec_reboot_cmd.ko +sec_rdx_bootdev.ko +hdm.ko +sec_panel_notifier_v2.ko +pmic_class.ko +usb_typec_manager.ko +if_cb_manager.ko +max77705_charger.ko +input_booster_lkm.ko +max77775_charger.ko +common_muic.ko +sec_switch_class.ko +sdp.ko +vbus_notifier.ko +sec_common_fn.ko +sec_input_notifier.ko +dropdump.ko +s2dos05-regulator.ko +stm_ts_spi.ko +max77705-fuelgauge.ko +mfd_max77705.ko +mfd_max77775.ko +vibrator_vib_info.ko +kperfmon.ko +sec_vibrator_inputff_module.ko +usb_notify_layer.ko +usb_notifier.ko +usb_vendor_receiver.ko +fingerprint.ko +fingerprint_sysfs.ko +qfs4008_spidev.ko +sb-core.ko +pdic_notifier_module.ko +abc_hub.ko +sec_abc_detect_conn.ko +max77775-fuelgauge.ko +input-cs40l26-i2c.ko +hall_ic.ko +hall_ic_notifier.ko +flicker_test.ko +flicker_sensor.ko +pdic_max77705.ko +pdic_max77775.ko +pca9481_charger.ko +s2mpb03.ko +sec_thermistor.ko +wez02.ko +snvm.ko +nu1668-charger.ko +nfc_nxp_sec.ko +s2mpb02-regulator.ko +uwb.ko +s2dos07.ko +synaptics_ts_spi.ko +sec-direct-charger.ko +sec_pd.ko +sb_wireless.ko +sec-battery.ko +stmvl53l8.ko +mfd_s2mpb02.ko +slimbus.ko +slim-qcom-ngd-ctrl.ko +hwmon.ko +qti_amoled_ecm.ko +coresight.ko +coresight-tmc.ko +coresight-funnel.ko +coresight-replicator.ko +coresight-stm.ko +coresight-cti.ko +coresight-dummy.ko +coresight-remote-etm.ko +coresight-tmc-sec.ko +coresight-trace-noc.ko +coresight-tgu.ko +coresight-hwevent.ko +coresight-tpda.ko +coresight-tpdm.ko +coresight-csr.ko +stm_core.ko +stm_p_ost.ko +stm_console.ko +stm_heartbeat.ko +stm_ftrace.ko +sensors_core.ko +adsp_factory_module.ko +snd-usb-audio-qmi.ko +snd-soc-cirrus-amp.ko +snd-soc-cs35l43-i2c.ko +snd-soc-cs35l45-i2c.ko +snd-soc-hdmi-codec.ko +snd-soc-wm-adsp.ko +snd-soc-cs40l26.ko +sec_audio_sysfs.ko +snd_debug_proc.ko +cfg80211.ko +mac80211.ko +qrtr-smd.ko +qrtr-mhi.ko +qca_cld3_kiwi_v2.ko +cnss2.ko +cnss_plat_ipc_qmi_svc.ko +wlan_firmware_service.ko +cnss_nl.ko +cnss_prealloc.ko +cnss_utils.ko +q6_notifier_dlkm.ko +spf_core_dlkm.ko +audpkt_ion_dlkm.ko +gpr_dlkm.ko +audio_pkt_dlkm.ko +q6_dlkm.ko +adsp_loader_dlkm.ko +audio_prm_dlkm.ko +q6_pdr_dlkm.ko +pinctrl_lpi_dlkm.ko +swr_dlkm.ko +swr_ctrl_dlkm.ko +snd_event_dlkm.ko +wcd_core_dlkm.ko +mbhc_dlkm.ko +wcd9xxx_dlkm.ko +stub_dlkm.ko +machine_dlkm.ko +swr_dmic_dlkm.ko +swr_haptics_dlkm.ko +hdmi_dlkm.ko +lpass_cdc_wsa2_macro_dlkm.ko +lpass_cdc_wsa_macro_dlkm.ko +lpass_cdc_va_macro_dlkm.ko +lpass_cdc_rx_macro_dlkm.ko +lpass_cdc_tx_macro_dlkm.ko +lpass_cdc_dlkm.ko +wsa884x_dlkm.ko +wsa883x_dlkm.ko +wcd938x_dlkm.ko +wcd938x_slave_dlkm.ko +wcd939x_dlkm.ko +wcd939x_slave_dlkm.ko +q6_notifier_dlkm.ko +spf_core_dlkm.ko +audpkt_ion_dlkm.ko +gpr_dlkm.ko +audio_pkt_dlkm.ko +q6_dlkm.ko +adsp_loader_dlkm.ko +audio_prm_dlkm.ko +q6_pdr_dlkm.ko +pinctrl_lpi_dlkm.ko +swr_dlkm.ko +swr_ctrl_dlkm.ko +snd_event_dlkm.ko +wcd_core_dlkm.ko +mbhc_dlkm.ko +wcd9xxx_dlkm.ko +stub_dlkm.ko +machine_dlkm.ko +swr_dmic_dlkm.ko +swr_haptics_dlkm.ko +hdmi_dlkm.ko +lpass_cdc_wsa2_macro_dlkm.ko +lpass_cdc_wsa_macro_dlkm.ko +lpass_cdc_va_macro_dlkm.ko +lpass_cdc_rx_macro_dlkm.ko +lpass_cdc_tx_macro_dlkm.ko +lpass_cdc_dlkm.ko +wsa884x_dlkm.ko +wsa883x_dlkm.ko +wcd938x_dlkm.ko +wcd938x_slave_dlkm.ko +wcd939x_dlkm.ko +wcd939x_slave_dlkm.ko +qcedev-mod_dlkm.ko +qcrypto-msm_dlkm.ko +qce50_dlkm.ko +hdcp_qseecom_dlkm.ko +qrng_dlkm.ko +smmu_proxy_dlkm.ko +smcinvoke_dlkm.ko +tz_log_dlkm.ko +qseecom_dlkm.ko +ubwcp.ko +btpower.ko +bt_fm_slim.ko +radio-i2c-rtc6226-qca.ko +qca_cld3_kiwi_v2.ko +cnss2.ko +cnss_plat_ipc_qmi_svc.ko +wlan_firmware_service.ko +cnss_nl.ko +cnss_prealloc.ko +cnss_utils.ko +q6_notifier_dlkm.ko +spf_core_dlkm.ko +audpkt_ion_dlkm.ko +gpr_dlkm.ko +audio_pkt_dlkm.ko +q6_dlkm.ko +adsp_loader_dlkm.ko +audio_prm_dlkm.ko +q6_pdr_dlkm.ko +pinctrl_lpi_dlkm.ko +swr_dlkm.ko +swr_ctrl_dlkm.ko +snd_event_dlkm.ko +wcd_core_dlkm.ko +mbhc_dlkm.ko +wcd9xxx_dlkm.ko +stub_dlkm.ko +machine_dlkm.ko +swr_dmic_dlkm.ko +swr_haptics_dlkm.ko +hdmi_dlkm.ko +lpass_cdc_wsa2_macro_dlkm.ko +lpass_cdc_wsa_macro_dlkm.ko +lpass_cdc_va_macro_dlkm.ko +lpass_cdc_rx_macro_dlkm.ko +lpass_cdc_tx_macro_dlkm.ko +lpass_cdc_dlkm.ko +wsa884x_dlkm.ko +wsa883x_dlkm.ko +wcd938x_dlkm.ko +wcd938x_slave_dlkm.ko +wcd939x_dlkm.ko +wcd939x_slave_dlkm.ko +q6_notifier_dlkm.ko +spf_core_dlkm.ko +audpkt_ion_dlkm.ko +gpr_dlkm.ko +audio_pkt_dlkm.ko +q6_dlkm.ko +adsp_loader_dlkm.ko +audio_prm_dlkm.ko +q6_pdr_dlkm.ko +pinctrl_lpi_dlkm.ko +swr_dlkm.ko +swr_ctrl_dlkm.ko +snd_event_dlkm.ko +wcd_core_dlkm.ko +mbhc_dlkm.ko +wcd9xxx_dlkm.ko +stub_dlkm.ko +machine_dlkm.ko +swr_dmic_dlkm.ko +swr_haptics_dlkm.ko +hdmi_dlkm.ko +lpass_cdc_wsa2_macro_dlkm.ko +lpass_cdc_wsa_macro_dlkm.ko +lpass_cdc_va_macro_dlkm.ko +lpass_cdc_rx_macro_dlkm.ko +lpass_cdc_tx_macro_dlkm.ko +lpass_cdc_dlkm.ko +wsa884x_dlkm.ko +wsa883x_dlkm.ko +wcd938x_dlkm.ko +wcd938x_slave_dlkm.ko +wcd939x_dlkm.ko +wcd939x_slave_dlkm.ko +btpower.ko +bt_fm_slim.ko +radio-i2c-rtc6226-qca.ko +camera.ko +gsim.ko +ipam.ko +ipanetm.ko +rmnet_core.ko +rmnet_ctl.ko +rmnet_offload.ko +rmnet_perf_tether.ko +rmnet_perf.ko +rmnet_wlan.ko +rmnet_mem.ko +rmnet_shs.ko +rmnet_aps.ko +rmnet_sch.ko +rmnet_wlan.ko +msm_drm.ko +frpc-adsprpc.ko +cdsp-loader.ko +msm-eva.ko +msm_ext_display.ko +sync_fence.ko +msm_hw_fence.ko +msm-mmrm.ko +qcedev-mod_dlkm.ko +qcrypto-msm_dlkm.ko +qce50_dlkm.ko +hdcp_qseecom_dlkm.ko +qrng_dlkm.ko +smmu_proxy_dlkm.ko +smcinvoke_dlkm.ko +tz_log_dlkm.ko +qseecom_dlkm.ko +spcom.ko +spss_utils.ko +synx-driver.ko +ipclite.ko +ipclite_test.ko +ubwcp.ko +msm_video.ko +msm_kgsl.ko diff --git a/modules/modules.load.recovery b/modules/modules.load.recovery new file mode 100644 index 0000000..b587863 --- /dev/null +++ b/modules/modules.load.recovery @@ -0,0 +1,394 @@ +sec_boot_stat.ko +sec_log_buf.ko +sec_arm64_ap_context.ko +gh_arm_drv.ko +sched-walt.ko +qcom_ipc_logging.ko +qcom-pdc.ko +phy-qcom-ufs.ko +phy-qcom-ufs-qmp-v4-pineapple.ko +phy-qcom-ufs-qrbtc-sdm845.ko +pinctrl-msm.ko +pinctrl-pineapple.ko +pinctrl-cliffs.ko +pinctrl-volcano.ko +clk-qcom.ko +clk-dummy.ko +gdsc-regulator.ko +clk-rpmh.ko +dispcc-pineapple.ko +gcc-cliffs.ko +gcc-pineapple.ko +gcc-volcano.ko +camcc-cliffs.ko +camcc-pineapple.ko +gpucc-pineapple.ko +videocc-pineapple.ko +tcsrcc-pineapple.ko +qcom_aoss.ko +cmd-db.ko +crm.ko +mdt_loader.ko +qcom_rpmh.ko +smem.ko +mem_buf.ko +mem_buf_dev.ko +mem_buf_msgq.ko +secure_buffer.ko +socinfo.ko +dcc_v2.ko +qcom_wdt_core.ko +memory_dump_v2.ko +qcom_cpu_vendor_hooks.ko +crypto-qti.ko +hwkm.ko +tmecom-intf.ko +gic_intr_routing.ko +minidump.ko +gh_cpusys_vm_mem_access.ko +qcom-pmu-lib.ko +dcvs_fp.ko +qcom-dcvs.ko +qcom_scmi_client.ko +qcom_cpucp.ko +debug_symbol.ko +proxy-consumer.ko +rpmh-regulator.ko +stub-regulator.ko +debug-regulator.ko +arm_smmu.ko +msm_dma_iommu_mapping.ko +qcom_iommu_util.ko +iommu-logger.ko +qti-regmap-debugfs.ko +qcom-spmi-pmic.ko +qcom_dma_heaps.ko +spmi-pmic-arb.ko +rtc-pm8xxx.ko +i2c-gpio.ko +qcom-dload-mode.ko +qcom-reboot-reason.ko +qcom_tsens.ko +thermal_pause.ko +bcl_pmic5.ko +cpu_hotplug.ko +thermal_minidump.ko +softdog.ko +qcom-cpufreq-hw.ko +cqhci.ko +ufs_qcom.ko +ufshcd-crypto-qti.ko +qcom_scmi_vendor.ko +qcom-scm.ko +qcom-ipcc.ko +msm_qmp.ko +qcom_hwspinlock.ko +gh_virt_wdt.ko +gh_dbl.ko +gh_msgq.ko +gh_rm_drv.ko +gunyah_loader.ko +gunyah_qcom.ko +qcom_llcc_pmu.ko +nvmem_qcom-spmi-sdam.ko +icc-bcm-voter.ko +icc-rpmh.ko +qnoc-cliffs.ko +qnoc-volcano.ko +qnoc-pineapple.ko +qnoc-qos.ko +icc-debug.ko +icc-test.ko +sec_class.ko +sec_key_notifier.ko +sec_param.ko +sec_qc_debug.ko +sec_qc_upload_cause.ko +sec_qc_logger.ko +sec_qc_summary.ko +sec_debug.ko +sec_pmsg.ko +sec_upload_cause.ko +sec_crashkey.ko +sec_crashkey_long.ko +sec_debug_region.ko +sec_pm_log.ko +abc.ko +qrtr.ko +qrtr-gunyah.ko +sec_qc_param.ko +sec_qc_dbg_partition.ko +msm_sysstats.ko +ssg.ko +blk-sec-common.ko +blk-sec-stats.ko +blk-sec-wb.ko +msm_show_resume_irq.ko +mhi.ko +mhi_dev_uci.ko +mhi_dev_satellite.ko +phy-qcom-ufs-qmp-v4.ko +pinctrl-spmi-gpio.ko +pinctrl-spmi-mpp.ko +pwm-qti-lpg.ko +pci-msm-drv.ko +lcd.ko +debugcc-cliffs.ko +debugcc-pineapple.ko +gpucc-cliffs.ko +gpucc-volcano.ko +videocc-volcano.ko +bam_dma.ko +msm_gpi.ko +qcom_cpuss_sleep_stats.ko +pcie-pdc.ko +pdr_interface.ko +qmi_helpers.ko +heap_mem_ext_v01.ko +msm_memshare.ko +smp2p.ko +smp2p_sleepstate.ko +qsee_ipc_irq_bridge.ko +glink_probe.ko +mem-hooks.ko +qcom_stats.ko +eud.ko +llcc-qcom.ko +llcc_perfmon.ko +pmic-pon-log.ko +boot_stats.ko +core_hang_detect.ko +qcom_va_minidump.ko +qcom_logbuf_vendor_hooks.ko +qcom_logbuf_boot_log.ko +hung_task_enh.ko +msm_show_epoch.ko +gh_tlmm_vm_mem_access.ko +sps_drv.ko +qcom_ramdump.ko +memlat.ko +bwmon.ko +c1dcvs_scmi_v2.ko +mpam.ko +cpufreq_stats_scmi_v2.ko +dynpf_scmi.ko +cpucp_log.ko +sys_pm_vx.ko +msm_performance.ko +wcd_usbss_i2c.ko +sysmon_subsystem_stats.ko +cdsprm.ko +adsp_sleepmon.ko +panel_event_notifier.ko +dmesg_dumper.ko +health_monitor.ko +qfprom-sys.ko +qti-fixed-regulator.ko +qpnp-amoled-regulator.ko +qti-ocp-notifier.ko +hvc_gunyah.ko +msm_geni_serial.ko +rdbg.ko +qcom_iommu_debug.ko +drm_dp_aux_bus.ko +drm_display_helper.ko +lt9611uxc.ko +qseecom_proxy.ko +dev_ril_bridge.ko +qcom-i2c-pmic.ko +sec_ap_pmic.ko +sg.ko +spi-msm-geni.ko +spmi-pmic-arb-debug.ko +smsc.ko +smsc75xx.ko +smsc95xx.ko +msm_sharedmem.ko +phy-generic.ko +phy-qcom-emu.ko +phy-msm-ssusb-qmp.ko +phy-msm-snps-eusb2.ko +dwc3-msm.ko +ehset.ko +lvstest.ko +f_fs_ipc_log.ko +usb_f_cdev.ko +usb_f_ccid.ko +usb_f_qdss.ko +usb_f_gsi.ko +usb_f_conn_gadget.ko +usb_f_ss_mon_gadget.ko +usb_f_ss_acm.ko +repeater.ko +repeater-i2c-eusb2.ko +redriver.ko +nb7vpq904m.ko +pm8941-pwrkey.ko +sec_pon_alarm.ko +i2c-msm-geni.ko +i3c-master-msm-geni.ko +qcom-pon.ko +reboot-mode.ko +qcom-spmi-temp-alarm.ko +bcl_soc.ko +qti_qmi_cdev.ko +qti_qmi_sensor_v2.ko +qti_cpufreq_cdev.ko +qti_devfreq_cdev.ko +cpu_voltage_cooling.ko +ddr_cdev.ko +qti_userspace_cdev.ko +max31760_fan.ko +msm_lmh_dcvs.ko +thermal_config.ko +gpu_dump_skip_cdev.ko +qcom_edac.ko +cpufreq_limit.ko +qcom-cpufreq-hw-debug.ko +qcom_lpm.ko +sdhci-msm-sec.ko +leds-qti-flash.ko +leds-qti-tri-led.ko +leds-qpnp-vibrator-ldo.ko +leds-s2mpb02.ko +cs_dsp.ko +cl_dsp.ko +cl_dsp-debugfs.ko +qcom_pil_info.ko +rproc_qcom_common.ko +qcom_q6v5.ko +qcom_q6v5_pas.ko +qcom_spss.ko +qcom_sysmon.ko +qcom_glink.ko +qcom_glink_smem.ko +qcom_glink_spss.ko +qcom_smd.ko +glink_pkt.ko +gh_ctrl.ko +gh_irq_lend.ko +gh_rm_booster.ko +gh_mem_notifier.ko +gh_panic_notifier.ko +qcom-spmi-adc5-gen3.ko +qcom-vadc-common.ko +nvmem_qfprom.ko +sec_reloc_gpio.ko +sec_arm64_fsimd_debug.ko +sec_arm64_debug.ko +sec_qc_rbcmd.ko +sec_qc_qcom_reboot_reason.ko +sec_qc_soc_id.ko +sec_qc_qcom_wdt_core.ko +sec_qc_user_reset.ko +sec_qc_smem.ko +sec_qc_hw_param.ko +sec_qc_rst_exinfo.ko +sec_reboot_cmd.ko +sec_rdx_bootdev.ko +hdm.ko +sec_panel_notifier_v2.ko +pmic_class.ko +usb_typec_manager.ko +if_cb_manager.ko +max77705_charger.ko +input_booster_lkm.ko +max77775_charger.ko +common_muic.ko +sec_switch_class.ko +sdp.ko +vbus_notifier.ko +sec_common_fn.ko +sec_input_notifier.ko +dropdump.ko +s2dos05-regulator.ko +stm_ts_spi.ko +max77705-fuelgauge.ko +mfd_max77705.ko +mfd_max77775.ko +vibrator_vib_info.ko +kperfmon.ko +sec_vibrator_inputff_module.ko +usb_notify_layer.ko +usb_notifier.ko +usb_vendor_receiver.ko +fingerprint.ko +fingerprint_sysfs.ko +qfs4008_spidev.ko +sb-core.ko +pdic_notifier_module.ko +abc_hub.ko +sec_abc_detect_conn.ko +max77775-fuelgauge.ko +input-cs40l26-i2c.ko +hall_ic.ko +hall_ic_notifier.ko +flicker_test.ko +flicker_sensor.ko +pdic_max77705.ko +pdic_max77775.ko +pca9481_charger.ko +s2mpb03.ko +sec_thermistor.ko +wez02.ko +snvm.ko +nu1668-charger.ko +nfc_nxp_sec.ko +s2mpb02-regulator.ko +uwb.ko +s2dos07.ko +synaptics_ts_spi.ko +sec-direct-charger.ko +sec_pd.ko +sb_wireless.ko +sec-battery.ko +stmvl53l8.ko +mfd_s2mpb02.ko +slimbus.ko +slim-qcom-ngd-ctrl.ko +hwmon.ko +qti_amoled_ecm.ko +coresight.ko +coresight-tmc.ko +coresight-funnel.ko +coresight-replicator.ko +coresight-stm.ko +coresight-cti.ko +coresight-dummy.ko +coresight-remote-etm.ko +coresight-tmc-sec.ko +coresight-trace-noc.ko +coresight-tgu.ko +coresight-hwevent.ko +coresight-tpda.ko +coresight-tpdm.ko +coresight-csr.ko +stm_core.ko +stm_p_ost.ko +stm_console.ko +stm_heartbeat.ko +stm_ftrace.ko +sensors_core.ko +adsp_factory_module.ko +snd-usb-audio-qmi.ko +snd-soc-cirrus-amp.ko +snd-soc-cs35l43-i2c.ko +snd-soc-cs35l45-i2c.ko +snd-soc-hdmi-codec.ko +snd-soc-wm-adsp.ko +snd-soc-cs40l26.ko +sec_audio_sysfs.ko +snd_debug_proc.ko +qrtr-smd.ko +qrtr-mhi.ko +smcinvoke_dlkm.ko +hdcp_qseecom_dlkm.ko +qseecom_dlkm.ko +msm_drm.ko +msm_ext_display.ko +sync_fence.ko +msm_hw_fence.ko +msm-mmrm.ko +smcinvoke_dlkm.ko +hdcp_qseecom_dlkm.ko +qseecom_dlkm.ko diff --git a/modules/modules.load.system_dlkm b/modules/modules.load.system_dlkm new file mode 100644 index 0000000..d76b9b0 --- /dev/null +++ b/modules/modules.load.system_dlkm @@ -0,0 +1,60 @@ +gzvm.ko +kheaders.ko +zsmalloc.ko +libarc4.ko +zram.ko +mii.ko +can-dev.ko +vcan.ko +slcan.ko +ppp_generic.ko +bsd_comp.ko +ppp_deflate.ko +ppp_mppe.ko +pppox.ko +pptp.ko +slhc.ko +wwan.ko +rtl8150.ko +r8152.ko +asix.ko +ax88179_178a.ko +cdc_ether.ko +cdc_eem.ko +usbnet.ko +cdc_ncm.ko +aqc111.ko +r8153_ecm.ko +cdc-acm.ko +usbserial.ko +ftdi_sio.ko +hci_uart.ko +btsdio.ko +btbcm.ko +btqca.ko +8021q.ko +can.ko +can-raw.ko +can-bcm.ko +can-gw.ko +bluetooth.ko +rfcomm.ko +hidp.ko +l2tp_core.ko +l2tp_ppp.ko +tipc.ko +diag.ko +rfkill.ko +6lowpan.ko +nhc_dest.ko +nhc_fragment.ko +nhc_hop.ko +nhc_ipv6.ko +nhc_mobility.ko +nhc_routing.ko +nhc_udp.ko +ieee802154_6lowpan.ko +ieee802154.ko +ieee802154_socket.ko +mac802154.ko +nfc.ko diff --git a/modules/modules.load.vendor_boot b/modules/modules.load.vendor_boot new file mode 100644 index 0000000..98e7405 --- /dev/null +++ b/modules/modules.load.vendor_boot @@ -0,0 +1,120 @@ +sec_boot_stat.ko +sec_log_buf.ko +sec_arm64_ap_context.ko +gh_arm_drv.ko +sched-walt.ko +qcom_ipc_logging.ko +qcom-pdc.ko +phy-qcom-ufs.ko +phy-qcom-ufs-qmp-v4-pineapple.ko +phy-qcom-ufs-qrbtc-sdm845.ko +pinctrl-msm.ko +pinctrl-pineapple.ko +pinctrl-cliffs.ko +pinctrl-volcano.ko +clk-qcom.ko +clk-dummy.ko +gdsc-regulator.ko +clk-rpmh.ko +dispcc-pineapple.ko +gcc-cliffs.ko +gcc-pineapple.ko +gcc-volcano.ko +camcc-cliffs.ko +camcc-pineapple.ko +gpucc-pineapple.ko +videocc-pineapple.ko +tcsrcc-pineapple.ko +qcom_aoss.ko +cmd-db.ko +crm.ko +mdt_loader.ko +qcom_rpmh.ko +smem.ko +mem_buf.ko +mem_buf_dev.ko +mem_buf_msgq.ko +secure_buffer.ko +socinfo.ko +dcc_v2.ko +qcom_wdt_core.ko +memory_dump_v2.ko +qcom_cpu_vendor_hooks.ko +crypto-qti.ko +hwkm.ko +tmecom-intf.ko +gic_intr_routing.ko +minidump.ko +gh_cpusys_vm_mem_access.ko +qcom-pmu-lib.ko +dcvs_fp.ko +qcom-dcvs.ko +qcom_scmi_client.ko +qcom_cpucp.ko +debug_symbol.ko +proxy-consumer.ko +rpmh-regulator.ko +stub-regulator.ko +debug-regulator.ko +arm_smmu.ko +msm_dma_iommu_mapping.ko +qcom_iommu_util.ko +iommu-logger.ko +qti-regmap-debugfs.ko +qcom-spmi-pmic.ko +qcom_dma_heaps.ko +spmi-pmic-arb.ko +rtc-pm8xxx.ko +i2c-gpio.ko +qcom-dload-mode.ko +qcom-reboot-reason.ko +qcom_tsens.ko +thermal_pause.ko +bcl_pmic5.ko +cpu_hotplug.ko +thermal_minidump.ko +softdog.ko +qcom-cpufreq-hw.ko +cqhci.ko +ufs_qcom.ko +ufshcd-crypto-qti.ko +qcom_scmi_vendor.ko +qcom-scm.ko +qcom-ipcc.ko +msm_qmp.ko +qcom_hwspinlock.ko +gh_virt_wdt.ko +gh_dbl.ko +gh_msgq.ko +gh_rm_drv.ko +gunyah_loader.ko +gunyah_qcom.ko +qcom_llcc_pmu.ko +nvmem_qcom-spmi-sdam.ko +icc-bcm-voter.ko +icc-rpmh.ko +qnoc-cliffs.ko +qnoc-volcano.ko +qnoc-pineapple.ko +qnoc-qos.ko +icc-debug.ko +icc-test.ko +sec_class.ko +sec_key_notifier.ko +sec_param.ko +sec_qc_debug.ko +sec_qc_upload_cause.ko +sec_qc_logger.ko +sec_qc_summary.ko +sec_debug.ko +sec_pmsg.ko +sec_upload_cause.ko +sec_crashkey.ko +sec_crashkey_long.ko +sec_debug_region.ko +sec_pm_log.ko +abc.ko +qrtr.ko +qrtr-gunyah.ko +sec_qc_param.ko +sec_qc_dbg_partition.ko diff --git a/odm.prop b/odm.prop new file mode 100644 index 0000000..dc7dd4d --- /dev/null +++ b/odm.prop @@ -0,0 +1,3 @@ +# Miscellaneous +ro.vendor.qti.va_odm.support=1 + diff --git a/overlay/FrameworksResTarget/Android.bp b/overlay/FrameworksResTarget/Android.bp new file mode 100644 index 0000000..a90c9b7 --- /dev/null +++ b/overlay/FrameworksResTarget/Android.bp @@ -0,0 +1,9 @@ +// +// Copyright (C) 2024 The LineageOS Project +// SPDX-License-Identifier: Apache-2.0 +// + +runtime_resource_overlay { + name: "FrameworksResTarget", + vendor: true, +} diff --git a/overlay/FrameworksResTarget/AndroidManifest.xml b/overlay/FrameworksResTarget/AndroidManifest.xml new file mode 100644 index 0000000..0fde194 --- /dev/null +++ b/overlay/FrameworksResTarget/AndroidManifest.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/overlay/FrameworksResTarget/res/values/config.xml b/overlay/FrameworksResTarget/res/values/config.xml new file mode 100644 index 0000000..a6d2d43 --- /dev/null +++ b/overlay/FrameworksResTarget/res/values/config.xml @@ -0,0 +1,10 @@ + + + true + false + true + true + true + true + 120 + diff --git a/product.prop b/product.prop new file mode 100644 index 0000000..2f05aeb --- /dev/null +++ b/product.prop @@ -0,0 +1,67 @@ +# Audio +aaudio.hw_burst_min_usec=2000 +aaudio.mmap_exclusive_policy=2 +aaudio.mmap_policy=2 +af.fast_track_multiplier=1 +audio.deep_buffer.media=true +audio.offload.min.duration.secs=30 +audio.offload.video=true +audio.sys.mute.latency.factor=2 +audio.sys.noisy.broadcast.delay=500 +audio.sys.offload.pstimeout.secs=3 +audio.sys.routing.latency=0 + +# Bluetooth +bluetooth.device.class_of_device=90,2,12 +bluetooth.profile.a2dp.source.enabled=true +bluetooth.profile.asha.central.enabled=true +bluetooth.profile.avrcp.target.enabled=true +bluetooth.profile.bap.broadcast.assist.enabled=true +bluetooth.profile.bap.broadcast.source.enabled=true +bluetooth.profile.bap.unicast.client.enabled=true +bluetooth.profile.bas.client.enabled=false +bluetooth.profile.ccp.server.enabled=true +bluetooth.profile.csip.set_coordinator.enabled=true +bluetooth.profile.gatt.enabled=true +bluetooth.profile.hap.client.enabled=false +bluetooth.profile.hfp.ag.enabled=true +bluetooth.profile.hid.device.enabled=true +bluetooth.profile.hid.host.enabled=true +bluetooth.profile.map.server.enabled=true +bluetooth.profile.mcp.server.enabled=true +bluetooth.profile.opp.enabled=true +bluetooth.profile.pan.nap.enabled=true +bluetooth.profile.pan.panu.enabled=true +bluetooth.profile.pbap.server.enabled=true +bluetooth.profile.sap.server.enabled=true +bluetooth.profile.vcp.controller.enabled=true +persist.bluetooth.bqr.event_mask=0 +persist.bluetooth.bqr.min_interval_ms=0 +persist.bluetooth.samsung.a2dp_offload.cap=sbc-aptx-ssc-hifi + +# Media +media.stagefright.audio.deep=false + +# Miscellaneous +remote_provisioning.enable_rkpd=true +remote_provisioning.hostname=remoteprovisioning.googleapis.com +restore.feature.use_samsung_smart_switch_flow=1 +ro.af.client_heap_size_kbyte=7168 +ro.boot.uwbcountrycode=ff +ro.com.google.cdb.spa1=bsxasm1 +ro.com.google.clientidbase=android-samsung-ss +ro.com.google.clientidbase.tx=android-samsung-rvod2 +ro.com.google.gmsversion=14_202406 +ro.dalvik.vm.enable_uffd_gc=true +ro.frp.pst=/dev/block/persistent +ro.opa.eligible_device=true +ro.product.cpu.pagesize.max=4096 +ro.setupwizard.mode=OPTIONAL +ro.setupwizard.rotation_locked=false +ro.setupwizard.wifi_on_exit=false +setupwizard.feature.enable_quick_start_flow=true +setupwizard.feature.enable_stencil_partner_customization=1 +setupwizard.feature.support_oem_large_screen_landscape_temporary_by_sys_prop=true +setupwizard.phenotype_sync_timeout_ms=90000 +setupwizard.theme=glif_v3_light + diff --git a/proprietary-files.txt b/proprietary-files.txt new file mode 100644 index 0000000..673ea3c --- /dev/null +++ b/proprietary-files.txt @@ -0,0 +1,2663 @@ +# Unpinned blobs from e3qxxx-user 14 UP1A.231005.007 S928BXXS3AXI8 release-keys + +# ADSP +vendor/bin/adsprpcd +vendor/etc/init/vendor.qti.adsprpc-guestos-service.rc +vendor/lib64/libadsp_default_listener.so +vendor/lib64/libadsprpc.so +vendor/lib64/libvmmem.so + +# ADSP modules +vendor/lib/rfsa/adsp/libdsp_streamer_binning.so +vendor/lib/rfsa/adsp/libhme_dsp_skel.so +vendor/lib64/rfs/dsp/snap/libQnnHtpV75Skel.so +vendor/lib64/rfs/dsp/libSnpeHtpV75Skel.so +vendor/lib64/rfs/dsp/libapn_dsp_skel.so +vendor/lib64/rfs/dsp/libbitml_nsp_75na_skel.so +vendor/lib64/rfs/dsp/libdpp_engine_skel.so +vendor/lib64/rfs/dsp/libdspCV_skel.so +vendor/lib64/rfs/dsp/libdsphist_qc_skel.so +vendor/lib64/rfs/dsp/libdspmc_qc_skel.so +vendor/lib64/rfs/dsp/libevadsp.so +vendor/lib64/rfs/dsp/libfastcvadsp.so +vendor/lib64/rfs/dsp/libfastcvdsp_skel.so +vendor/lib64/rfs/dsp/libhdr_skel.so +vendor/lib64/rfs/dsp/libqsegnetengine_dsp_skel.so +vendor/lib64/rfs/dsp/libscveT2T_skel.so +vendor/lib64/rfs/dsp/libworker_pool.so + +# ANT +system_ext/lib64/com.qualcomm.qti.ant@1.0.so + +# Audio +system_ext/lib64/vendor.qti.hardware.audiohalext@1.0.so +vendor/bin/hw/android.hardware.audio.service +vendor/bin/hw/android.hardware.audio.service_64 +vendor/etc/init/android.hardware.audio.service.rc +vendor/etc/init/android.hardware.audio.service_64.rc +vendor/lib64/hw/android.hardware.audio.effect@2.0-impl.so +vendor/lib64/hw/android.hardware.audio.effect@4.0-impl.so +vendor/lib64/hw/android.hardware.audio.effect@5.0-impl.so +vendor/lib64/hw/android.hardware.audio.effect@6.0-impl.so +vendor/lib64/hw/android.hardware.audio.effect@7.0-impl.so +vendor/lib64/hw/android.hardware.audio@2.0-impl.so +vendor/lib64/hw/android.hardware.audio@4.0-impl.so +vendor/lib64/hw/android.hardware.audio@5.0-impl.so +vendor/lib64/hw/android.hardware.audio@6.0-impl.so +vendor/lib64/hw/android.hardware.audio@7.0-impl.so +vendor/lib64/hw/android.hardware.audio@7.1-impl.so +vendor/lib64/hw/audio.primary.default.so +vendor/lib64/hw/audio.r_submix.default.so +vendor/lib64/hw/audio.usb.default.so +vendor/lib64/libPeripheralStateUtils.so +vendor/lib64/lib_SamsungRec_08020.so +vendor/lib64/lib_lvacfs.so +vendor/lib64/libagm.so +vendor/lib64/libagmclient.so +vendor/lib64/libalsautils.so +vendor/lib64/libar-acdb.so +vendor/lib64/libar-gpr.so +vendor/lib64/libar-gsl.so +vendor/lib64/libar-pal.so +vendor/lib64/libarmemlog.so +vendor/lib64/libats.so +vendor/lib64/libaudio_log_utils.so +vendor/lib64/libdiag.so +vendor/lib64/libfloatingfeature.so +vendor/lib64/libjson.so +vendor/lib64/liblx-ar_util.so +vendor/lib64/liblx-osal.so +vendor/lib64/libmediautils_vendor.so +vendor/lib64/libminkdescriptor.so +vendor/lib64/libminksocket_vendor.so +vendor/lib64/libpdmapper.so +vendor/lib64/libpdnotifier.so +vendor/lib64/libqcbor.so +vendor/lib64/libqmi_cci.so +vendor/lib64/libqmi_common_so.so +vendor/lib64/libqmi_encdec.so +vendor/lib64/libqrtr.so +vendor/lib64/librecordalive.so +vendor/lib64/libsecaudioinfo.so +vendor/lib64/libsecaudiolevel.so +vendor/lib64/libsecnativefeature.so +vendor/lib64/libspeakercalibration.so +vendor/lib64/libvui_intf.so +vendor/lib64/vendor.qti.hardware.AGMIPC@1.0-impl.so +vendor/lib64/vendor.qti.hardware.pal@1.0-impl.so +vendor/lib64/vendor.qti.hardware.pal@1.0.so + +# Audio (FX modules) +vendor/lib64/soundfx/libasphere.so +vendor/lib64/soundfx/libaudioeffectoffload.so +vendor/lib64/soundfx/libaudiosaplus_sec.so +vendor/lib64/soundfx/libdynproc.so +vendor/lib64/soundfx/libhapticgenerator.so +vendor/lib64/soundfx/libmyspace.so +vendor/lib64/soundfx/libqcompostprocbundle.so +vendor/lib64/soundfx/libqcomvisualizer.so +vendor/lib64/soundfx/libqcomvoiceprocessing.so +vendor/lib64/soundfx/libquasar.so +vendor/lib64/soundfx/libsamsungSoundbooster_plus.so +vendor/lib64/soundfx/libshoebox.so +vendor/lib64/soundfx/libswdap.so +vendor/lib64/soundfx/libswspatializer.so +vendor/lib64/soundfx/libvolumelistener.so +vendor/lib64/audioclient-types-aidl-cpp.so +vendor/lib64/audiopolicy-types-aidl-cpp.so +vendor/lib64/framework-permission-aidl-cpp.so +vendor/lib64/lib_SoundAlive_3DPosition_ver202.so +vendor/lib64/lib_SoundAlive_AlbumArt_ver105.so +vendor/lib64/lib_SoundAlive_play_plus_ver800.so +vendor/lib64/lib_SoundBooster_ver2000.so +vendor/lib64/libprofileparamstorage.so +vendor/lib64/libsecaudiocoreutils.so +vendor/lib64/libspatializerparamstorage.so +vendor/lib64/libvibratorutils.so +vendor/lib64/spatializer-aidl-cpp.so + +# Audio configs +etc/audio_effects.xml +etc/audio_effects_common.conf +vendor/etc/audio/sku_cliffs/audio_effects.conf +vendor/etc/audio/sku_cliffs/audio_effects.xml +vendor/etc/audio/sku_cliffs/mixer_paths_cliffs_cdp.xml +vendor/etc/audio/sku_cliffs/mixer_paths_cliffs_mtp.xml +vendor/etc/audio/sku_cliffs/mixer_paths_cliffs_qrd.xml +vendor/etc/audio/sku_cliffs/resourcemanager_cliffs_cdp.xml +vendor/etc/audio/sku_cliffs/resourcemanager_cliffs_mtp.xml +vendor/etc/audio/sku_cliffs/resourcemanager_cliffs_qrd.xml +vendor/etc/audio/sku_cliffs_qssi/audio_policy_configuration.xml +vendor/etc/audio/sku_pineapple/audio_effects.conf +vendor/etc/audio/sku_pineapple/audio_effects.xml +vendor/etc/audio/sku_pineapple/mixer_paths.xml +vendor/etc/audio/sku_pineapple/mixer_paths_pineapple_cdp.xml +vendor/etc/audio/sku_pineapple/mixer_paths_pineapple_cdp_wsa883x.xml +vendor/etc/audio/sku_pineapple/mixer_paths_pineapple_mtp.xml +vendor/etc/audio/sku_pineapple/mixer_paths_pineapple_qrd.xml +vendor/etc/audio/sku_pineapple/mixer_paths_pineapple_qrd_sku2.xml +vendor/etc/audio/sku_pineapple/resourcemanager.xml +vendor/etc/audio/sku_pineapple/resourcemanager_pineapple_cdp.xml +vendor/etc/audio/sku_pineapple/resourcemanager_pineapple_mtp.xml +vendor/etc/audio/sku_pineapple/resourcemanager_pineapple_qrd.xml +vendor/etc/audio/sku_pineapple/resourcemanager_pineapple_qrd_sku2.xml +vendor/etc/audio/sku_pineapple_qssi/audio_policy_configuration.xml +vendor/etc/audio_effects.xml +vendor/etc/audio_effects_haptic.xml +vendor/etc/audio_effects_sec.xml +vendor/etc/audio_effects_spatializer.xml +vendor/etc/audio_policy_configuration.xml +vendor/etc/audio_policy_configuration_base.xml +vendor/etc/audio_policy_volumes.xml +vendor/etc/bluetooth_audio_policy_configuration.xml +vendor/etc/bluetooth_qti_audio_policy_configuration.xml +vendor/etc/bluetooth_qti_hearing_aid_audio_policy_configuration.xml +vendor/etc/default_volume_tables.xml +vendor/etc/hearing_aid_audio_policy_configuration.xml +vendor/etc/r_submix_audio_policy_configuration.xml +vendor/etc/situation_audio_policy_volumes_sec.xml +vendor/etc/usb_audio_policy_configuration.xml + +# Automotive +vendor/lib64/vendor.qti.hardware.automotive.vehicle@1.0.so + +# Bluetooth +vendor/bin/hw/android.hardware.bluetooth@1.1-service-qti +vendor/etc/init/android.hardware.bluetooth@1.1-service-qti.rc +vendor/lib64/hw/vendor.qti.hardware.bttpi-impl.so +vendor/lib64/libqti_vndfwk_detect_vendor.so +vendor/lib64/libsoc_helper.so +vendor/lib64/vendor.qti.hardware.bttpi-V3-ndk.so +vendor/lib64/vendor.samsung.hardware.bluetooth@2.0.so + +# Bluetooth (A2DP) +system_ext/lib64/com.qualcomm.qti.bluetooth_audio@1.0.so +vendor/lib64/hw/android.hardware.bluetooth.audio@2.0-impl.so +vendor/lib64/hw/audio.bluetooth.default.so +vendor/lib64/hw/audio.bluetooth_qti.default.so +vendor/lib64/hw/vendor.qti.hardware.bluetooth_audio@2.0-impl.so +vendor/lib64/hw/vendor.qti.hardware.bluetooth_audio@2.1-impl.so +vendor/lib64/hw/vendor.qti.hardware.bluetooth_sar@1.1-impl.so +vendor/lib64/hw/vendor.qti.hardware.btconfigstore@1.0-impl.so +vendor/lib64/hw/vendor.qti.hardware.btconfigstore@2.0-impl.so +vendor/lib64/libbluetooth_audio_session.so +vendor/lib64/libbluetooth_audio_session_aidl.so +vendor/lib64/libbluetooth_audio_session_aidl_qti.so +vendor/lib64/libbluetooth_audio_session_qti.so +vendor/lib64/libbluetooth_audio_session_qti_2_1.so +vendor/lib64/libsehbluetooth_audio_session_aidl.so +vendor/lib64/vendor.qti.hardware.bluetooth_audio@2.0.so +vendor/lib64/vendor.qti.hardware.bluetooth_audio@2.1.so +vendor/lib64/vendor.qti.hardware.bluetooth_sar@1.0.so +vendor/lib64/vendor.qti.hardware.bluetooth_sar@1.1.so +vendor/lib64/vendor.qti.hardware.btconfigstore@1.0.so +vendor/lib64/vendor.qti.hardware.btconfigstore@2.0.so +vendor/lib64/vendor.samsung.hardware.bluetooth.audio-V2-ndk.so + +# Camera +lib64/libarcsoft_dualcam_portraitlighting.so +lib64/libarcsoft_single_cam_glasses_seg.so +lib64/libmpbase.so +priv-app/SCameraSDKService/lib/arm64/libmpbase.so +system_ext/lib64/vendor.qti.hardware.seccam@1.0.so +vendor/bin/hw/android.hardware.camera.provider-V1-external-service +vendor/etc/init/android.hardware.camera.provider-V1-external-service.rc +vendor/lib64/camera/components/com.qti.eisv2.so +vendor/lib64/camera/components/com.qti.eisv3.so +vendor/lib64/camera/components/com.qti.hvx.addconstant.so +vendor/lib64/camera/components/com.qti.hvx.binning.so +vendor/lib64/camera/components/com.qti.hwcfg.bps.so +vendor/lib64/camera/components/com.qti.hwcfg.ife.so +vendor/lib64/camera/components/com.qti.hwcfg.ipe.so +vendor/lib64/camera/components/com.qti.node.afbfusion.so +vendor/lib64/camera/components/com.qti.node.aon.so +vendor/lib64/camera/components/com.qti.node.customhwnode.so +vendor/lib64/camera/components/com.qti.node.depth.so +vendor/lib64/camera/components/com.qti.node.depthprovider.so +vendor/lib64/camera/components/com.qti.node.dewarp.so +vendor/lib64/camera/components/com.qti.node.dummydepth.so +vendor/lib64/camera/components/com.qti.node.dummyrtb.so +vendor/lib64/camera/components/com.qti.node.dummysat.so +vendor/lib64/camera/components/com.qti.node.eisv2.so +vendor/lib64/camera/components/com.qti.node.eisv3.so +vendor/lib64/camera/components/com.qti.node.evadepth.so +vendor/lib64/camera/components/com.qti.node.evs.so +vendor/lib64/camera/components/com.qti.node.fcv.so +vendor/lib64/camera/components/com.qti.node.formatconversion.so +vendor/lib64/camera/components/com.qti.node.gme.so +vendor/lib64/camera/components/com.qti.node.gpu.so +vendor/lib64/camera/components/com.qti.node.gyrornn.so +vendor/lib64/camera/components/com.qti.node.hdr10pgen.so +vendor/lib64/camera/components/com.qti.node.hdr10phist.so +vendor/lib64/camera/components/com.qti.node.itofpreprocess.so +vendor/lib64/camera/components/com.qti.node.memcpy.so +vendor/lib64/camera/components/com.qti.node.ml.so +vendor/lib64/camera/components/com.qti.node.mlinference.so +vendor/lib64/camera/components/com.qti.node.muxer.so +vendor/lib64/camera/components/com.qti.node.remosaic.so +vendor/lib64/camera/components/com.qti.node.seg.so +vendor/lib64/camera/components/com.qti.node.stich.so +vendor/lib64/camera/components/com.qti.node.swaidenoiser.so +vendor/lib64/camera/components/com.qti.node.swbestats.so +vendor/lib64/camera/components/com.qti.node.swcac.so +vendor/lib64/camera/components/com.qti.node.swec.so +vendor/lib64/camera/components/com.qti.node.swfusion.so +vendor/lib64/camera/components/com.qti.node.swhme.so +vendor/lib64/camera/components/com.qti.node.swlsc.so +vendor/lib64/camera/components/com.qti.node.swmctf.so +vendor/lib64/camera/components/com.qti.node.swpdpc.so +vendor/lib64/camera/components/com.qti.node.swpreprocess.so +vendor/lib64/camera/components/com.qti.node.swregistration.so +vendor/lib64/camera/components/com.qti.node.swvrt.so +vendor/lib64/camera/components/com.qti.stats.aecxcore.so +vendor/lib64/camera/components/com.qti.stats.af.so +vendor/lib64/camera/components/com.qti.stats.afc.so +vendor/lib64/camera/components/com.qti.stats.afd.so +vendor/lib64/camera/components/com.qti.stats.afwrapper.so +vendor/lib64/camera/components/com.qti.stats.asd.so +vendor/lib64/camera/components/com.qti.stats.awb.so +vendor/lib64/camera/components/com.qti.stats.awbr.so +vendor/lib64/camera/components/com.qti.stats.awbwrapper.so +vendor/lib64/camera/components/com.qti.stats.cnndriver.so +vendor/lib64/camera/components/com.qti.stats.haf.so +vendor/lib64/camera/components/com.qti.stats.hafoverride.so +vendor/lib64/camera/components/com.qti.stats.localhistogram.so +vendor/lib64/camera/components/com.qti.stats.pdlib.so +vendor/lib64/camera/components/com.qti.stats.pdlibsony.so +vendor/lib64/camera/components/com.qti.stats.pdlibwrapper.so +vendor/lib64/camera/components/com.qti.stats.roimixer.so +vendor/lib64/camera/components/com.qti.stats.roimixerlib.so +vendor/lib64/camera/components/com.qti.stats.statsgenerator.so +vendor/lib64/camera/components/com.qti.stats.tracker.so +vendor/lib64/camera/components/com.qtistatic.stats.aec.so +vendor/lib64/camera/components/com.qtistatic.stats.af.so +vendor/lib64/camera/components/com.qtistatic.stats.awb.so +vendor/lib64/camera/components/com.qtistatic.stats.pdlib.so +vendor/lib64/camera/components/com.samsung.node.capture_fusion.so +vendor/lib64/camera/components/com.samsung.node.realtimebokeh.so +vendor/lib64/camera/components/com.samsung.node.resolution.so +vendor/lib64/camera/components/com.samsung.node.smooth_transition.so +vendor/lib64/camera/components/com.samsung.node.uniplugin_binning.so +vendor/lib64/camera/components/com.samsung.node.uniplugin_capture.so +vendor/lib64/camera/components/com.samsung.node.uniplugin_preview.so +vendor/lib64/camera/components/com.samsung.node.uniplugin_record_portrait_depth_extract.so +vendor/lib64/camera/components/com.samsung.node.uniplugin_record_portrait_render.so +vendor/lib64/camera/components/com.samsung.node.uniplugin_recording.so +vendor/lib64/camera/components/com.samsung.node.uniplugin_vdis.so +vendor/lib64/camera/components/com.ss.hwcfg.bps.so +vendor/lib64/camera/components/com.ss.hwcfg.ife.so +vendor/lib64/camera/components/com.ss.hwcfg.ipe.so +vendor/lib64/camera/components/com.ss.stats.aec.so +vendor/lib64/camera/components/com.ss.stats.af.so +vendor/lib64/camera/components/com.ss.stats.awb.so +vendor/lib64/camera/components/com.ss.stats.pdlib.so +vendor/lib64/camera/components/libTsAeFront_e3.so +vendor/lib64/camera/components/libTsAe_e3.so +vendor/lib64/camera/components/libcamxevainterface.so +vendor/lib64/camera/components/libdepthmapwrapper_itof.so +vendor/lib64/camera/components/libdepthmapwrapper_secure.so +vendor/lib64/camera/bitmlconfig.bin +vendor/lib64/camera/camxfl115indices.bin +vendor/lib64/camera/camxfl300v1indices.bin +vendor/lib64/camera/camxfl300v2indices.bin +vendor/lib64/camera/camxflcustom300indices.bin +vendor/lib64/camera/com.qti.tuned.default.bin +vendor/lib64/camera/com.samsung.ois.mcu_stm32g.so +vendor/lib64/camera/com.samsung.sensor.hi1337.so +vendor/lib64/camera/com.samsung.sensor.hi847.so +vendor/lib64/camera/com.samsung.sensor.imx258.so +vendor/lib64/camera/com.samsung.sensor.imx374.so +vendor/lib64/camera/com.samsung.sensor.imx471.so +vendor/lib64/camera/com.samsung.sensor.imx564.so +vendor/lib64/camera/com.samsung.sensor.imx596.so +vendor/lib64/camera/com.samsung.sensor.imx754.so +vendor/lib64/camera/com.samsung.sensor.imx854.so +vendor/lib64/camera/com.samsung.sensor.s5k3j1.so +vendor/lib64/camera/com.samsung.sensor.s5k3k1.so +vendor/lib64/camera/com.samsung.sensor.s5k3lu.so +vendor/lib64/camera/com.samsung.sensor.s5kgn3.so +vendor/lib64/camera/com.samsung.sensor.s5khp2.so +vendor/lib64/camera/com.samsung.sensormodule.0_lsi_s5khp2.bin +vendor/lib64/camera/com.samsung.sensormodule.12_lsi_s5k3lu_full.bin +vendor/lib64/camera/com.samsung.sensormodule.1_lsi_s5k3lu.bin +vendor/lib64/camera/com.samsung.sensormodule.2_sony_imx564.bin +vendor/lib64/camera/com.samsung.sensormodule.3_sony_imx754_x3.bin +vendor/lib64/camera/com.samsung.sensormodule.6_sony_imx754_x10.bin +vendor/lib64/camera/com.samsung.sensormodule.6_sony_imx854.bin +vendor/lib64/camera/com.samsung.tuned.lsi_s5k3lu.bin +vendor/lib64/camera/com.samsung.tuned.lsi_s5khp2.bin +vendor/lib64/camera/com.samsung.tuned.sony_imx564.bin +vendor/lib64/camera/com.samsung.tuned.sony_imx754.bin +vendor/lib64/camera/com.samsung.tuned.sony_imx854.bin +vendor/lib64/camera/f_dual_calibration.bin +vendor/lib64/camera/fdconfigpreview.bin +vendor/lib64/camera/fdconfigpreviewlite.bin +vendor/lib64/camera/fdconfigsecure.bin +vendor/lib64/camera/fdconfigvideo.bin +vendor/lib64/camera/fdconfigvideolite.bin +vendor/lib64/camera/multical_param.bin +vendor/lib64/camera/t2_w_dual_calibration.bin +vendor/lib64/camera/t_t10_dual_calibration.bin +vendor/lib64/camera/uw_dual_calibration.bin +vendor/lib64/camera/w_dual_calibration.bin +vendor/lib64/hw/camera.qcom.sm8650.so +vendor/lib64/hw/camera.qcom.so +vendor/lib64/hw/camera.unihal.default.so +vendor/lib64/hw/com.qti.chi.offline.so +vendor/lib64/hw/com.qti.chi.override.so +vendor/lib64/android.hardware.camera.provider-V1-external-impl.so +vendor/lib64/camera.device-external-impl.so +vendor/lib64/camx.device-impl.so +vendor/lib64/com.qti.camx.chiiqutils.so +vendor/lib64/com.qti.feature2.afbrckt.so +vendor/lib64/com.qti.feature2.anchorsync.so +vendor/lib64/com.qti.feature2.demux.so +vendor/lib64/com.qti.feature2.derivedoffline.so +vendor/lib64/com.qti.feature2.fusion.so +vendor/lib64/com.qti.feature2.generic.so +vendor/lib64/com.qti.feature2.gs.sm8650.so +vendor/lib64/com.qti.feature2.hdr.so +vendor/lib64/com.qti.feature2.mcreprocrt.so +vendor/lib64/com.qti.feature2.memcpy.so +vendor/lib64/com.qti.feature2.metadataserializer.so +vendor/lib64/com.qti.feature2.mfsr.so +vendor/lib64/com.qti.feature2.ml.so +vendor/lib64/com.qti.feature2.mux.so +vendor/lib64/com.qti.feature2.qcfa.so +vendor/lib64/com.qti.feature2.rawhdr.so +vendor/lib64/com.qti.feature2.realtimeserializer.so +vendor/lib64/com.qti.feature2.rt.so +vendor/lib64/com.qti.feature2.rtmcx.so +vendor/lib64/com.qti.feature2.serializer.so +vendor/lib64/com.qti.feature2.statsregeneration.so +vendor/lib64/com.qti.feature2.stub.so +vendor/lib64/com.qti.feature2.swmf.so +vendor/lib64/com.qti.qseeaon.so +vendor/lib64/com.qti.qseeutils.so +vendor/lib64/com.qti.stats.common.so +vendor/lib64/libOpenCL.so +vendor/lib64/libPdSdCore.so +vendor/lib64/libSNPE.so +vendor/lib64/libarcsoft_aieffectpk_detection.so +vendor/lib64/libarcsoft_aieffectpk_dualcam_video_bokeh.so +vendor/lib64/libarcsoft_aieffectpk_video.so +vendor/lib64/libarcsoft_aieffectpk_video_bokeh.so +vendor/lib64/libarcsoft_aieffectpk_video_depth.so +vendor/lib64/libarcsoft_aieffectpk_video_effect.so +vendor/lib64/libarcsoft_aieffectpk_video_plight.so +vendor/lib64/libarcsoft_aiscenedetection.so +vendor/lib64/libarcsoft_deflicker_native.so +vendor/lib64/libarcsoft_dualcam_portraitlighting_preview.so +vendor/lib64/libarcsoft_object_tracking.so +vendor/lib64/libatccore.so +vendor/lib64/libbitmlenginev2.so +vendor/lib64/libcamxcommonutils.so +vendor/lib64/libcamxexternalformatutils.so +vendor/lib64/libcamxfdengine.so +vendor/lib64/libcamxhwnodecontext.so +vendor/lib64/libcamxifestriping.so +vendor/lib64/libcamximageformatutils.so +vendor/lib64/libcamxncsdatafactory.so +vendor/lib64/libcamxqsatalgo.so +vendor/lib64/libcamxsettingsmanager.so +vendor/lib64/libcamxstatscore.so +vendor/lib64/libcamxswispiqmodule.so +vendor/lib64/libcamxswprocessalgo.so +vendor/lib64/libcamxtintlessalgo.so +vendor/lib64/libchifeature2.so +vendor/lib64/libchilog.so +vendor/lib64/libcom.qti.chinodeutils.so +vendor/lib64/libcommonchiutils.so +vendor/lib64/libcv_common.so +vendor/lib64/libdisplayconfig.qti.so +vendor/lib64/libdsmanager.so +vendor/lib64/libdualcam_refocus_video.so +vendor/lib64/libeva.so +vendor/lib64/libfloatingfeature_hal.so +vendor/lib64/libgralloc.qti.so +vendor/lib64/libgrallocusage.so +vendor/lib64/libhdr10plus.so +vendor/lib64/libhypervintf.so +vendor/lib64/libisphwsetting.so +vendor/lib64/libmeminfo.so +vendor/lib64/libmmcamera_bestats.so +vendor/lib64/libmmcamera_cac.so +vendor/lib64/libmmcamera_lscv35.so +vendor/lib64/libmmcamera_mfnr.so +vendor/lib64/libmmcamera_mfnr_t4.so +vendor/lib64/libmmcamera_pdpc.so +vendor/lib64/libmpbase.so +vendor/lib64/libmulticam_image_optical_zoom.so +vendor/lib64/libmulticam_video_optical_zoom.so +vendor/lib64/libopencv.so +vendor/lib64/libopencv3a.so +vendor/lib64/libos.so +vendor/lib64/libqshcamera.so +vendor/lib64/libqti_vndfwk_detect.so +vendor/lib64/libscveCommon.so +vendor/lib64/libscveCommon_stub.so +vendor/lib64/libscveObjectSegmentation.so +vendor/lib64/libscveObjectTracker.so +vendor/lib64/libscveObjectTracker_stub.so +vendor/lib64/libsecril-client.so +vendor/lib64/libsecsettingsmanager.so +vendor/lib64/libsensorlistener.so +vendor/lib64/libsensorndkbridge.so +vendor/lib64/libsnap_vndk.so +vendor/lib64/libsns_direct_channel_stub.so +vendor/lib64/libsnsapi.so +vendor/lib64/libsynx.so +vendor/lib64/libtflitecore.so +vendor/lib64/libthreadutils.so +vendor/lib64/libtswrappercommon.so +vendor/lib64/libunidatamanager.so +vendor/lib64/libuniplugin.so +vendor/lib64/unihal_android.so +vendor/lib64/unihal_cutils.so +vendor/lib64/unihal_entry.so +vendor/lib64/vendor.qti.hardware.camera.aon-V1-ndk.so +vendor/lib64/vendor.qti.hardware.camera.aon-service-impl.so +vendor/lib64/vendor.qti.hardware.camera.offlinecamera-V1-ndk.so +vendor/lib64/vendor.qti.hardware.camera.offlinecamera-V2-ndk.so +vendor/lib64/vendor.qti.hardware.camera.offlinecamera-service-impl.so +vendor/lib64/vendor.qti.hardware.camera.postproc@1.0-service-impl.so +vendor/lib64/vendor.qti.hardware.camera.postproc@1.0.so +vendor/lib64/vendor.samsung.hardware.hyper-V2-ndk.so +vendor/lib64/vendor.samsung.hardware.thermal@1.0.so + +# Camera firmware +vendor/firmware/CAMERA_ICP.b00 +vendor/firmware/CAMERA_ICP.b01 +vendor/firmware/CAMERA_ICP.b02 +vendor/firmware/CAMERA_ICP.b03 +vendor/firmware/CAMERA_ICP.b04 +vendor/firmware/CAMERA_ICP.b05 +vendor/firmware/CAMERA_ICP.b06 +vendor/firmware/CAMERA_ICP.b07 +vendor/firmware/CAMERA_ICP.b08 +vendor/firmware/CAMERA_ICP.b09 +vendor/firmware/CAMERA_ICP.b10 +vendor/firmware/CAMERA_ICP.b11 +vendor/firmware/CAMERA_ICP.b12 +vendor/firmware/CAMERA_ICP.b13 +vendor/firmware/CAMERA_ICP.b14 +vendor/firmware/CAMERA_ICP.b15 +vendor/firmware/CAMERA_ICP.b16 +vendor/firmware/CAMERA_ICP.b17 +vendor/firmware/CAMERA_ICP.b18 +vendor/firmware/CAMERA_ICP.b19 +vendor/firmware/CAMERA_ICP.b20 +vendor/firmware/CAMERA_ICP.elf +vendor/firmware/CAMERA_ICP.mbn +vendor/firmware/CAMERA_ICP.mdt +vendor/firmware/CAMERA_ICP_170.elf + +# CDSP +vendor/bin/cdsprpcd +vendor/etc/init/vendor.qti.cdsprpc-service.rc +vendor/lib64/libcdsp_default_listener.so +vendor/lib64/libcdsprpc.so +vendor/lib64/libfastcvdsp_stub.so +vendor/lib64/libfastcvopt.so + +# CNE +system_ext/lib64/com.quicinc.cne.api@1.0.so +system_ext/lib64/com.quicinc.cne.api@1.1.so +system_ext/lib64/com.quicinc.cne.constants@1.0.so +system_ext/lib64/com.quicinc.cne.constants@2.0.so +system_ext/lib64/com.quicinc.cne.constants@2.1.so +system_ext/lib64/com.quicinc.cne.server@1.0.so +system_ext/lib64/com.quicinc.cne.server@2.0.so +system_ext/lib64/com.quicinc.cne.server@2.1.so +system_ext/lib64/com.quicinc.cne.server@2.2.so +system_ext/lib64/vendor.qti.data.factory@1.0.so +system_ext/lib64/vendor.qti.data.factory@2.0.so +system_ext/lib64/vendor.qti.data.factory@2.1.so +system_ext/lib64/vendor.qti.data.factory@2.2.so +system_ext/lib64/vendor.qti.data.factory@2.3.so +system_ext/lib64/vendor.qti.data.factory@2.4.so +system_ext/lib64/vendor.qti.data.factory@2.5.so +system_ext/lib64/vendor.qti.data.factory@2.6.so +system_ext/lib64/vendor.qti.data.factory@2.7.so +system_ext/lib64/vendor.qti.data.factory@2.8.so +system_ext/lib64/vendor.qti.data.mwqem@1.0.so +system_ext/lib64/vendor.qti.data.slm@1.0.so +system_ext/lib64/vendor.qti.hardware.data.cne.internal.api@1.0.so +system_ext/lib64/vendor.qti.hardware.data.cne.internal.constants@1.0.so +system_ext/lib64/vendor.qti.hardware.data.cne.internal.server@1.0.so +system_ext/lib64/vendor.qti.hardware.data.cne.internal.server@1.1.so +system_ext/lib64/vendor.qti.hardware.data.cne.internal.server@1.2.so +system_ext/lib64/vendor.qti.hardware.data.cne.internal.server@1.3.so +system_ext/lib64/vendor.qti.hardware.data.dynamicdds@1.0.so +system_ext/lib64/vendor.qti.hardware.data.dynamicdds@1.1.so +system_ext/lib64/vendor.qti.hardware.data.flow@1.0.so +system_ext/lib64/vendor.qti.hardware.data.flow@1.1.so +system_ext/lib64/vendor.qti.hardware.data.latency@1.0.so +system_ext/lib64/vendor.qti.hardware.data.lce@1.0.so +system_ext/lib64/vendor.qti.hardware.data.qmi@1.0.so +system_ext/lib64/vendor.qti.hardware.mwqemadapter@1.0.so +system_ext/lib64/vendor.qti.hardware.slmadapter@1.0.so +system_ext/lib64/vendor.qti.latency@2.0.so +system_ext/lib64/vendor.qti.latency@2.1.so +system_ext/lib64/vendor.qti.latency@2.2.so +system_ext/lib64/vendor.qti.latency@2.3.so +vendor/etc/cne/mwqem.conf +vendor/etc/cne/profileMwqem.xml +vendor/etc/init/cnd.rc +vendor/lib64/vendor.qti.data.mwqem@1.0.so +vendor/lib64/vendor.qti.data.slm@1.0.so +vendor/lib64/vendor.qti.hardware.cacert@1.0.so +vendor/lib64/vendor.qti.hardware.data.cne.internal.constants@1.0.so +vendor/lib64/vendor.qti.hardware.data.cne.internal.server@1.0.so +vendor/lib64/vendor.qti.hardware.data.cne.internal.server@1.1.so +vendor/lib64/vendor.qti.hardware.data.cne.internal.server@1.2.so +vendor/lib64/vendor.qti.hardware.data.cne.internal.server@1.3.so +vendor/lib64/vendor.qti.hardware.data.dynamicdds@1.0.so +vendor/lib64/vendor.qti.hardware.data.dynamicdds@1.1.so +vendor/lib64/vendor.qti.hardware.data.flow@1.0.so +vendor/lib64/vendor.qti.hardware.data.flow@1.1.so +vendor/lib64/vendor.qti.hardware.data.latency@1.0.so +vendor/lib64/vendor.qti.hardware.data.lce@1.0.so +vendor/lib64/vendor.qti.hardware.mwqemadapter@1.0.so +vendor/lib64/vendor.qti.hardware.slmadapter@1.0.so +vendor/lib64/vendor.qti.latency@2.0.so +vendor/lib64/vendor.qti.latency@2.1.so +vendor/lib64/vendor.qti.latency@2.2.so + +# Configstore +system_ext/lib64/vendor.qti.hardware.capabilityconfigstore@1.0.so +vendor/bin/hw/vendor.qti.hardware.capabilityconfigstore@1.0-service +vendor/etc/init/vendor.qti.hardware.capabilityconfigstore@1.0-service.rc +vendor/lib64/hw/vendor.qti.hardware.capabilityconfigstore@1.0-impl.so +vendor/lib64/vendor.qti.hardware.capabilityconfigstore@1.0.so + +# CVP +system_ext/lib64/vendor.qti.hardware.cvp@1.0.so + +# CVP firmware +vendor/firmware/evass.b00 +vendor/firmware/evass.b01 +vendor/firmware/evass.b02 +vendor/firmware/evass.b03 +vendor/firmware/evass.b04 +vendor/firmware/evass.b05 +vendor/firmware/evass.b06 +vendor/firmware/evass.b07 +vendor/firmware/evass.b08 +vendor/firmware/evass.b09 +vendor/firmware/evass.b10 +vendor/firmware/evass.b11 +vendor/firmware/evass.b12 +vendor/firmware/evass.b13 +vendor/firmware/evass.b14 +vendor/firmware/evass.b15 +vendor/firmware/evass.b16 +vendor/firmware/evass.b17 +vendor/firmware/evass.b18 +vendor/firmware/evass.b19 +vendor/firmware/evass.mbn +vendor/firmware/evass.mdt + +# Display +lib64/vendor.qti.hardware.display.config-V1-ndk.so +lib64/vendor.qti.hardware.display.config-V10-ndk.so +lib64/vendor.qti.hardware.display.config-V11-ndk.so +lib64/vendor.qti.hardware.display.config-V2-ndk.so +lib64/vendor.qti.hardware.display.config-V3-ndk.so +lib64/vendor.qti.hardware.display.config-V4-ndk.so +lib64/vendor.qti.hardware.display.config-V5-ndk.so +lib64/vendor.qti.hardware.display.config-V6-ndk.so +lib64/vendor.qti.hardware.display.config-V7-ndk.so +lib64/vendor.qti.hardware.display.config-V8-ndk.so +lib64/vendor.qti.hardware.display.config-V9-ndk.so +system_ext/lib64/vendor.display.color@1.0.so +system_ext/lib64/vendor.display.color@1.1.so +system_ext/lib64/vendor.display.color@1.2.so +system_ext/lib64/vendor.display.color@1.3.so +system_ext/lib64/vendor.display.config@1.0.so +system_ext/lib64/vendor.display.config@1.1.so +system_ext/lib64/vendor.display.config@1.2.so +system_ext/lib64/vendor.display.config@1.3.so +system_ext/lib64/vendor.display.config@1.4.so +system_ext/lib64/vendor.display.config@1.5.so +system_ext/lib64/vendor.display.config@2.0.so +system_ext/lib64/vendor.display.postproc@1.0.so +system_ext/lib64/vendor.qti.hardware.display.composer@3.0.so +system_ext/lib64/vendor.qti.hardware.display.composer@3.1.so +system_ext/lib64/vendor.qti.hardware.qdutils_disp@1.0.so +vendor/bin/hw/vendor.qti.hardware.display.allocator-service +vendor/bin/hw/vendor.qti.hardware.display.color-service +vendor/bin/hw/vendor.qti.hardware.display.composer-service +vendor/etc/init/vendor.qti.hardware.display.allocator-service.rc +vendor/etc/init/vendor.qti.hardware.display.color-service.rc +vendor/etc/init/vendor.qti.hardware.display.composer-service.rc +vendor/etc/vintf/manifest/android.hardware.graphics.mapper-impl-qti-display.xml +vendor/etc/vintf/manifest/vendor.qti.hardware.display.allocator-service.xml +vendor/lib64/egl/eglSubDriverAndroid.so +vendor/lib64/egl/libEGL_adreno.so +vendor/lib64/egl/libGLESv1_CM_adreno.so +vendor/lib64/egl/libGLESv2_adreno.so +vendor/lib64/egl/libVkLayer_ADRENO_qprofiler.so +vendor/lib64/egl/libq3dtools_adreno.so +vendor/lib64/egl/libq3dtools_esx.so +vendor/lib64/hw/gralloc.default.so +vendor/lib64/hw/vulkan.adreno.so +vendor/lib64/libEGL_adreno.so +vendor/lib64/libadreno_utils.so +vendor/lib64/libdisplaydebug.so +vendor/lib64/libdisplayqos.so +vendor/lib64/libdisplayskuutils.so +vendor/lib64/libdrmutils.so +vendor/lib64/libgpu_tonemapper.so +vendor/lib64/libgralloccore.so +vendor/lib64/libgrallocutils.so +vendor/lib64/libgsl.so +vendor/lib64/libhistogram.so +vendor/lib64/libintervmipc.so +vendor/lib64/libllvm-glnext.so +vendor/lib64/libmemutils.so +vendor/lib64/libqservice.so +vendor/lib64/libsdedrm.so +vendor/lib64/libsdm-color.so +vendor/lib64/libsdm-disp-vndapis.so +vendor/lib64/libsdmcore.so +vendor/lib64/libsdmdal.so +vendor/lib64/libsdmextension.so +vendor/lib64/libsdmutils.so +vendor/lib64/libtestutils.so +vendor/lib64/libtinyxml2_1.so +vendor/lib64/libvmfilexfer.so +vendor/lib64/vendor.display.color@1.0.so +vendor/lib64/vendor.display.color@1.1.so +vendor/lib64/vendor.display.color@1.2.so +vendor/lib64/vendor.display.color@1.3.so +vendor/lib64/vendor.display.color@1.4.so +vendor/lib64/vendor.display.color@1.5.so +vendor/lib64/vendor.display.config@1.0.so +vendor/lib64/vendor.display.config@1.1.so +vendor/lib64/vendor.display.config@1.10.so +vendor/lib64/vendor.display.config@1.11.so +vendor/lib64/vendor.display.config@1.2.so +vendor/lib64/vendor.display.config@1.3.so +vendor/lib64/vendor.display.config@1.4.so +vendor/lib64/vendor.display.config@1.5.so +vendor/lib64/vendor.display.config@1.6.so +vendor/lib64/vendor.display.config@1.7.so +vendor/lib64/vendor.display.config@1.8.so +vendor/lib64/vendor.display.config@1.9.so +vendor/lib64/vendor.display.config@2.0.so +vendor/lib64/vendor.display.postproc@1.0.so +vendor/lib64/vendor.qti.hardware.display.allocator@1.0.so +vendor/lib64/vendor.qti.hardware.display.allocator@3.0.so +vendor/lib64/vendor.qti.hardware.display.allocator@4.0.so +vendor/lib64/vendor.qti.hardware.display.color-V1-ndk.so +vendor/lib64/vendor.qti.hardware.display.composer3-V1-ndk.so +vendor/lib64/vendor.qti.hardware.display.composer@1.0.so +vendor/lib64/vendor.qti.hardware.display.composer@2.0.so +vendor/lib64/vendor.qti.hardware.display.config-V1-ndk.so +vendor/lib64/vendor.qti.hardware.display.config-V10-ndk.so +vendor/lib64/vendor.qti.hardware.display.config-V2-ndk.so +vendor/lib64/vendor.qti.hardware.display.config-V3-ndk.so +vendor/lib64/vendor.qti.hardware.display.config-V4-ndk.so +vendor/lib64/vendor.qti.hardware.display.config-V5-ndk.so +vendor/lib64/vendor.qti.hardware.display.config-V6-ndk.so +vendor/lib64/vendor.qti.hardware.display.config-V7-ndk.so +vendor/lib64/vendor.qti.hardware.display.config-V8-ndk.so +vendor/lib64/vendor.qti.hardware.display.config-V9-ndk.so +vendor/lib64/vendor.qti.hardware.display.demura-V1-ndk.so +vendor/lib64/vendor.qti.hardware.display.mapper@1.0.so +vendor/lib64/vendor.qti.hardware.display.mapper@1.1.so +vendor/lib64/vendor.qti.hardware.display.mapper@2.0.so +vendor/lib64/vendor.qti.hardware.display.mapper@3.0.so +vendor/lib64/vendor.qti.hardware.display.mapper@4.0.so +vendor/lib64/vendor.qti.hardware.display.mapperextensions@1.0.so +vendor/lib64/vendor.qti.hardware.display.mapperextensions@1.1.so +vendor/lib64/vendor.qti.hardware.display.mapperextensions@1.2.so +vendor/lib64/vendor.qti.hardware.display.mapperextensions@1.3.so +vendor/lib64/vendor.qti.hardware.display.postproc-V1-ndk.so +vendor/lib64/vendor.qti.hardware.qdutils_disp@1.0.so + +# Display configs +vendor/etc/display/DPU10__.xml +vendor/etc/display/DPU9__.xml +vendor/etc/display/advanced_sf_offsets.xml +vendor/etc/display/backlight_calib_r66451_amoled_cmd_mode_dsi_visionox_panel_with_DSC.xml +vendor/etc/display/backlight_calib_r66451_amoled_video_mode_dsi_visionox_panel_with_DSC.xml +vendor/etc/display/backlight_calib_vtdr6130_amoled_cmd_mode_dsi_visionox_panel_with_DSC.xml +vendor/etc/display/backlight_calib_vtdr6130_amoled_qsync_cmd_mode_dsi_visionox_panel_with_DSC.xml +vendor/etc/display/backlight_calib_vtdr6130_amoled_qsync_video_mode_dsi_visionox_panel_with_DSC.xml +vendor/etc/display/backlight_calib_vtdr6130_amoled_video_mode_dsi_visionox_panel_with_DSC.xml +vendor/etc/display/qdcm_calib_data_E3_S6E3HAF_AMB679FN01.json +vendor/etc/display/qdcm_calib_data_Sharp_2k_cmd_mode_qsync_dsi_panel.json +vendor/etc/display/qdcm_calib_data_Sharp_2k_video_mode_qsync_dsi_panel.json +vendor/etc/display/qdcm_calib_data_Sharp_4k_cmd_mode_dsc_dsi_panel.json +vendor/etc/display/qdcm_calib_data_Sharp_4k_video_mode_dsc_dsi_panel.json +vendor/etc/display/qdcm_calib_data_Sharp_qhd_cmd_mode_dsi_panel.json +vendor/etc/display/qdcm_calib_data_nt36672e_lcd_video_mode_dsi_novatek_panel_with_DSC.json +vendor/etc/display/qdcm_calib_data_nt36672e_lcd_video_mode_dsi_novatek_panel_without_DSC.json +vendor/etc/display/qdcm_calib_data_r66451_amoled_cmd_mode_dsi_visionox_panel_with_DSC.json +vendor/etc/display/qdcm_calib_data_r66451_amoled_cmd_mode_dsi_visionox_panel_without_DSC.json +vendor/etc/display/qdcm_calib_data_r66451_amoled_video_mode_dsi_visionox_panel_with_DSC.json +vendor/etc/display/qdcm_calib_data_r66451_amoled_video_mode_dsi_visionox_panel_without_DSC.json +vendor/etc/display/qdcm_calib_data_sharp_1080p_cmd_mode_dsi_panel.json +vendor/etc/display/qdcm_calib_data_vtdr6130_amoled_cmd_mode_dsi_visionox_panel_with_DSC.json +vendor/etc/display/qdcm_calib_data_vtdr6130_amoled_qsync_cmd_mode_dsi_visionox_panel_with_DSC.json +vendor/etc/display/qdcm_calib_data_vtdr6130_amoled_qsync_video_mode_dsi_visionox_panel_with_DSC.json +vendor/etc/display/qdcm_calib_data_vtdr6130_amoled_video_mode_dsi_visionox_panel_with_DSC.json +vendor/etc/display/thermallevel_to_fps.xml + +# DPM +system_ext/etc/dpm/dpm.conf +system_ext/lib64/vendor.qti.diaghal@1.0.so +vendor/etc/init/dpmQmiMgr.rc +vendor/lib64/com.qualcomm.qti.dpm.api@1.0.so +vendor/lib64/vendor.qti.diaghal@1.0.so +vendor/lib64/vendor.qti.hardware.dpmaidlservice-V1-ndk.so +vendor/lib64/vendor.qti.hardware.dpmservice@1.0.so +vendor/lib64/vendor.qti.hardware.dpmservice@1.1.so + +# DRM +vendor/apex/com.google.android.widevine.nonupdatable.apex +vendor/bin/hw/android.hardware.drm-service.clearkey +vendor/etc/init/android.hardware.drm-service.clearkey.rc +vendor/lib64/mediacas/libclearkeycasplugin.so +vendor/lib64/mediadrm/libdrmclearkeyplugin.so +vendor/lib64/libcpion.so +vendor/lib64/liboemcrypto.so +vendor/lib64/libtrustedapploader.so + +# DRM (Qualcomm Secure Execution Environment) +system_ext/lib64/vendor.qti.hardware.qseecom-V1-ndk.so +system_ext/lib64/vendor.qti.hardware.qseecom@1.0.so +vendor/bin/hw/vendor.qti.hardware.qseecom@1.0-service +vendor/bin/qseecomd +vendor/etc/init/qseecomd.rc +vendor/etc/init/vendor.qti.hardware.qseecom@1.0-service.rc +vendor/etc/vintf/manifest/vendor.qti.hardware.qseecom@1.0-service.xml +vendor/lib64/hw/vendor.qti.hardware.qseecom@1.0-impl.so +vendor/lib64/libQSEEComAPI.so +vendor/lib64/libdrmfs.so +vendor/lib64/vendor.qti.hardware.qseecom-V1-ndk.so +vendor/lib64/vendor.qti.hardware.qseecom@1.0.so + +# DRM (Qualcomm Trusted Execution Environment) +system_ext/lib64/vendor.qti.hardware.qteeconnector-V1-ndk.so +system_ext/lib64/vendor.qti.hardware.qteeconnector@1.0.so +vendor/lib64/libGPTEE_vendor.so +vendor/lib64/vendor.qti.hardware.qteeconnector@1.0.so + +# DSP +vendor/bin/dspservice +vendor/etc/init/vendor.qti.hardware.dsp@1.0-service.rc +vendor/etc/seccomp_policy/vendor.qti.hardware.dsp.policy +vendor/lib64/vendor.qti.hardware.dsp@1.0.so + +# Dumpstate +vendor/bin/hw/android.hardware.dumpstate-service + +# FM +vendor/lib64/hw/vendor.qti.hardware.fm@1.0-impl.so +vendor/lib64/libdsutils.so +vendor/lib64/libidl.so +vendor/lib64/libmdmdetect.so +vendor/lib64/libqmi.so +vendor/lib64/libqmi_client_qmux.so +vendor/lib64/libqmiservices.so +vendor/lib64/vendor.qti.hardware.fm@1.0.so + +# Gatekeeper +vendor/bin/hw/android.hardware.gatekeeper-service +vendor/bin/hw/android.hardware.gatekeeper-service-spu-qti +vendor/bin/hw/vendor.qti.hardware.secureprocessor@1.0 +vendor/etc/init/android.hardware.gatekeeper-service-qti.rc +vendor/etc/init/android.hardware.gatekeeper-service-spu-qti.rc +vendor/etc/init/android.hardware.gatekeeper-service.rc +vendor/etc/init/init.vendor.qti.spu@1.1-service.rc +vendor/etc/init/vendor.qti.hardware.secureprocessor@1.0.rc +vendor/lib64/hw/gatekeeper.mdfpp.so +vendor/lib64/hw/libspuqtigatekeeper.so +vendor/lib64/libspcom.so +vendor/lib64/libspukeymintdeviceutils.so +vendor/lib64/vendor.qti.hardware.secureprocessor.common@1.0-helper.so +vendor/lib64/vendor.qti.hardware.secureprocessor.common@1.0.so +vendor/lib64/vendor.qti.hardware.secureprocessor.config@1.0.so +vendor/lib64/vendor.qti.hardware.secureprocessor.device@1.0.so + +# GNSS +vendor/bin/hw/android.hardware.gnss-aidl-service-qti +vendor/bin/loc_launcher +vendor/bin/lowi-server +vendor/bin/xtra-daemon +vendor/etc/init/android.hardware.gnss-aidl-service-qti.rc +vendor/etc/vintf/manifest/android.hardware.gnss-aidl-service-qti.xml +vendor/etc/vintf/manifest/vendor.qti.gnss-service.xml +vendor/lib64/hw/vendor.samsung.hardware.gnss-aidl-impl-sec.so +vendor/lib64/libdataitems.so +vendor/lib64/libgps.utils.so +vendor/lib64/libizat_client_api.so +vendor/lib64/libizat_core.so +vendor/lib64/liblbs_core.so +vendor/lib64/libloc_api_v02.so +vendor/lib64/libloc_base_util.so +vendor/lib64/libloc_core.so +vendor/lib64/libloc_mq_client.so +vendor/lib64/libloc_util.so +vendor/lib64/liblocation_api.so +vendor/lib64/liblocationservice.so +vendor/lib64/liblocationservice_glue.so +vendor/lib64/liblowi_client.so +vendor/lib64/liblowi_common.so +vendor/lib64/libpal_net_if.so +vendor/lib64/libperipheral_client.so +vendor/lib64/libqcc_file_agent.so +vendor/lib64/libqcc_sdk.so +vendor/lib64/libsemnativecarrierfeature.so +vendor/lib64/libsys_info_cache.so +vendor/lib64/libwifiobserver.so +vendor/lib64/libwpa_client.so +vendor/lib64/libxtadapter.so +vendor/lib64/vendor.qti.gnss-V5-ndk.so +vendor/lib64/vendor.qti.gnss-service.so +vendor/lib64/vendor.samsung.hardware.gnss-V2-ndk_platform.so + +# GNSS configs +vendor/etc/gps.conf +vendor/etc/izat.conf +vendor/etc/lowi.conf +vendor/etc/sap.conf +vendor/etc/xtwifi.conf + +# Identity +vendor/etc/init/android.hardware.identity-service-qti.rc + +# IPA +vendor/bin/ipacm +vendor/bin/ipacm-diag +vendor/etc/init/ipacm-diag.rc +vendor/etc/init/ipacm.rc +vendor/etc/IPACM_cfg.xml +vendor/lib64/libipanat.so +vendor/lib64/libnetfilter_conntrack.so +vendor/lib64/libnfnetlink.so +vendor/lib64/liboffloadhal.so + +# Local time +vendor/lib64/hw/local_time.default.so + +# Media +etc/seccomp_policy/mediacodec.policy +lib64/libdatasource.so +lib64/libdatasource_local_cache.so +lib64/libhdcp2.so +lib64/libhdcp_client_aidl.so +lib64/libmedia_codeclist.so +lib64/libomafldrm.so +lib64/libstagefright_aidl_bufferpool2.so +lib64/libstagefright_bufferpool@2.0.1.so +lib64/libstagefright_codecbase.so +lib64/libstagefright_framecapture_utils.so +lib64/libstagefright_hdcp.so +lib64/libstagefright_httplive_sec.so +lib64/libstagefright_surface_utils.so +lib64/vendor.samsung.hardware.security.hdcp.wifidisplay-V2-ndk.so +vendor/bin/hw/android.hardware.media.omx@1.0-service +vendor/bin/hw/vendor.qti.media.c2@1.0-service +vendor/etc/init/android.hardware.media.omx@1.0-service.rc +vendor/etc/init/vendor.qti.media.c2@1.0-service.rc +vendor/etc/seccomp_policy/mediacodec.policy +vendor/lib64/libFrucSSMLib.so +vendor/lib64/libOmxCore.so +vendor/lib64/libbufferstats.so +vendor/lib64/libcodec2_hidl@1.1.so +vendor/lib64/libcodec2_hidl@1.2.so +vendor/lib64/libcodec2_hidl_plugin.so +vendor/lib64/libcodecsolutionhelper_vendor.so +vendor/lib64/libgaya.so +vendor/lib64/libplatformconfig.so +vendor/lib64/libpredeflicker_native.so +vendor/lib64/librechdr10plus.sec.so +vendor/lib64/librechdr10plus.so +vendor/lib64/libsavscmn.so +vendor/lib64/libsdynatm.so +vendor/lib64/libstagefright_aidl_bufferpool2.so +vendor/lib64/libstagefright_bufferpool@2.0.1.so +vendor/lib64/libstagefright_bufferqueue_helper_vendor.so +vendor/lib64/libstagefright_foundation_vendor.so +vendor/lib64/libstagefright_omx_vendor.so +vendor/lib64/libstagefrighthw.so +vendor/lib64/libtimestamphelper.so +vendor/lib64/libvicom.so +vendor/lib64/vintf-codecsolution-V2-ndk.so + +# Media (Dolby) +vendor/etc/dolby/dax-default.xml +vendor/lib64/libdeccfg.so + +# Media configs +vendor/etc/media_codecs.xml +vendor/etc/media_codecs_c2_audio.xml +vendor/etc/media_codecs_c2_sec.xml +vendor/etc/media_codecs_c2_sec_ape.xml +vendor/etc/media_codecs_c2_sec_qcp.xml +vendor/etc/media_codecs_cliffs_v0.xml +vendor/etc/media_codecs_cliffs_v1.xml +vendor/etc/media_codecs_dolby_audio.xml +vendor/etc/media_codecs_google_audio.xml +vendor/etc/media_codecs_google_c2.xml +vendor/etc/media_codecs_google_c2_audio.xml +vendor/etc/media_codecs_google_c2_video.xml +vendor/etc/media_codecs_google_telephony.xml +vendor/etc/media_codecs_google_video.xml +vendor/etc/media_codecs_google_video_le.xml +vendor/etc/media_codecs_performance_cliffs_v0.xml +vendor/etc/media_codecs_performance_cliffs_v1.xml +vendor/etc/media_codecs_performance_pineapple.xml +vendor/etc/media_codecs_performance_pineapple_vendor.xml +vendor/etc/media_codecs_pineapple.xml +vendor/etc/media_codecs_pineapple_vendor.xml +vendor/etc/media_codecs_vendor_audio.xml +vendor/etc/media_profiles.xml +vendor/etc/media_profiles_V1_0.xml +vendor/etc/media_profiles_cliffs_v0.xml +vendor/etc/media_profiles_cliffs_v1.xml +vendor/etc/media_profiles_pineapple.xml + +# NFC +vendor/bin/hw/android.hardware.nfc-service.nxp +vendor/lib64/nfc_nci_nxpsn.so +vendor/lib64/vendor.samsung.hardware.nfc_aidl-V1-ndk.so + +# NFC configs +etc/libnfc-nci.conf +vendor/etc/nfc/libnfc-nxp_RF.conf +vendor/etc/libnfc-nxp.conf + +# PASR +vendor/etc/init/vendor.qti.memory.pasrmanager-service.rc +vendor/lib64/vendor.qti.memory.pasrmanager-V1-ndk.so +vendor/lib64/vendor.qti.memory.pasrmanager@1.0.so +vendor/lib64/vendor.qti.power.pasrmanager@1.0.so + +# Perf +system_ext/etc/perf/wlc_model.tflite +system_ext/lib64/vendor.qti.hardware.perf@2.0.so +system_ext/lib64/vendor.qti.hardware.perf@2.1.so +system_ext/lib64/vendor.qti.hardware.perf@2.2.so +system_ext/lib64/vendor.qti.hardware.perf@2.3.so +vendor/bin/hw/vendor.qti.hardware.perf2-hal-service +vendor/etc/init/vendor.qti.hardware.perf2-hal-service.rc +vendor/etc/perf/avcsysnodesconfigs.xml +vendor/etc/perf/commonresourceconfigs.xml +vendor/etc/perf/commonsysnodesconfigs.xml +vendor/etc/perf/perfboostsconfig.xml +vendor/etc/perf/perfconfigstore.xml +vendor/etc/perf/targetavcsysnodesconfigs.xml +vendor/etc/perf/targetconfig.xml +vendor/etc/perf/targetresourceconfigs.xml +vendor/etc/perf/targetsysnodesconfigs.xml +vendor/etc/perf/testcommonresourceconfigs.xml +vendor/etc/perf/testtargetresourceconfigs.xml +vendor/etc/vintf/manifest/vendor.qti.hardware.perf2.xml +vendor/etc/powerhint.xml +vendor/lib64/libperfconfig.so +vendor/lib64/libperfgluelayer.so +vendor/lib64/libq-perflog.so +vendor/lib64/libqti-perfd-client.so +vendor/lib64/libqti-util.so +vendor/lib64/vendor.qti.hardware.perf2-V1-ndk.so +vendor/lib64/vendor.qti.hardware.perf@2.0.so +vendor/lib64/vendor.qti.hardware.perf@2.1.so +vendor/lib64/vendor.qti.hardware.perf@2.2.so +vendor/lib64/vendor.qti.hardware.perf@2.3.so + +# Perf IOP +system_ext/lib64/vendor.qti.hardware.iop@2.0.so +vendor/bin/hw/vendor.qti.hardware.iop@2.0-service +vendor/etc/init/vendor.qti.hardware.iop@2.0-service.rc +vendor/lib64/libqti-iopd-client.so +vendor/lib64/vendor.qti.hardware.iop@1.0.so +vendor/lib64/vendor.qti.hardware.iop@2.0.so + +# Power +vendor/bin/hw/android.hardware.power.samsung-service +vendor/lib64/hw/power.default.so +vendor/lib64/libSamsngPowerHal.so + +# Power configs +vendor/etc/pwr/AODPowerOptFeature.xml +vendor/etc/pwr/GamePowerOptFeature.xml +vendor/etc/pwr/OffScreenPowerOptFeature.xml +vendor/etc/pwr/PSMPowerOptFeature.xml +vendor/etc/pwr/PowerFeatureConfig.xml +vendor/etc/pwr/StandbyFeature.xml +vendor/etc/pwr/VideoPowerOptFeature.xml + +# QCC +system_ext/etc/init/vendor.qti.hardware.qccsyshal@1.2-service.rc +system_ext/lib64/libqcc_file_agent_sys.so +system_ext/lib64/vendor.qti.hardware.qccsyshal@1.0.so +system_ext/lib64/vendor.qti.hardware.qccsyshal@1.1.so +system_ext/lib64/vendor.qti.hardware.qccsyshal@1.2-halimpl.so +system_ext/lib64/vendor.qti.hardware.qccsyshal@1.2.so +system_ext/lib64/vendor.qti.hardware.qccvndhal@1.0.so +system_ext/lib64/vendor.qti.qccvndhal_aidl-V1-ndk.so +vendor/bin/qcc-vendor +vendor/etc/vintf/manifest/vendor.qti.qccvndhal_aidl-service.xml +vendor/lib64/vendor.qti.hardware.qccsyshal@1.0.so +vendor/lib64/vendor.qti.hardware.qccsyshal@1.1.so +vendor/lib64/vendor.qti.hardware.qccsyshal@1.2.so +vendor/lib64/vendor.qti.qccvndhal_aidl-V1-ndk.so +vendor/lib64/vendor.qti.qccvndhal_aidl-halimpl.so + +# QESD +vendor/etc/init/qesdk-manager.rc +vendor/lib64/vendor.qti.qesdhal@1.0.so +vendor/lib64/vendor.qti.qesdhal@1.1.so +vendor/lib64/vendor.qti.qesdhal@1.2.so +vendor/lib64/vendor.qti.qesdhal@1.3.so + +# QSPM +system_ext/lib64/vendor.qti.qspmhal-V1-ndk.so +system_ext/lib64/vendor.qti.qspmhal@1.0.so +vendor/lib64/vendor.qti.qspmhal-V1-ndk.so + +# Radio +vendor/bin/hw/rild +vendor/bin/ATFWD-daemon +vendor/bin/adpl +vendor/bin/ks +vendor/bin/pd-mapper +vendor/bin/qrtr-cfg +vendor/bin/qrtr-lookup +vendor/bin/qrtr-ns +vendor/bin/qti +vendor/bin/rmt_storage +vendor/bin/ssgtzd +vendor/bin/tftp_server +vendor/etc/init/dataadpl.rc +vendor/etc/init/dataqti.rc +vendor/etc/init/ssgtzd.rc +vendor/etc/init/vendor.qti.rmt_storage.rc +vendor/etc/init/vendor.qti.tftp.rc +vendor/etc/init/vendor.samsung.rild.rc +vendor/etc/seccomp_policy/atfwd@2.0.policy +vendor/lib64/libconfigdb.so +vendor/lib64/libdsi_netctrl.so +vendor/lib64/libnicm.so +vendor/lib64/libnicm_dsi.so +vendor/lib64/libnicm_utils.so +vendor/lib64/libqcmaputils.so +vendor/lib64/libqdi.so +vendor/lib64/libqmi_client_helper.so +vendor/lib64/libqmi_csi.so +vendor/lib64/libqsocket.so +vendor/lib64/libril_sem.so +vendor/lib64/librmnetctl.so +vendor/lib64/libxml.so +vendor/lib64/vendor.qti.hardware.radio.atfwd-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.radio-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.radio.bridge-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.radio.data-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.radio.messaging-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.radio.network-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.radio.sim-V1-ndk.so + +# Radio (IMS) +system_ext/lib64/com.qualcomm.qti.imscmservice@2.0.so +system_ext/lib64/com.qualcomm.qti.imscmservice@2.1.so +system_ext/lib64/com.qualcomm.qti.imscmservice@2.2.so +system_ext/lib64/com.qualcomm.qti.uceservice@2.0.so +system_ext/lib64/com.qualcomm.qti.uceservice@2.1.so +system_ext/lib64/com.qualcomm.qti.uceservice@2.2.so +system_ext/lib64/com.qualcomm.qti.uceservice@2.3.so +system_ext/lib64/vendor.qti.ims.callcapability@1.0.so +system_ext/lib64/vendor.qti.ims.callinfo@1.0.so +system_ext/lib64/vendor.qti.ims.configservice@1.0.so +system_ext/lib64/vendor.qti.ims.configservice@1.1.so +system_ext/lib64/vendor.qti.ims.connection@1.0.so +system_ext/lib64/vendor.qti.ims.factory@1.0.so +system_ext/lib64/vendor.qti.ims.factory@1.1.so +system_ext/lib64/vendor.qti.ims.factory@2.0.so +system_ext/lib64/vendor.qti.ims.factory@2.1.so +system_ext/lib64/vendor.qti.ims.factory@2.2.so +system_ext/lib64/vendor.qti.ims.rcsconfig@1.0.so +system_ext/lib64/vendor.qti.ims.rcsconfig@1.1.so +system_ext/lib64/vendor.qti.ims.rcsconfig@2.0.so +system_ext/lib64/vendor.qti.ims.rcsconfig@2.1.so +system_ext/lib64/vendor.qti.ims.rcssip@1.0.so +system_ext/lib64/vendor.qti.ims.rcssip@1.1.so +system_ext/lib64/vendor.qti.ims.rcssip@1.2.so +system_ext/lib64/vendor.qti.ims.rcsuce@1.0.so +system_ext/lib64/vendor.qti.ims.rcsuce@1.1.so +system_ext/lib64/vendor.qti.ims.rcsuce@1.2.so +system_ext/lib64/vendor.qti.imsrtpservice@3.0.so +system_ext/lib64/vendor.qti.imsrtpservice@3.1.so +vendor/etc/init/ims_rtp_daemon.rc +vendor/etc/seccomp_policy/imsrtp.policy +vendor/lib64/com.qualcomm.qti.imscmservice@1.0.so +vendor/lib64/com.qualcomm.qti.imscmservice@2.0.so +vendor/lib64/com.qualcomm.qti.imscmservice@2.1.so +vendor/lib64/com.qualcomm.qti.imscmservice@2.2.so +vendor/lib64/com.qualcomm.qti.uceservice@2.0.so +vendor/lib64/com.qualcomm.qti.uceservice@2.1.so +vendor/lib64/com.qualcomm.qti.uceservice@2.2.so +vendor/lib64/com.qualcomm.qti.uceservice@2.3.so +vendor/lib64/vendor.qti.ims.callcapability@1.0.so +vendor/lib64/vendor.qti.ims.callinfo@1.0.so +vendor/lib64/vendor.qti.ims.factory@1.0.so +vendor/lib64/vendor.qti.ims.factory@1.1.so +vendor/lib64/vendor.qti.ims.rcsconfig@1.0.so +vendor/lib64/vendor.qti.ims.rcsconfig@1.1.so +vendor/lib64/vendor.qti.ims.rcsconfig@2.0.so +vendor/lib64/vendor.qti.ims.rcsconfig@2.1.so +vendor/lib64/vendor.qti.imsrtpservice@3.0.so +vendor/lib64/vendor.qti.imsrtpservice@3.1.so + +# RenderScript +vendor/lib64/hw/android.hardware.renderscript@1.0-impl.so + +# Secure element +vendor/bin/hw/android.hardware.secure_element-service.nxp +vendor/lib64/libsec_semRil.so + +# Secure element (power manager) +vendor/lib64/vendor.qti.esepowermanager@1.0.so + +# Security +vendor/bin/hw/android.hardware.security.keymint-service +vendor/bin/hw/android.hardware.security.keymint-service-spu-qti +vendor/etc/init/android.hardware.security.keymint-service-spu-qti.rc +vendor/etc/init/android.hardware.security.keymint-service.rc +vendor/etc/vintf/manifest/android.hardware.security.keymint-service-spu-qti.xml +vendor/lib64/libcppbor_external.so +vendor/lib64/libhermes_cred.so +vendor/lib64/libkeymaster4_1support.so +vendor/lib64/libsec_esek.so +vendor/lib64/libsec_semHalTlc.so +vendor/lib64/libskeymint10device.so +vendor/lib64/libskeymint_cli.so +vendor/lib64/libspictrl.so +vendor/lib64/libspukeymint.so +vendor/lib64/libspukeymintutils.so +vendor/lib64/vendor.samsung.hardware.keymint-V3-ndk.so + +# Sensors +vendor/bin/hw/android.hardware.sensors-service.multihal +vendor/bin/sensors.qti +vendor/bin/sscrpcd +vendor/etc/init/android.hardware.sensors-service-multihal.rc +vendor/etc/vintf/manifest/android.hardware.sensors-multihal.xml +vendor/lib64/hw/sensors.dynamic_sensor_hal.so +vendor/lib64/libhidparser.so +vendor/lib64/libqsh.so +vendor/lib64/libsensorslog.so +vendor/lib64/libsnsdiaglog.so +vendor/lib64/libsnsutils.so +vendor/lib64/sensors.flicker.so +vendor/lib64/sensors.grip.so +vendor/lib64/sensors.qsh.so + +# Sensors configs +vendor/etc/sensors/config/akmlib.json +vendor/etc/sensors/config/json.lst +vendor/etc/sensors/config/lanai_ak991x_0.json +vendor/etc/sensors/config/lanai_ak991x_4.json +vendor/etc/sensors/config/lanai_ak991x_5.json +vendor/etc/sensors/config/lanai_default_sensors.json +vendor/etc/sensors/config/lanai_dynamic_sensors.json +vendor/etc/sensors/config/lanai_dynamic_sensors_template.json +vendor/etc/sensors/config/lanai_irq.json +vendor/etc/sensors/config/lanai_lps22df_0.json +vendor/etc/sensors/config/lanai_lps22hh_0.json +vendor/etc/sensors/config/lanai_lsm6dso_0_0.json +vendor/etc/sensors/config/lanai_lsm6dsv_0_2.json +vendor/etc/sensors/config/lanai_power_0.json +vendor/etc/sensors/config/lanai_qrd_tmd2755_0.json +vendor/etc/sensors/config/lanai_qsh_ble_0.json +vendor/etc/sensors/config/lanai_stk3af00_0.json +vendor/etc/sensors/config/lanai_stk3afx_0.json +vendor/etc/sensors/config/lsm6dso_0.json +vendor/etc/sensors/config/lsm6dsv_2.json +vendor/etc/sensors/config/qsh_ble.json +vendor/etc/sensors/config/qsh_camera_common.json +vendor/etc/sensors/config/qsh_camera_imx688_4.json +vendor/etc/sensors/config/qsh_camera_imx688_6.json +vendor/etc/sensors/config/qsh_camera_imx688_6_actuator.json +vendor/etc/sensors/config/sns_amd.json +vendor/etc/sensors/config/sns_amd_sw_disabled.json +vendor/etc/sensors/config/sns_amd_sw_enabled.json +vendor/etc/sensors/config/sns_cm.json +vendor/etc/sensors/config/sns_dae.json +vendor/etc/sensors/config/sns_diag_filter.json +vendor/etc/sensors/config/sns_fmv.json +vendor/etc/sensors/config/sns_fmv_legacy.json +vendor/etc/sensors/config/sns_gyro_cal.json +vendor/etc/sensors/config/sns_mag_cal.json +vendor/etc/sensors/config/sns_mag_cal_legacy.json +vendor/etc/sensors/config/sns_rotv.json +vendor/etc/sensors/config/sns_tilt.json +vendor/etc/sensors/config/sns_tilt_sw_disabled.json +vendor/etc/sensors/config/sns_tilt_sw_enabled.json +vendor/etc/sensors/hals.conf +vendor/etc/sensors/sns_reg_config + +# Soundtrigger +system_ext/lib64/vendor.qti.voiceprint@1.0.so +vendor/lib64/hw/android.hardware.soundtrigger@2.2-impl.so +vendor/lib64/hw/android.hardware.soundtrigger@2.3-impl.so +vendor/lib64/hw/sound_trigger.primary.pineapple.so +vendor/lib64/libVoiceSdk.so +vendor/lib64/liblistensoundmodel2vendor.so +vendor/lib64/libtensorflowlite_c.so +vendor/lib64/vendor.qti.hardware.ListenSoundModel@1.0-impl.so +vendor/lib64/vendor.qti.hardware.ListenSoundModel@1.0.so +vendor/lib64/vendor.qti.voiceprint@1.0.so + +# Thermal (Qualcomm) +system_ext/lib64/vendor.qti.hardware.limits@1.0.so +system_ext/lib64/vendor.qti.hardware.limits@1.1.so +vendor/lib64/libthermalclient.so + +# Thermal configs +vendor/etc/thermal-engine.conf + +# Time services +vendor/app/TimeService/TimeService.apk +vendor/bin/time_daemon +vendor/etc/init/init.time_daemon.rc +vendor/lib64/libtime_genoff.so + +# Trusted UI +system_ext/lib64/vendor.qti.hardware.trustedui-V1-ndk.so +system_ext/lib64/vendor.qti.hardware.trustedui@1.0.so +system_ext/lib64/vendor.qti.hardware.tui_comm@1.0.so +vendor/bin/hw/vendor.qti.hardware.trustedui-aidl-service-qti +vendor/bin/hw/vendor.qti.hardware.trustedui@1.0-service-qti +vendor/bin/TrustedUISampleTest +vendor/etc/init/vendor.qti.hardware.trustedui-aidl-service-qti.rc +vendor/etc/init/vendor.qti.hardware.trustedui@1.0-service-qti.rc +vendor/etc/vintf/manifest/vendor.qti.hardware.trustedui-aidl-service.xml +vendor/lib64/libTouchInputVM.so +vendor/lib64/libTrustedInput.so +vendor/lib64/libTrustedInputAIDL.so +vendor/lib64/libTrustedInputTZ.so +vendor/lib64/libTrustedUI.so +vendor/lib64/libTrustedUIAIDL.so +vendor/lib64/libTrustedUITZ.so +vendor/lib64/libTrustedUIVM.so +vendor/lib64/libqdutils.so +vendor/lib64/libsi.so +vendor/lib64/vendor.qti.hardware.systemhelper@1.0.so +vendor/lib64/vendor.qti.hardware.trustedui-V1-ndk.so +vendor/lib64/vendor.qti.hardware.trustedui@1.0.so +vendor/lib64/vendor.qti.hardware.trustedui@1.1.so +vendor/lib64/vendor.qti.hardware.trustedui@1.2.so + +# USB +vendor/bin/hw/android.hardware.usb-service.qti +vendor/etc/init/android.hardware.usb-service.qti.rc +vendor/etc/vintf/manifest/android.hardware.usb-service.qti.xml + +# Vibrator +vendor/lib64/hw/vibrator.default.so + +# Wi-Fi +vendor/bin/hw/android.hardware.wifi-service +vendor/bin/hw/hostapd +vendor/bin/hw/wpa_supplicant +vendor/bin/cnss-daemon +vendor/bin/hostapd_cli +vendor/bin/wpa_cli +vendor/etc/init/android.hardware.wifi-service.rc +vendor/etc/init/android.hardware.wifi.supplicant-service.rc +vendor/etc/vintf/manifest/android.hardware.wifi-service.xml +vendor/etc/vintf/manifest/android.hardware.wifi.hostapd.xml +vendor/etc/vintf/manifest/android.hardware.wifi.supplicant.xml +vendor/lib64/libkeystore-engine-wifi-hidl.so +vendor/lib64/libkeystore-wifi-hidl.so +vendor/lib64/libpasn.so +vendor/lib64/libwifi-hal-ctrl.so +vendor/lib64/libwifi-hal-qcom.so +vendor/lib64/libwifi-hal.so +vendor/lib64/vendor.samsung.hardware.wifi.hostapd-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.wifi.nan-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.wifi.supplicant-V1-ndk.so + +# Wi-Fi configs +vendor/etc/wifi/kiwi_v2/WCNSS_qcom_cfg.ini +vendor/etc/wifi/indoorchannel.info +vendor/etc/wifi/p2p_supplicant_overlay.conf +vendor/etc/wifi/wpa_supplicant.conf +vendor/etc/wifi/wpa_supplicant_overlay.conf + +# Wi-Fi Display +vendor/bin/wfdhdcphalservice +vendor/bin/wfdvndservice +vendor/bin/wifidisplayhalservice +vendor/etc/seccomp_policy/wfdhdcphalservice.policy +vendor/etc/seccomp_policy/wfdvndservice.policy +vendor/etc/seccomp_policy/wifidisplayhalservice.policy +vendor/etc/wfdconfig.xml +vendor/lib64/hw/vendor.qti.hardware.wifidisplaysession@1.0-impl.so +vendor/lib64/libFileMux_proprietary.so +vendor/lib64/libmiracast.so +vendor/lib64/libmmosal_vendor.so +vendor/lib64/libmmrtpdecoder_vendor.so +vendor/lib64/libmmrtpencoder_vendor.so +vendor/lib64/libwfdaac_vendor.so +vendor/lib64/libwfdcodecv4l2_proprietary.so +vendor/lib64/libwfdcommonutils_proprietary.so +vendor/lib64/libwfdconfigutils_proprietary.so +vendor/lib64/libwfddisplayconfig_vendor.so +vendor/lib64/libwfdhdcpcp.so +vendor/lib64/libwfdhdcpservice_proprietary.so +vendor/lib64/libwfdmminterface_proprietary.so +vendor/lib64/libwfdmmservice_proprietary.so +vendor/lib64/libwfdmmsrc_proprietary.so +vendor/lib64/libwfdmodulehdcpsession.so +vendor/lib64/libwfdrtsp_vendor.so +vendor/lib64/libwfdsessionmodule.so +vendor/lib64/libwfdsourcesession_proprietary.so +vendor/lib64/libwfdsourcesm_proprietary.so +vendor/lib64/libwfduibcinterface_vendor.so +vendor/lib64/libwfduibcsink_vendor.so +vendor/lib64/libwfduibcsinkinterface_vendor.so +vendor/lib64/libwfduibcsrc_vendor.so +vendor/lib64/libwfduibcsrcinterface_vendor.so +vendor/lib64/libwfdutils_proprietary.so +vendor/lib64/qti.video.utils.videobufferlayout.so +vendor/lib64/vendor.qti.hardware.sigma_miracast@1.0.so +vendor/lib64/vendor.qti.hardware.wifidisplaysession@1.0.so +vendor/lib64/vendor.qti.hardware.wifidisplaysessionl@1.0-halimpl.so + +# Miscellaneous +odm/etc/ueventd.rc +vendor/apex/com.samsung.android.authfw.ta.preload.apex +vendor/apex/com.samsung.android.biometrics.face.signed.apex +vendor/apex/com.samsung.android.biometrics.fingerprint.signed.apex +vendor/apex/com.samsung.android.camera.unihal.signed.apex +vendor/apex/com.samsung.android.vital.signed.apex +vendor/app/TxPwrAdmin/TxPwrAdmin.apk +vendor/app/com.qualcomm.qti.gpudrivers.pineapple.api34/com.qualcomm.qti.gpudrivers.pineapple.api34.apk +vendor/bin/hw/capabilityconfigstoretest +vendor/bin/hw/macloader +vendor/bin/hw/mfgloader +vendor/bin/hw/mppserver +vendor/bin/hw/samsung.software.media.c2@1.0-service +vendor/bin/hw/vendor.qti.hardware.display.demura-service +vendor/bin/hw/vendor.qti.hardware.memtrack-service +vendor/bin/hw/vendor.samsung.hardware.authfw-service +vendor/bin/hw/vendor.samsung.hardware.biometrics.face-service +vendor/bin/hw/vendor.samsung.hardware.biometrics.fingerprint-service +vendor/bin/hw/vendor.samsung.hardware.camera.provider-service_64 +vendor/bin/hw/vendor.samsung.hardware.frcmc-service +vendor/bin/hw/vendor.samsung.hardware.health-service +vendor/bin/hw/vendor.samsung.hardware.hyper-service +vendor/bin/hw/vendor.samsung.hardware.khdm-service +vendor/bin/hw/vendor.samsung.hardware.light-service +vendor/bin/hw/vendor.samsung.hardware.media.converter@1.0-service +vendor/bin/hw/vendor.samsung.hardware.mpos-service +vendor/bin/hw/vendor.samsung.hardware.security.drk-service +vendor/bin/hw/vendor.samsung.hardware.security.drk@2.0-service +vendor/bin/hw/vendor.samsung.hardware.security.hdcp.keyprovisioning-service +vendor/bin/hw/vendor.samsung.hardware.security.hermes-service +vendor/bin/hw/vendor.samsung.hardware.security.sem@1.0-service +vendor/bin/hw/vendor.samsung.hardware.security.skpm@1.0-service +vendor/bin/hw/vendor.samsung.hardware.security.widevine.keyprov-service +vendor/bin/hw/vendor.samsung.hardware.security.wsm-service +vendor/bin/hw/vendor.samsung.hardware.snap-service +vendor/bin/hw/vendor.samsung.hardware.sysinput-service +vendor/bin/hw/vendor.samsung.hardware.thermal-service +vendor/bin/hw/vendor.samsung.hardware.tlc.blockchain@1.0-service +vendor/bin/hw/vendor.samsung.hardware.tlc.ddar-service +vendor/bin/hw/vendor.samsung.hardware.tlc.iccc@1.0-service +vendor/bin/hw/vendor.samsung.hardware.tlc.kg-service +vendor/bin/hw/vendor.samsung.hardware.tlc.payment@1.0-service +vendor/bin/hw/vendor.samsung.hardware.tlc.snap@1.0-service +vendor/bin/hw/vendor.samsung.hardware.tlc.ucm-service +vendor/bin/hw/vendor.samsung.hardware.uwb@1.0-service +vendor/bin/hw/vendor.samsung.hardware.vibrator-service +vendor/bin/hw/vendor.samsung.hardware.wifi-service +vendor/bin/qmi-framework-tests/qmi_test_mt_client_init_instance +vendor/bin/GPTEE_Sample_client +vendor/bin/PktRspTest +vendor/bin/StoreKeybox +vendor/bin/TrustedUISampleTAClient +vendor/bin/TrustedUISampleTestAIDL +vendor/bin/add.tflite +vendor/bin/aecxsimulator +vendor/bin/agmcap +vendor/bin/agmcompresscap +vendor/bin/agmcompressplay +vendor/bin/agmhostless +vendor/bin/agmplay +vendor/bin/agmvoiceui +vendor/bin/applypatch +vendor/bin/ar_util_in_test_example +vendor/bin/athdiag +vendor/bin/audioadsprpcd +vendor/bin/audiodsd2pcmtest +vendor/bin/audioflacapp +vendor/bin/boringssl_self_test64 +vendor/bin/cass +vendor/bin/checkpoint_gc +vendor/bin/cnss_cli +vendor/bin/cnss_diag +vendor/bin/cnss_dumpcollector +vendor/bin/color_sampling_test +vendor/bin/color_sampling_tool +vendor/bin/cplay +vendor/bin/ctrlapp_dut +vendor/bin/debug-diag +vendor/bin/diag-router +vendor/bin/diag_callback_sample +vendor/bin/diag_dci_sample +vendor/bin/diag_klog +vendor/bin/diag_mdlog +vendor/bin/diag_socket_log +vendor/bin/diag_uart_log +vendor/bin/dlsc +vendor/bin/dppdaemon +vendor/bin/dumpsys +vendor/bin/e_loop +vendor/bin/emservice +vendor/bin/factory.ssc +vendor/bin/fm_qsoc_patches +vendor/bin/fmconfig +vendor/bin/fmfactorytest +vendor/bin/fmfactorytestserver +vendor/bin/fsdbg_vendor +vendor/bin/gpu_counter_producer +vendor/bin/hdcp1prov +vendor/bin/hdcp2p2prov +vendor/bin/hermesd +vendor/bin/iod +vendor/bin/irsc_util +vendor/bin/loadalgo +vendor/bin/pktlogconf +vendor/bin/pm-proxy +vendor/bin/pm-service +vendor/bin/pmic_key_reset +vendor/bin/ppd +vendor/bin/qcom-system-daemon +vendor/bin/qdcmss +vendor/bin/qms +vendor/bin/qsap_voiceui +vendor/bin/qseecom_sample_client +vendor/bin/qsh_wifi_test +vendor/bin/qttestclient +vendor/bin/qttestservice +vendor/bin/qwesd +vendor/bin/rpmbClient +vendor/bin/sec_nvm +vendor/bin/secril_config_svc +vendor/bin/sg_write_buffer +vendor/bin/shsusrd +vendor/bin/sigma_dut +vendor/bin/smcinvoke_example +vendor/bin/smcinvoke_skeleton +vendor/bin/smcinvoke_skeleton_cpp +vendor/bin/snap_utility_64 +vendor/bin/snaplite_utility_64 +vendor/bin/spdaemon +vendor/bin/ssr_diag +vendor/bin/ssr_setup +vendor/bin/subsystem_ramdump +vendor/bin/test_diag +vendor/bin/test_model.json +vendor/bin/thermal-engine-v2 +vendor/bin/tlpd +vendor/bin/trusteduilistener +vendor/bin/ubwcconvert +vendor/bin/ubwcp_test64 +vendor/bin/utility_cache_test.tflite +vendor/bin/vaultkeeperd +vendor/bin/vendor.samsung.hardware.security.engmode-service +vendor/bin/vendor.samsung.hardware.security.fkeymaster-service +vendor/bin/vendor.samsung.hardware.security.hdcp.wifidisplay-service +vendor/bin/vendor.samsung.hardware.security.proca@2.0-service +vendor/bin/vendor.samsung.hardware.security.rtts-service +vendor/bin/vendor.samsung.hardware.security.vaultkeeper-service +vendor/bin/vmmgr +vendor/bin/wvkprov +vendor/etc/VslMesDetector/MesDetectorBlur.tflite +vendor/etc/VslMesDetector/MesDetectorLowlight.tflite +vendor/etc/VslMesDetector/MesDetectorNoise.tflite +vendor/etc/VslMesDetector/moire_detection.tflite +vendor/etc/aip/config/PCC_Config-timestamp +vendor/etc/aip/config/pcc_config.json +vendor/etc/aip/model/1129_dummy_1441_cached.dlc +vendor/etc/aip/model/CIGSOL_SWISP_200M_v1.6.2_Exp18_e12850_592x4176_A16W8_cached.dlc +vendor/etc/aip/model/CIGSOL_fp32_ver220923_HTP_FP16_cached.dlc +vendor/etc/aip/model/FP16_dummy_HTP_FP16_cached.dlc +vendor/etc/aip/model/ModelSet2_AIMFISP-timestamp +vendor/etc/aip/model/ModelSet2_eraw_AIMFISP-timestamp +vendor/etc/aip/model/ModelSet_AIMFISP-timestamp +vendor/etc/aip/model/ModelSet_AISR-timestamp +vendor/etc/aip/model/ModelSet_eraw_AIMFISP-timestamp +vendor/etc/aip/model/ModelSet_v-timestamp +vendor/etc/aip/model/aiisp_1x_C2C_cached.dlc +vendor/etc/aip/model/aiisp_1x_T2C_Indoor_cached.dlc +vendor/etc/aip/model/aiisp_1x_T2C_Outdoor_cached.dlc +vendor/etc/aip/model/aiisp_1x_ll_C2C_cached.dlc +vendor/etc/aip/model/aiisp_2x_C2C_cached.dlc +vendor/etc/aip/model/aiisp_2x_ll_C2C_cached.dlc +vendor/etc/aip/model/aiisp_4x_C2C_cached.dlc +vendor/etc/aip/model/mfisp_eraw_model_mf_Tetra_RGB_fp16.dlc +vendor/etc/aip/model/mfisp_eraw_model_nl_Tetra_RGB_fp16.dlc +vendor/etc/aip/model/mfisp_model_ll_Tetra_RGB_fp16.dlc +vendor/etc/aip/model/mfisp_model_mf_Tetra_RGB_fp16.dlc +vendor/etc/aip/model/mfisp_model_nl_Tetra_RGB_fp16.dlc +vendor/etc/aip/model/mfisp_tmodel_ll_Tetra_RGB_fp16.dlc +vendor/etc/aip/model/mfisp_tmodel_nl_Tetra_RGB_fp16.dlc +vendor/etc/atrace/atrace_categories.txt +vendor/etc/audconf/OPEN/acdb_cal.acdb +vendor/etc/audconf/OPEN/workspaceFileXml.qwsp +vendor/etc/beauty/settings.dat +vendor/etc/data/dsi_config.xml +vendor/etc/data/netmgr_config.xml +vendor/etc/data/nicm_config.xml +vendor/etc/data/tlpd_oem_config.xml +vendor/etc/default-permissions/com.qualcomm.qti.cne.xml +vendor/etc/default-permissions/vendor.qti.data.txpwradmin.xml +vendor/etc/displayconfig/display_id_4630947039571902851.xml +vendor/etc/dpm_vndr/vendor.dpm.conf +vendor/etc/eva/facedetection/bias.dat +vendor/etc/eva/facedetection/weight.dat +vendor/etc/eva/facelandmark/bias_1_1.dat +vendor/etc/eva/facelandmark/bias_1_2.dat +vendor/etc/eva/facelandmark/bias_2.dat +vendor/etc/eva/facelandmark/bias_3_1.dat +vendor/etc/eva/facelandmark/bias_3_2.dat +vendor/etc/eva/facelandmark/weight_1_1.dat +vendor/etc/eva/facelandmark/weight_1_2.dat +vendor/etc/eva/facelandmark/weight_2.dat +vendor/etc/eva/facelandmark/weight_3_1.dat +vendor/etc/eva/facelandmark/weight_3_2.dat +vendor/etc/eva/itof/tuning_params_sensor_type_1.json +vendor/etc/hyper/config_chipset.json +vendor/etc/hyper/config_hyper_permission.json +vendor/etc/hyper/config_vendor.json +vendor/etc/init/atrace_categories.rc +vendor/etc/init/boringssl_self_test.rc +vendor/etc/init/camera.unihal.rc +vendor/etc/init/cas-default-lazy.rc +vendor/etc/init/cass.rc +vendor/etc/init/dcfd.rc +vendor/etc/init/dlsc.rc +vendor/etc/init/dumpstate-default.rc +vendor/etc/init/emservice.rc +vendor/etc/init/face-default-sec.rc +vendor/etc/init/fingerprint_common.rc +vendor/etc/init/hermesd.rc +vendor/etc/init/hostapd.android.rc +vendor/etc/init/hyper-default-sec.rc +vendor/etc/init/ims-dataservice-daemon.rc +vendor/etc/init/imsdaemon.rc +vendor/etc/init/init.audio.samsung.rc +vendor/etc/init/init.embmssl_server.rc +vendor/etc/init/init.fingerprint.rc +vendor/etc/init/init.nfc.samsung.rc +vendor/etc/init/init.qccvendor.rc +vendor/etc/init/init.qlm-service.rc +vendor/etc/init/init.qti.fm.rc +vendor/etc/init/init.qti.media.rc +vendor/etc/init/init.qti.qcv.rc +vendor/etc/init/init.ramplus.rc +vendor/etc/init/init.spdaemon.rc +vendor/etc/init/init.spuservice.rc +vendor/etc/init/init.vendor.onebinary.rc +vendor/etc/init/init.vendor.qti.hardware.spu.service.rc +vendor/etc/init/init.vendor.rilcommon.rc +vendor/etc/init/init.vendor.sensors.rc +vendor/etc/init/init.vendor.sysfw.rc +vendor/etc/init/init.vendor.uwb.rc +vendor/etc/init/init.vendor.wlan.rc +vendor/etc/init/init_thermal-engine-v2.rc +vendor/etc/init/khdm-default-sec.rc +vendor/etc/init/lights-default-sec.rc +vendor/etc/init/loc-launcher.rc +vendor/etc/init/memtrack_qti.rc +vendor/etc/init/mpos-default-sec.rc +vendor/etc/init/mppserver.rc +vendor/etc/init/nfc-service-nxp.rc +vendor/etc/init/nicmd.rc +vendor/etc/init/pa_daemon_qsee.rc +vendor/etc/init/power-default-sec.rc +vendor/etc/init/poweropt-service.rc +vendor/etc/init/qdcmss.rc +vendor/etc/init/qesdk-secmanager.rc +vendor/etc/init/qguard.rc +vendor/etc/init/qmipriod.debug.rc +vendor/etc/init/qmipriod.rc +vendor/etc/init/qms.rc +vendor/etc/init/qttestservice.rc +vendor/etc/init/qwesd.rc +vendor/etc/init/samsung.software.media.c2@1.0-service.rc +vendor/etc/init/secure_element-service-nxp.rc +vendor/etc/init/shsusrd.rc +vendor/etc/init/snap_utility.rc +vendor/etc/init/snaplite_utility.rc +vendor/etc/init/tlpd.rc +vendor/etc/init/trusteduilistener.rc +vendor/etc/init/vaultkeeper_common.rc +vendor/etc/init/vendor.dpmd.rc +vendor/etc/init/vendor.qsap.location.rc +vendor/etc/init/vendor.qsap.qapeservice.rc +vendor/etc/init/vendor.qsap.sensors.rc +vendor/etc/init/vendor.qti.audio-adsprpc-service.rc +vendor/etc/init/vendor.qti.diag.rc +vendor/etc/init/vendor.qti.hardware.display.demura-service.rc +vendor/etc/init/vendor.qti.pasrknob@1.0-service.rc +vendor/etc/init/vendor.qti.psiclient@1.0-service.rc +vendor/etc/init/vendor.qti.smp2p.rc +vendor/etc/init/vendor.samsung.hardware.authfw-service.rc +vendor/etc/init/vendor.samsung.hardware.biometrics.fingerprint-service.rc +vendor/etc/init/vendor.samsung.hardware.camera.provider-service_64.rc +vendor/etc/init/vendor.samsung.hardware.frcmc-service.rc +vendor/etc/init/vendor.samsung.hardware.health-service.rc +vendor/etc/init/vendor.samsung.hardware.media.converter@1.0-service.rc +vendor/etc/init/vendor.samsung.hardware.security.drk-service.rc +vendor/etc/init/vendor.samsung.hardware.security.engmode-service.rc +vendor/etc/init/vendor.samsung.hardware.security.fkeymaster-service.rc +vendor/etc/init/vendor.samsung.hardware.security.hdcp.keyprovisioning-default.rc +vendor/etc/init/vendor.samsung.hardware.security.hdcp.wifidisplay-default.rc +vendor/etc/init/vendor.samsung.hardware.security.hermes.rc +vendor/etc/init/vendor.samsung.hardware.security.rtts-service.rc +vendor/etc/init/vendor.samsung.hardware.security.sem@1.0-service.rc +vendor/etc/init/vendor.samsung.hardware.security.skpm@1.0-service.rc +vendor/etc/init/vendor.samsung.hardware.security.vaultkeeper-service.rc +vendor/etc/init/vendor.samsung.hardware.security.widevine.keyprov-service.rc +vendor/etc/init/vendor.samsung.hardware.snap-lazy.rc +vendor/etc/init/vendor.samsung.hardware.sysinput-default.rc +vendor/etc/init/vendor.samsung.hardware.thermal-default.rc +vendor/etc/init/vendor.samsung.hardware.tlc.blockchain@1.0-service.rc +vendor/etc/init/vendor.samsung.hardware.tlc.ddar-service.rc +vendor/etc/init/vendor.samsung.hardware.tlc.iccc@1.0-service.rc +vendor/etc/init/vendor.samsung.hardware.tlc.kg-service.rc +vendor/etc/init/vendor.samsung.hardware.tlc.payment@1.0-service.rc +vendor/etc/init/vendor.samsung.hardware.tlc.snap@1.0-service.rc +vendor/etc/init/vendor.samsung.hardware.tlc.ucm-service.rc +vendor/etc/init/vendor.samsung.hardware.uwb@1.0-service.rc +vendor/etc/init/vendor.samsung.hardware.vibrator-default.rc +vendor/etc/init/vendor.samsung.hardware.wifi-service.rc +vendor/etc/init/vendor.samsung.rilchip.qcom.rc +vendor/etc/init/vendor.sensordebug.rc +vendor/etc/init/vendor.sensors.qti.rc +vendor/etc/init/vendor.sensors.sscrpcd.rc +vendor/etc/init/vendor_flash_recovery.rc +vendor/etc/init/vmmgr.rc +vendor/etc/init/vndservicemanager.rc +vendor/etc/init/wifi.rc +vendor/etc/init/wifi_qcom.rc +vendor/etc/init/wsm-service.rc +vendor/etc/lm/prekill/prekill_2GB.data +vendor/etc/lm/prekill/prekill_4GB.data +vendor/etc/lm/prekill/prekill_6GB.data +vendor/etc/lm/AdaptLaunchFeature.xml +vendor/etc/lm/AppClassifierFeature.xml +vendor/etc/lm/LightningLaunchesFeature.xml +vendor/etc/lm/PreKillFeature.xml +vendor/etc/lm/PrefAppsFeature.xml +vendor/etc/lm/ProCompFeature.xml +vendor/etc/lm/QAPE.xml +vendor/etc/lm/QGPE.xml +vendor/etc/lm/QGPEActionMap.xml +vendor/etc/lm/SilkyScrollsFeature.xml +vendor/etc/lm/sPLHFeature.xml +vendor/etc/locale/plmn_delta_eng.bin +vendor/etc/locale/plmn_delta_zh-rCN.bin +vendor/etc/locale/plmn_delta_zh-rHK.bin +vendor/etc/locale/plmn_delta_zh-rTW.bin +vendor/etc/media_cliffs_v0/video_system_specs.json +vendor/etc/media_cliffs_v1/video_system_specs.json +vendor/etc/media_pineapple/video_system_specs.json +vendor/etc/midas/deflare/srcb_flare_enhancement.tflite +vendor/etc/midas/deflare/srcb_flare_estimate.tflite +vendor/etc/midas/moire_detection/moire_detection.tflite +vendor/etc/midas/SRIBMQA_aiBLURESTIMATE_V100_FP32.tflite +vendor/etc/midas/SRIBMQA_aiFiQA_V100_FP32.tflite +vendor/etc/midas/SRIBMQA_aiIQA_V100_FP32.tflite +vendor/etc/midas/SRIBMQA_aiNOISEDETECT_V100_FP32.tflite +vendor/etc/midas/SRIBMidas_aiCLARITY_2X_V200_FP16_sm8650_qnn2143.tvm.so +vendor/etc/midas/SRIBMidas_aiDEBLUR_V140_FP16_sm8650_qnn2143.tvm.so +vendor/etc/midas/SRIBMidas_aiFACERESTORE_V200_FP16_sm8650_qnn2143.tvm.so +vendor/etc/midas/SRIBMidas_aiFACESEMANTICS_V200_FP16_sm8650_qnn2143.tvm.so +vendor/etc/midas/SRIBMidas_aiMOIREREMOVE_Coarse2_V950_FP16_sm8650_qnn2143.tvm.so +vendor/etc/midas/SRIBMidas_aiMOIREREMOVE_Coarse_V950_FP16_sm8650_qnn2143.tvm.so +vendor/etc/midas/SRIBMidas_aiMOIREREMOVE_Comb_V950_FP16_sm8650_qnn2143.tvm.so +vendor/etc/midas/SRIBMidas_aiMOIREREMOVE_Fine2_V950_FP16_sm8650_qnn2143.tvm.so +vendor/etc/midas/SRIBMidas_aiMOIREREMOVE_Fine_V950_FP16_sm8650_qnn2143.tvm.so +vendor/etc/midas/SRIBMidas_aiUPSCALER_2X_V210_FP16_sm8650_qnn2143.tvm.so +vendor/etc/midas/SRIBMidas_aiUPSCALER_3X_V210_FP16_sm8650_qnn2143.tvm.so +vendor/etc/midas/SRIBMidas_aiUPSCALER_4X_V210_FP16_sm8650_qnn2143.tvm.so +vendor/etc/midas/SRIBMidas_aiUpscaler++_4X_v200_INT16_SM8650.dlc +vendor/etc/midas/midas_config.json +vendor/etc/midas_enhancedocumentscan/configs/enhanced_doc_scan_config.json +vendor/etc/midas_enhancedocumentscan/configs/enhanced_doc_scan_config_enhanceX.json +vendor/etc/midas_enhancedocumentscan/models/SRIBEnhScan_aiDEBLUR_V400_FP16_SM8650_qnn2143.tvm.so +vendor/etc/midas_enhancedocumentscan/models/SRIBEnhScan_aiIC_GLOBAL_V580_FP16_SM8650_snpe214.dlc +vendor/etc/midas_enhancedocumentscan/models/SRIBEnhScan_aiIC_LOCAL_V580_FP16_SM8650_snpe214.dlc +vendor/etc/midas_enhancedocumentscan/models/SRIBEnhScan_aiIC_MASK_V580_FP16_SM8650_snpe214.dlc +vendor/etc/midas_enhancedocumentscan/models/SRIBEnhScan_aiOBJECTINPAINT_V300_FP16_SM8650_qnn2143.tvm.so +vendor/etc/midas_enhancedocumentscan/models/SRIBEnhScan_aiOBJECTSEGMENT_V600_FP16_SM8650_qnn2143.tvm.so +vendor/etc/midas_enhancedocumentscan/models/SRIBEnhScan_aiOBJECTSEGMENT_V610_FP16_SM8650_qnn2143.tvm.so +vendor/etc/models/acd/environment.eai +vendor/etc/models/acd/event.eai +vendor/etc/models/acd/music.eai +vendor/etc/models/acd/speech.eai +vendor/etc/portrait_data/SRIB_ClatNetLite_INT8_V003_sm8650_vendor.tvm.so +vendor/etc/portrait_data/dual_portrait_product.json +vendor/etc/portrait_data/single_bokeh_feature_vendor.json +vendor/etc/res/images/default/charger/battery_fail.png +vendor/etc/res/images/default/charger/battery_scale.png +vendor/etc/saiv/frc/db/aifrc/aifrc.dlc +vendor/etc/saiv/gae/MeanFea.bin +vendor/etc/saiv/gae/ParaFea.bin +vendor/etc/saiv/gae/PmAgeFeatSelIdx.bin +vendor/etc/saiv/gae/PmAgeModel.bin +vendor/etc/saiv/gae/PmExpFeatSelIdx.bin +vendor/etc/saiv/gae/PmExpModel.bin +vendor/etc/saiv/gae/PmGenModel.bin +vendor/etc/saiv/gae/PmGenderFeatSelIdx.bin +vendor/etc/saiv/image_understanding/db/SS_segmenter/SS_segmenter_cnn.dlc +vendor/etc/saiv/image_understanding/db/SS_segmenter/SS_segmenter_cnn.info +vendor/etc/saiv/image_understanding/db/ai_segmenter/ai_segmenter_cnn.dlc +vendor/etc/saiv/image_understanding/db/ai_segmenter/ai_segmenter_cnn.info +vendor/etc/saiv/image_understanding/db/aic_autoframing_detector_tracker/aic_autoframing_detector_tracker_cnn.dlc +vendor/etc/saiv/image_understanding/db/aic_autoframing_detector_tracker/aic_autoframing_detector_tracker_cnn.info +vendor/etc/saiv/image_understanding/db/aic_classifier/aic_classifier_cnn.dlc +vendor/etc/saiv/image_understanding/db/aic_classifier/aic_classifier_cnn.info +vendor/etc/saiv/image_understanding/db/aic_detector/aic_detector_cnn.dlc +vendor/etc/saiv/image_understanding/db/aic_detector/aic_detector_cnn.info +vendor/etc/saiv/image_understanding/db/aic_l_o_detector/aic_l_o_detector_cnn.dlc +vendor/etc/saiv/image_understanding/db/aic_l_o_detector/aic_l_o_detector_cnn.info +vendor/etc/saiv/image_understanding/db/aic_l_o_detector/aic_l_o_detector_cnn_system.dlc +vendor/etc/saiv/image_understanding/db/aic_pet_detector/aic_pet_detector_cnn.dlc +vendor/etc/saiv/image_understanding/db/aic_pet_detector/aic_pet_detector_cnn.info +vendor/etc/saiv/image_understanding/db/doc_rectifier/doc_rectifier_cnn.dlc +vendor/etc/saiv/image_understanding/db/doc_rectifier/doc_rectifier_cnn.info +vendor/etc/saiv/image_understanding/db/dvs/dvs_od_cnn.dlc +vendor/etc/saiv/image_understanding/db/dvs/dvs_segmenter_cnn.dlc +vendor/etc/saiv/image_understanding/db/slens_classifier/slens_classifier_cnn.dlc +vendor/etc/saiv/image_understanding/db/slens_detector/slens_detector_cnn.dlc +vendor/etc/saiv/image_understanding/db/sm_segmenter/sm_segmenter_cnn.dlc +vendor/etc/saiv/image_understanding/db/sm_segmenter/sm_segmenter_cnn.info +vendor/etc/sat/arcsat_fusion.config +vendor/etc/seccomp_policy/c2audio.vendor.base-arm.policy +vendor/etc/seccomp_policy/c2audio.vendor.base-arm64.policy +vendor/etc/seccomp_policy/c2audio.vendor.ext-arm.policy +vendor/etc/seccomp_policy/c2audio.vendor.ext-arm64.policy +vendor/etc/seccomp_policy/codec2.vendor.base-arm64.policy +vendor/etc/seccomp_policy/codec2.vendor.ext-arm64.policy +vendor/etc/seccomp_policy/gnss@2.0-base.policy +vendor/etc/seccomp_policy/gnss@2.0-edgnss-daemon.policy +vendor/etc/seccomp_policy/gnss@2.0-qsap-location.policy +vendor/etc/seccomp_policy/gnss@2.0-xtra-daemon.policy +vendor/etc/seccomp_policy/gnss@2.0-xtwifi-client.policy +vendor/etc/seccomp_policy/mediaextractor_sec.policy +vendor/etc/seccomp_policy/qesdk.policy +vendor/etc/seccomp_policy/qesdksec.policy +vendor/etc/seccomp_policy/qms.policy +vendor/etc/seccomp_policy/qsap_dcfd.policy +vendor/etc/seccomp_policy/qsap_qapeservice.policy +vendor/etc/seccomp_policy/qsap_sensors.policy +vendor/etc/seccomp_policy/qsap_voiceui.policy +vendor/etc/seccomp_policy/qti-systemd.policy +vendor/etc/seccomp_policy/qwesd@2.0.policy +vendor/etc/seccomp_policy/samsung.software.media.c2-base-policy +vendor/etc/seccomp_policy/samsung.software.media.c2-ext-policy +vendor/etc/secnvm/k250a_47000400_0.img +vendor/etc/secnvm/k250a_47000403_1.img +vendor/etc/secnvm/k250a_47000406_f.img +vendor/etc/singletake/Blur/BlurClassifier.dlc +vendor/etc/singletake/Pet/SRIB_PetFacialAction.dlc +vendor/etc/singletake/Pet/SR_PetActionClassifier.dlc +vendor/etc/singletake/Pet/SR_PetPoseEstimator.dlc +vendor/etc/singletake/aifilter/filter.polarr.db +vendor/etc/singletake/aifilter/render.polarr.db +vendor/etc/singletake/aifilter/scene.polarr.db +vendor/etc/singletake/bestmoment/facedetV2.polarr.db +vendor/etc/singletake/bestmoment/facedetV3.polarr.db +vendor/etc/singletake/bestmoment/scoreV2.polarr.db +vendor/etc/singletake/blink/blink.dlc +vendor/etc/singletake/blur_detection/BlurDetectionModel_20210527.tflite +vendor/etc/singletake/dynamic_viewing/FaceEngine_model/FERDetModel.dat +vendor/etc/singletake/dynamic_viewing/FaceEngine_model/FERTrackModel.dat +vendor/etc/singletake/dynamic_viewing/DynamicViewingModelHumanDetection.tflite +vendor/etc/singletake/dynamic_viewing/action172_t0_quantized.tflite +vendor/etc/singletake/dynamic_viewing/movinet_t0.tflite +vendor/etc/singletake/dynamic_viewing/score_model_multi.tflite +vendor/etc/singletake/jumpshot/ActionShotPose.dlc +vendor/etc/singletake/jumpshot/ActionShotPosture.dlc +vendor/etc/singletake/saliency/FixPNet.dlc +vendor/etc/ssg/ta_config.json +vendor/etc/ssg/tz_whitelist.json +vendor/etc/str/str_preference_data.dat +vendor/etc/sysconfig/vendor-apex-allowlist.xml +vendor/etc/vintf/manifest/androd.hardware.camera.provider-external-service.xml +vendor/etc/vintf/manifest/atfwd-saidl.xml +vendor/etc/vintf/manifest/bluetooth_audio.xml +vendor/etc/vintf/manifest/bttpi-saidl.xml +vendor/etc/vintf/manifest/drk_manifest.xml +vendor/etc/vintf/manifest/face-default-sec.xml +vendor/etc/vintf/manifest/hyper-default-sec.xml +vendor/etc/vintf/manifest/iweaver_aidl_v2_manifest.xml +vendor/etc/vintf/manifest/khdm-default-sec.xml +vendor/etc/vintf/manifest/lights-default-sec.xml +vendor/etc/vintf/manifest/manifest_non_qmaa.xml +vendor/etc/vintf/manifest/manifest_non_qmaa_extn.xml +vendor/etc/vintf/manifest/memtrack_qti.xml +vendor/etc/vintf/manifest/mpos-default-sec.xml +vendor/etc/vintf/manifest/mppserver.xml +vendor/etc/vintf/manifest/nfc-service-nxp.xml +vendor/etc/vintf/manifest/power-samsung.xml +vendor/etc/vintf/manifest/qms-saidl.xml +vendor/etc/vintf/manifest/sec_c2_manifest_default0_1_2.xml +vendor/etc/vintf/manifest/secure_element-service-nxp.xml +vendor/etc/vintf/manifest/vendor.qti.camera.aon-impl.xml +vendor/etc/vintf/manifest/vendor.qti.camera.offlinecamera-impl.xml +vendor/etc/vintf/manifest/vendor.qti.camera.postproc-impl.xml +vendor/etc/vintf/manifest/vendor.qti.diag.hal.service.xml +vendor/etc/vintf/manifest/vendor.qti.hardware.display.demura-service.xml +vendor/etc/vintf/manifest/vendor.qti.hardware.tetheroffload.service.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.authfw-manifest.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.biometrics.fingerprint-service.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.camera.provider-service.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.frcmc-service.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.health-service.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.radio.exclude.qcom.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.radio_manifest_2_34.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.security.engmode-manifest.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.security.fkeymaster-service.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.security.hdcp.keyprovisioning-default.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.security.hdcp.wifidisplay-default.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.security.hermes.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.security.rtts-manifest.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.security.sem@1.0-manifest.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.security.skpm@1.0-manifest.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.security.vaultkeeper-manifest.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.security.widevine.keyprov-service.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.security.wsm.service-manifest.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.sehradio_manifest_2_34.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.snap-default.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.sysinput-default.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.thermal-default.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.tlc.ddar-default.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.tlc.iccc@1.0-manifest.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.tlc.kg-manifest.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.tlc.snap@1.0-manifest.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.tlc.ucm-manifest.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.uwb@1.0-service.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.vibrator-default.xml +vendor/etc/vintf/manifest/vendor.samsung.hardware.wifi-service.xml +vendor/etc/vintf/manifest_cliffs.xml +vendor/etc/vintf/manifest_pineapple.xml +vendor/etc/DsgpPolicy.csv +vendor/etc/Hapticsconfig.xml +vendor/etc/IPACM_Filter_cfg.xml +vendor/etc/LVACFS_Calibration.dat +vendor/etc/LVACFS_Configuration.txt +vendor/etc/LVACFS_ControlParams.txt +vendor/etc/SoundBoosterParam.txt +vendor/etc/batching.conf +vendor/etc/boringssl_self_test.no_zygote.rc +vendor/etc/boringssl_self_test.zygote32.rc +vendor/etc/boringssl_self_test.zygote64.rc +vendor/etc/boringssl_self_test.zygote64_32.rc +vendor/etc/btcon.json +vendor/etc/card-defs.xml +vendor/etc/charger_fw_fstab.qti +vendor/etc/clstc_config_library.xml +vendor/etc/dax3_media_codecs_dolby_audio.xml +vendor/etc/djsk +vendor/etc/dpolicy +vendor/etc/excluded-input-devices.xml +vendor/etc/external_camera_config.xml +vendor/etc/floating_feature.xml +vendor/etc/fstab.qcom +vendor/etc/fstab.ramplus +vendor/etc/gnss_antenna_info.conf +vendor/etc/gpfspath_oem_config.xml +vendor/etc/hdr_samsung_mx.key +vendor/etc/hqm_device.xml +vendor/etc/init.qti.fm.sh +vendor/etc/libese-nxp.conf +vendor/etc/libuwb-countrycode.conf +vendor/etc/libuwb-feature.conf +vendor/etc/libuwb-nxp.conf +vendor/etc/libuwb-uci.conf +vendor/etc/linker.config.pb +vendor/etc/mem_logger_config.xml +vendor/etc/mercury.json +vendor/etc/mercury_hv.json +vendor/etc/microphone_characteristics.xml +vendor/etc/mixer_usb_default.xml +vendor/etc/mixer_usb_gray.xml +vendor/etc/mkshrc +vendor/etc/mtu-conf.xml +vendor/etc/pdpcnt-conf.xml +vendor/etc/plmn_delta.bin +vendor/etc/plmn_delta_attaio.bin +vendor/etc/plmn_delta_hktw.bin +vendor/etc/plmn_delta_usagsm.bin +vendor/etc/plmn_se13.bin +vendor/etc/proca.db +vendor/etc/public.libraries.txt +vendor/etc/qguard.json +vendor/etc/qms_log_config +vendor/etc/qvirtmgr-vndr.json +vendor/etc/recovery-resource.dat +vendor/etc/sec_audio_volume_curve.xml +vendor/etc/sec_config +vendor/etc/sec_config_oem +vendor/etc/smomo_setting.xml +vendor/etc/snap_gpu_kernel_64.bin +vendor/etc/snapdragon_color_libs_config.xml +vendor/etc/snaplite_cache.bin +vendor/etc/somxreg.conf +vendor/etc/task_profiles.json +vendor/etc/traceconfig.txt +vendor/etc/ueventd.rc +vendor/etc/usecaseKvManager.xml +vendor/etc/uwb_key +vendor/etc/vmmgr.conf +vendor/etc/wlan_common_rc +vendor/etc/wlan_vendor_rc +vendor/firmware/kiwi/amss20.bin +vendor/firmware/kiwi/bdwlan.elf +vendor/firmware/kiwi/bdwlan.elf1 +vendor/firmware/kiwi/bdwlan.elf10 +vendor/firmware/kiwi/bdwlan.elf2 +vendor/firmware/kiwi/phy_ucode20.elf +vendor/firmware/kiwi/qdss_trace_config_v2.cfg +vendor/firmware/kiwi/regdb.bin +vendor/firmware/mfc/mfc_fw_flash_nu1668.bin +vendor/firmware/nfc/libsn300u_fw.so +vendor/firmware/tsp_stm/fts2ba61y_e3q.bin +vendor/firmware/tsp_synaptics/s3916a_e3.bin +vendor/firmware/tsp_synaptics/s3916t_e3.bin +vendor/firmware/uwb/libsr200t_dev_fw.bin +vendor/firmware/uwb/libsr200t_prod_fw.so +vendor/firmware/00_generic_xtalk_shape.bin +vendor/firmware/Data.msc +vendor/firmware/E3_S6E3HAE_AMB681AZ01.dat +vendor/firmware/E3_S6E3HAF_AMB679FN01.dat +vendor/firmware/SoundBoosterParam.bin +vendor/firmware/bt_nvm_loading.xml +vendor/firmware/cs35l43-bot-dsp1-spk-prot.bin +vendor/firmware/cs35l43-bot-dsp1-spk-prot.wmfw +vendor/firmware/cs35l43-rcv-dsp1-spk-prot.bin +vendor/firmware/cs35l43-rcv-dsp1-spk-prot.wmfw +vendor/firmware/cs40l26-a2h.bin +vendor/firmware/cs40l26-calib.bin +vendor/firmware/cs40l26-calib.wmfw +vendor/firmware/cs40l26-dvl.bin +vendor/firmware/cs40l26-svc.bin +vendor/firmware/cs40l26-svc1.bin +vendor/firmware/cs40l26-svc2.bin +vendor/firmware/cs40l26-svc3.bin +vendor/firmware/cs40l26-wt1.bin +vendor/firmware/cs40l26-wt2.bin +vendor/firmware/cs40l26-wt3.bin +vendor/firmware/cs40l26.bin +vendor/firmware/cs40l26.wmfw +vendor/firmware/dax_param.bin +vendor/firmware/gen70900_aqe.fw +vendor/firmware/gen70900_sqe.fw +vendor/firmware/gen70900_zap.mbn +vendor/firmware/gmu_gen70900.bin +vendor/firmware/hmtbtfw20.tlv +vendor/firmware/hmtnv20.b20 +vendor/firmware/hmtnv20.b39 +vendor/firmware/hmtnv20.b3c +vendor/firmware/max77775-extra-fw.bin +vendor/firmware/max77775-fw.bin +vendor/firmware/ois_mcu_stm32g_fw.bin +vendor/firmware/ois_rumba_fw.bin +vendor/firmware/ss_dsi_panel_PBA_BOOTING_FHD.dat +vendor/firmware/vl53l8.bin +vendor/firmware/vpu30_2v.mbn +vendor/firmware/vpu30_2v_unsigned.mbn +vendor/firmware/vpu33_4v.mbn +vendor/firmware/vpu33_4v_unsigned.mbn +vendor/firmware/wez02_e3_c0.bin +vendor/firmware/wez02_e3_c1.bin +vendor/firmware/wez02_e3_c2.bin +vendor/firmware/wez02_e3_c3.bin +vendor/firmware/wlan-connection-roaming-backup.ini +vendor/firmware/wlan-connection-roaming.ini +vendor/lib64/hw/audio.sec_primary.default.so +vendor/lib64/hw/vendor.samsung.hardware.audio@1.0-impl.so +vendor/lib64/snap/libQnnHtp.so +vendor/lib64/snap/libQnnHtpV75Stub.so +vendor/lib64/snap/libQnnSystem.so +vendor/lib64/AIAwbModelFront_v1.0.tflite +vendor/lib64/AIAwbModel_v2.3.tflite +vendor/lib64/SWPD_libTsAf.so +vendor/lib64/av-types-aidl-cpp.so +vendor/lib64/bm4a68v08s12n52.bin +vendor/lib64/bm4a68v08s12n53.bin +vendor/lib64/bm4a73v08s12n02.bin +vendor/lib64/bm4a73v08s12n03.bin +vendor/lib64/bm4a73v08s12n04.bin +vendor/lib64/bm4a73v08s12n06.bin +vendor/lib64/bm4a73v08s12n07.bin +vendor/lib64/bm4a73v08s12n12.bin +vendor/lib64/bm4a73v08s12n13.bin +vendor/lib64/bm4a73v08s12n14.bin +vendor/lib64/bm4a73v08s12n15.bin +vendor/lib64/bm4a73v08s12n16.bin +vendor/lib64/bm4a73v08s12n17.bin +vendor/lib64/bm4a73v08s12n18.bin +vendor/lib64/bm4a73v08s12n19.bin +vendor/lib64/bm4a73v08s12n20.bin +vendor/lib64/bm4a73v08s12n21.bin +vendor/lib64/bm4a73v08s12n22.bin +vendor/lib64/bm4a73v08s12n23.bin +vendor/lib64/bm4a73v08s12n24.bin +vendor/lib64/bm4a73v08s12n25.bin +vendor/lib64/bm4a73v08s12n26.bin +vendor/lib64/bm4a73v08s12n27.bin +vendor/lib64/bm4a73v08s12n28.bin +vendor/lib64/bm4a73v08s12n29.bin +vendor/lib64/bm4a73v08s12n30.bin +vendor/lib64/bm4a73v08s12n35.bin +vendor/lib64/bm4a73v08s12n36.bin +vendor/lib64/bm4a73v08s12n37.bin +vendor/lib64/bm4a73v08s12n38.bin +vendor/lib64/bm4a73v08s12n39.bin +vendor/lib64/bm4a73v08s12n40.bin +vendor/lib64/bm4a73v08s12n43.bin +vendor/lib64/bm4a73v08s12n44.bin +vendor/lib64/bm4a73v08s12n45.bin +vendor/lib64/bm4a73v08s12n46.bin +vendor/lib64/bm4a73v08s12n47.bin +vendor/lib64/bm4a73v08s12n48.bin +vendor/lib64/bm4a73v08s12n49.bin +vendor/lib64/bm4a73v08s12n50.bin +vendor/lib64/bm4a73v08s12n51.bin +vendor/lib64/bm4a73v08s12n54.bin +vendor/lib64/bm4a73v08s12n55.bin +vendor/lib64/bm4a73v08s12n56.bin +vendor/lib64/bm4a73v08s12n57.bin +vendor/lib64/bm4a73v08s12n58.bin +vendor/lib64/bm4a73v08s12n59.bin +vendor/lib64/bm4a73v08s12n60.bin +vendor/lib64/bm4a73v08s12n61.bin +vendor/lib64/bm4a73v08s12n62.bin +vendor/lib64/btaudio_offload_if.so +vendor/lib64/camx.provider-impl.so +vendor/lib64/cdsp_face.so +vendor/lib64/com.qti.chiusecaseselector.so +vendor/lib64/com.qti.settings.sm8650.so +vendor/lib64/com.qualcomm.mcx.distortionmapper.so +vendor/lib64/com.qualcomm.mcx.linearmapper.so +vendor/lib64/com.qualcomm.mcx.nonlinearmapper.so +vendor/lib64/com.qualcomm.mcx.policy.mfl.so +vendor/lib64/com.qualcomm.qti.mcx.usecase.extension.so +vendor/lib64/ftm_fm_lib.so +vendor/lib64/libAIHighRes_interface.so +vendor/lib64/libAIMFISP.camera.samsung.so +vendor/lib64/libAIMFISP_core.camera.samsung.so +vendor/lib64/libAISR_core.camera.samsung.so +vendor/lib64/libAISegmenter_v2.camera.samsung.so +vendor/lib64/libAImode_wrapper.camera.samsung.so +vendor/lib64/libAIphoto_core.camera.samsung.so +vendor/lib64/libAfHelper.uniplugin@1.0.so +vendor/lib64/libAlacSwDec.so +vendor/lib64/libApeSwDec.so +vendor/lib64/libBarcodeReader.vendor.quram.so +vendor/lib64/libBeauty_v4.camera.samsung.so +vendor/lib64/libBlurDetectionDeepLearning.camera.samsung.so +vendor/lib64/libCB.so +vendor/lib64/libDLInterface.camera.samsung.so +vendor/lib64/libDepthPortraitVideo_interface.so +vendor/lib64/libDeviceInfoProvider.so +vendor/lib64/libDocumentDetector.uniplugin@1.0.so +vendor/lib64/libEventFinder.camera.samsung.so +vendor/lib64/libEvrcSwCodec.so +vendor/lib64/libFaceService.so +vendor/lib64/libFace_Landmark_API.camera.samsung.so +vendor/lib64/libFace_Landmark_Engine.camera.samsung.so +vendor/lib64/libFastUWDistortionCorrection.camera.samsung.so +vendor/lib64/libFlacSwDec.so +vendor/lib64/libGLESv2_adreno.so +vendor/lib64/libGPMTEEC_vendor.so +vendor/lib64/libGPreqcancel.so +vendor/lib64/libGPreqcancel_svc.so +vendor/lib64/libHDRVerifier_v1.camera.samsung.so +vendor/lib64/libHandGesture.camera.samsung.so +vendor/lib64/libHprFace_GAE_api.camera.samsung.so +vendor/lib64/libHprVisualEffect.so +vendor/lib64/libHpr_RecFace_dl_v1.0.camera.samsung.so +vendor/lib64/libHpr_RecGAE_cvFeature_v1.0.camera.samsung.so +vendor/lib64/libHumanSegVideoModel_Vendor.so +vendor/lib64/libIDDQD_core.so +vendor/lib64/libIMUSensor.so +vendor/lib64/libLightObjectDetector_v1.camera.samsung.so +vendor/lib64/libLocalTM_capture_core.camera.samsung.so +vendor/lib64/libLocalTM_preview_core.so +vendor/lib64/libLocalTM_wrapper.camera.samsung.so +vendor/lib64/libMoireDetection.camera.samsung.so +vendor/lib64/libMoireDetectionWrapper.camera.samsung.so +vendor/lib64/libMoireDetector.uniplugin@1.0.so +vendor/lib64/libMoonVerifier_v1.camera.samsung.so +vendor/lib64/libMotionEstimator.camera.samsung.so +vendor/lib64/libMotionEstimator.uniplugin@1.0.so +vendor/lib64/libMotionEstimatorWrapper.camera.samsung.so +vendor/lib64/libObjectDetector.uniplugin@1.0.so +vendor/lib64/libOpenCL_adreno.so +vendor/lib64/libOpenCv.camera.samsung.so +vendor/lib64/libPanDetector.so +vendor/lib64/libPersonal_capture.camera.samsung.so +vendor/lib64/libPersonal_core.camera.samsung.so +vendor/lib64/libPetDetector_interface.so +vendor/lib64/libPetDetector_v1.camera.samsung.so +vendor/lib64/libPortraitDistortionCorrection.arcsoft.so +vendor/lib64/libPortraitDistortionCorrectionCali.arcsoft.so +vendor/lib64/libPortraitSolution.camera.samsung_preview.so +vendor/lib64/libQRInterface.camera.samsung.so +vendor/lib64/libQcelp13SwCodec.so +vendor/lib64/libQrDetector.uniplugin@1.0.so +vendor/lib64/libRelighting_API.camera.samsung.so +vendor/lib64/libRenderPortraitVideo_interface.so +vendor/lib64/libSRIB_ARVL_HAP.camera.samsung.so +vendor/lib64/libSWB.camera.samsung.so +vendor/lib64/libSWNDFilterPreview.camera.samsung.so +vendor/lib64/libSceneDetector_v1.camera.samsung.so +vendor/lib64/libSecC2ComponentStore.so +vendor/lib64/libSecExif.uniplugin@1.0.so +vendor/lib64/libSecJpegEncoder.uniplugin@1.0.so +vendor/lib64/libSecPhotoHdrEncoder.uniplugin@1.0.so +vendor/lib64/libSemDataProps.so +vendor/lib64/libSemTelephonyProps.so +vendor/lib64/libSingleTakeBlurDetection.uniplugin@1.0.so +vendor/lib64/libSmartScan.camera.samsung.so +vendor/lib64/libSnpeCpu.so +vendor/lib64/libSnpeGpu.so +vendor/lib64/libSnpeHtpV75Stub.so +vendor/lib64/libTetraMFP10.camera.samsung.so +vendor/lib64/libTetraMFP10Tuning.camera.samsung.so +vendor/lib64/libTetraSR10.camera.samsung.so +vendor/lib64/libTetraSR10Tuning.camera.samsung.so +vendor/lib64/libTrustedInputUtils.so +vendor/lib64/libTsAf_E123Q.so +vendor/lib64/libTsAwbFront_E123.so +vendor/lib64/libTsAwb_E3.so +vendor/lib64/libTxPwrJni.so +vendor/lib64/libUltraWideDistortionCorrection.camera.samsung.so +vendor/lib64/libUltraWideDistortionCorrection.uniplugin@1.0.so +vendor/lib64/libUniPluginUtils.so +vendor/lib64/libUniScaler.uniplugin@1.0.so +vendor/lib64/libWideDistortionCorrection.camera.samsung.so +vendor/lib64/lib_bt_aptx.so +vendor/lib64/lib_bt_ble.so +vendor/lib64/lib_bt_bundle.so +vendor/lib64/lib_profiler.so +vendor/lib64/libadm.so +vendor/lib64/libadreno_app_profiles.so +vendor/lib64/libagm_compress_plugin.so +vendor/lib64/libagm_mixer_plugin.so +vendor/lib64/libagm_pcm_plugin.so +vendor/lib64/libagmmixer.so +vendor/lib64/libai_denoiser_interface.so +vendor/lib64/libai_tetra_text_zoom.arcsoft.so +vendor/lib64/libaidenoiser.so +vendor/lib64/libaidenoiserv2.so +vendor/lib64/libaifrc.quram.so +vendor/lib64/libaivideocentral.arcsoft.so +vendor/lib64/libaudiochargerlistener.so +vendor/lib64/libaudioclient_aidl_conversion.so +vendor/lib64/libaudiofeaturestats.so +vendor/lib64/libaudiofoundation.so +vendor/lib64/libauto_framing_arcsoft.uniplugin@1.0.so +vendor/lib64/libauto_framing_lite.uniplugin@1.0.so +vendor/lib64/libautoframing_object_tracker.camera.samsung.so +vendor/lib64/libautotracking_interface.so +vendor/lib64/libbacklight-calib.so +vendor/lib64/libbase64.so +vendor/lib64/libbatching.so +vendor/lib64/libbatterylistener.so +vendor/lib64/libbeauty_preview.uniplugin@1.0.so +vendor/lib64/libbeautyshot.arcsoft.so +vendor/lib64/libbinderdebug.so +vendor/lib64/libbitmlengine.so +vendor/lib64/libbodyid.arcsoft.so +vendor/lib64/libbt-hidlclient.so +vendor/lib64/libbtnv.so +vendor/lib64/libc2filterplugin.so +vendor/lib64/libcamera2ndk_vendor.so +vendor/lib64/libcamerapostproc.so +vendor/lib64/libcapiv2svacnnvendor.so +vendor/lib64/libcapiv2svarnnvendor.so +vendor/lib64/libcapiv2udk7vendor.so +vendor/lib64/libcapiv2uvvendor.so +vendor/lib64/libcdfw.so +vendor/lib64/libcdfw_remote_api.so +vendor/lib64/libclconverter.so +vendor/lib64/libclstc_algorithm_adapter.so +vendor/lib64/libclstc_gcp_adapter.so +vendor/lib64/libclstc_tm.so +vendor/lib64/libcodec2_sec_aacdec.so +vendor/lib64/libcodec2_sec_aacenc.so +vendor/lib64/libcodec2_sec_amrnbdec.so +vendor/lib64/libcodec2_sec_amrwbdec.so +vendor/lib64/libcodec2_sec_apedec.so +vendor/lib64/libcodec2_sec_flacdec.so +vendor/lib64/libcodec2_sec_imadec.so +vendor/lib64/libcodec2_sec_mp3dec.so +vendor/lib64/libcodec2_sec_mp4vdec.so +vendor/lib64/libcodec2_sec_soft_common.so +vendor/lib64/libcodec2_sec_vc1dec.so +vendor/lib64/libcodec2_simple_component.so +vendor/lib64/libcodec2_soft_ac4dec.so +vendor/lib64/libcodec2_soft_common.so +vendor/lib64/libcodec2_soft_eac3dec.so +vendor/lib64/libcppcose_rkp.so +vendor/lib64/libcustomva_intf.so +vendor/lib64/libdiagjni.so +vendor/lib64/libdigital-dimming.so +vendor/lib64/libdisp-aba.so +vendor/lib64/libdk_vnd_service_core.so +vendor/lib64/libdpp_manager.so +vendor/lib64/libdpps.so +vendor/lib64/libdrmtime.so +vendor/lib64/libdsd2pcm.so +vendor/lib64/libdsms_vendor.so +vendor/lib64/libdsphist_qc.so +vendor/lib64/libdspmc_qc.so +vendor/lib64/libegis_fp_normal_sensor_test.so +vendor/lib64/libengine_did.so +vendor/lib64/libengmode15.so +vendor/lib64/libengmode2lite.so +vendor/lib64/libengmode_client.so +vendor/lib64/libengmode_server.so +vendor/lib64/libengmode_tlc.so +vendor/lib64/libese-grdg.so +vendor/lib64/libeva_util.so +vendor/lib64/libevent_finder.uniplugin@1.0.so +vendor/lib64/libexifa.camera.samsung.so +vendor/lib64/libface_landmark.arcsoft.so +vendor/lib64/libfast_uwdc.uniplugin@1.0.so +vendor/lib64/libfastcrc.so +vendor/lib64/libfeutils.so +vendor/lib64/libfidoauthnr_v2.so +vendor/lib64/libfilefinder.so +vendor/lib64/libfmpal.so +vendor/lib64/libfocuspeaking.so +vendor/lib64/libfocuspeaking.uniplugin@1.0.so +vendor/lib64/libformatConverter.unifunc.so +vendor/lib64/libgame_enhance.so +vendor/lib64/libgeofencing.so +vendor/lib64/libgf_in_system_lib.so +vendor/lib64/libgnss.so +vendor/lib64/libgnsspps.so +vendor/lib64/libgpt.so +vendor/lib64/libgpudataproducer.so +vendor/lib64/libgralloc_helper.unifunc.so +vendor/lib64/libhal.wsm.samsung.so +vendor/lib64/libhand_interaction.uniplugin@1.0.so +vendor/lib64/libhandgesture.arcsoft.so +vendor/lib64/libhdcp1prov.so +vendor/lib64/libhdcp2_qcedev.so +vendor/lib64/libhdcp2p2prov.so +vendor/lib64/libhdcpsrm.so +vendor/lib64/libhdr_backlight_adapter.so +vendor/lib64/libhdr_backlight_adapter_qti.so +vendor/lib64/libhdr_stub.so +vendor/lib64/libhdr_tm.so +vendor/lib64/libhdradaptivecustom.so +vendor/lib64/libhdraid.gpu.arcsoft.so +vendor/lib64/libhdraid.npu.arcsoft.so +vendor/lib64/libhdrdynamic.so +vendor/lib64/libhdrdynamicootf.so +vendor/lib64/libheifcapture.so +vendor/lib64/libhermes.so +vendor/lib64/libhermes_bdbridge.so +vendor/lib64/libhfp_pal.so +vendor/lib64/libhme.so +vendor/lib64/libhotword_intf.so +vendor/lib64/libhwvault.so +vendor/lib64/libhyper.so +vendor/lib64/libhypermotion_core.so +vendor/lib64/libhypermotion_interface.so +vendor/lib64/libiccprofile.so +vendor/lib64/libiddqd.uniplugin@1.0.so +vendor/lib64/libimage_enhancement.arcsoft.so +vendor/lib64/libimage_io.so +vendor/lib64/libimagecodec_native.quram.so +vendor/lib64/libimgproc_sw.unifunc@common.so +vendor/lib64/libipebpsstriping.so +vendor/lib64/libipebpsstriping170.so +vendor/lib64/libipebpsstriping480.so +vendor/lib64/libisosechw.so +vendor/lib64/libjpegQtable_interface.so +vendor/lib64/libjpege.so +vendor/lib64/libjpegencoder_sw.unifunc.so +vendor/lib64/libjpegsq.media.samsung.so +vendor/lib64/libjump_shot.uniplugin@1.0.so +vendor/lib64/libkcl.so +vendor/lib64/libkernelmanager.so +vendor/lib64/liblearningmodule.so +vendor/lib64/liblivefocus_preview_engine.so +vendor/lib64/liblivefocus_preview_interface.so +vendor/lib64/libllvm-qcom.so +vendor/lib64/libllvm-qgl.so +vendor/lib64/libloadalgo_stub.so +vendor/lib64/libloadtrusteduiapp.so +vendor/lib64/libloc_api_wds.so +vendor/lib64/libloc_socket.so +vendor/lib64/liblocaltm_capture.uniplugin@1.0.so +vendor/lib64/liblocaltm_preview.uniplugin@1.0.so +vendor/lib64/liblocation_api_msg.so +vendor/lib64/liblocation_client_api.so +vendor/lib64/liblocation_integration_api.so +vendor/lib64/liblowi_wifihal.so +vendor/lib64/libmapdata_api.so +vendor/lib64/libmaskdetection.uniplugin@1.0.so +vendor/lib64/libmcaimegpu.samsung.so +vendor/lib64/libmctfengine_stub.so +vendor/lib64/libmdsprpc.so +vendor/lib64/libmediaconverter.so +vendor/lib64/libmeters.so +vendor/lib64/libmfGhostDetection.so +vendor/lib64/libmfec.so +vendor/lib64/libmm-hdcpmgr.so +vendor/lib64/libmm-omxcore.so +vendor/lib64/libmpp_common_vendor.so +vendor/lib64/libmpp_vendor.so +vendor/lib64/libmppaifrc.so +vendor/lib64/libmppdeflicker.so +vendor/lib64/libmppfrc.so +vendor/lib64/libmulticam_optical_zoom_control.so +vendor/lib64/libmultiobject_tracker.so +vendor/lib64/libnanopb.so +vendor/lib64/libnative-api.so +vendor/lib64/libndfilter_preview.uniplugin@1.0.so +vendor/lib64/liboemaids_vendor.so +vendor/lib64/libopestriping.so +vendor/lib64/libops.so +vendor/lib64/libpadm.so +vendor/lib64/libpalclient.so +vendor/lib64/libpantilt_detector.uniplugin@1.0.so +vendor/lib64/libpassese.so +vendor/lib64/libperfioctl.so +vendor/lib64/libpersonalimprinting.uniplugin@1.0.so +vendor/lib64/libpet_detector.uniplugin@1.0.so +vendor/lib64/libpetcamera_engine.so +vendor/lib64/libphotohdr.so +vendor/lib64/libphotohdrcp.so +vendor/lib64/libpsi.so +vendor/lib64/libq3dtools_adreno.so +vendor/lib64/libqape_oem_ext.so +vendor/lib64/libqc2audio_base.so +vendor/lib64/libqc2audio_basecodec.so +vendor/lib64/libqc2audio_core.so +vendor/lib64/libqc2audio_hooks.so +vendor/lib64/libqc2audio_hwaudiocodec.so +vendor/lib64/libqc2audio_platform.so +vendor/lib64/libqc2audio_swaudiocodec.so +vendor/lib64/libqc2audio_utils.so +vendor/lib64/libqcci_legacy.so +vendor/lib64/libqcodec2_base.so +vendor/lib64/libqcodec2_basecodec.so +vendor/lib64/libqcodec2_core.so +vendor/lib64/libqcodec2_cvpfilter.so +vendor/lib64/libqcodec2_filterbase.so +vendor/lib64/libqcodec2_hooks.so +vendor/lib64/libqcodec2_imgtxrfilter.so +vendor/lib64/libqcodec2_mockfilter.so +vendor/lib64/libqcodec2_platform.so +vendor/lib64/libqcodec2_streaminteg_filter.so +vendor/lib64/libqcodec2_utils.so +vendor/lib64/libqcodec2_v4l2codec.so +vendor/lib64/libqdMetaData.so +vendor/lib64/libqdcm-algo.so +vendor/lib64/libqdcm-json-mode-parser.so +vendor/lib64/libqdcm-mode-parser.so +vendor/lib64/libqdp.so +vendor/lib64/libqdpr.so +vendor/lib64/libqesdk2_0.so +vendor/lib64/libqfp_sensortest.so +vendor/lib64/libqisl.so +vendor/lib64/libqll.so +vendor/lib64/libqll10.so +vendor/lib64/libqllengine.so +vendor/lib64/libqmi_csvt_srvc.so +vendor/lib64/libqmi_legacy.so +vendor/lib64/libqms.so +vendor/lib64/libqrtrclient.so +vendor/lib64/libqseed3.so +vendor/lib64/libqsegnet.so +vendor/lib64/libqsh_wifi_test.so +vendor/lib64/libqspm-mem-utils-vendor.so +vendor/lib64/libqtbase.so +vendor/lib64/libqti-iopd.so +vendor/lib64/libqti-perfd.so +vendor/lib64/libqti-utils.so +vendor/lib64/libqtigefar.so +vendor/lib64/libqtjsonhelper.so +vendor/lib64/libqtnodes.so +vendor/lib64/libqttestclient.so +vendor/lib64/libqttestservice.so +vendor/lib64/librapidscorerplus.so +vendor/lib64/librcmask.so +vendor/lib64/libreffeature.so +vendor/lib64/librmengine_plus.uniplugin@1.0.so +vendor/lib64/librpmb.so +vendor/lib64/librtts_client.so +vendor/lib64/libsamsungcamerahal.so +vendor/lib64/libsamsungcamerahalutils.so +vendor/lib64/libsamsungcamerahwl_impl.so +vendor/lib64/libsaped.so +vendor/lib64/libsavsac.so +vendor/lib64/libsavsvc.so +vendor/lib64/libscaler_hw.unifunc.so +vendor/lib64/libscaler_sw.unifunc.so +vendor/lib64/libscenedetector.uniplugin@1.0.so +vendor/lib64/libsdm-colormgr-algo.so +vendor/lib64/libsdsprpc.so +vendor/lib64/libsec-ril.so +vendor/lib64/libsec2imageformatfilter.so +vendor/lib64/libsec_skpmHalTlc.so +vendor/lib64/libsecfr_engine.so +vendor/lib64/libsecfr_model.so +vendor/lib64/libsecsuperresolution_wrapper_v1.camera.samsung.so +vendor/lib64/libsegmentationeffect.uniplugin@1.0.so +vendor/lib64/libsegmentationeffect_capture.uniplugin@1.0.so +vendor/lib64/libsfeShiftExtrapolation.so +vendor/lib64/libsfp_sensor.so +vendor/lib64/libsfp_teegw.so +vendor/lib64/libsfplugin_ccodec_utils.so +vendor/lib64/libsgutils2.so +vendor/lib64/libshctrl.so +vendor/lib64/libshmemcompat.so +vendor/lib64/libshmemutil.so +vendor/lib64/libshotsuggestion.so +vendor/lib64/libshotsuggestion_engines.so +vendor/lib64/libshsc.so +vendor/lib64/libsimba.media.samsung.so +vendor/lib64/libsingle_portrait_preview.uniplugin@1.0.so +vendor/lib64/libsmartfocus.uniplugin@1.0.so +vendor/lib64/libsmemlog.so +vendor/lib64/libsnaace.so +vendor/lib64/libsnamrnb.so +vendor/lib64/libsnamrwb.so +vendor/lib64/libsnap_compute.so +vendor/lib64/libsnap_compute_wrapper.so +vendor/lib64/libsnap_qnn.so +vendor/lib64/libsnapdragoncolor-manager.so +vendor/lib64/libsnapdragoncolor-qdcm.so +vendor/lib64/libsnaplite_native.so +vendor/lib64/libsnaplite_wrapper.so +vendor/lib64/libsndcardparser.so +vendor/lib64/libsnpe_dsp_domains_v3.so +vendor/lib64/libsnpe_wrapper.so +vendor/lib64/libsns_api.so +vendor/lib64/libsns_device_mode_stub.so +vendor/lib64/libsns_dynamic_loader_stub.so +vendor/lib64/libsns_registry_skel.so +vendor/lib64/libsns_remote_proc_state_stub.so +vendor/lib64/libsnsapi-full.so +vendor/lib64/libsoc_helper_jni.so +vendor/lib64/libsocial_image_enhancement.uniplugin@1.0.so +vendor/lib64/libsoft_attestation_cert.so +vendor/lib64/libsomxcmn.so +vendor/lib64/libspl.so +vendor/lib64/libsrib_CNNInterface.camera.samsung.so +vendor/lib64/libsrib_humanaware_engine.camera.samsung.so +vendor/lib64/libssc_default_listener.so +vendor/lib64/libssd.so +vendor/lib64/libssengine.uniplugin@1.0.so +vendor/lib64/libstork_shared.so +vendor/lib64/libstreamparser.so +vendor/lib64/libstreamprocessor.so +vendor/lib64/libsubsystem_control.so +vendor/lib64/libswb_interface.so +vendor/lib64/libswregistrationalgo.so +vendor/lib64/libsynaFpSensorTestNwd.so +vendor/lib64/libsynergy_loc_api.so +vendor/lib64/libsysmon_cdsp_skel.so +vendor/lib64/libsystem_health_mon.so +vendor/lib64/libtaautoload.so +vendor/lib64/libtensorflowLite.singletake.camera.samsung.so +vendor/lib64/libtensorflowlite.camera.samsung.so +vendor/lib64/libtensorflowlite_gpu.camera.samsung.so +vendor/lib64/libtfestriping.so +vendor/lib64/libthirdparty_zoomtranslator_imp.so +vendor/lib64/libtlc_comm_ddar_aidl.so +vendor/lib64/libtlc_comm_iccc.so +vendor/lib64/libtlc_comm_snap.so +vendor/lib64/libtlc_direct_comm_ddar_aidl.so +vendor/lib64/libtlc_direct_comm_iccc.so +vendor/lib64/libtlc_direct_comm_snap.so +vendor/lib64/libtlpd.so +vendor/lib64/libtlpd_configmgr.so +vendor/lib64/libtlpd_crypto.so +vendor/lib64/libtlpd_internal.so +vendor/lib64/libtlpd_logger.so +vendor/lib64/libtvm_runtime.so +vendor/lib64/libtvm_wrapper.so +vendor/lib64/libubifocus.so +vendor/lib64/libubwcp.so +vendor/lib64/libucm_tlc_comm.so +vendor/lib64/libucm_tlc_direct_comm.so +vendor/lib64/libucm_tlc_tz_esecomm.so +vendor/lib64/libvdis_core.so +vendor/lib64/libvdis_interface.so +vendor/lib64/libvideobeauty.arcsoft.so +vendor/lib64/libvideobeauty.uniplugin@1.0.so +vendor/lib64/libvideobeauty_capture.uniplugin@1.0.so +vendor/lib64/libvideobeauty_interface.so +vendor/lib64/libvideoml.so +vendor/lib64/libvideotxr.so +vendor/lib64/libvideoutils.so +vendor/lib64/libvk_cass_interface.so +vendor/lib64/libvkmanager_vendor.so +vendor/lib64/libvkservice.so +vendor/lib64/libvndfwk_detect_jni.qti.so +vendor/lib64/libvndfwk_detect_jni.qti_vendor.so +vendor/lib64/libvui_dmgr.so +vendor/lib64/libvui_dmgr_client.so +vendor/lib64/libwpa_drv_oem.so +vendor/lib64/libwsmd_functions.so +vendor/lib64/libz_stable.so +vendor/lib64/libzoomroi.samsung.so +vendor/lib64/libzoomroi_lite.samsung.so +vendor/lib64/p3_profile.bin +vendor/lib64/service-listener-ext-aidl-V1-ndk.so +vendor/lib64/shared-file-region-aidl-cpp.so +vendor/lib64/unihal_filter_unit.so +vendor/lib64/unihal_main.so +vendor/lib64/unihal_scenario.so +vendor/lib64/unihal_uniplugin@1.0.so +vendor/lib64/uwb_uci.hal.so +vendor/lib64/vendor.qti.ImsRtpService-V1-ndk.so +vendor/lib64/vendor.qti.data.factoryservice-V1-ndk.so +vendor/lib64/vendor.qti.data.mwqemaidlservice-V1-ndk.so +vendor/lib64/vendor.qti.hardware.data.cneaidlservice.internal.api-V1-ndk.so +vendor/lib64/vendor.qti.hardware.data.cneaidlservice.internal.constants-V1-ndk.so +vendor/lib64/vendor.qti.hardware.data.cneaidlservice.internal.server-V1-ndk.so +vendor/lib64/vendor.qti.hardware.data.dynamicddsaidlservice-V1-ndk.so +vendor/lib64/vendor.qti.hardware.data.flowaidlservice-V1-ndk.so +vendor/lib64/vendor.qti.hardware.data.lceaidlservice-V1-ndk.so +vendor/lib64/vendor.qti.hardware.data.qmiaidlservice-V1-ndk.so +vendor/lib64/vendor.qti.hardware.mwqemadapteraidlservice-V1-ndk.so +vendor/lib64/vendor.qti.ims.callcapabilityaidlservice-V1-ndk.so +vendor/lib64/vendor.qti.ims.configaidlservice-V1-ndk.so +vendor/lib64/vendor.qti.ims.connectionaidlservice-V1-ndk.so +vendor/lib64/vendor.qti.ims.factoryaidlservice-V1-ndk.so +vendor/lib64/vendor.qti.ims.rcssipaidlservice-V1-ndk.so +vendor/lib64/vendor.qti.ims.rcsuceaidlservice-V1-ndk.so +vendor/lib64/vendor.qti.latencyaidlservice-V1-ndk.so +vendor/lib64/vendor.samsung.frameworks.security.dsms-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.audio@1.0.so +vendor/lib64/vendor.samsung.hardware.authfw-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.biometrics.face-V3-ndk.so +vendor/lib64/vendor.samsung.hardware.biometrics.fingerprint-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.bluetooth.audio-impl.so +vendor/lib64/vendor.samsung.hardware.camera.device-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.camera.provider-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.frcmc-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.health-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.khdm-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.light-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.media.converter-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.media.converter-V2-ndk.so +vendor/lib64/vendor.samsung.hardware.media.mpp-V3-ndk.so +vendor/lib64/vendor.samsung.hardware.mpos-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.radio.channel-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.security.drk-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.security.drk@2.0.so +vendor/lib64/vendor.samsung.hardware.security.engmode-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.security.fkeymaster-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.security.hdcp.keyprovisioning-V1-ndk_platform.so +vendor/lib64/vendor.samsung.hardware.security.hdcp.wifidisplay-V2-ndk.so +vendor/lib64/vendor.samsung.hardware.security.hermes-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.security.rtts-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.security.sem@1.0.so +vendor/lib64/vendor.samsung.hardware.security.skpm@1.0.so +vendor/lib64/vendor.samsung.hardware.security.vaultkeeper-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.security.widevine.keyprov-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.security.wsm.service-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.snap-V2-ndk.so +vendor/lib64/vendor.samsung.hardware.sysinput-V2-ndk.so +vendor/lib64/vendor.samsung.hardware.thermal-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.tlc.blockchain@1.0-impl.so +vendor/lib64/vendor.samsung.hardware.tlc.blockchain@1.0.so +vendor/lib64/vendor.samsung.hardware.tlc.ddar-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.tlc.iccc@1.0-impl.so +vendor/lib64/vendor.samsung.hardware.tlc.iccc@1.0.so +vendor/lib64/vendor.samsung.hardware.tlc.kg-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.tlc.payment@1.0-impl.so +vendor/lib64/vendor.samsung.hardware.tlc.payment@1.0.so +vendor/lib64/vendor.samsung.hardware.tlc.snap@1.0-impl.so +vendor/lib64/vendor.samsung.hardware.tlc.snap@1.0.so +vendor/lib64/vendor.samsung.hardware.tlc.ucm-V1-ndk.so +vendor/lib64/vendor.samsung.hardware.tlc.ucm-impl.so +vendor/lib64/vendor.samsung.hardware.vibrator-V5-ndk.so +vendor/lib64/vendor.samsung.hardware.wifi-V1-ndk.so +vendor/saiv/image_understanding/db/aig_classifier/aig_classifier_cnn.tflite +vendor/saiv/image_understanding/db/hdr_verifier/hdr_verifier_cnn.dlc +vendor/saiv/image_understanding/db/hdr_verifier/hdr_verifier_cnn.info +vendor/saiv/image_understanding/db/moon_verifier/moon_verifier_cnn.info +vendor/saiv/image_understanding/db/moon_verifier/moon_verifier_cnn.onnx +vendor/saiv/image_understanding/db/pet_classifier/pet_classifier_vit.tflite +vendor/saiv/image_understanding/db/pet_detector/pet_detector_cnn.tflite +vendor/saiv/image_understanding/db/sce_detector/sce_detector_cnn.tflite +vendor/saiv/image_understanding/db/srr_interaction/srr_interaction_cnn.tflite +vendor/saiv/mpi_model/009/B2BSFNet.dlc +vendor/saiv/mpi_model/1000/B2BSFNet.dlc +vendor/saiv/mpi_model/2000/B2BSFNet.dlc +vendor/saiv/mpi_model/3000/B2BSFNet.dlc +vendor/saiv/mpi_model/999/B2BSFNet.dlc +vendor/saiv/mpi_model/B2BSFNetVendor-timestamp +vendor/saiv/sr_engine_model/All_mnetv2_mini_p256x256_b16_00834_20210809.tflite +vendor/saiv/sr_engine_model/nima_crop_pair_v0.0.2_mobilenetv2_fp16.tflite +vendor/saiv/swisp_1.0/db/SWISPNetVendor-timestamp +vendor/saiv/swisp_1.0/db/denoise_model_e3000_832X1088X4_v10.0_S22Realgfjdndm_l115ssim35dists25lpips25.dlc +vendor/saiv/swisp_1.0/db/denoise_model_e3000_832X1088X4_v9.4_C3P3S22Real_l113ssim35dists25lpips25.dlc +vendor/saiv/swisp_1.0/db/dmdnde_model_e3100_832X1088X4_v9.5_front.dlc +vendor/saiv/swisp_1.0/db/dmdnde_model_e605_832X1088X4_v11.10.exp5_S22v2v5_S23v1v2_bls_avg.dlc +vendor/saiv/swisp_1.0/db/dmdnde_model_e708_832X1088X4_v11.7.exp8_S22v2v5_S23v1v2_bls_avg.dlc diff --git a/rootdir/Android.bp b/rootdir/Android.bp new file mode 100644 index 0000000..00b3288 --- /dev/null +++ b/rootdir/Android.bp @@ -0,0 +1,317 @@ +// +// Copyright (C) 2024 The LineageOS Project +// +// SPDX-License-Identifier: Apache-2.0 +// + +// Init scripts +sh_binary { + name: "dcc_extension.sh", + src: "bin/dcc_extension.sh", + vendor: true, +} + +sh_binary { + name: "hdm_status.sh", + src: "bin/hdm_status.sh", + vendor: true, +} + +sh_binary { + name: "init.class_main.sh", + src: "bin/init.class_main.sh", + vendor: true, +} + +sh_binary { + name: "init.crda.sh", + src: "bin/init.crda.sh", + vendor: true, +} + +sh_binary { + name: "init.kernel.post_boot-cliffs.sh", + src: "bin/init.kernel.post_boot-cliffs.sh", + vendor: true, +} + +sh_binary { + name: "init.kernel.post_boot-pineapple.sh", + src: "bin/init.kernel.post_boot-pineapple.sh", + vendor: true, +} + +sh_binary { + name: "init.kernel.post_boot.sh", + src: "bin/init.kernel.post_boot.sh", + vendor: true, +} + +sh_binary { + name: "init.mdm.sh", + src: "bin/init.mdm.sh", + vendor: true, +} + +sh_binary { + name: "init.qcom.class_core.sh", + src: "bin/init.qcom.class_core.sh", + vendor: true, +} + +sh_binary { + name: "init.qcom.coex.sh", + src: "bin/init.qcom.coex.sh", + vendor: true, +} + +sh_binary { + name: "init.qcom.early_boot.sh", + src: "bin/init.qcom.early_boot.sh", + vendor: true, +} + +sh_binary { + name: "init.qcom.efs.sync.sh", + src: "bin/init.qcom.efs.sync.sh", + vendor: true, +} + +sh_binary { + name: "init.qcom.post_boot.sh", + src: "bin/init.qcom.post_boot.sh", + vendor: true, +} + +sh_binary { + name: "init.qcom.sdio.sh", + src: "bin/init.qcom.sdio.sh", + vendor: true, +} + +sh_binary { + name: "init.qcom.sensors.sh", + src: "bin/init.qcom.sensors.sh", + vendor: true, +} + +sh_binary { + name: "init.qcom.sh", + src: "bin/init.qcom.sh", + vendor: true, +} + +sh_binary { + name: "init.qcom.usb.sh", + src: "bin/init.qcom.usb.sh", + vendor: true, +} + +sh_binary { + name: "init.qti.kernel.debug-cliffs.sh", + src: "bin/init.qti.kernel.debug-cliffs.sh", + vendor: true, +} + +sh_binary { + name: "init.qti.kernel.debug-pineapple.sh", + src: "bin/init.qti.kernel.debug-pineapple.sh", + vendor: true, +} + +sh_binary { + name: "init.qti.kernel.debug.sh", + src: "bin/init.qti.kernel.debug.sh", + vendor: true, +} + +sh_binary { + name: "init.qti.kernel.early_debug-pineapple.sh", + src: "bin/init.qti.kernel.early_debug-pineapple.sh", + vendor: true, +} + +sh_binary { + name: "init.qti.kernel.early_debug.sh", + src: "bin/init.qti.kernel.early_debug.sh", + vendor: true, +} + +sh_binary { + name: "init.qti.kernel.sh", + src: "bin/init.qti.kernel.sh", + vendor: true, +} + +sh_binary { + name: "init.qti.media.sh", + src: "bin/init.qti.media.sh", + vendor: true, +} + +sh_binary { + name: "init.qti.qcv.sh", + src: "bin/init.qti.qcv.sh", + vendor: true, +} + +sh_binary { + name: "init.qti.time.daemon.sh", + src: "bin/init.qti.time.daemon.sh", + vendor: true, +} + +sh_binary { + name: "init.qti.write.sh", + src: "bin/init.qti.write.sh", + vendor: true, +} + +sh_binary { + name: "init.vendor.sensordebug.sh", + src: "bin/init.vendor.sensordebug.sh", + vendor: true, +} + +sh_binary { + name: "init.vendor.sensordebug.ssr_dump.sh", + src: "bin/init.vendor.sensordebug.ssr_dump.sh", + vendor: true, +} + +sh_binary { + name: "install-recovery.sh", + src: "bin/install-recovery.sh", + vendor: true, +} + +sh_binary { + name: "qca6234-service.sh", + src: "bin/qca6234-service.sh", + vendor: true, +} + +sh_binary { + name: "system_dlkm_modprobe.sh", + src: "bin/system_dlkm_modprobe.sh", + vendor: true, +} + +sh_binary { + name: "vendor_modprobe.sh", + src: "bin/vendor_modprobe.sh", + vendor: true, +} + +// Init configuration files +prebuilt_etc { + name: "init.e3q.rc", + src: "etc/init.e3q.rc", + sub_dir: "init/hw", + vendor: true, +} + +prebuilt_etc { + name: "init.qcom.factory.rc", + src: "etc/init.qcom.factory.rc", + sub_dir: "init/hw", + vendor: true, +} + +prebuilt_etc { + name: "init.qcom.rc", + src: "etc/init.qcom.rc", + sub_dir: "init/hw", + vendor: true, +} + +prebuilt_etc { + name: "init.qcom.usb.rc", + src: "etc/init.qcom.usb.rc", + sub_dir: "init/hw", + vendor: true, +} + +prebuilt_etc { + name: "init.qti.kernel.rc", + src: "etc/init.qti.kernel.rc", + sub_dir: "init/hw", + vendor: true, +} + +prebuilt_etc { + name: "init.qti.ss-ramdump.sh", + src: "etc/init.qti.ss-ramdump.sh", + sub_dir: "init/hw", + vendor: true, +} + +prebuilt_etc { + name: "init.qti.ufs.rc", + src: "etc/init.qti.ufs.rc", + sub_dir: "init/hw", + vendor: true, +} + +prebuilt_etc { + name: "init.samsung.bsp.rc", + src: "etc/init.samsung.bsp.rc", + sub_dir: "init/hw", + vendor: true, +} + +prebuilt_etc { + name: "init.samsung.display.rc", + src: "etc/init.samsung.display.rc", + sub_dir: "init/hw", + vendor: true, +} + +prebuilt_etc { + name: "init.samsung.dp.rc", + src: "etc/init.samsung.dp.rc", + sub_dir: "init/hw", + vendor: true, +} + +prebuilt_etc { + name: "init.samsung.factory.rc", + src: "etc/init.samsung.factory.rc", + sub_dir: "init/hw", + vendor: true, +} + +prebuilt_etc { + name: "init.samsung.power.rc", + src: "etc/init.samsung.power.rc", + sub_dir: "init/hw", + vendor: true, +} + +prebuilt_etc { + name: "init.samsung.rc", + src: "etc/init.samsung.rc", + sub_dir: "init/hw", + vendor: true, +} + +prebuilt_etc { + name: "init.samsung.user.rc", + src: "etc/init.samsung.user.rc", + sub_dir: "init/hw", + vendor: true, +} + +prebuilt_etc { + name: "init.target.rc", + src: "etc/init.target.rc", + sub_dir: "init/hw", + vendor: true, +} + +// fstab +prebuilt_etc { + name: "fstab.qcom", + src: "etc/fstab.qcom", + vendor: true, +} diff --git a/rootdir/Android.mk b/rootdir/Android.mk new file mode 100644 index 0000000..440c942 --- /dev/null +++ b/rootdir/Android.mk @@ -0,0 +1,25 @@ +# +# Copyright (C) 2024 The LineageOS Project +# +# SPDX-License-Identifier: Apache-2.0 +# + +LOCAL_PATH := $(call my-dir) + +# Recovery init configuration files +include $(CLEAR_VARS) +LOCAL_MODULE := init.recovery.qcom.rc +LOCAL_MODULE_TAGS := optional +LOCAL_MODULE_CLASS := ETC +LOCAL_SRC_FILES := etc/init.recovery.qcom.rc +LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT) +include $(BUILD_PREBUILT) + +include $(CLEAR_VARS) +LOCAL_MODULE := init.recovery.samsung.rc +LOCAL_MODULE_TAGS := optional +LOCAL_MODULE_CLASS := ETC +LOCAL_SRC_FILES := etc/init.recovery.samsung.rc +LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT) +include $(BUILD_PREBUILT) + diff --git a/rootdir/bin/dcc_extension.sh b/rootdir/bin/dcc_extension.sh new file mode 100644 index 0000000..25d9ba6 --- /dev/null +++ b/rootdir/bin/dcc_extension.sh @@ -0,0 +1,9 @@ +#============================================================================= +# Copyright (c) 2023 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +#============================================================================= + +extension() +{ +} \ No newline at end of file diff --git a/rootdir/bin/hdm_status.sh b/rootdir/bin/hdm_status.sh new file mode 100644 index 0000000..6260882 --- /dev/null +++ b/rootdir/bin/hdm_status.sh @@ -0,0 +1,58 @@ +#! /vendor/bin/sh + +if [ "$#" -ne 1 ] +then + echo "Usage: $0 " + exit +fi + +count=0 +policy=0 +array=(1 2 4 8 16 32 64 128 256 512) +name_arry=(cam mmc usb wlan bt gps dis aud cpm sen) + + +hdm_status=$1 +hdm_swblock_status=$(getprop "ro.vendor.hdm.supported.swblock") + +echo "hdmstatus = $hdm_status" +echo "hdm supported swblock = $hdm_swblock_status" + +HDM_STATUS_SPLIT=$(echo $hdm_status | tr "&|" "\n") + +#get hdm policy from ro.boot.hdm_status +for split in $HDM_STATUS_SPLIT +do + count=$((($count + 1)%2)) + if [ $count -eq 0 ]; then + split16="0x$split" + echo "split16 = $split16" + policy=$(($policy|$split16)) + fi +done + +echo "$policy" +hex=$(printf "0x%x" "$policy") +echo "$hex" + +#setprop vendor.hdm.status "$hex" + +#check sw block +swblock=$(($policy&$hdm_swblock_status)) +swblockhex=$(printf "0x%x" "$swblock") +echo "swblockhex = $swblockhex" + +setprop vendor.hdm.swblock.status "$swblockhex" + +#start sw block +count=0 +for isblock in ${array[@]} +do + if [ $(($isblock&$swblock)) -eq $isblock ]; then + echo "swblock enable = ${name_arry[$count]}" + swblockname=$(printf "vendor.hdm.internal.%s" "${name_arry[$count]}") + setprop $swblockname "boot" + fi + count=$(($count + 1)) +done + diff --git a/rootdir/bin/init.class_main.sh b/rootdir/bin/init.class_main.sh new file mode 100644 index 0000000..74217c9 --- /dev/null +++ b/rootdir/bin/init.class_main.sh @@ -0,0 +1,104 @@ +#! /vendor/bin/sh + +# Copyright (c) 2013-2014, 2019 The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +# +# start ril-daemon only for targets on which radio is present +# +baseband=`getprop ro.baseband` +sgltecsfb=`getprop persist.vendor.radio.sglte_csfb` +datamode=`getprop persist.vendor.data.mode` +low_ram=`getprop ro.config.low_ram` + +case "$baseband" in + "apq" | "sda" | "qcs" ) + setprop ro.vendor.radio.noril yes + stop vendor.ril-daemon + stop vendor.qcrild + stop vendor.qcrild2 + stop vendor.qcrild3 +esac + +case "$baseband" in + "msm" | "csfb" | "svlte2a" | "mdm" | "mdm2" | "sglte" | "sglte2" | "dsda2" | "unknown" | "dsda3" | "sdm" | "sdx" | "sm6") + + start vendor.qcrild + + case "$baseband" in + "svlte2a" | "csfb") + start qmiproxy + ;; + "sglte" | "sglte2" ) + if [ "x$sgltecsfb" != "xtrue" ]; then + start qmiproxy + else + setprop persist.vendor.radio.voice.modem.index 0 + fi + ;; + esac + + multisim=`getprop persist.radio.multisim.config` + + if [ "$multisim" = "dsds" ] || [ "$multisim" = "dsda" ]; then + start vendor.qcrild2 + elif [ "$multisim" = "tsts" ]; then + start vendor.qcrild2 + start vendor.qcrild3 + fi + + case "$datamode" in + "tethered") +# This daemon was also disabled in sm8450 as a qualcomm tethering interface. +# start vendor.dataqti + if [ "$low_ram" != "true" ]; then + start vendor.dataadpl + fi + ;; + "concurrent") +# This daemon was also disabled in sm8450 as a qualcomm tethering interface. +# start vendor.dataqti + if [ "$low_ram" != "true" ]; then + start vendor.dataadpl + fi + ;; + *) + ;; + esac +esac + +# +# Allow persistent faking of bms +# User needs to set fake bms charge in persist.vendor.bms.fake_batt_capacity +# +fake_batt_capacity=`getprop persist.vendor.bms.fake_batt_capacity` +case "$fake_batt_capacity" in + "") ;; #Do nothing here + * ) + echo "$fake_batt_capacity" > /sys/class/power_supply/battery/capacity + ;; +esac diff --git a/rootdir/bin/init.crda.sh b/rootdir/bin/init.crda.sh new file mode 100644 index 0000000..4264789 --- /dev/null +++ b/rootdir/bin/init.crda.sh @@ -0,0 +1,35 @@ +#! /vendor/bin/sh + +# Copyright (c) 2012, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +country=`getprop wlan.crda.country` +# crda takes input in COUNTRY environment variable +if [ $country != "" ] +then +COUNTRY="$country" /system/bin/crda +fi diff --git a/rootdir/bin/init.kernel.post_boot-cliffs.sh b/rootdir/bin/init.kernel.post_boot-cliffs.sh new file mode 100644 index 0000000..72882d7 --- /dev/null +++ b/rootdir/bin/init.kernel.post_boot-cliffs.sh @@ -0,0 +1,49 @@ +#============================================================================= +# Copyright (c) 2022-2023 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +# +# Copyright (c) 2009-2012, 2014-2019, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +#============================================================================= + +rev=`cat /sys/devices/soc0/revision` + +echo 4 > /proc/sys/kernel/printk + +# Change console log level as per console config property +console_config=`getprop persist.vendor.console.silent.config` +case "$console_config" in + "1") + echo "Enable console config to $console_config" + echo 0 > /proc/sys/kernel/printk + ;; + *) + echo "Enable console config to $console_config" + ;; +esac + +setprop vendor.post_boot.parsed 1 diff --git a/rootdir/bin/init.kernel.post_boot-pineapple.sh b/rootdir/bin/init.kernel.post_boot-pineapple.sh new file mode 100644 index 0000000..875799f --- /dev/null +++ b/rootdir/bin/init.kernel.post_boot-pineapple.sh @@ -0,0 +1,439 @@ +#============================================================================= +# Copyright (c) 2022-2023 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +# +# Copyright (c) 2009-2012, 2014-2019, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +#============================================================================= + +rev=`cat /sys/devices/soc0/revision` + +# Configure RT parameters: +# Long running RT task detection is confined to consolidated builds. +# Set RT throttle runtime to 50ms more than long running RT +# task detection time. +# Set RT throttle period to 100ms more than RT throttle runtime. +long_running_rt_task_ms=1200 +sched_rt_runtime_ms=`expr $long_running_rt_task_ms + 50` +sched_rt_runtime_us=`expr $sched_rt_runtime_ms \* 1000` +sched_rt_period_ms=`expr $sched_rt_runtime_ms + 100` +sched_rt_period_us=`expr $sched_rt_period_ms \* 1000` +echo $sched_rt_period_us > /proc/sys/kernel/sched_rt_period_us +echo $sched_rt_runtime_us > /proc/sys/kernel/sched_rt_runtime_us + +if [ -d /proc/sys/walt ]; then + # configure maximum frequency when CPUs are partially halted + echo 1190400 > /proc/sys/walt/sched_max_freq_partial_halt + + # Core Control Paramters for Silvers + echo 0xFF > /sys/devices/system/cpu/cpu0/core_ctl/nrrun_cpu_mask + echo 0x00 > /sys/devices/system/cpu/cpu0/core_ctl/nrrun_cpu_misfit_mask + echo 0x00 > /sys/devices/system/cpu/cpu0/core_ctl/assist_cpu_mask + echo 0x00 > /sys/devices/system/cpu/cpu0/core_ctl/assist_cpu_misfit_mask + + # Core control parameters for gold + echo 3 > /sys/devices/system/cpu/cpu2/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu2/core_ctl/busy_up_thres + echo 30 > /sys/devices/system/cpu/cpu2/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu2/core_ctl/offline_delay_ms + echo 3 > /sys/devices/system/cpu/cpu2/core_ctl/task_thres + echo 0 0 0 > /sys/devices/system/cpu/cpu2/core_ctl/not_preferred + echo 0xFC > /sys/devices/system/cpu/cpu2/core_ctl/nrrun_cpu_mask + echo 0x63 > /sys/devices/system/cpu/cpu2/core_ctl/nrrun_cpu_misfit_mask + echo 0x00 > /sys/devices/system/cpu/cpu2/core_ctl/assist_cpu_mask + echo 0x00 > /sys/devices/system/cpu/cpu2/core_ctl/assist_cpu_misfit_mask + + # Core control parameters for titaniums + echo 0 > /sys/devices/system/cpu/cpu5/core_ctl/min_cpus + echo 2 > /sys/devices/system/cpu/cpu5/core_ctl/min_partial_cpus + echo 60 > /sys/devices/system/cpu/cpu5/core_ctl/busy_up_thres + echo 30 > /sys/devices/system/cpu/cpu5/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu5/core_ctl/offline_delay_ms + echo 2 > /sys/devices/system/cpu/cpu5/core_ctl/task_thres + echo 1 1 > /sys/devices/system/cpu/cpu5/core_ctl/not_preferred + echo 0xE0 > /sys/devices/system/cpu/cpu5/core_ctl/nrrun_cpu_mask + echo 0x00 > /sys/devices/system/cpu/cpu5/core_ctl/nrrun_cpu_misfit_mask + echo 0x1C > /sys/devices/system/cpu/cpu5/core_ctl/assist_cpu_mask + echo 0x03 > /sys/devices/system/cpu/cpu5/core_ctl/assist_cpu_misfit_mask + + # Core control parameters for gold+ + echo 0 > /sys/devices/system/cpu/cpu7/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu7/core_ctl/busy_up_thres + echo 30 > /sys/devices/system/cpu/cpu7/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu7/core_ctl/offline_delay_ms + echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/task_thres + echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/not_preferred + echo 0x80 > /sys/devices/system/cpu/cpu7/core_ctl/nrrun_cpu_mask + echo 0x7C > /sys/devices/system/cpu/cpu7/core_ctl/nrrun_cpu_misfit_mask + echo 0x7C > /sys/devices/system/cpu/cpu7/core_ctl/assist_cpu_mask + echo 0x03 > /sys/devices/system/cpu/cpu7/core_ctl/assist_cpu_misfit_mask + + echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/enable + echo 0 > /sys/devices/system/cpu/cpu2/core_ctl/enable + echo 1 > /sys/devices/system/cpu/cpu5/core_ctl/enable + echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/enable + + # Configure Single Boost Thread + echo 0 > /proc/sys/walt/sched_sbt_delay_windows + echo 0x60 > /proc/sys/walt/sched_sbt_pause_cpus + + # Setting b.L scheduler parameters + echo 95 95 95 > /proc/sys/walt/sched_upmigrate + echo 85 85 85 > /proc/sys/walt/sched_downmigrate + echo 80 > /proc/sys/walt/sched_group_downmigrate + echo 90 > /proc/sys/walt/sched_group_upmigrate + echo 1 > /proc/sys/walt/sched_walt_rotate_big_tasks + echo 400000000 > /proc/sys/walt/sched_coloc_downmigrate_ns + echo 16000000 16000000 16000000 16000000 16000000 16000000 16000000 5000000 > /proc/sys/walt/sched_coloc_busy_hyst_cpu_ns + echo 248 > /proc/sys/walt/sched_coloc_busy_hysteresis_enable_cpus + echo 10 10 10 10 10 10 10 95 > /proc/sys/walt/sched_coloc_busy_hyst_cpu_busy_pct + echo 8500000 8500000 8500000 8500000 8500000 8500000 8500000 2000000 > /proc/sys/walt/sched_util_busy_hyst_cpu_ns + echo 255 > /proc/sys/walt/sched_util_busy_hysteresis_enable_cpus + echo 1 1 1 1 1 1 1 15 > /proc/sys/walt/sched_util_busy_hyst_cpu_util + echo 40 > /proc/sys/walt/sched_cluster_util_thres_pct + echo 0 30 30 30 > /proc/sys/walt/sched_idle_enough_clust + echo 10 > /proc/sys/walt/sched_ed_boost + + #Set early upmigrate tunables + freq_to_migrate=1248000 + silver_fmax=`cat /sys/devices/system/cpu/cpufreq/policy0/scaling_max_freq` + silver_early_upmigrate=`expr 1024 \* $silver_fmax / $freq_to_migrate` + silver_early_downmigrate=`expr \( 1024 \* $silver_fmax \) / \( \( \( 10 \* $freq_to_migrate \) - $silver_fmax \) \/ 10 \)` + sched_upmigrate=`cat /proc/sys/walt/sched_upmigrate` + sched_downmigrate=`cat /proc/sys/walt/sched_downmigrate` + sched_upmigrate=${sched_upmigrate:0:2} + sched_downmigrate=${sched_downmigrate:0:2} + gold_early_upmigrate=`expr \( 1024 \* 100 \) \/ $sched_upmigrate` + gold_early_downmigrate=`expr \( 1024 \* 100 \) \/ $sched_downmigrate` + echo $silver_early_downmigrate $gold_early_downmigrate $gold_early_downmigrate > /proc/sys/walt/sched_early_downmigrate + echo $silver_early_upmigrate $gold_early_upmigrate $gold_early_upmigrate > /proc/sys/walt/sched_early_upmigrate + + # Enable Gold CPUs for pipeline + echo 28 > /proc/sys/walt/sched_pipeline_cpus + + # set the threshold for low latency task boost feature which prioritize + # binder activity tasks + echo 325 > /proc/sys/walt/walt_low_latency_task_threshold + + # configure maximum frequency of silver cluster when load is not detected and ensure that + # other clusters' fmax remains uncapped by setting the frequency to S32_MAX + + # enable smart fmax for silver + echo 1804800 2147483647 2147483647 2147483647 > /proc/sys/walt/sched_fmax_cap + + # set c1dcvs parameter + chown system.system /sys/devices/system/cpu/c1dcvs/enable_c1dcvs + chmod 0660 /sys/devices/system/cpu/c1dcvs/enable_c1dcvs + chown system.system /sys/devices/system/cpu/c1dcvs/efreq_thresh + chmod 0660 /sys/devices/system/cpu/c1dcvs/efreq_thresh + echo 0 > /sys/devices/system/cpu/c1dcvs/enable_c1dcvs + echo 2 1400000 > /sys/devices/system/cpu/c1dcvs/efreq_thresh + echo 3 1400000 > /sys/devices/system/cpu/c1dcvs/efreq_thresh + echo 4 1400000 > /sys/devices/system/cpu/c1dcvs/efreq_thresh + echo 1 > /sys/devices/system/cpu/c1dcvs/enable_c1dcvs + + # Turn off scheduler boost at the end + echo 0 > /proc/sys/walt/sched_boost + + # configure input boost settings + if [ $rev == "1.0" ] || [ $rev == "1.1" ]; then + echo 0 0 0 0 0 0 0 0 > /proc/sys/walt/input_boost/input_boost_freq + else + echo 0 0 0 0 0 0 0 0 > /proc/sys/walt/input_boost/input_boost_freq + fi + echo 0 > /proc/sys/walt/input_boost/input_boost_ms + + echo "walt" > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor + echo "walt" > /sys/devices/system/cpu/cpufreq/policy2/scaling_governor + echo "walt" > /sys/devices/system/cpu/cpufreq/policy5/scaling_governor + echo "walt" > /sys/devices/system/cpu/cpufreq/policy7/scaling_governor + + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/walt/down_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/walt/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy2/walt/down_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy2/walt/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy5/walt/down_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy5/walt/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy7/walt/down_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy7/walt/up_rate_limit_us + + echo 1 > /sys/devices/system/cpu/cpufreq/policy0/walt/pl + echo 1 > /sys/devices/system/cpu/cpufreq/policy2/walt/pl + echo 1 > /sys/devices/system/cpu/cpufreq/policy5/walt/pl + echo 1 > /sys/devices/system/cpu/cpufreq/policy7/walt/pl + + echo 787200 > /sys/devices/system/cpu/cpufreq/policy0/walt/rtg_boost_freq + echo 844800 > /sys/devices/system/cpu/cpufreq/policy2/walt/rtg_boost_freq + echo 844800 > /sys/devices/system/cpu/cpufreq/policy5/walt/rtg_boost_freq + echo 902400 > /sys/devices/system/cpu/cpufreq/policy7/walt/rtg_boost_freq + + if [ $rev == "1.0" ] || [ $rev == "1.1" ]; then + echo 1344000 > /sys/devices/system/cpu/cpufreq/policy0/walt/hispeed_freq + echo 1612800 > /sys/devices/system/cpu/cpufreq/policy2/walt/hispeed_freq + echo 1612800 > /sys/devices/system/cpu/cpufreq/policy5/walt/hispeed_freq + echo 1555200 > /sys/devices/system/cpu/cpufreq/policy7/walt/hispeed_freq + else + echo 1344000 > /sys/devices/system/cpu/cpufreq/policy0/walt/hispeed_freq + echo 1612800 > /sys/devices/system/cpu/cpufreq/policy2/walt/hispeed_freq + echo 1612800 > /sys/devices/system/cpu/cpufreq/policy5/walt/hispeed_freq + echo 1593600 > /sys/devices/system/cpu/cpufreq/policy7/walt/hispeed_freq + fi +else + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy2/scaling_governor + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy5/scaling_governor + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy7/scaling_governor + echo 1 > /proc/sys/kernel/sched_pelt_multiplier +fi + +if [ $rev == "1.0" ] || [ $rev == "1.1" ]; then + echo 556800 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq + echo 576000 > /sys/devices/system/cpu/cpufreq/policy2/scaling_min_freq + echo 576000 > /sys/devices/system/cpu/cpufreq/policy5/scaling_min_freq + echo 729600 > /sys/devices/system/cpu/cpufreq/policy7/scaling_min_freq +else + echo 556800 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq + echo 614400 > /sys/devices/system/cpu/cpufreq/policy2/scaling_min_freq + echo 499200 > /sys/devices/system/cpu/cpufreq/policy5/scaling_min_freq + echo 672000 > /sys/devices/system/cpu/cpufreq/policy7/scaling_min_freq +fi + +# Reset the RT boost, which is 1024 (max) by default. +echo 0 > /proc/sys/kernel/sched_util_clamp_min_rt_default + +# disable min util condition for boost +echo 0 > /proc/sys/walt/sched_min_task_util_for_boost +echo 0 > /proc/sys/walt/sched_min_task_util_for_colocation +echo 0 > /proc/sys/walt/sched_min_task_util_for_uclamp + +# cpuset parameters +echo 0-1 5-6 > /dev/cpuset/background/cpus +echo 0-1 5-6 > /dev/cpuset/system-background/cpus + + +# configure bus-dcvs +bus_dcvs="/sys/devices/system/cpu/bus_dcvs" + +for device in $bus_dcvs/* +do + cat $device/hw_min_freq > $device/boost_freq +done + +for ubwcpbw in $bus_dcvs/UBWCP/*bwmon-ubwcp +do + echo "5931 7980 10437 16113" > $ubwcpbw/mbps_zones + echo 4 > $ubwcpbw/sample_ms + echo 80 > $ubwcpbw/io_percent + echo 20 > $ubwcpbw/hist_memory + echo 5 > $ubwcpbw/hyst_length + echo 1 > $ubwcpbw/idle_length + echo 30 > $ubwcpbw/down_thres + echo 0 > $ubwcpbw/guard_band_mbps + echo 250 > $ubwcpbw/up_scale + echo 1600 > $ubwcpbw/idle_mbps + echo 710000 > $ubwcpbw/max_freq + echo 40 > $ubwcpbw/window_ms +done + +for llccbw in $bus_dcvs/LLCC/*bwmon-llcc +do + echo "4577 7110 9155 12298 14236 16265" > $llccbw/mbps_zones + echo 4 > $llccbw/sample_ms + echo 80 > $llccbw/io_percent + echo 20 > $llccbw/hist_memory + echo 5 > $llccbw/hyst_length + echo 1 > $llccbw/idle_length + echo 30 > $llccbw/down_thres + echo 0 > $llccbw/guard_band_mbps + echo 250 > $llccbw/up_scale + echo 1600 > $llccbw/idle_mbps + echo 806000 > $llccbw/max_freq + echo 40 > $llccbw/window_ms +done + +for ddrbw in $bus_dcvs/DDR/*bwmon-ddr +do + echo "2086 5931 7980 10437 12157 14060 16113" > $ddrbw/mbps_zones + echo 4 > $ddrbw/sample_ms + echo 80 > $ddrbw/io_percent + echo 20 > $ddrbw/hist_memory + echo 5 > $ddrbw/hyst_length + echo 1 > $ddrbw/idle_length + echo 30 > $ddrbw/down_thres + echo 0 > $ddrbw/guard_band_mbps + echo 250 > $ddrbw/up_scale + echo 1600 > $ddrbw/idle_mbps + echo 2736000 > $ddrbw/max_freq + echo 40 > $ddrbw/window_ms +done + +for latfloor in $bus_dcvs/*/*latfloor +do + echo 25000 > $latfloor/ipm_ceil +done + +for l3gold in $bus_dcvs/L3/*gold +do + echo 4000 > $l3gold/ipm_ceil +done + +for l3prime in $bus_dcvs/L3/*prime +do + echo 20000 > $l3prime/ipm_ceil +done + +for qosgold in $bus_dcvs/DDRQOS/*gold +do + echo 50 > $qosgold/ipm_ceil +done + +for qosprime in $bus_dcvs/DDRQOS/*prime +do + echo 100 > $qosprime/ipm_ceil +done + +for ddrprime in $bus_dcvs/DDR/*prime +do + echo 25 > $ddrprime/freq_scale_pct + echo 1500 > $ddrprime/freq_scale_floor_mhz + echo 2726 > $ddrprime/freq_scale_ceil_mhz +done + +# Permission for video hint +chown root.system /sys/devices/system/cpu/cpufreq/policy0/walt/hispeed_freq +chmod 0660 /sys/devices/system/cpu/cpufreq/policy0/walt/hispeed_freq +chown root.system /sys/devices/system/cpu/cpufreq/policy0/walt/rtg_boost_freq +chmod 0660 /sys/devices/system/cpu/cpufreq/policy0/walt/rtg_boost_freq +chown root.system /sys/devices/system/cpu/cpufreq/policy0/walt/pl +chmod 0660 /sys/devices/system/cpu/cpufreq/policy0/walt/pl + +echo s2idle > /sys/power/mem_sleep +echo N > /sys/devices/system/cpu/qcom_lpm/parameters/sleep_disabled + +model_name=`getprop ro.product.device` + +if [ $model_name == "b6q" ]; then + echo 608 > /sys/devices/system/cpu/cpufreq/policy0/walt/target_load_thresh + echo 837 > /sys/devices/system/cpu/cpufreq/policy2/walt/target_load_thresh + echo 891 > /sys/devices/system/cpu/cpufreq/policy5/walt/target_load_thresh + echo 806 > /sys/devices/system/cpu/cpufreq/policy7/walt/target_load_thresh + + echo 15000 > /sys/devices/system/cpu/cpufreq/policy0/walt/up_rate_limit_us + echo 15000 > /sys/devices/system/cpu/cpufreq/policy2/walt/up_rate_limit_us + echo 15000 > /sys/devices/system/cpu/cpufreq/policy5/walt/up_rate_limit_us + echo 15000 > /sys/devices/system/cpu/cpufreq/policy7/walt/up_rate_limit_us + echo 1344000 > /sys/devices/system/cpu/cpufreq/policy0/walt/up_delay_freq + echo 2572800 > /sys/devices/system/cpu/cpufreq/policy2/walt/up_delay_freq + echo 2572800 > /sys/devices/system/cpu/cpufreq/policy5/walt/up_delay_freq + echo 2630400 > /sys/devices/system/cpu/cpufreq/policy7/walt/up_delay_freq + + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/walt/pl + + echo 1 > /proc/sys/walt/sched_conservative_pl + + echo 50 85 85 > /proc/sys/walt/sched_downmigrate + echo 59 95 95 > /proc/sys/walt/sched_upmigrate + + echo 20 > /dev/cpuctl/background/cpu.uclamp.max + + echo 1804800 2707200 2707200 2147483647 > /proc/sys/walt/sched_fmax_cap + + echo 51 > /proc/sys/walt/sched_min_task_util_for_boost + echo 51 > /proc/sys/walt/sched_min_task_util_for_uclamp + echo 35 > /proc/sys/walt/sched_min_task_util_for_colocation + + chown root.system /sys/devices/system/cpu/cpufreq/policy0/walt/up_delay_freq + chmod 0660 /sys/devices/system/cpu/cpufreq/policy0/walt/up_delay_freq + chown root.system /sys/devices/system/cpu/cpufreq/policy0/walt/target_load_thresh + chmod 0660 /sys/devices/system/cpu/cpufreq/policy0/walt/target_load_thresh + chown root.system /sys/devices/system/cpu/cpufreq/policy0/walt/up_rate_limit_us + chmod 0660 /sys/devices/system/cpu/cpufreq/policy0/walt/up_rate_limit_us + chown root.system /sys/devices/system/cpu/cpufreq/policy0/walt/rtg_boost_freq + chmod 0664 /sys/devices/system/cpu/cpufreq/policy0/walt/rtg_boost_freq + + chown root.system /sys/devices/system/cpu/cpufreq/policy2/walt/up_delay_freq + chmod 0660 /sys/devices/system/cpu/cpufreq/policy2/walt/up_delay_freq + chown root.system /sys/devices/system/cpu/cpufreq/policy2/walt/target_load_thresh + chmod 0660 /sys/devices/system/cpu/cpufreq/policy2/walt/target_load_thresh + chown root.system /sys/devices/system/cpu/cpufreq/policy2/walt/up_rate_limit_us + chmod 0660 /sys/devices/system/cpu/cpufreq/policy2/walt/up_rate_limit_us + + chown root.system /sys/devices/system/cpu/cpufreq/policy5/walt/up_delay_freq + chmod 0660 /sys/devices/system/cpu/cpufreq/policy5/walt/up_delay_freq + chown root.system /sys/devices/system/cpu/cpufreq/policy5/walt/target_load_thresh + chmod 0660 /sys/devices/system/cpu/cpufreq/policy5/walt/target_load_thresh + chown root.system /sys/devices/system/cpu/cpufreq/policy5/walt/up_rate_limit_us + chmod 0660 /sys/devices/system/cpu/cpufreq/policy5/walt/up_rate_limit_us + + chown root.system /sys/devices/system/cpu/cpufreq/policy7/walt/up_delay_freq + chmod 0660 /sys/devices/system/cpu/cpufreq/policy7/walt/up_delay_freq + chown root.system /sys/devices/system/cpu/cpufreq/policy7/walt/target_load_thresh + chmod 0660 /sys/devices/system/cpu/cpufreq/policy7/walt/target_load_thresh + chown root.system /sys/devices/system/cpu/cpufreq/policy7/walt/up_rate_limit_us + chmod 0660 /sys/devices/system/cpu/cpufreq/policy7/walt/up_rate_limit_us + + chown root.system /sys/devices/system/cpu/cpufreq/policy0/walt/pl + chmod 0660 /sys/devices/system/cpu/cpufreq/policy0/walt/pl + + chown root.system /dev/cpuctl/background/cpu.uclamp.max + chmod 0660 /dev/cpuctl/background/cpu.uclamp.max +fi + +# Enable dynamic prefetcher +if [ $model_name == "b6q" ] || [ $model_name == "q6q" ] || [ $model_name == "q6aq" ]; then + chown root.system /sys/devices/system/cpu/dynpf/enable_dynpf + chmod 0660 /sys/devices/system/cpu/dynpf/enable_dynpf + echo 1 > /sys/devices/system/cpu/dynpf/enable_dynpf +fi + +echo 4 > /proc/sys/kernel/printk + +# SED data dump +factory=`getprop ro.factory.factory_binary` +if [ "$factory" == "factory" ] && [ ! -e /data/local/tmp/SED_DDR_DATA_* ]; then + ap_serial=`getprop ro.boot.ap_serial` + soc_model=`getprop ro.soc.model` + dram_info=`getprop ro.boot.dram_info` + sed_dump_file=/data/local/tmp/SED_DDR_DATA_$soc_model'_'$dram_info'_'$ap_serial.BIN + dd if=/dev/block/bootdevice/by-name/ddr of=$sed_dump_file bs=1024 count=256 + chown shell:shell $sed_dump_file + chmod 755 $sed_dump_file +fi + +# Change console log level as per console config property +console_config=`getprop persist.vendor.console.silent.config` +case "$console_config" in + "1") + echo "Enable console config to $console_config" + echo 0 > /proc/sys/kernel/printk + ;; + *) + echo "Enable console config to $console_config" + ;; +esac + +setprop vendor.post_boot.parsed 1 diff --git a/rootdir/bin/init.kernel.post_boot.sh b/rootdir/bin/init.kernel.post_boot.sh new file mode 100644 index 0000000..3c21f42 --- /dev/null +++ b/rootdir/bin/init.kernel.post_boot.sh @@ -0,0 +1,215 @@ +#============================================================================= +# Copyright (c) 2019-2023 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +# +# Copyright (c) 2009-2012, 2014-2019, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +#============================================================================= + +function configure_zram_parameters() { + MemTotalStr=`cat /proc/meminfo | grep MemTotal` + MemTotal=${MemTotalStr:16:8} + + low_ram=`getprop ro.config.low_ram` + + + let RamSizeGB="( $MemTotal / 1048576 ) + 1" + diskSizeUnit=M + # Zram disk - 75% + let zRamSizeMB="( $RamSizeGB * 1024 ) * 3 / 4" + + # use MB avoid 32 bit overflow + if [ $zRamSizeMB -gt 6144 ]; then + let zRamSizeMB=6144 + fi + + # And enable lz4 zram compression for Go targets. + if [ "$low_ram" == "true" ]; then + echo lz4 > /sys/block/zram0/comp_algorithm + fi + + if [ -f /sys/block/zram0/disksize ]; then + if [ -f /sys/block/zram0/use_dedup ]; then + echo 1 > /sys/block/zram0/use_dedup + fi + echo "$zRamSizeMB""$diskSizeUnit" > /sys/block/zram0/disksize + + # ZRAM may use more memory than it saves if SLAB_STORE_USER + # debug option is enabled. + if [ -e /sys/kernel/slab/zs_handle ]; then + echo 0 > /sys/kernel/slab/zs_handle/store_user + fi + if [ -e /sys/kernel/slab/zspage ]; then + echo 0 > /sys/kernel/slab/zspage/store_user + fi + + mkswap /dev/block/zram0 + swapon /dev/block/zram0 -p 32758 + fi +} + +verify_pasr_support() +{ + ddr_type=`od -An -tx /proc/device-tree/memory/ddr_device_type` + ddr_type5="08" + + if [ -d /sys/kernel/mem-offline ]; then + #only LPDDR5 supports PAAR + if [ ${ddr_type:4:2} != $ddr_type5 ]; then + setprop vendor.pasr.activemode.enabled false + fi + + setprop vendor.pasr.enabled true + echo "pasr-enabled" + fi +} + +function configure_read_ahead_kb_values() { + MemTotalStr=`cat /proc/meminfo | grep MemTotal` + MemTotal=${MemTotalStr:16:8} + + dmpts=$(ls /sys/block/*/queue/read_ahead_kb | grep -e dm -e mmc -e sd) + # dmpts holds below read_ahead_kb nodes if exists: + # /sys/block/dm-0/queue/read_ahead_kb to /sys/block/dm-10/queue/read_ahead_kb + # /sys/block/sda/queue/read_ahead_kb to /sys/block/sdh/queue/read_ahead_kb + + # Set 128 for <= 4GB & + # set 512 for >= 5GB targets. + if [ $MemTotal -le 4194304 ]; then + ra_kb=128 + else + ra_kb=512 + fi + if [ -f /sys/block/mmcblk0/bdi/read_ahead_kb ]; then + echo $ra_kb > /sys/block/mmcblk0/bdi/read_ahead_kb + fi + if [ -f /sys/block/mmcblk0rpmb/bdi/read_ahead_kb ]; then + echo $ra_kb > /sys/block/mmcblk0rpmb/bdi/read_ahead_kb + fi + for dm in $dmpts; do + if [ `cat $(dirname $dm)/../removable` -eq 0 ]; then + echo $ra_kb > $dm + fi + done +} + +function configure_memory_parameters() { + # Set Memory parameters. + # + # Set per_process_reclaim tuning parameters + # All targets will use vmpressure range 50-70, + # All targets will use 512 pages swap size. + # + # Set Low memory killer minfree parameters + # 32 bit Non-Go, all memory configurations will use 15K series + # 32 bit Go, all memory configurations will use uLMK + Memcg + # 64 bit will use Google default LMK series. + # + # Set ALMK parameters (usually above the highest minfree values) + # vmpressure_file_min threshold is always set slightly higher + # than LMK minfree's last bin value for all targets. It is calculated as + # vmpressure_file_min = (last bin - second last bin ) + last bin + # + # Set allocstall_threshold to 0 for all targets. + # + + #configure_zram_parameters + configure_read_ahead_kb_values + #echo 100 > /proc/sys/vm/swappiness + + # Disable periodic kcompactd wakeups. We do not use THP, so having many + # huge pages is not as necessary. + echo 0 > /proc/sys/vm/compaction_proactiveness + + MemTotalStr=`cat /proc/meminfo | grep MemTotal` + MemTotal=${MemTotalStr:16:8} + let RamSizeGB="( $MemTotal / 1048576 ) + 1" + + have_pasr=$(verify_pasr_support) + if [ -z $have_pasr ]; then + ## Goal is to allow all allocations to use THP whilst minimizing allocaiton delays + # Allow all eligibe page faults to use THP + echo always > /sys/kernel/mm/transparent_hugepage/enabled + # Prevent page faults on THP-elgible VMAs from causing reclaim or compaction + echo never > /sys/kernel/mm/transparent_hugepage/defrag + + ## Goal is to make khugepaged as inert as possible using the below settings + # Prevent khugepaged from doing reclaim or compaction + echo 0 > /sys/kernel/mm/transparent_hugepage/khugepaged/defrag + # Minimize the number of pages that khugepaged will scan + echo 1 > /sys/kernel/mm/transparent_hugepage/khugepaged/pages_to_scan + # Maximize the amount of time that khugepaged is asleep for + echo 4294967295 > /sys/kernel/mm/transparent_hugepage/khugepaged/scan_sleep_millisecs + echo 4294967295 > /sys/kernel/mm/transparent_hugepage/khugepaged/alloc_sleep_millisecs + # Restrict khugepaged promotions as much as possible. Only allow khugepaged to promote + # if all pages in a VMA are (1) not invalid PTEs, (2) not swapped out PTEs, (3) not + # shared PTEs. + echo 0 > /sys/kernel/mm/transparent_hugepage/khugepaged/max_ptes_none + echo 0 > /sys/kernel/mm/transparent_hugepage/khugepaged/max_ptes_swap + echo 0 > /sys/kernel/mm/transparent_hugepage/khugepaged/max_ptes_shared + else + # Do not enable THP is PASR is enabled + echo never > /sys/kernel/mm/transparent_hugepage/enabled + fi + + # Set the min_free_kbytes to standard kernel value + if [ $RamSizeGB -ge 8 ]; then + echo 11584 > /proc/sys/vm/min_free_kbytes + elif [ $RamSizeGB -ge 4 ]; then + echo 8192 > /proc/sys/vm/min_free_kbytes + elif [ $RamSizeGB -ge 2 ]; then + echo 5792 > /proc/sys/vm/min_free_kbytes + else + echo 4096 > /proc/sys/vm/min_free_kbytes + fi + + #Set per-app max kgsl reclaim limit and per shrinker call limit + if [ -f /sys/class/kgsl/kgsl/page_reclaim_per_call ]; then + echo 38400 > /sys/class/kgsl/kgsl/page_reclaim_per_call + fi +# if [ -f /sys/class/kgsl/kgsl/max_reclaim_limit ]; then +# echo 51200 > /sys/class/kgsl/kgsl/max_reclaim_limit +# fi +} + +configure_memory_parameters + +if [ -f /sys/devices/soc0/soc_id ]; then + platformid=`cat /sys/devices/soc0/soc_id` +fi + +case "$platformid" in + "557"|"577") + /vendor/bin/sh /vendor/bin/init.kernel.post_boot-pineapple.sh + ;; + "614"|"632") + /vendor/bin/sh /vendor/bin/init.kernel.post_boot-cliffs.sh + ;; + *) + echo "***WARNING***: Invalid SoC ID\n\t No postboot settings applied!!\n" + ;; +esac diff --git a/rootdir/bin/init.mdm.sh b/rootdir/bin/init.mdm.sh new file mode 100644 index 0000000..3ed7ed5 --- /dev/null +++ b/rootdir/bin/init.mdm.sh @@ -0,0 +1,34 @@ +#! /vendor/bin/sh + +# Copyright (c) 2013, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +baseband=`getprop ro.baseband` +if [ "$baseband" = "mdm" ] || [ "$baseband" = "mdm2" ]; then + start vendor.mdm_helper +fi + diff --git a/rootdir/bin/init.qcom.class_core.sh b/rootdir/bin/init.qcom.class_core.sh new file mode 100644 index 0000000..8f8265d --- /dev/null +++ b/rootdir/bin/init.qcom.class_core.sh @@ -0,0 +1,216 @@ +#!/vendor/bin/sh + +# Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +# Set platform variables +target=`getprop ro.board.platform` +if [ -f /sys/devices/soc0/hw_platform ]; then + soc_hwplatform=`cat /sys/devices/soc0/hw_platform` 2> /dev/null +else + soc_hwplatform=`cat /sys/devices/system/soc/soc0/hw_platform` 2> /dev/null +fi +if [ -f /sys/devices/soc0/soc_id ]; then + soc_hwid=`cat /sys/devices/soc0/soc_id` 2> /dev/null +else + soc_hwid=`cat /sys/devices/system/soc/soc0/id` 2> /dev/null +fi +if [ -f /sys/devices/soc0/platform_version ]; then + soc_hwver=`cat /sys/devices/soc0/platform_version` 2> /dev/null +else + soc_hwver=`cat /sys/devices/system/soc/soc0/platform_version` 2> /dev/null +fi + + +# Dynamic Memory Managment (DMM) provides a sys file system to the userspace +# that can be used to plug in/out memory that has been configured as unstable. +# This unstable memory can be in Active or In-Active State. +# Each of which the userspace can request by writing to a sys file. +# +# ro.dev.dmm = 1; Indicates that DMM is enabled in the Android User Space. This +# property is set in the Android system properties file. +# +# If ro.dev.dmm.dpd.start_address is set here then the target has a memory +# configuration that supports DynamicMemoryManagement. +init_DMM() +{ + block=-1 + + case "$target" in + "msm7630_surf" | "msm7630_1x" | "msm7630_fusion" | "msm8960") + ;; + *) + return + ;; + esac + + mem="/sys/devices/system/memory" + op=`cat $mem/movable_start_bytes` + case "$op" in + "0") + log -p i -t DMM DMM Disabled. movable_start_bytes not set: $op + ;; + + "$mem/movable_start_bytes: No such file or directory ") + log -p i -t DMM DMM Disabled. movable_start_bytes does not exist: $op + ;; + + *) + log -p i -t DMM DMM available. movable_start_bytes at $op + movable_start_bytes=0x`cat $mem/movable_start_bytes` + block_size_bytes=0x`cat $mem/block_size_bytes` + block=$((#${movable_start_bytes}/${block_size_bytes})) + + chown -h system.system $mem/memory$block/state + chown -h system.system $mem/probe + chown -h system.system $mem/active + chown -h system.system $mem/remove + + case "$target" in + "msm7630_surf" | "msm7630_1x" | "msm7630_fusion") + echo $movable_start_bytes > $mem/probe + case "$?" in + "0") + log -p i -t DMM $movable_start_bytes to physical hotplug succeeded. + ;; + *) + log -p e -t DMM $movable_start_bytes to physical hotplug failed. + return + ;; + esac + + echo online > $mem/memory$block/state + case "$?" in + "0") + log -p i -t DMM \'echo online\' to logical hotplug succeeded. + ;; + *) + log -p e -t DMM \'echo online\' to logical hotplug failed. + return + ;; + esac + ;; + esac + + setprop ro.dev.dmm.dpd.start_address $movable_start_bytes + setprop ro.dev.dmm.dpd.block $block + ;; + esac + + case "$target" in + "msm8960") + return + ;; + esac + + # For 7X30 targets: + # ro.dev.dmm.dpd.start_address is set when the target has a 2x256Mb memory + # configuration. This is also used to indicate that the target is capable of + # setting EBI-1 to Deep Power Down or Self Refresh. + op=`cat $mem/low_power_memory_start_bytes` + case "$op" in + "0") + log -p i -t DMM Self-Refresh-Only Disabled. low_power_memory_start_bytes not set:$op + ;; + "$mem/low_power_memory_start_bytes No such file or directory ") + log -p i -t DMM Self-Refresh-Only Disabled. low_power_memory_start_bytes does not exist:$op + ;; + *) + log -p i -t DMM Self-Refresh-Only available. low_power_memory_start_bytes at $op + ;; + esac +} + +# +# For controlling console and shell on console on 8960 - perist.serial.enable 8960 +# On other target use default ro.debuggable property. +# +serial=`getprop persist.serial.enable` +dserial=`getprop ro.debuggable` +case "$target" in + "msm8960") + case "$serial" in + "0") + echo 0 > /sys/devices/platform/msm_serial_hsl.0/console + ;; + "1") + echo 1 > /sys/devices/platform/msm_serial_hsl.0/console + start console + ;; + *) + case "$dserial" in + "1") + start console + ;; + esac + ;; + esac + ;; + + "msm8610" | "msm8974" | "msm8226") + case "$serial" in + "0") + echo 0 > /sys/devices/f991f000.serial/console + ;; + "1") + echo 1 > /sys/devices/f991f000.serial/console + start console + ;; + *) + case "$dserial" in + "1") + start console + ;; + esac + ;; + esac + ;; + *) + case "$dserial" in + "1") + start console + ;; + esac + ;; +esac + +case "$target" in + "msm7630_surf" | "msm7630_1x" | "msm7630_fusion") + insmod /system/lib/modules/ss_mfcinit.ko + insmod /system/lib/modules/ss_vencoder.ko + insmod /system/lib/modules/ss_vdecoder.ko + chmod -h 0666 /dev/ss_mfc_reg + chmod -h 0666 /dev/ss_vdec + chmod -h 0666 /dev/ss_venc + + init_DMM + ;; + + "msm8960") + init_DMM + ;; +esac diff --git a/rootdir/bin/init.qcom.coex.sh b/rootdir/bin/init.qcom.coex.sh new file mode 100644 index 0000000..a9a22f1 --- /dev/null +++ b/rootdir/bin/init.qcom.coex.sh @@ -0,0 +1,115 @@ +#! /vendor/bin/sh + +# Copyright (c) 2009-2010, 2012, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +LOG_TAG="qcom-bt-wlan-coex" +LOG_NAME="${0}:" + +coex_pid="" +ath_wlan_supported=`getprop wlan.driver.ath` + +loge () +{ + /system/bin/log -t $LOG_TAG -p e "$LOG_NAME $@" +} + +logi () +{ + /system/bin/log -t $LOG_TAG -p i "$LOG_NAME $@" +} + +failed () +{ + loge "$1: exit code $2" + exit $2 +} + +start_coex () +{ + case "$ath_wlan_supported" in + "2") + echo "ATH WLAN Chip ID AR6004 is enabled" + /system/bin/abtfilt -d -z -n -m -a -w wlan0 & + ;; + "1") + echo "ATH WLAN Chip ID is enabled" + # Must have -d -z -n -v -s -w wlan0 parameters for atheros btfilter. + /system/bin/abtfilt -d -z -n -v -q -s -w wlan0 & + ;; + "0") + echo "WCN WLAN Chip ID is enabled" + # Must have -o turned on to avoid daemon (otherwise we cannot get pid) + /system/bin/btwlancoex -o $opt_flags & + ;; + *) + echo "NO WLAN Chip ID is enabled, so enabling ATH as default" + # Must have -d -z -n -v -s -w wlan0 parameters for atheros btfilter. + /system/bin/abtfilt -d -z -n -v -q -s -w wlan0 & + ;; + esac + coex_pid=$! + logi "start_coex: pid = $coex_pid" +} + +kill_coex () +{ + logi "kill_coex: pid = $coex_pid" + kill -TERM $coex_pid + # this shell doesn't exit now -- wait returns for normal exit +} + +# mimic coex options parsing -- maybe a waste of effort +USAGE="${0} [-o] [-c] [-r] [-i] [-h]" + +while getopts "ocrih" f +do + case $f in + o | c | r | i | h) opt_flags="$opt_flags -$f" ;; + \?) echo $USAGE; exit 1;; + esac +done + +# init does SIGTERM on ctl.stop for service +trap "kill_coex" TERM INT + +#Selectively start coex module +target=`getprop ro.board.platform` + +if [ "$target" == "msm8960" ] && [ "$ath_wlan_supported" != "2" ]; then + logi "btwlancoex/abtfilt is not needed" +else + # Build settings may not produce the coex executable + if ls /system/bin/btwlancoex || ls /system/bin/abtfilt + then + start_coex + wait $coex_pid + logi "Coex stopped" + else + logi "btwlancoex/abtfilt not available" + fi +fi +exit 0 diff --git a/rootdir/bin/init.qcom.early_boot.sh b/rootdir/bin/init.qcom.early_boot.sh new file mode 100644 index 0000000..57f6dea --- /dev/null +++ b/rootdir/bin/init.qcom.early_boot.sh @@ -0,0 +1,505 @@ +#! /vendor/bin/sh + +# Copyright (c) 2012-2013,2016,2018-2020 The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +export PATH=/vendor/bin + +# Set platform variables +if [ -f /sys/devices/soc0/hw_platform ]; then + soc_hwplatform=`cat /sys/devices/soc0/hw_platform` 2> /dev/null +else + soc_hwplatform=`cat /sys/devices/system/soc/soc0/hw_platform` 2> /dev/null +fi +if [ -f /sys/devices/soc0/soc_id ]; then + soc_hwid=`cat /sys/devices/soc0/soc_id` 2> /dev/null +else + soc_hwid=`cat /sys/devices/system/soc/soc0/id` 2> /dev/null +fi +if [ -f /sys/devices/soc0/platform_version ]; then + soc_hwver=`cat /sys/devices/soc0/platform_version` 2> /dev/null +else + soc_hwver=`cat /sys/devices/system/soc/soc0/platform_version` 2> /dev/null +fi + +if [ -f /sys/class/drm/card0-DSI-1/modes ]; then + echo "detect" > /sys/class/drm/card0-DSI-1/status + mode_file=/sys/class/drm/card0-DSI-1/modes + while read line; do + fb_width=${line%%x*}; + break; + done < $mode_file +elif [ -f /sys/class/graphics/fb0/virtual_size ]; then + res=`cat /sys/class/graphics/fb0/virtual_size` 2> /dev/null + fb_width=${res%,*} +fi + +log -t BOOT -p i "MSM target '$1', SoC '$soc_hwplatform', HwID '$soc_hwid', SoC ver '$soc_hwver'" + +#For drm based display driver +vbfile=/sys/module/drm/parameters/vblankoffdelay +if [ -w $vbfile ]; then + echo -1 > $vbfile +else + log -t DRM_BOOT -p w "file: '$vbfile' or perms doesn't exist" +fi + +function set_density_by_fb() { + #put default density based on width + if [ -z $fb_width ]; then + setprop vendor.display.lcd_density 320 + else + if [ $fb_width -ge 1600 ]; then + setprop vendor.display.lcd_density 640 + elif [ $fb_width -ge 1440 ]; then + setprop vendor.display.lcd_density 560 + elif [ $fb_width -ge 1080 ]; then + setprop vendor.display.lcd_density 480 + elif [ $fb_width -ge 720 ]; then + setprop vendor.display.lcd_density 320 #for 720X1280 resolution + elif [ $fb_width -ge 480 ]; then + setprop vendor.display.lcd_density 240 #for 480X854 QRD resolution + else + setprop vendor.display.lcd_density 160 + fi + fi +} + +target=`getprop ro.board.platform` +case "$target" in + "msm7630_surf" | "msm7630_1x" | "msm7630_fusion") + case "$soc_hwplatform" in + "FFA" | "SVLTE_FFA") + # linking to surf_keypad_qwerty.kcm.bin instead of surf_keypad_numeric.kcm.bin so that + # the UI keyboard works fine. + ln -s /system/usr/keychars/surf_keypad_qwerty.kcm.bin /system/usr/keychars/surf_keypad.kcm.bin + ;; + "Fluid") + setprop vendor.display.lcd_density 240 + setprop qcom.bt.dev_power_class 2 + ;; + *) + ln -s /system/usr/keychars/surf_keypad_qwerty.kcm.bin /system/usr/keychars/surf_keypad.kcm.bin + ;; + esac + ;; + "sm6150") + case "$soc_hwplatform" in + "ADP") + setprop vendor.display.lcd_density 160 + ;; + esac + case "$soc_hwid" in + 365|366) + sku_ver=`cat /sys/devices/platform/soc/aa00000.qcom,vidc1/sku_version` 2> /dev/null + setprop vendor.media.target.version 1 + if [ $sku_ver -eq 1 ]; then + setprop vendor.media.target.version 2 + fi + ;; + 355|369|377|384) + setprop vendor.chre.enabled 0 + ;; + *) + esac + ;; + "msm8660") + case "$soc_hwplatform" in + "Fluid") + setprop vendor.display.lcd_density 240 + ;; + "Dragon") + setprop ro.sound.alsa "WM8903" + ;; + esac + ;; + + "msm8960") + # lcd density is write-once. Hence the separate switch case + case "$soc_hwplatform" in + "Liquid") + if [ "$soc_hwver" == "196608" ]; then # version 0x30000 is 3D sku + setprop ro.sf.hwrotation 90 + fi + + setprop vendor.display.lcd_density 160 + ;; + "MTP") + setprop vendor.display.lcd_density 240 + ;; + *) + case "$soc_hwid" in + "109") + setprop vendor.display.lcd_density 160 + ;; + *) + setprop vendor.display.lcd_density 240 + ;; + esac + ;; + esac + + #Set up composition type based on the target + case "$soc_hwid" in + 87) + #8960 + setprop debug.composition.type dyn + ;; + 153|154|155|156|157|138) + #8064 V2 PRIME | 8930AB | 8630AB | 8230AB | 8030AB | 8960AB + setprop debug.composition.type c2d + ;; + *) + esac + ;; + + "msm8974") + case "$soc_hwplatform" in + "Liquid") + setprop vendor.display.lcd_density 160 + # Liquid do not have hardware navigation keys, so enable + # Android sw navigation bar + setprop ro.hw.nav_keys 0 + ;; + "Dragon") + setprop vendor.display.lcd_density 240 + ;; + *) + setprop vendor.display.lcd_density 320 + ;; + esac + ;; + + "msm8226") + case "$soc_hwplatform" in + *) + setprop vendor.display.lcd_density 320 + ;; + esac + ;; + + "msm8610" | "apq8084" | "mpq8092") + case "$soc_hwplatform" in + *) + setprop vendor.display.lcd_density 240 + ;; + esac + ;; + "apq8084") + case "$soc_hwplatform" in + "Liquid") + setprop vendor.display.lcd_density 320 + # Liquid do not have hardware navigation keys, so enable + # Android sw navigation bar + setprop ro.hw.nav_keys 0 + ;; + "SBC") + setprop vendor.display.lcd_density 200 + # SBC do not have hardware navigation keys, so enable + # Android sw navigation bar + setprop qemu.hw.mainkeys 0 + ;; + *) + setprop vendor.display.lcd_density 480 + ;; + esac + ;; + "msm8996") + case "$soc_hwplatform" in + "Dragon") + setprop vendor.display.lcd_density 240 + setprop qemu.hw.mainkeys 0 + ;; + "ADP") + setprop vendor.display.lcd_density 160 + setprop qemu.hw.mainkeys 0 + ;; + "SBC") + setprop vendor.display.lcd_density 240 + setprop qemu.hw.mainkeys 0 + ;; + *) + setprop vendor.display.lcd_density 560 + ;; + esac + ;; + "msm8937" | "msm8940") + # Set vendor.opengles.version based on chip id. + # MSM8937 and MSM8940 variants supports OpenGLES 3.1 + # 196608 is decimal for 0x30000 to report version 3.0 + # 196609 is decimal for 0x30001 to report version 3.1 + # 196610 is decimal for 0x30002 to report version 3.2 + case "$soc_hwid" in + 294|295|296|297|298|313|353|354|363|364) + setprop vendor.opengles.version 196610 + if [ $soc_hwid = 354 ] + then + setprop vendor.media.target.version 1 + log -t BOOT -p i "SDM429 early_boot prop set for: HwID '$soc_hwid'" + fi + ;; + 303|307|308|309|320) + # Vulkan is not supported for 8917 variants + setprop vendor.opengles.version 196608 + setprop persist.graphics.vulkan.disable true + ;; + *) + setprop vendor.opengles.version 196608 + ;; + esac + ;; + "msm8909") + case "$soc_hwplatform" in + *) + setprop persist.graphics.vulkan.disable true + ;; + esac + ;; + "msm8998" | "apq8098_latv") + case "$soc_hwplatform" in + *) + setprop vendor.display.lcd_density 560 + ;; + esac + ;; + "sdm845") + case "$soc_hwplatform" in + *) + if [ $fb_width -le 1600 ]; then + setprop vendor.display.lcd_density 560 + else + setprop vendor.display.lcd_density 640 + fi + ;; + esac + ;; + "msmnile") + case "$soc_hwplatform" in + *) + if [ $fb_width -le 1600 ]; then + setprop vendor.display.lcd_density 560 + else + setprop vendor.display.lcd_density 640 + fi + ;; + esac + ;; + "kona") + case "$soc_hwplatform" in + *) + setprop vendor.media.target_variant "_kona" + if [ $fb_width -le 1600 ]; then + setprop vendor.display.lcd_density 560 + else + setprop vendor.display.lcd_density 640 + fi + ;; + esac + ;; + "lito") + case "$soc_hwid" in + 400|440) + sku_ver=`cat /sys/devices/platform/soc/aa00000.qcom,vidc1/sku_version` 2> /dev/null + if [ $sku_ver -eq 1 ]; then + setprop vendor.media.target.version 1 + fi + ;; + 434|459) + sku_ver=`cat /sys/devices/platform/soc/aa00000.qcom,vidc1/sku_version` 2> /dev/null + setprop vendor.media.target.version 2 + if [ $sku_ver -eq 1 ]; then + setprop vendor.media.target.version 3 + fi + ;; + esac + ;; + "bengal") + case "$soc_hwid" in + 441) + setprop vendor.fastrpc.disable.cdsprpcd.daemon 1 + setprop vendor.gralloc.disable_ubwc 1 + + # 196609 is decimal for 0x30001 to report version 3.1 + setprop vendor.opengles.version 196609 + ;; + 471) + #scuba APQ + setprop vendor.gralloc.disable_ubwc 1 + ;; + esac + ;; + "sdm710" | "msmpeafowl") + case "$soc_hwplatform" in + *) + if [ $fb_width -le 1600 ]; then + setprop vendor.display.lcd_density 560 + else + setprop vendor.display.lcd_density 640 + fi + + sku_ver=`cat /sys/devices/platform/soc/aa00000.qcom,vidc1/sku_version` 2> /dev/null + if [ $sku_ver -eq 1 ]; then + setprop vendor.media.target.version 1 + fi + ;; + esac + ;; + "msm8953") + cap_ver = 1 + if [ -e "/sys/devices/platform/soc/1d00000.qcom,vidc/capability_version" ]; then + cap_ver=`cat /sys/devices/platform/soc/1d00000.qcom,vidc/capability_version` 2> /dev/null + else + cap_ver=`cat /sys/devices/soc/1d00000.qcom,vidc/capability_version` 2> /dev/null + fi + + if [ $cap_ver -eq 1 ]; then + setprop vendor.media.target.version 1 + fi + ;; + #Set property to differentiate SDM660 & SDM455 + #SOC ID for SDM455 is 385 + "sdm660") + case "$soc_hwplatform" in + *) + if [ $fb_width -le 1600 ]; then + setprop vendor.display.lcd_density 560 + else + setprop vendor.display.lcd_density 640 + fi + + if [ $soc_hwid -eq 385 ]; then + setprop vendor.media.target.version 1 + fi + ;; + esac + ;; + "holi") + setprop vendor.media.target_variant "_holi" + ;; +esac + +baseband=`getprop ro.baseband` +#enable atfwd daemon all targets except sda, apq, qcs +case "$baseband" in + "apq" | "sda" | "qcs" ) + setprop persist.vendor.radio.atfwd.start false;; + *) + setprop persist.vendor.radio.atfwd.start true;; +esac + +#set default lcd density +#Since lcd density has read only +#property, it will not overwrite previous set +#property if any target is setting forcefully. +set_density_by_fb + + +# set Lilliput LCD density for ADP +product=`getprop ro.board.platform` + +case "$product" in + "msmnile_au") + setprop vendor.display.lcd_density 160 + echo 902400000 > /sys/class/devfreq/soc:qcom,cpu0-cpu-l3-lat/min_freq + echo 1612800000 > /sys/class/devfreq/soc:qcom,cpu0-cpu-l3-lat/max_freq + echo 902400000 > /sys/class/devfreq/soc:qcom,cpu4-cpu-l3-lat/min_freq + echo 1612800000 > /sys/class/devfreq/soc:qcom,cpu4-cpu-l3-lat/max_freq + ;; + *) + ;; +esac +case "$product" in + "sm6150_au") + setprop vendor.display.lcd_density 160 + ;; + *) + ;; +esac +case "$product" in + "sdmshrike_au") + setprop vendor.display.lcd_density 160 + ;; + *) + ;; +esac + +case "$product" in + "msmnile_gvmq") + setprop vendor.display.lcd_density 160 + ;; + *) + ;; +esac +# Setup display nodes & permissions +# HDMI can be fb1 or fb2 +# Loop through the sysfs nodes and determine +# the HDMI(dtv panel) + +function set_perms() { + #Usage set_perms + chown -h $2 $1 + chmod $3 $1 +} + +# check for the type of driver FB or DRM +fb_driver=/sys/class/graphics/fb0 +if [ -e "$fb_driver" ] +then + # check for mdp caps + file=/sys/class/graphics/fb0/mdp/caps + if [ -f "$file" ] + then + setprop vendor.gralloc.disable_ubwc 1 + cat $file | while read line; do + case "$line" in + *"ubwc"*) + setprop vendor.gralloc.enable_fb_ubwc 1 + setprop vendor.gralloc.disable_ubwc 0 + esac + done + fi +else + set_perms /sys/devices/virtual/hdcp/msm_hdcp/min_level_change system.graphics 0660 +fi + +# allow system_graphics group to access pmic secure_mode node +set_perms /sys/class/lcd_bias/secure_mode system.graphics 0660 +set_perms /sys/class/leds/wled/secure_mode system.graphics 0660 + +boot_reason=`cat /proc/sys/kernel/boot_reason` +reboot_reason=`getprop ro.boot.alarmboot` +if [ "$boot_reason" = "3" ] || [ "$reboot_reason" = "true" ]; then + setprop ro.vendor.alarm_boot true +else + setprop ro.vendor.alarm_boot false +fi + +# copy GPU frequencies to vendor property +if [ -f /sys/class/kgsl/kgsl-3d0/gpu_available_frequencies ]; then + gpu_freq=`cat /sys/class/kgsl/kgsl-3d0/gpu_available_frequencies` 2> /dev/null + setprop vendor.gpu.available_frequencies "$gpu_freq" +fi diff --git a/rootdir/bin/init.qcom.efs.sync.sh b/rootdir/bin/init.qcom.efs.sync.sh new file mode 100644 index 0000000..5e7bfa1 --- /dev/null +++ b/rootdir/bin/init.qcom.efs.sync.sh @@ -0,0 +1,35 @@ +#! /vendor/bin/sh + +# Copyright (c) 2012, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# * Neither the name of The Linux Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# + +PATH=/system/bin:$PATH +export PATH +cat /sys/devices/platform/rs300000a7.65536/force_sync +cat /sys/devices/platform/rs300100a7.65536/force_sync diff --git a/rootdir/bin/init.qcom.post_boot.sh b/rootdir/bin/init.qcom.post_boot.sh new file mode 100644 index 0000000..1da9da8 --- /dev/null +++ b/rootdir/bin/init.qcom.post_boot.sh @@ -0,0 +1,5801 @@ +#! /vendor/bin/sh + +# Copyright (c) 2012-2013, 2016-2021, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +function 8953_sched_dcvs_eas() +{ + #governor settings + echo 1 > /sys/devices/system/cpu/cpu0/online + echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/schedutil/down_rate_limit_us + #set the hispeed_freq + echo 1401600 > /sys/devices/system/cpu/cpufreq/schedutil/hispeed_freq + #default value for hispeed_load is 90, for 8953 and sdm450 it should be 85 + echo 85 > /sys/devices/system/cpu/cpufreq/schedutil/hispeed_load +} + +function 8917_sched_dcvs_eas() +{ + #governor settings + echo 1 > /sys/devices/system/cpu/cpu0/online + echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/schedutil/down_rate_limit_us + #set the hispeed_freq + echo 1094400 > /sys/devices/system/cpu/cpufreq/schedutil/hispeed_freq + #default value for hispeed_load is 90, for 8917 it should be 85 + echo 85 > /sys/devices/system/cpu/cpufreq/schedutil/hispeed_load +} + +function 8937_sched_dcvs_eas() +{ + # enable governor for perf cluster + echo 1 > /sys/devices/system/cpu/cpu0/online + echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us + #set the hispeed_freq + echo 1094400 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq + #default value for hispeed_load is 90, for 8937 it should be 85 + echo 85 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_load + ## enable governor for power cluster + echo 1 > /sys/devices/system/cpu/cpu4/online + echo "schedutil" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/down_rate_limit_us + #set the hispeed_freq + echo 768000 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_freq + #default value for hispeed_load is 90, for 8937 it should be 85 + echo 85 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_load + +} + +function configure_automotive_sku_parameters() { + + echo 1036800 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 1056000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + echo 1171200 > /sys/devices/system/cpu/cpu7/cpufreq/scaling_min_freq + echo 1785600 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq + echo 902400000 > /sys/class/devfreq/soc\:qcom,cpu0-cpu-l3-lat/min_freq + echo 902400000 > /sys/class/devfreq/soc\:qcom,cpu4-cpu-l3-lat/min_freq + echo 902400000 > /sys/class/devfreq/soc\:qcom,cpu7-cpu-l3-lat/min_freq + echo 1612800000 > /sys/class/devfreq/soc\:qcom,cpu0-cpu-l3-lat/max_freq + echo 1612800000 > /sys/class/devfreq/soc\:qcom,cpu4-cpu-l3-lat/max_freq + echo 1612800000 > /sys/class/devfreq/soc\:qcom,cpu7-cpu-l3-lat/max_freq +#read feature id from nvram +reg_val=`cat /sys/devices/platform/soc/780130.qfprom/qfprom0/nvmem | od -An -t d4` +feature_id=$(((reg_val >> 20) & 0xFF)) +log -t BOOT -p i "feature id '$feature_id'" +if [ $feature_id == 0 ]; then + echo " SKU Configured : SA8155P" + echo 2131200 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq + echo 2419200 > /sys/devices/system/cpu/cpu7/cpufreq/scaling_max_freq + echo 0 > /sys/class/kgsl/kgsl-3d0/max_pwrlevel +elif [ $feature_id == 1 ]; then + echo "SKU Configured : SA8150P" + echo 1920000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq + echo 2227200 > /sys/devices/system/cpu/cpu7/cpufreq/scaling_max_freq + echo 3 > /sys/class/kgsl/kgsl-3d0/max_pwrlevel +else + echo "unknown feature_id value" $feature_id +fi +} + +function configure_sku_parameters() { + +#read feature id from nvram +reg_val=`cat /sys/devices/platform/soc/780130.qfprom/qfprom0/nvmem | od -An -t d4` +feature_id=$(((reg_val >> 20) & 0xFF)) +log -t BOOT -p i "feature id '$feature_id'" +if [ $feature_id == 6 ]; then + echo " SKU Configured : SA6145" + echo 748800 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu5/cpufreq/scaling_min_freq + echo 1017600 > /sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq + echo 1017600 > /sys/devices/system/cpu/cpu7/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq + echo 748800 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq + echo 748800 > /sys/devices/system/cpu/cpu2/cpufreq/scaling_max_freq + echo 748800 > /sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq + echo 748800 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq + echo 748800 > /sys/devices/system/cpu/cpu5/cpufreq/scaling_max_freq + echo 1017600 > /sys/devices/system/cpu/cpu6/cpufreq/scaling_max_freq + echo 1017600 > /sys/devices/system/cpu/cpu7/cpufreq/scaling_max_freq + echo 940800000 > /sys/class/devfreq/soc\:qcom,cpu0-cpu-l3-lat/min_freq + echo 1017600000 > /sys/class/devfreq/soc\:qcom,cpu0-cpu-l3-lat/max_freq + echo 940800000 > /sys/class/devfreq/soc\:qcom,cpu6-cpu-l3-lat/min_freq + echo 1017600000 > /sys/class/devfreq/soc\:qcom,cpu6-cpu-l3-lat/max_freq + echo 3 > /sys/class/kgsl/kgsl-3d0/max_pwrlevel + setprop vendor.sku_identified 1 + setprop vendor.sku_name "SA6145" +elif [ $feature_id == 5 ]; then + echo "SKU Configured : SA6150" + echo 748800 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu5/cpufreq/scaling_min_freq + echo 1017600 > /sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq + echo 1017600 > /sys/devices/system/cpu/cpu7/cpufreq/scaling_min_freq + echo 998400 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq + echo 998400 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq + echo 998400 > /sys/devices/system/cpu/cpu2/cpufreq/scaling_max_freq + echo 998400 > /sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq + echo 998400 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq + echo 998400 > /sys/devices/system/cpu/cpu5/cpufreq/scaling_max_freq + echo 1708800 > /sys/devices/system/cpu/cpu6/cpufreq/scaling_max_freq + echo 1708800 > /sys/devices/system/cpu/cpu7/cpufreq/scaling_max_freq + echo 940800000 > /sys/class/devfreq/soc\:qcom,cpu0-cpu-l3-lat/min_freq + echo 1363200000 > /sys/class/devfreq/soc\:qcom,cpu0-cpu-l3-lat/max_freq + echo 940800000 > /sys/class/devfreq/soc\:qcom,cpu6-cpu-l3-lat/min_freq + echo 1363200000 > /sys/class/devfreq/soc\:qcom,cpu6-cpu-l3-lat/max_freq + echo 2 > /sys/class/kgsl/kgsl-3d0/max_pwrlevel + setprop vendor.sku_identified 1 + setprop vendor.sku_name "SA6150" +elif [ $feature_id == 4 ] || [ $feature_id == 3 ]; then + echo "SKU Configured : SA6155" + echo 748800 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu5/cpufreq/scaling_min_freq + echo 1017600 > /sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq + echo 1017600 > /sys/devices/system/cpu/cpu7/cpufreq/scaling_min_freq + echo 1593600 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq + echo 1593600 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq + echo 1593600 > /sys/devices/system/cpu/cpu2/cpufreq/scaling_max_freq + echo 1593600 > /sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq + echo 1593600 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq + echo 1593600 > /sys/devices/system/cpu/cpu5/cpufreq/scaling_max_freq + echo 1900800 > /sys/devices/system/cpu/cpu6/cpufreq/scaling_max_freq + echo 1900800 > /sys/devices/system/cpu/cpu7/cpufreq/scaling_max_freq + echo 940800000 > /sys/class/devfreq/soc\:qcom,cpu0-cpu-l3-lat/min_freq + echo 1363200000 > /sys/class/devfreq/soc\:qcom,cpu0-cpu-l3-lat/max_freq + echo 940800000 > /sys/class/devfreq/soc\:qcom,cpu6-cpu-l3-lat/min_freq + echo 1363200000 > /sys/class/devfreq/soc\:qcom,cpu6-cpu-l3-lat/max_freq + echo 0 > /sys/class/kgsl/kgsl-3d0/max_pwrlevel + setprop vendor.sku_identified 1 + setprop vendor.sku_name "SA6155" +else + echo "SKU Configured : SA6155" + echo 748800 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + echo 748800 > /sys/devices/system/cpu/cpu5/cpufreq/scaling_min_freq + echo 1017600 > /sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq + echo 1017600 > /sys/devices/system/cpu/cpu7/cpufreq/scaling_min_freq + echo 1593600 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq + echo 1593600 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq + echo 1593600 > /sys/devices/system/cpu/cpu2/cpufreq/scaling_max_freq + echo 1593600 > /sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq + echo 1593600 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq + echo 1593600 > /sys/devices/system/cpu/cpu5/cpufreq/scaling_max_freq + echo 1900800 > /sys/devices/system/cpu/cpu6/cpufreq/scaling_max_freq + echo 1900800 > /sys/devices/system/cpu/cpu7/cpufreq/scaling_max_freq + echo 940800000 > /sys/class/devfreq/soc\:qcom,cpu0-cpu-l3-lat/min_freq + echo 1363200000 > /sys/class/devfreq/soc\:qcom,cpu0-cpu-l3-lat/max_freq + echo 940800000 > /sys/class/devfreq/soc\:qcom,cpu6-cpu-l3-lat/min_freq + echo 1363200000 > /sys/class/devfreq/soc\:qcom,cpu6-cpu-l3-lat/max_freq + echo 0 > /sys/class/kgsl/kgsl-3d0/max_pwrlevel + setprop vendor.sku_identified 1 + setprop vendor.sku_name "SA6155" +fi +} + +function 8953_sched_dcvs_hmp() +{ + #scheduler settings + echo 3 > /proc/sys/kernel/sched_window_stats_policy + echo 3 > /proc/sys/kernel/sched_ravg_hist_size + #task packing settings + echo 0 > /sys/devices/system/cpu/cpu0/sched_static_cpu_pwr_cost + echo 0 > /sys/devices/system/cpu/cpu1/sched_static_cpu_pwr_cost + echo 0 > /sys/devices/system/cpu/cpu2/sched_static_cpu_pwr_cost + echo 0 > /sys/devices/system/cpu/cpu3/sched_static_cpu_pwr_cost + echo 0 > /sys/devices/system/cpu/cpu4/sched_static_cpu_pwr_cost + echo 0 > /sys/devices/system/cpu/cpu5/sched_static_cpu_pwr_cost + echo 0 > /sys/devices/system/cpu/cpu6/sched_static_cpu_pwr_cost + echo 0 > /sys/devices/system/cpu/cpu7/sched_static_cpu_pwr_cost + # spill load is set to 100% by default in the kernel + echo 3 > /proc/sys/kernel/sched_spill_nr_run + # Apply inter-cluster load balancer restrictions + echo 1 > /proc/sys/kernel/sched_restrict_cluster_spill + # set sync wakee policy tunable + echo 1 > /proc/sys/kernel/sched_prefer_sync_wakee_to_waker + + #governor settings + echo 1 > /sys/devices/system/cpu/cpu0/online + echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo "19000 1401600:39000" > /sys/devices/system/cpu/cpufreq/interactive/above_hispeed_delay + echo 85 > /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpufreq/interactive/timer_rate + echo 1401600 > /sys/devices/system/cpu/cpufreq/interactive/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpufreq/interactive/io_is_busy + echo "85 1401600:80" > /sys/devices/system/cpu/cpufreq/interactive/target_loads + echo 39000 > /sys/devices/system/cpu/cpufreq/interactive/min_sample_time + echo 40000 > /sys/devices/system/cpu/cpufreq/interactive/sampling_down_factor + echo 19 > /proc/sys/kernel/sched_upmigrate_min_nice + # Enable sched guided freq control + echo 1 > /sys/devices/system/cpu/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpufreq/interactive/use_migration_notif + echo 200000 > /proc/sys/kernel/sched_freq_inc_notify + echo 200000 > /proc/sys/kernel/sched_freq_dec_notify + +} + +function 8917_sched_dcvs_hmp() +{ + # HMP scheduler settings + echo 3 > /proc/sys/kernel/sched_window_stats_policy + echo 3 > /proc/sys/kernel/sched_ravg_hist_size + echo 1 > /proc/sys/kernel/sched_restrict_tasks_spread + # HMP Task packing settings + echo 20 > /proc/sys/kernel/sched_small_task + echo 30 > /sys/devices/system/cpu/cpu0/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu1/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu2/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu3/sched_mostly_idle_load + + echo 3 > /sys/devices/system/cpu/cpu0/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu1/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu2/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu3/sched_mostly_idle_nr_run + + echo 0 > /sys/devices/system/cpu/cpu0/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu1/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu2/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu3/sched_prefer_idle + + echo 1 > /sys/devices/system/cpu/cpu0/online + echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo "19000 1094400:39000" > /sys/devices/system/cpu/cpufreq/interactive/above_hispeed_delay + echo 85 > /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpufreq/interactive/timer_rate + echo 1094400 > /sys/devices/system/cpu/cpufreq/interactive/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpufreq/interactive/io_is_busy + echo "1 960000:85 1094400:90" > /sys/devices/system/cpu/cpufreq/interactive/target_loads + echo 40000 > /sys/devices/system/cpu/cpufreq/interactive/min_sample_time + echo 40000 > /sys/devices/system/cpu/cpufreq/interactive/sampling_down_factor + + # Enable sched guided freq control + echo 1 > /sys/devices/system/cpu/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpufreq/interactive/use_migration_notif + echo 50000 > /proc/sys/kernel/sched_freq_inc_notify + echo 50000 > /proc/sys/kernel/sched_freq_dec_notify +} + +function 8937_sched_dcvs_hmp() +{ + # HMP scheduler settings + echo 3 > /proc/sys/kernel/sched_window_stats_policy + echo 3 > /proc/sys/kernel/sched_ravg_hist_size + # HMP Task packing settings + echo 20 > /proc/sys/kernel/sched_small_task + echo 30 > /sys/devices/system/cpu/cpu0/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu1/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu2/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu3/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu4/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu5/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu6/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu7/sched_mostly_idle_load + + echo 3 > /sys/devices/system/cpu/cpu0/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu1/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu2/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu3/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu4/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu5/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu6/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu7/sched_mostly_idle_nr_run + + echo 0 > /sys/devices/system/cpu/cpu0/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu1/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu2/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu3/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu4/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu5/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu6/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu7/sched_prefer_idle + # enable governor for perf cluster + echo 1 > /sys/devices/system/cpu/cpu0/online + echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo "19000 1094400:39000" > /sys/devices/system/cpu/cpu0/cpufreq/interactive/above_hispeed_delay + echo 85 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/timer_rate + echo 1094400 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/io_is_busy + echo "1 960000:85 1094400:90 1344000:80" > /sys/devices/system/cpu/cpu0/cpufreq/interactive/target_loads + echo 40000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/min_sample_time + echo 40000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/sampling_down_factor + + # enable governor for power cluster + echo 1 > /sys/devices/system/cpu/cpu4/online + echo "interactive" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor + echo 39000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/timer_rate + echo 768000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/io_is_busy + echo "1 768000:90" > /sys/devices/system/cpu/cpu4/cpufreq/interactive/target_loads + echo 40000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/min_sample_time + echo 40000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/sampling_down_factor + + # Enable sched guided freq control + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_migration_notif + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/use_migration_notif + echo 50000 > /proc/sys/kernel/sched_freq_inc_notify + echo 50000 > /proc/sys/kernel/sched_freq_dec_notify + +} + +function sdm660_sched_interactive_dcvs() { + + echo 0 > /proc/sys/kernel/sched_select_prev_cpu_us + echo 400000 > /proc/sys/kernel/sched_freq_inc_notify + echo 400000 > /proc/sys/kernel/sched_freq_dec_notify + echo 5 > /proc/sys/kernel/sched_spill_nr_run + echo 1 > /proc/sys/kernel/sched_restrict_cluster_spill + echo 100000 > /proc/sys/kernel/sched_short_burst_ns + echo 1 > /proc/sys/kernel/sched_prefer_sync_wakee_to_waker + echo 20 > /proc/sys/kernel/sched_small_wakee_task_load + + # disable thermal bcl hotplug to switch governor + echo 0 > /sys/module/msm_thermal/core_control/enabled + + # online CPU0 + echo 1 > /sys/devices/system/cpu/cpu0/online + # configure governor settings for little cluster + echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_migration_notif + echo "19000 1401600:39000" > /sys/devices/system/cpu/cpu0/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/timer_rate + echo 1401600 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/io_is_busy + echo "85 1747200:95" > /sys/devices/system/cpu/cpu0/cpufreq/interactive/target_loads + echo 39000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/min_sample_time + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/max_freq_hysteresis + echo 633600 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/ignore_hispeed_on_notif + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/fast_ramp_down + # online CPU4 + echo 1 > /sys/devices/system/cpu/cpu4/online + # configure governor settings for big cluster + echo "interactive" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/use_migration_notif + echo "19000 1401600:39000" > /sys/devices/system/cpu/cpu4/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/timer_rate + echo 1401600 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/io_is_busy + echo "85 1401600:90 2150400:95" > /sys/devices/system/cpu/cpu4/cpufreq/interactive/target_loads + echo 39000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/min_sample_time + echo 59000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/max_freq_hysteresis + echo 1113600 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/ignore_hispeed_on_notif + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/fast_ramp_down + + # bring all cores online + echo 1 > /sys/devices/system/cpu/cpu0/online + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + echo 1 > /sys/devices/system/cpu/cpu4/online + echo 1 > /sys/devices/system/cpu/cpu5/online + echo 1 > /sys/devices/system/cpu/cpu6/online + echo 1 > /sys/devices/system/cpu/cpu7/online + + # configure LPM + echo N > /sys/module/lpm_levels/system/pwr/cpu0/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/pwr/cpu1/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/pwr/cpu2/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/pwr/cpu3/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/cpu4/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/cpu5/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/cpu6/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/cpu7/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/pwr/pwr-l2-dynret/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/perf-l2-dynret/idle_enabled + echo N > /sys/module/lpm_levels/system/pwr/pwr-l2-ret/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/perf-l2-ret/idle_enabled + + # re-enable thermal and BCL hotplug + echo 1 > /sys/module/msm_thermal/core_control/enabled + + # Enable bus-dcvs + for cpubw in /sys/class/devfreq/*qcom,cpubw* + do + echo "bw_hwmon" > $cpubw/governor + echo 50 > $cpubw/polling_interval + echo 762 > $cpubw/min_freq + echo "1525 3143 5859 7759 9887 10327 11863 13763" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 85 > $cpubw/bw_hwmon/io_percent + echo 100 > $cpubw/bw_hwmon/decay_rate + echo 50 > $cpubw/bw_hwmon/bw_step + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 0 > $cpubw/bw_hwmon/hyst_length + echo 80 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/low_power_ceil_mbps + echo 34 > $cpubw/bw_hwmon/low_power_io_percent + echo 20 > $cpubw/bw_hwmon/low_power_delay + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + done + + for memlat in /sys/class/devfreq/*qcom,memlat-cpu* + do + echo "mem_latency" > $memlat/governor + echo 10 > $memlat/polling_interval + echo 400 > $memlat/mem_latency/ratio_ceil + done + echo "cpufreq" > /sys/class/devfreq/soc:qcom,mincpubw/governor +} + +function sdm660_sched_schedutil_dcvs() { + + if [ $KernelVersionA -ge 4 ] && [ $KernelVersionB -ge 19 ]; then + # configure governor settings for little cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/down_rate_limit_us + echo 1401600 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/pl + echo 633600 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq + echo 902400 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/rtg_boost_freq + + # configure governor settings for big cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy4/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/down_rate_limit_us + echo 1401600 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/pl + echo 1113600 > /sys/devices/system/cpu/cpufreq/policy4/scaling_min_freq + echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/rtg_boost_freq + else + # configure governor settings for little cluster + echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us + echo 1401600 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq + + # configure governor settings for big cluster + echo "schedutil" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/down_rate_limit_us + echo 1401600 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_freq + fi + + echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks + + #if the kernel version >=4.19,set input_boost_freq accordingly + if [ $KernelVersionA -ge 4 ] && [ $KernelVersionB -ge 19 ]; then + echo "0:1401600" > /sys/devices/system/cpu/cpu_boost/input_boost_freq + echo 40 > /sys/devices/system/cpu/cpu_boost/input_boost_ms + else + echo "0:1401600" > /sys/module/cpu_boost/parameters/input_boost_freq + echo 40 > /sys/module/cpu_boost/parameters/input_boost_ms + fi + + # sched_load_boost as -6 is equivalent to target load as 85. It is per cpu tunable. + echo -6 > /sys/devices/system/cpu/cpu0/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu1/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu2/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu3/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu4/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu5/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu6/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu7/sched_load_boost + echo 85 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_load + echo 85 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_load + + # Enable bus-dcvs + for device in /sys/devices/platform/soc + do + for cpubw in $device/*cpu-cpu-ddr-bw/devfreq/*cpu-cpu-ddr-bw + do + echo "bw_hwmon" > $cpubw/governor + echo 50 > $cpubw/polling_interval + echo 762 > $cpubw/min_freq + echo "1525 3143 5859 7759 9887 10327 11863 13763" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 85 > $cpubw/bw_hwmon/io_percent + echo 100 > $cpubw/bw_hwmon/decay_rate + echo 50 > $cpubw/bw_hwmon/bw_step + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 0 > $cpubw/bw_hwmon/hyst_length + echo 80 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + done + + if [ $KernelVersionA -ge 4 ] && [ $KernelVersionB -le 14 ]; then + for memlat in $device/*cpu*-lat/devfreq/*cpu*-lat + do + echo "mem_latency" > $memlat/governor + echo 10 > $memlat/polling_interval + echo 400 > $memlat/mem_latency/ratio_ceil + done + + for latfloor in $device/*cpu*-ddr-latfloor*/devfreq/*cpu-ddr-latfloor* + do + echo "compute" > $latfloor/governor + echo 10 > $latfloor/polling_interval + done + fi + done + + if [ $KernelVersionA -ge 4 ] && [ $KernelVersionB -ge 19 ]; then + # memlat specific settings are moved to seperate file under + # device/target specific folder + setprop vendor.dcvs.prop 1 + fi + +} + +target=`getprop ro.board.platform` + +KernelVersionStr=`cat /proc/sys/kernel/osrelease` +KernelVersionS=${KernelVersionStr:2:2} +KernelVersionA=${KernelVersionStr:0:1} +KernelVersionB=${KernelVersionS%.*} + +function configure_zram_parameters() { + MemTotalStr=`cat /proc/meminfo | grep MemTotal` + MemTotal=${MemTotalStr:16:8} + + low_ram=`getprop ro.config.low_ram` + + # Zram disk - 75% for Go devices. + # For 512MB Go device, size = 384MB, set same for Non-Go. + # For 1GB Go device, size = 768MB, set same for Non-Go. + # For 2GB Go device, size = 1536MB, set same for Non-Go. + # For >2GB Non-Go devices, size = 50% of RAM size. Limit the size to 4GB. + # And enable lz4 zram compression for Go targets. + + let RamSizeGB="( $MemTotal / 1048576 ) + 1" + diskSizeUnit=M + if [ $RamSizeGB -le 2 ]; then + let zRamSizeMB="( $RamSizeGB * 1024 ) * 3 / 4" + else + let zRamSizeMB="( $RamSizeGB * 1024 ) / 2" + fi + + # use MB avoid 32 bit overflow + if [ $zRamSizeMB -gt 4096 ]; then + let zRamSizeMB=4096 + fi + + if [ "$low_ram" == "true" ]; then + echo lz4 > /sys/block/zram0/comp_algorithm + fi + + if [ -f /sys/block/zram0/disksize ]; then + if [ -f /sys/block/zram0/use_dedup ]; then + echo 1 > /sys/block/zram0/use_dedup + fi + echo "$zRamSizeMB""$diskSizeUnit" > /sys/block/zram0/disksize + + # ZRAM may use more memory than it saves if SLAB_STORE_USER + # debug option is enabled. + if [ -e /sys/kernel/slab/zs_handle ]; then + echo 0 > /sys/kernel/slab/zs_handle/store_user + fi + if [ -e /sys/kernel/slab/zspage ]; then + echo 0 > /sys/kernel/slab/zspage/store_user + fi + + mkswap /dev/block/zram0 + swapon /dev/block/zram0 -p 32758 + fi +} + +function configure_read_ahead_kb_values() { + MemTotalStr=`cat /proc/meminfo | grep MemTotal` + MemTotal=${MemTotalStr:16:8} + + dmpts=$(ls /sys/block/*/queue/read_ahead_kb | grep -e dm -e mmc) + + # Set 128 for <= 3GB & + # set 512 for >= 4GB targets. + if [ $MemTotal -le 3145728 ]; then + echo 128 > /sys/block/mmcblk0/bdi/read_ahead_kb + echo 128 > /sys/block/mmcblk0rpmb/bdi/read_ahead_kb + for dm in $dmpts; do + echo 128 > $dm + done + else + echo 512 > /sys/block/mmcblk0/bdi/read_ahead_kb + echo 512 > /sys/block/mmcblk0rpmb/bdi/read_ahead_kb + for dm in $dmpts; do + echo 512 > $dm + done + fi +} + +function disable_core_ctl() { + if [ -f /sys/devices/system/cpu/cpu0/core_ctl/enable ]; then + echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/enable + else + echo 1 > /sys/devices/system/cpu/cpu0/core_ctl/disable + fi +} + +function enable_swap() { + MemTotalStr=`cat /proc/meminfo | grep MemTotal` + MemTotal=${MemTotalStr:16:8} + + SWAP_ENABLE_THRESHOLD=1048576 + swap_enable=`getprop ro.vendor.qti.config.swap` + + # Enable swap initially only for 1 GB targets + if [ "$MemTotal" -le "$SWAP_ENABLE_THRESHOLD" ] && [ "$swap_enable" == "true" ]; then + # Static swiftness + echo 1 > /proc/sys/vm/swap_ratio_enable + echo 70 > /proc/sys/vm/swap_ratio + + # Swap disk - 200MB size + if [ ! -f /data/vendor/swap/swapfile ]; then + dd if=/dev/zero of=/data/vendor/swap/swapfile bs=1m count=200 + fi + mkswap /data/vendor/swap/swapfile + swapon /data/vendor/swap/swapfile -p 32758 + fi +} + +function configure_memory_parameters() { + # Set Memory parameters. + # + # Set per_process_reclaim tuning parameters + # All targets will use vmpressure range 50-70, + # All targets will use 512 pages swap size. + # + # Set Low memory killer minfree parameters + # 32 bit Non-Go, all memory configurations will use 15K series + # 32 bit Go, all memory configurations will use uLMK + Memcg + # 64 bit will use Google default LMK series. + # + # Set ALMK parameters (usually above the highest minfree values) + # vmpressure_file_min threshold is always set slightly higher + # than LMK minfree's last bin value for all targets. It is calculated as + # vmpressure_file_min = (last bin - second last bin ) + last bin + # + # Set allocstall_threshold to 0 for all targets. + # + +ProductName=`getprop ro.product.name` +low_ram=`getprop ro.config.low_ram` + +if [ "$ProductName" == "msmnile" ] || [ "$ProductName" == "kona" ] || [ "$ProductName" == "sdmshrike_au" ]; then + # Enable ZRAM + configure_zram_parameters + configure_read_ahead_kb_values + echo 0 > /proc/sys/vm/page-cluster + echo 100 > /proc/sys/vm/swappiness +else + arch_type=`uname -m` + + # Set parameters for 32-bit Go targets. + if [ "$low_ram" == "true" ]; then + # Disable KLMK, ALMK, PPR & Core Control for Go devices + echo 0 > /sys/module/lowmemorykiller/parameters/enable_lmk + echo 0 > /sys/module/lowmemorykiller/parameters/enable_adaptive_lmk + echo 0 > /sys/module/process_reclaim/parameters/enable_process_reclaim + disable_core_ctl + # Enable oom_reaper for Go devices + if [ -f /proc/sys/vm/reap_mem_on_sigkill ]; then + echo 1 > /proc/sys/vm/reap_mem_on_sigkill + fi + else + + # Read adj series and set adj threshold for PPR and ALMK. + # This is required since adj values change from framework to framework. + adj_series=`cat /sys/module/lowmemorykiller/parameters/adj` + adj_1="${adj_series#*,}" + set_almk_ppr_adj="${adj_1%%,*}" + + # PPR and ALMK should not act on HOME adj and below. + # Normalized ADJ for HOME is 6. Hence multiply by 6 + # ADJ score represented as INT in LMK params, actual score can be in decimal + # Hence add 6 considering a worst case of 0.9 conversion to INT (0.9*6). + # For uLMK + Memcg, this will be set as 6 since adj is zero. + set_almk_ppr_adj=$(((set_almk_ppr_adj * 6) + 6)) + echo $set_almk_ppr_adj > /sys/module/lowmemorykiller/parameters/adj_max_shift + + # Calculate vmpressure_file_min as below & set for 64 bit: + # vmpressure_file_min = last_lmk_bin + (last_lmk_bin - last_but_one_lmk_bin) + if [ "$arch_type" == "aarch64" ]; then + minfree_series=`cat /sys/module/lowmemorykiller/parameters/minfree` + minfree_1="${minfree_series#*,}" ; rem_minfree_1="${minfree_1%%,*}" + minfree_2="${minfree_1#*,}" ; rem_minfree_2="${minfree_2%%,*}" + minfree_3="${minfree_2#*,}" ; rem_minfree_3="${minfree_3%%,*}" + minfree_4="${minfree_3#*,}" ; rem_minfree_4="${minfree_4%%,*}" + minfree_5="${minfree_4#*,}" + + vmpres_file_min=$((minfree_5 + (minfree_5 - rem_minfree_4))) + echo $vmpres_file_min > /sys/module/lowmemorykiller/parameters/vmpressure_file_min + else + # Set LMK series, vmpressure_file_min for 32 bit non-go targets. + # Disable Core Control, enable KLMK for non-go 8909. + if [ "$ProductName" == "msm8909" ]; then + disable_core_ctl + echo 1 > /sys/module/lowmemorykiller/parameters/enable_lmk + fi + echo "15360,19200,23040,26880,34415,43737" > /sys/module/lowmemorykiller/parameters/minfree + echo 53059 > /sys/module/lowmemorykiller/parameters/vmpressure_file_min + fi + + # Enable adaptive LMK for all targets & + # use Google default LMK series for all 64-bit targets >=2GB. + echo 1 > /sys/module/lowmemorykiller/parameters/enable_adaptive_lmk + + # Enable oom_reaper + if [ -f /sys/module/lowmemorykiller/parameters/oom_reaper ]; then + echo 1 > /sys/module/lowmemorykiller/parameters/oom_reaper + fi + + if [[ "$ProductName" != "bengal"* ]]; then + #bengal has appcompaction enabled. So not needed + # Set PPR parameters for other targets + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + case "$soc_id" in + # Do not set PPR parameters for premium targets + # sdm845 - 321, 341 + # msm8998 - 292, 319 + # msm8996 - 246, 291, 305, 312 + "321" | "341" | "292" | "319" | "246" | "291" | "305" | "312") + ;; + *) + #Set PPR parameters for all other targets. + echo $set_almk_ppr_adj > /sys/module/process_reclaim/parameters/min_score_adj + echo 1 > /sys/module/process_reclaim/parameters/enable_process_reclaim + echo 50 > /sys/module/process_reclaim/parameters/pressure_min + echo 70 > /sys/module/process_reclaim/parameters/pressure_max + echo 30 > /sys/module/process_reclaim/parameters/swap_opt_eff + echo 512 > /sys/module/process_reclaim/parameters/per_swap_size + ;; + esac + fi + fi + + if [[ "$ProductName" == "bengal"* ]]; then + #Set PPR nomap parameters for bengal targets + echo 1 > /sys/module/process_reclaim/parameters/enable_process_reclaim + echo 50 > /sys/module/process_reclaim/parameters/pressure_min + echo 70 > /sys/module/process_reclaim/parameters/pressure_max + echo 30 > /sys/module/process_reclaim/parameters/swap_opt_eff + echo 0 > /sys/module/process_reclaim/parameters/per_swap_size + echo 7680 > /sys/module/process_reclaim/parameters/tsk_nomap_swap_sz + fi + + # Set allocstall_threshold to 0 for all targets. + # Set swappiness to 100 for all targets + echo 0 > /sys/module/vmpressure/parameters/allocstall_threshold + echo 100 > /proc/sys/vm/swappiness + + # Disable wsf for all targets beacause we are using efk. + # wsf Range : 1..1000 So set to bare minimum value 1. + echo 1 > /proc/sys/vm/watermark_scale_factor + + configure_zram_parameters + + configure_read_ahead_kb_values + + enable_swap +fi +} + +function enable_memory_features() +{ + MemTotalStr=`cat /proc/meminfo | grep MemTotal` + MemTotal=${MemTotalStr:16:8} + + if [ $MemTotal -le 2097152 ]; then + #Enable B service adj transition for 2GB or less memory + setprop ro.vendor.qti.sys.fw.bservice_enable true + setprop ro.vendor.qti.sys.fw.bservice_limit 5 + setprop ro.vendor.qti.sys.fw.bservice_age 5000 + + #Enable Delay Service Restart + setprop ro.vendor.qti.am.reschedule_service true + fi +} + +function start_hbtp() +{ + # Start the Host based Touch processing but not in the power off mode. + bootmode=`getprop ro.bootmode` + if [ "charger" != $bootmode ]; then + start vendor.hbtp + fi +} + +case "$target" in + "pineapple") + if [ -f /sys/devices/soc0/chip_family ]; then + chip_family_id=`cat /sys/devices/soc0/chip_family` + else + chip_family_id=-1 + fi + + echo "adsprpc : chip_family_id : $chip_faily_id" > /dev/kmsg + + case "$chip_family_id" in + "0x8a") + if [ -f /sys/devices/platform/soc/soc:qcom,msm_fastrpc/fastrpc_nsp_status ]; then + fastrpc_nsp_status=`cat /sys/devices/platform/soc/soc:qcom,msm_fastrpc/fastrpc_nsp_status` + else + fastrpc_nsp_status=-1 + fi + + echo "adsprpc : fastrpc_nsp_status : $fastrpc_nsp_status" > /dev/kmsg + + if [ $fastrpc_nsp_status -eq 0 ]; then + setprop vendor.fastrpc.disable.cdsprpcd.daemon 1 + echo "adsprpc : Disabled cdsp daemon" > /dev/kmsg + fi + esac + ;; +esac + +case "$target" in + "msm7201a_ffa" | "msm7201a_surf" | "msm7627_ffa" | "msm7627_6x" | "msm7627a" | "msm7627_surf" | \ + "qsd8250_surf" | "qsd8250_ffa" | "msm7630_surf" | "msm7630_1x" | "msm7630_fusion" | "qsd8650a_st1x") + echo "ondemand" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 90 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold + ;; +esac + +case "$target" in + "msm7201a_ffa" | "msm7201a_surf") + echo 500000 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate + ;; +esac + +case "$target" in + "msm7630_surf" | "msm7630_1x" | "msm7630_fusion") + echo 75000 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate + echo 1 > /sys/module/pm2/parameters/idle_sleep_mode + ;; +esac + +case "$target" in + "msm7201a_ffa" | "msm7201a_surf" | "msm7627_ffa" | "msm7627_6x" | "msm7627_surf" | "msm7630_surf" | "msm7630_1x" | "msm7630_fusion" | "msm7627a" ) + echo 245760 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + ;; +esac + +case "$target" in + "msm8660") + echo 1 > /sys/module/rpm_resources/enable_low_power/L2_cache + echo 1 > /sys/module/rpm_resources/enable_low_power/pxo + echo 2 > /sys/module/rpm_resources/enable_low_power/vdd_dig + echo 2 > /sys/module/rpm_resources/enable_low_power/vdd_mem + echo 1 > /sys/module/rpm_resources/enable_low_power/rpm_cpu + echo 1 > /sys/module/msm_pm/modes/cpu0/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/standalone_power_collapse/idle_enabled + echo "ondemand" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo "ondemand" > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor + echo 50000 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate + echo 90 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold + echo 1 > /sys/devices/system/cpu/cpufreq/ondemand/io_is_busy + echo 4 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_down_factor + echo 384000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 384000 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq + chown -h system /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq + chown -h system /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + chown -h system /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq + chown -h system /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq + chown -h root.system /sys/devices/system/cpu/mfreq + chmod -h 220 /sys/devices/system/cpu/mfreq + chown -h root.system /sys/devices/system/cpu/cpu1/online + chmod -h 664 /sys/devices/system/cpu/cpu1/online + ;; +esac + +case "$target" in + "msm8960") + echo 1 > /sys/module/rpm_resources/enable_low_power/L2_cache + echo 1 > /sys/module/rpm_resources/enable_low_power/pxo + echo 1 > /sys/module/rpm_resources/enable_low_power/vdd_dig + echo 1 > /sys/module/rpm_resources/enable_low_power/vdd_mem + echo 1 > /sys/module/msm_pm/modes/cpu0/retention/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/power_collapse/idle_enabled + echo 0 > /sys/module/msm_thermal/core_control/enabled + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + echo "ondemand" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo "ondemand" > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor + echo "ondemand" > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor + echo "ondemand" > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor + echo 50000 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate + echo 90 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold + echo 1 > /sys/devices/system/cpu/cpufreq/ondemand/io_is_busy + echo 4 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_down_factor + echo 10 > /sys/devices/system/cpu/cpufreq/ondemand/down_differential + echo 70 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold_multi_core + echo 3 > /sys/devices/system/cpu/cpufreq/ondemand/down_differential_multi_core + echo 918000 > /sys/devices/system/cpu/cpufreq/ondemand/optimal_freq + echo 1026000 > /sys/devices/system/cpu/cpufreq/ondemand/sync_freq + echo 80 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold_any_cpu_load + chown -h system /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate + chown -h system /sys/devices/system/cpu/cpufreq/ondemand/sampling_down_factor + chown -h system /sys/devices/system/cpu/cpufreq/ondemand/io_is_busy + echo 384000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 384000 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq + echo 384000 > /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq + echo 384000 > /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq + chown -h system /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq + chown -h system /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + chown -h system /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq + chown -h system /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq + chown -h system /sys/devices/system/cpu/cpu2/cpufreq/scaling_max_freq + chown -h system /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq + chown -h system /sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq + chown -h system /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq + echo 1 > /sys/module/msm_thermal/core_control/enabled + chown -h root.system /sys/devices/system/cpu/mfreq + chmod -h 220 /sys/devices/system/cpu/mfreq + chown -h root.system /sys/devices/system/cpu/cpu1/online + chown -h root.system /sys/devices/system/cpu/cpu2/online + chown -h root.system /sys/devices/system/cpu/cpu3/online + chmod -h 664 /sys/devices/system/cpu/cpu1/online + chmod -h 664 /sys/devices/system/cpu/cpu2/online + chmod -h 664 /sys/devices/system/cpu/cpu3/online + # set DCVS parameters for CPU + echo 40000 > /sys/module/msm_dcvs/cores/cpu0/slack_time_max_us + echo 40000 > /sys/module/msm_dcvs/cores/cpu0/slack_time_min_us + echo 100000 > /sys/module/msm_dcvs/cores/cpu0/em_win_size_min_us + echo 500000 > /sys/module/msm_dcvs/cores/cpu0/em_win_size_max_us + echo 0 > /sys/module/msm_dcvs/cores/cpu0/slack_mode_dynamic + echo 1000000 > /sys/module/msm_dcvs/cores/cpu0/disable_pc_threshold + echo 25000 > /sys/module/msm_dcvs/cores/cpu1/slack_time_max_us + echo 25000 > /sys/module/msm_dcvs/cores/cpu1/slack_time_min_us + echo 100000 > /sys/module/msm_dcvs/cores/cpu1/em_win_size_min_us + echo 500000 > /sys/module/msm_dcvs/cores/cpu1/em_win_size_max_us + echo 0 > /sys/module/msm_dcvs/cores/cpu1/slack_mode_dynamic + echo 1000000 > /sys/module/msm_dcvs/cores/cpu1/disable_pc_threshold + echo 25000 > /sys/module/msm_dcvs/cores/cpu2/slack_time_max_us + echo 25000 > /sys/module/msm_dcvs/cores/cpu2/slack_time_min_us + echo 100000 > /sys/module/msm_dcvs/cores/cpu2/em_win_size_min_us + echo 500000 > /sys/module/msm_dcvs/cores/cpu2/em_win_size_max_us + echo 0 > /sys/module/msm_dcvs/cores/cpu2/slack_mode_dynamic + echo 1000000 > /sys/module/msm_dcvs/cores/cpu2/disable_pc_threshold + echo 25000 > /sys/module/msm_dcvs/cores/cpu3/slack_time_max_us + echo 25000 > /sys/module/msm_dcvs/cores/cpu3/slack_time_min_us + echo 100000 > /sys/module/msm_dcvs/cores/cpu3/em_win_size_min_us + echo 500000 > /sys/module/msm_dcvs/cores/cpu3/em_win_size_max_us + echo 0 > /sys/module/msm_dcvs/cores/cpu3/slack_mode_dynamic + echo 1000000 > /sys/module/msm_dcvs/cores/cpu3/disable_pc_threshold + # set DCVS parameters for GPU + echo 20000 > /sys/module/msm_dcvs/cores/gpu0/slack_time_max_us + echo 20000 > /sys/module/msm_dcvs/cores/gpu0/slack_time_min_us + echo 0 > /sys/module/msm_dcvs/cores/gpu0/slack_mode_dynamic + # set msm_mpdecision parameters + echo 45000 > /sys/module/msm_mpdecision/slack_time_max_us + echo 15000 > /sys/module/msm_mpdecision/slack_time_min_us + echo 100000 > /sys/module/msm_mpdecision/em_win_size_min_us + echo 1000000 > /sys/module/msm_mpdecision/em_win_size_max_us + echo 3 > /sys/module/msm_mpdecision/online_util_pct_min + echo 25 > /sys/module/msm_mpdecision/online_util_pct_max + echo 97 > /sys/module/msm_mpdecision/em_max_util_pct + echo 2 > /sys/module/msm_mpdecision/rq_avg_poll_ms + echo 10 > /sys/module/msm_mpdecision/mp_em_rounding_point_min + echo 85 > /sys/module/msm_mpdecision/mp_em_rounding_point_max + echo 50 > /sys/module/msm_mpdecision/iowait_threshold_pct + #set permissions for the nodes needed by display on/off hook + chown -h system /sys/module/msm_dcvs/cores/cpu0/slack_time_max_us + chown -h system /sys/module/msm_dcvs/cores/cpu0/slack_time_min_us + chown -h system /sys/module/msm_mpdecision/slack_time_max_us + chown -h system /sys/module/msm_mpdecision/slack_time_min_us + chmod -h 664 /sys/module/msm_dcvs/cores/cpu0/slack_time_max_us + chmod -h 664 /sys/module/msm_dcvs/cores/cpu0/slack_time_min_us + chmod -h 664 /sys/module/msm_mpdecision/slack_time_max_us + chmod -h 664 /sys/module/msm_mpdecision/slack_time_min_us + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + case "$soc_id" in + "130") + echo 230 > /sys/class/gpio/export + echo 228 > /sys/class/gpio/export + echo 229 > /sys/class/gpio/export + echo "in" > /sys/class/gpio/gpio230/direction + echo "rising" > /sys/class/gpio/gpio230/edge + echo "in" > /sys/class/gpio/gpio228/direction + echo "rising" > /sys/class/gpio/gpio228/edge + echo "in" > /sys/class/gpio/gpio229/direction + echo "rising" > /sys/class/gpio/gpio229/edge + echo 253 > /sys/class/gpio/export + echo 254 > /sys/class/gpio/export + echo 257 > /sys/class/gpio/export + echo 258 > /sys/class/gpio/export + echo 259 > /sys/class/gpio/export + echo "out" > /sys/class/gpio/gpio253/direction + echo "out" > /sys/class/gpio/gpio254/direction + echo "out" > /sys/class/gpio/gpio257/direction + echo "out" > /sys/class/gpio/gpio258/direction + echo "out" > /sys/class/gpio/gpio259/direction + chown -h media /sys/class/gpio/gpio253/value + chown -h media /sys/class/gpio/gpio254/value + chown -h media /sys/class/gpio/gpio257/value + chown -h media /sys/class/gpio/gpio258/value + chown -h media /sys/class/gpio/gpio259/value + chown -h media /sys/class/gpio/gpio253/direction + chown -h media /sys/class/gpio/gpio254/direction + chown -h media /sys/class/gpio/gpio257/direction + chown -h media /sys/class/gpio/gpio258/direction + chown -h media /sys/class/gpio/gpio259/direction + echo 0 > /sys/module/rpm_resources/enable_low_power/vdd_dig + echo 0 > /sys/module/rpm_resources/enable_low_power/vdd_mem + ;; + esac + ;; +esac + +case "$target" in + "msm8974") + echo 4 > /sys/module/lpm_levels/enable_low_power/l2 + echo 1 > /sys/module/msm_pm/modes/cpu0/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/retention/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/retention/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/retention/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/retention/idle_enabled + echo 0 > /sys/module/msm_thermal/core_control/enabled + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + case "$soc_id" in + "208" | "211" | "214" | "217" | "209" | "212" | "215" | "218" | "194" | "210" | "213" | "216") + for devfreq_gov in /sys/class/devfreq/qcom,cpubw*/governor + do + echo "cpubw_hwmon" > $devfreq_gov + done + echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo "interactive" > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor + echo "interactive" > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor + echo "interactive" > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor + echo "20000 1400000:40000 1700000:20000" > /sys/devices/system/cpu/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load + echo 1190400 > /sys/devices/system/cpu/cpufreq/interactive/hispeed_freq + echo 1 > /sys/devices/system/cpu/cpufreq/interactive/io_is_busy + echo "85 1500000:90 1800000:70" > /sys/devices/system/cpu/cpufreq/interactive/target_loads + echo 40000 > /sys/devices/system/cpu/cpufreq/interactive/min_sample_time + echo 20 > /sys/module/cpu_boost/parameters/boost_ms + echo 1728000 > /sys/module/cpu_boost/parameters/sync_threshold + echo 100000 > /sys/devices/system/cpu/cpufreq/interactive/sampling_down_factor + echo 1497600 > /sys/module/cpu_boost/parameters/input_boost_freq + echo 40 > /sys/module/cpu_boost/parameters/input_boost_ms + ;; + *) + echo "ondemand" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo "ondemand" > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor + echo "ondemand" > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor + echo "ondemand" > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor + echo 50000 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate + echo 90 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold + echo 1 > /sys/devices/system/cpu/cpufreq/ondemand/io_is_busy + echo 2 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_down_factor + echo 10 > /sys/devices/system/cpu/cpufreq/ondemand/down_differential + echo 70 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold_multi_core + echo 3 > /sys/devices/system/cpu/cpufreq/ondemand/down_differential_multi_core + echo 960000 > /sys/devices/system/cpu/cpufreq/ondemand/optimal_freq + echo 960000 > /sys/devices/system/cpu/cpufreq/ondemand/sync_freq + echo 1190400 > /sys/devices/system/cpu/cpufreq/ondemand/input_boost + echo 80 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold_any_cpu_load + ;; + esac + echo 300000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 300000 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq + echo 300000 > /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq + echo 300000 > /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq + chown -h system /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq + chown -h system /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 1 > /sys/module/msm_thermal/core_control/enabled + chown -h root.system /sys/devices/system/cpu/mfreq + chmod -h 220 /sys/devices/system/cpu/mfreq + chown -h root.system /sys/devices/system/cpu/cpu1/online + chown -h root.system /sys/devices/system/cpu/cpu2/online + chown -h root.system /sys/devices/system/cpu/cpu3/online + chmod -h 664 /sys/devices/system/cpu/cpu1/online + chmod -h 664 /sys/devices/system/cpu/cpu2/online + chmod -h 664 /sys/devices/system/cpu/cpu3/online + echo 1 > /dev/cpuctl/apps/cpu.notify_on_migrate + ;; +esac + +case "$target" in + "msm8916") + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + case "$soc_id" in + "206") + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + echo 2 > /sys/class/net/rmnet0/queues/rx-0/rps_cpus + ;; + "247" | "248" | "249" | "250") + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + ;; + "239" | "241" | "263") + if [ -f /sys/devices/soc0/revision ]; then + revision=`cat /sys/devices/soc0/revision` + else + revision=`cat /sys/devices/system/soc/soc0/revision` + fi + echo 10 > /sys/class/net/rmnet0/queues/rx-0/rps_cpus + if [ -f /sys/devices/soc0/platform_subtype_id ]; then + platform_subtype_id=`cat /sys/devices/soc0/platform_subtype_id` + fi + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + fi + case "$soc_id" in + "239") + case "$hw_platform" in + "Surf") + case "$platform_subtype_id" in + "1" | "2") + start_hbtp + ;; + esac + ;; + "MTP") + case "$platform_subtype_id" in + "3") + start_hbtp + ;; + esac + ;; + esac + ;; + esac + ;; + "268" | "269" | "270" | "271") + echo 10 > /sys/class/net/rmnet0/queues/rx-0/rps_cpus + ;; + "233" | "240" | "242") + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + ;; + esac + ;; +esac + +case "$target" in + "msm8226") + echo 4 > /sys/module/lpm_levels/enable_low_power/l2 + echo 1 > /sys/module/msm_pm/modes/cpu0/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/power_collapse/idle_enabled + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + echo "ondemand" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 50000 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate + echo 90 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold + echo 1 > /sys/devices/system/cpu/cpufreq/ondemand/io_is_busy + echo 2 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_down_factor + echo 10 > /sys/devices/system/cpu/cpufreq/ondemand/down_differential + echo 70 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold_multi_core + echo 10 > /sys/devices/system/cpu/cpufreq/ondemand/down_differential_multi_core + echo 787200 > /sys/devices/system/cpu/cpufreq/ondemand/optimal_freq + echo 300000 > /sys/devices/system/cpu/cpufreq/ondemand/sync_freq + echo 80 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold_any_cpu_load + echo 300000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + chown -h system /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq + chown -h system /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + chown -h root.system /sys/devices/system/cpu/cpu1/online + chown -h root.system /sys/devices/system/cpu/cpu2/online + chown -h root.system /sys/devices/system/cpu/cpu3/online + chmod -h 664 /sys/devices/system/cpu/cpu1/online + chmod -h 664 /sys/devices/system/cpu/cpu2/online + chmod -h 664 /sys/devices/system/cpu/cpu3/online + ;; +esac + +case "$target" in + "msm8610") + echo 4 > /sys/module/lpm_levels/enable_low_power/l2 + echo 1 > /sys/module/msm_pm/modes/cpu0/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/power_collapse/idle_enabled + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + echo "ondemand" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 50000 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate + echo 90 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold + echo 1 > /sys/devices/system/cpu/cpufreq/ondemand/io_is_busy + echo 2 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_down_factor + echo 10 > /sys/devices/system/cpu/cpufreq/ondemand/down_differential + echo 70 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold_multi_core + echo 10 > /sys/devices/system/cpu/cpufreq/ondemand/down_differential_multi_core + echo 787200 > /sys/devices/system/cpu/cpufreq/ondemand/optimal_freq + echo 300000 > /sys/devices/system/cpu/cpufreq/ondemand/sync_freq + echo 80 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold_any_cpu_load + echo 300000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + setprop ro.qualcomm.perf.min_freq 7 + echo 1 > /sys/kernel/mm/ksm/deferred_timer + chown -h system /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq + chown -h system /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + chown -h root.system /sys/devices/system/cpu/cpu1/online + chown -h root.system /sys/devices/system/cpu/cpu2/online + chown -h root.system /sys/devices/system/cpu/cpu3/online + chmod -h 664 /sys/devices/system/cpu/cpu1/online + chmod -h 664 /sys/devices/system/cpu/cpu2/online + chmod -h 664 /sys/devices/system/cpu/cpu3/online + ;; +esac + +case "$target" in + "msm8916") + + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + # HMP scheduler settings for 8916, 8936, 8939, 8929 + echo 3 > /proc/sys/kernel/sched_window_stats_policy + echo 3 > /proc/sys/kernel/sched_ravg_hist_size + + # Apply governor settings for 8916 + case "$soc_id" in + "206" | "247" | "248" | "249" | "250") + + # HMP scheduler load tracking settings + echo 3 > /proc/sys/kernel/sched_ravg_hist_size + + # HMP Task packing settings for 8916 + echo 20 > /proc/sys/kernel/sched_small_task + echo 30 > /proc/sys/kernel/sched_mostly_idle_load + echo 3 > /proc/sys/kernel/sched_mostly_idle_nr_run + + # disable thermal core_control to update scaling_min_freq + echo 0 > /sys/module/msm_thermal/core_control/enabled + echo 1 > /sys/devices/system/cpu/cpu0/online + echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 800000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + # enable thermal core_control now + echo 1 > /sys/module/msm_thermal/core_control/enabled + + echo "25000 1094400:50000" > /sys/devices/system/cpu/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load + echo 30000 > /sys/devices/system/cpu/cpufreq/interactive/timer_rate + echo 998400 > /sys/devices/system/cpu/cpufreq/interactive/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpufreq/interactive/io_is_busy + echo "1 800000:85 998400:90 1094400:80" > /sys/devices/system/cpu/cpufreq/interactive/target_loads + echo 50000 > /sys/devices/system/cpu/cpufreq/interactive/min_sample_time + echo 50000 > /sys/devices/system/cpu/cpufreq/interactive/sampling_down_factor + + # Bring up all cores online + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + echo 1 > /sys/devices/system/cpu/cpu4/online + ;; + esac + + # Apply governor settings for 8936 + case "$soc_id" in + "233" | "240" | "242") + + # HMP scheduler load tracking settings + echo 3 > /proc/sys/kernel/sched_ravg_hist_size + + # HMP Task packing settings for 8936 + echo 50 > /proc/sys/kernel/sched_small_task + echo 50 > /proc/sys/kernel/sched_mostly_idle_load + echo 10 > /proc/sys/kernel/sched_mostly_idle_nr_run + + # disable thermal core_control to update scaling_min_freq, interactive gov + echo 0 > /sys/module/msm_thermal/core_control/enabled + echo 1 > /sys/devices/system/cpu/cpu0/online + echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 800000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + # enable thermal core_control now + echo 1 > /sys/module/msm_thermal/core_control/enabled + + echo "25000 1113600:50000" > /sys/devices/system/cpu/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load + echo 30000 > /sys/devices/system/cpu/cpufreq/interactive/timer_rate + echo 960000 > /sys/devices/system/cpu/cpufreq/interactive/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpufreq/interactive/io_is_busy + echo "1 800000:85 1113600:90 1267200:80" > /sys/devices/system/cpu/cpufreq/interactive/target_loads + echo 50000 > /sys/devices/system/cpu/cpufreq/interactive/min_sample_time + echo 50000 > /sys/devices/system/cpu/cpufreq/interactive/sampling_down_factor + + # Bring up all cores online + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + echo 1 > /sys/devices/system/cpu/cpu4/online + + # Enable low power modes + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + + for gpu_bimc_io_percent in /sys/class/devfreq/*qcom,gpubw*/bw_hwmon/io_percent + do + echo 40 > $gpu_bimc_io_percent + done + ;; + esac + + # Apply governor settings for 8939 + case "$soc_id" in + "239" | "241" | "263" | "268" | "269" | "270" | "271") + + if [ `cat /sys/devices/soc0/revision` != "3.0" ]; then + # Apply 1.0 and 2.0 specific Sched & Governor settings + + # HMP scheduler load tracking settings + echo 5 > /proc/sys/kernel/sched_ravg_hist_size + + # HMP Task packing settings for 8939, 8929 + echo 20 > /proc/sys/kernel/sched_small_task + + for devfreq_gov in /sys/class/devfreq/*qcom,mincpubw*/governor + do + echo "cpufreq" > $devfreq_gov + done + + for devfreq_gov in /sys/class/devfreq/*qcom,cpubw*/governor + do + echo "bw_hwmon" > $devfreq_gov + for cpu_io_percent in /sys/class/devfreq/*qcom,cpubw*/bw_hwmon/io_percent + do + echo 20 > $cpu_io_percent + done + done + + for gpu_bimc_io_percent in /sys/class/devfreq/*qcom,gpubw*/bw_hwmon/io_percent + do + echo 40 > $gpu_bimc_io_percent + done + # disable thermal core_control to update interactive gov settings + echo 0 > /sys/module/msm_thermal/core_control/enabled + + # enable governor for perf cluster + echo 1 > /sys/devices/system/cpu/cpu0/online + echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo "20000 1113600:50000" > /sys/devices/system/cpu/cpu0/cpufreq/interactive/above_hispeed_delay + echo 85 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/timer_rate + echo 1113600 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/io_is_busy + echo "1 960000:85 1113600:90 1344000:80" > /sys/devices/system/cpu/cpu0/cpufreq/interactive/target_loads + echo 50000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/min_sample_time + echo 50000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/sampling_down_factor + echo 960000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + + # enable governor for power cluster + echo 1 > /sys/devices/system/cpu/cpu4/online + echo "interactive" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor + echo "25000 800000:50000" > /sys/devices/system/cpu/cpu4/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/go_hispeed_load + echo 40000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/timer_rate + echo 998400 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/io_is_busy + echo "1 800000:90" > /sys/devices/system/cpu/cpu4/cpufreq/interactive/target_loads + echo 40000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/min_sample_time + echo 40000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/sampling_down_factor + echo 800000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + + # enable thermal core_control now + echo 1 > /sys/module/msm_thermal/core_control/enabled + + # Bring up all cores online + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + echo 1 > /sys/devices/system/cpu/cpu4/online + echo 1 > /sys/devices/system/cpu/cpu5/online + echo 1 > /sys/devices/system/cpu/cpu6/online + echo 1 > /sys/devices/system/cpu/cpu7/online + + # Enable low power modes + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + + # HMP scheduler (big.Little cluster related) settings + echo 75 > /proc/sys/kernel/sched_upmigrate + echo 60 > /proc/sys/kernel/sched_downmigrate + + # cpu idle load threshold + echo 30 > /sys/devices/system/cpu/cpu0/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu1/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu2/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu3/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu4/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu5/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu6/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu7/sched_mostly_idle_load + + # cpu idle nr run threshold + echo 3 > /sys/devices/system/cpu/cpu0/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu1/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu2/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu3/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu4/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu5/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu6/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu7/sched_mostly_idle_nr_run + + else + # Apply 3.0 specific Sched & Governor settings + # HMP scheduler settings for 8939 V3.0 + echo 3 > /proc/sys/kernel/sched_window_stats_policy + echo 3 > /proc/sys/kernel/sched_ravg_hist_size + echo 20000000 > /proc/sys/kernel/sched_ravg_window + + # HMP Task packing settings for 8939 V3.0 + echo 20 > /proc/sys/kernel/sched_small_task + echo 30 > /proc/sys/kernel/sched_mostly_idle_load + echo 3 > /proc/sys/kernel/sched_mostly_idle_nr_run + + echo 0 > /sys/devices/system/cpu/cpu0/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu1/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu2/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu3/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu4/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu5/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu6/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu7/sched_prefer_idle + + for devfreq_gov in /sys/class/devfreq/*qcom,mincpubw*/governor + do + echo "cpufreq" > $devfreq_gov + done + + for devfreq_gov in /sys/class/devfreq/*qcom,cpubw*/governor + do + echo "bw_hwmon" > $devfreq_gov + for cpu_io_percent in /sys/class/devfreq/*qcom,cpubw*/bw_hwmon/io_percent + do + echo 20 > $cpu_io_percent + done + done + + for gpu_bimc_io_percent in /sys/class/devfreq/*qcom,gpubw*/bw_hwmon/io_percent + do + echo 40 > $gpu_bimc_io_percent + done + # disable thermal core_control to update interactive gov settings + echo 0 > /sys/module/msm_thermal/core_control/enabled + + # enable governor for perf cluster + echo 1 > /sys/devices/system/cpu/cpu0/online + echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo "19000 1113600:39000" > /sys/devices/system/cpu/cpu0/cpufreq/interactive/above_hispeed_delay + echo 85 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/timer_rate + echo 1113600 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/io_is_busy + echo "1 960000:85 1113600:90 1344000:80" > /sys/devices/system/cpu/cpu0/cpufreq/interactive/target_loads + echo 40000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/min_sample_time + echo 40000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/sampling_down_factor + echo 960000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + + # enable governor for power cluster + echo 1 > /sys/devices/system/cpu/cpu4/online + echo "interactive" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor + echo 39000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/timer_rate + echo 800000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/io_is_busy + echo "1 800000:90" > /sys/devices/system/cpu/cpu4/cpufreq/interactive/target_loads + echo 40000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/min_sample_time + echo 40000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/sampling_down_factor + echo 800000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + + # enable thermal core_control now + echo 1 > /sys/module/msm_thermal/core_control/enabled + + # Bring up all cores online + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + echo 1 > /sys/devices/system/cpu/cpu5/online + echo 1 > /sys/devices/system/cpu/cpu6/online + echo 1 > /sys/devices/system/cpu/cpu7/online + + # Enable low power modes + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + + # HMP scheduler (big.Little cluster related) settings + echo 93 > /proc/sys/kernel/sched_upmigrate + echo 83 > /proc/sys/kernel/sched_downmigrate + + # Enable sched guided freq control + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_migration_notif + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/use_migration_notif + echo 50000 > /proc/sys/kernel/sched_freq_inc_notify + echo 50000 > /proc/sys/kernel/sched_freq_dec_notify + + # Enable core control +# insmod /system/lib/modules/core_ctl.ko + echo 2 > /sys/devices/system/cpu/cpu0/core_ctl/min_cpus + echo 4 > /sys/devices/system/cpu/cpu0/core_ctl/max_cpus + echo 68 > /sys/devices/system/cpu/cpu0/core_ctl/busy_up_thres + echo 40 > /sys/devices/system/cpu/cpu0/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu0/core_ctl/offline_delay_ms + case "$revision" in + "3.0") + # Enable dynamic clock gatin + echo 1 > /sys/module/lpm_levels/lpm_workarounds/dynamic_clock_gating + ;; + esac + fi + ;; + esac + # Set Memory parameters + configure_memory_parameters + ;; +esac + +case "$target" in + "msm8952") + + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + case "$soc_id" in + "264" | "289") + # Apply Scheduler and Governor settings for 8952 + + # HMP scheduler settings + echo 3 > /proc/sys/kernel/sched_window_stats_policy + echo 3 > /proc/sys/kernel/sched_ravg_hist_size + echo 20000000 > /proc/sys/kernel/sched_ravg_window + + # HMP Task packing settings + echo 20 > /proc/sys/kernel/sched_small_task + echo 30 > /sys/devices/system/cpu/cpu0/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu1/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu2/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu3/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu4/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu5/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu6/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu7/sched_mostly_idle_load + + echo 3 > /sys/devices/system/cpu/cpu0/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu1/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu2/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu3/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu4/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu5/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu6/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu7/sched_mostly_idle_nr_run + + echo 0 > /sys/devices/system/cpu/cpu0/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu1/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu2/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu3/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu4/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu5/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu6/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu7/sched_prefer_idle + + echo 0 > /proc/sys/kernel/sched_boost + + for devfreq_gov in /sys/class/devfreq/*qcom,mincpubw*/governor + do + echo "cpufreq" > $devfreq_gov + done + + for devfreq_gov in /sys/class/devfreq/*qcom,cpubw*/governor + do + echo "bw_hwmon" > $devfreq_gov + for cpu_io_percent in /sys/class/devfreq/*qcom,cpubw*/bw_hwmon/io_percent + do + echo 20 > $cpu_io_percent + done + for cpu_guard_band in /sys/class/devfreq/*qcom,cpubw*/bw_hwmon/guard_band_mbps + do + echo 30 > $cpu_guard_band + done + done + + for gpu_bimc_io_percent in /sys/class/devfreq/qcom,gpubw*/bw_hwmon/io_percent + do + echo 40 > $gpu_bimc_io_percent + done + # disable thermal & BCL core_control to update interactive gov settings + echo 0 > /sys/module/msm_thermal/core_control/enabled + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n disable > $mode + done + for hotplug_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_mask + do + bcl_hotplug_mask=`cat $hotplug_mask` + echo 0 > $hotplug_mask + done + for hotplug_soc_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_soc_mask + do + bcl_soc_hotplug_mask=`cat $hotplug_soc_mask` + echo 0 > $hotplug_soc_mask + done + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n enable > $mode + done + + # enable governor for perf cluster + echo 1 > /sys/devices/system/cpu/cpu0/online + echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo "19000 1113600:39000" > /sys/devices/system/cpu/cpu0/cpufreq/interactive/above_hispeed_delay + echo 85 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/timer_rate + echo 1113600 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/io_is_busy + echo "1 960000:85 1113600:90 1344000:80" > /sys/devices/system/cpu/cpu0/cpufreq/interactive/target_loads + echo 40000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/min_sample_time + echo 40000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/sampling_down_factor + echo 960000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + + # enable governor for power cluster + echo 1 > /sys/devices/system/cpu/cpu4/online + echo "interactive" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor + echo 39000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/timer_rate + echo 806400 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/io_is_busy + echo "1 806400:90" > /sys/devices/system/cpu/cpu4/cpufreq/interactive/target_loads + echo 40000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/min_sample_time + echo 40000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/sampling_down_factor + echo 806400 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + + # Bring up all cores online + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + echo 1 > /sys/devices/system/cpu/cpu4/online + echo 1 > /sys/devices/system/cpu/cpu5/online + echo 1 > /sys/devices/system/cpu/cpu6/online + echo 1 > /sys/devices/system/cpu/cpu7/online + + # Enable Low power modes + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + + # HMP scheduler (big.Little cluster related) settings + echo 93 > /proc/sys/kernel/sched_upmigrate + echo 83 > /proc/sys/kernel/sched_downmigrate + + # Enable sched guided freq control + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_migration_notif + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/use_migration_notif + echo 50000 > /proc/sys/kernel/sched_freq_inc_notify + echo 50000 > /proc/sys/kernel/sched_freq_dec_notify + + # Enable core control + echo 2 > /sys/devices/system/cpu/cpu0/core_ctl/min_cpus + echo 4 > /sys/devices/system/cpu/cpu0/core_ctl/max_cpus + echo 68 > /sys/devices/system/cpu/cpu0/core_ctl/busy_up_thres + echo 40 > /sys/devices/system/cpu/cpu0/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu0/core_ctl/offline_delay_ms + echo 1 > /sys/devices/system/cpu/cpu0/core_ctl/is_big_cluster + + # re-enable thermal & BCL core_control now + echo 1 > /sys/module/msm_thermal/core_control/enabled + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n disable > $mode + done + for hotplug_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_mask + do + echo $bcl_hotplug_mask > $hotplug_mask + done + for hotplug_soc_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_soc_mask + do + echo $bcl_soc_hotplug_mask > $hotplug_soc_mask + done + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n enable > $mode + done + + # Enable dynamic clock gating + echo 1 > /sys/module/lpm_levels/lpm_workarounds/dynamic_clock_gating + # Enable timer migration to little cluster + echo 1 > /proc/sys/kernel/power_aware_timer_migration + + # Set Memory parameters + configure_memory_parameters + + ;; + *) + panel=`cat /sys/class/graphics/fb0/modes` + if [ "${panel:5:1}" == "x" ]; then + panel=${panel:2:3} + else + panel=${panel:2:4} + fi + + # Apply Scheduler and Governor settings for 8976 + # SoC IDs are 266, 274, 277, 278 + + # HMP scheduler (big.Little cluster related) settings + echo 95 > /proc/sys/kernel/sched_upmigrate + echo 85 > /proc/sys/kernel/sched_downmigrate + + echo 2 > /proc/sys/kernel/sched_window_stats_policy + echo 5 > /proc/sys/kernel/sched_ravg_hist_size + + echo 3 > /sys/devices/system/cpu/cpu0/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu1/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu2/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu3/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu4/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu5/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu6/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu7/sched_mostly_idle_nr_run + + for devfreq_gov in /sys/class/devfreq/*qcom,mincpubw*/governor + do + echo "cpufreq" > $devfreq_gov + done + + for devfreq_gov in /sys/class/devfreq/*qcom,cpubw*/governor + do + echo "bw_hwmon" > $devfreq_gov + for cpu_io_percent in /sys/class/devfreq/*qcom,cpubw*/bw_hwmon/io_percent + do + echo 20 > $cpu_io_percent + done + for cpu_guard_band in /sys/class/devfreq/*qcom,cpubw*/bw_hwmon/guard_band_mbps + do + echo 30 > $cpu_guard_band + done + done + + for gpu_bimc_io_percent in /sys/class/devfreq/qcom,gpubw*/bw_hwmon/io_percent + do + echo 40 > $gpu_bimc_io_percent + done + # disable thermal & BCL core_control to update interactive gov settings + echo 0 > /sys/module/msm_thermal/core_control/enabled + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n disable > $mode + done + for hotplug_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_mask + do + bcl_hotplug_mask=`cat $hotplug_mask` + echo 0 > $hotplug_mask + done + for hotplug_soc_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_soc_mask + do + bcl_soc_hotplug_mask=`cat $hotplug_soc_mask` + echo 0 > $hotplug_soc_mask + done + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n enable > $mode + done + + # enable governor for power cluster + echo 1 > /sys/devices/system/cpu/cpu0/online + echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 80 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/timer_rate + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/io_is_busy + echo 40000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/min_sample_time + echo 691200 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + + # enable governor for perf cluster + echo 1 > /sys/devices/system/cpu/cpu4/online + echo "interactive" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor + echo 85 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/timer_rate + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/io_is_busy + echo 40000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/min_sample_time + echo 40000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/sampling_down_factor + echo 883200 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + echo 60000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/max_freq_hysteresis + + if [ $panel -gt 1080 ]; then + #set texture cache size for resolution greater than 1080p + setprop ro.hwui.texture_cache_size 72 + fi + + echo 59000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/above_hispeed_delay + echo 1305600 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/hispeed_freq + echo "1 691200:80" > /sys/devices/system/cpu/cpu0/cpufreq/interactive/target_loads + echo 1382400 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/hispeed_freq + echo "19000 1382400:39000" > /sys/devices/system/cpu/cpu4/cpufreq/interactive/above_hispeed_delay + echo "85 1382400:90 1747200:80" > /sys/devices/system/cpu/cpu4/cpufreq/interactive/target_loads + # HMP Task packing settings for 8976 + echo 30 > /proc/sys/kernel/sched_small_task + echo 20 > /sys/devices/system/cpu/cpu0/sched_mostly_idle_load + echo 20 > /sys/devices/system/cpu/cpu1/sched_mostly_idle_load + echo 20 > /sys/devices/system/cpu/cpu2/sched_mostly_idle_load + echo 20 > /sys/devices/system/cpu/cpu3/sched_mostly_idle_load + echo 20 > /sys/devices/system/cpu/cpu4/sched_mostly_idle_load + echo 20 > /sys/devices/system/cpu/cpu5/sched_mostly_idle_load + echo 20 > /sys/devices/system/cpu/cpu6/sched_mostly_idle_load + echo 20 > /sys/devices/system/cpu/cpu7/sched_mostly_idle_load + + echo 0 > /proc/sys/kernel/sched_boost + + # Bring up all cores online + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + echo 1 > /sys/devices/system/cpu/cpu4/online + echo 1 > /sys/devices/system/cpu/cpu5/online + echo 1 > /sys/devices/system/cpu/cpu6/online + echo 1 > /sys/devices/system/cpu/cpu7/online + + #Disable CPU retention modes for 32bit builds + ProductName=`getprop ro.product.name` + if [ "$ProductName" == "msm8952_32" ] || [ "$ProductName" == "msm8952_32_LMT" ]; then + echo N > /sys/module/lpm_levels/system/a72/cpu4/retention/idle_enabled + echo N > /sys/module/lpm_levels/system/a72/cpu5/retention/idle_enabled + echo N > /sys/module/lpm_levels/system/a72/cpu6/retention/idle_enabled + echo N > /sys/module/lpm_levels/system/a72/cpu7/retention/idle_enabled + fi + + if [ `cat /sys/devices/soc0/revision` == "1.0" ]; then + # Disable l2-pc and l2-gdhs low power modes + echo N > /sys/module/lpm_levels/system/a53/a53-l2-gdhs/idle_enabled + echo N > /sys/module/lpm_levels/system/a72/a72-l2-gdhs/idle_enabled + echo N > /sys/module/lpm_levels/system/a53/a53-l2-pc/idle_enabled + echo N > /sys/module/lpm_levels/system/a72/a72-l2-pc/idle_enabled + fi + + # Enable LPM Prediction + echo 1 > /sys/module/lpm_levels/parameters/lpm_prediction + + # Enable Low power modes + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + # Disable L2 GDHS on 8976 + echo N > /sys/module/lpm_levels/system/a53/a53-l2-gdhs/idle_enabled + echo N > /sys/module/lpm_levels/system/a72/a72-l2-gdhs/idle_enabled + + # Enable sched guided freq control + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_migration_notif + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/use_migration_notif + echo 50000 > /proc/sys/kernel/sched_freq_inc_notify + echo 50000 > /proc/sys/kernel/sched_freq_dec_notify + + # Enable core control + #for 8976 + echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus + echo 4 > /sys/devices/system/cpu/cpu4/core_ctl/max_cpus + echo 68 > /sys/devices/system/cpu/cpu4/core_ctl/busy_up_thres + echo 40 > /sys/devices/system/cpu/cpu4/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu4/core_ctl/offline_delay_ms + echo 1 > /sys/devices/system/cpu/cpu4/core_ctl/is_big_cluster + + # re-enable thermal & BCL core_control now + echo 1 > /sys/module/msm_thermal/core_control/enabled + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n disable > $mode + done + for hotplug_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_mask + do + echo $bcl_hotplug_mask > $hotplug_mask + done + for hotplug_soc_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_soc_mask + do + echo $bcl_soc_hotplug_mask > $hotplug_soc_mask + done + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n enable > $mode + done + + # Enable timer migration to little cluster + echo 1 > /proc/sys/kernel/power_aware_timer_migration + + case "$soc_id" in + "277" | "278") + # Start energy-awareness for 8976 + start energy-awareness + ;; + esac + + #enable sched colocation and colocation inheritance + echo 130 > /proc/sys/kernel/sched_grp_upmigrate + echo 110 > /proc/sys/kernel/sched_grp_downmigrate + echo 1 > /proc/sys/kernel/sched_enable_thread_grouping + + # Set Memory parameters + configure_memory_parameters + + ;; + esac + #Enable Memory Features + enable_memory_features + restorecon -R /sys/devices/system/cpu + ;; +esac + +case "$target" in + "msm8953") + + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + else + hw_platform=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + + if [ -f /sys/devices/soc0/platform_subtype_id ]; then + platform_subtype_id=`cat /sys/devices/soc0/platform_subtype_id` + fi + + echo 0 > /proc/sys/kernel/sched_boost + + case "$soc_id" in + "293" | "304" | "338" | "351") + + # Start Host based Touch processing + case "$hw_platform" in + "MTP" | "Surf" | "RCM" ) + #if this directory is present, it means that a + #1200p panel is connected to the device. + dir="/sys/bus/i2c/devices/3-0038" + if [ ! -d "$dir" ]; then + start_hbtp + fi + ;; + esac + + if [ $soc_id -eq "338" ]; then + case "$hw_platform" in + "QRD" ) + if [ $platform_subtype_id -eq "1" ]; then + start_hbtp + fi + ;; + esac + fi + + #init task load, restrict wakeups to preferred cluster + echo 15 > /proc/sys/kernel/sched_init_task_load + + for devfreq_gov in /sys/class/devfreq/qcom,mincpubw*/governor + do + echo "cpufreq" > $devfreq_gov + done + + for devfreq_gov in /sys/class/devfreq/soc:qcom,cpubw/governor + do + echo "bw_hwmon" > $devfreq_gov + for cpu_io_percent in /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/io_percent + do + echo 34 > $cpu_io_percent + done + for cpu_guard_band in /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/guard_band_mbps + do + echo 0 > $cpu_guard_band + done + for cpu_hist_memory in /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/hist_memory + do + echo 20 > $cpu_hist_memory + done + for cpu_hyst_length in /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/hyst_length + do + echo 10 > $cpu_hyst_length + done + for cpu_idle_mbps in /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/idle_mbps + do + echo 1600 > $cpu_idle_mbps + done + for cpu_low_power_delay in /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/low_power_delay + do + echo 20 > $cpu_low_power_delay + done + for cpu_low_power_io_percent in /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/low_power_io_percent + do + echo 34 > $cpu_low_power_io_percent + done + for cpu_mbps_zones in /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/mbps_zones + do + echo "1611 3221 5859 6445 7104" > $cpu_mbps_zones + done + for cpu_sample_ms in /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/sample_ms + do + echo 4 > $cpu_sample_ms + done + for cpu_up_scale in /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/up_scale + do + echo 250 > $cpu_up_scale + done + for cpu_min_freq in /sys/class/devfreq/soc:qcom,cpubw/min_freq + do + echo 1611 > $cpu_min_freq + done + done + + for gpu_bimc_io_percent in /sys/class/devfreq/soc:qcom,gpubw/bw_hwmon/io_percent + do + echo 40 > $gpu_bimc_io_percent + done + + # disable thermal & BCL core_control to update interactive gov settings + echo 0 > /sys/module/msm_thermal/core_control/enabled + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n disable > $mode + done + for hotplug_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_mask + do + bcl_hotplug_mask=`cat $hotplug_mask` + echo 0 > $hotplug_mask + done + for hotplug_soc_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_soc_mask + do + bcl_soc_hotplug_mask=`cat $hotplug_soc_mask` + echo 0 > $hotplug_soc_mask + done + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n enable > $mode + done + + #if the kernel version >=4.9,use the schedutil governor + if [ $KernelVersionA -ge 4 ] && [ $KernelVersionB -ge 9 ]; then + 8953_sched_dcvs_eas + else + 8953_sched_dcvs_hmp + fi + echo 652800 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + + # Bring up all cores online + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + echo 1 > /sys/devices/system/cpu/cpu4/online + echo 1 > /sys/devices/system/cpu/cpu5/online + echo 1 > /sys/devices/system/cpu/cpu6/online + echo 1 > /sys/devices/system/cpu/cpu7/online + + # Enable low power modes + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + + # re-enable thermal & BCL core_control now + echo 1 > /sys/module/msm_thermal/core_control/enabled + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n disable > $mode + done + for hotplug_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_mask + do + echo $bcl_hotplug_mask > $hotplug_mask + done + for hotplug_soc_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_soc_mask + do + echo $bcl_soc_hotplug_mask > $hotplug_soc_mask + done + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n enable > $mode + done + + # SMP scheduler + echo 85 > /proc/sys/kernel/sched_upmigrate + echo 85 > /proc/sys/kernel/sched_downmigrate + + # Set Memory parameters + configure_memory_parameters + ;; + esac + case "$soc_id" in + "349" | "350") + + # Start Host based Touch processing + case "$hw_platform" in + "MTP" | "Surf" | "RCM" | "QRD" ) + start_hbtp + ;; + esac + + for devfreq_gov in /sys/class/devfreq/qcom,mincpubw*/governor + do + echo "cpufreq" > $devfreq_gov + done + for cpubw in /sys/class/devfreq/*qcom,cpubw* + do + echo "bw_hwmon" > $cpubw/governor + echo 50 > $cpubw/polling_interval + echo "1611 3221 5859 6445 7104" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 34 > $cpubw/bw_hwmon/io_percent + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 80 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/hyst_length + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + done + + # Configure DCC module to capture critical register contents when device crashes + for DCC_PATH in /sys/bus/platform/devices/*.dcc* + do + echo 0 > $DCC_PATH/enable + echo cap > $DCC_PATH/func_type + echo sram > $DCC_PATH/data_sink + echo 1 > $DCC_PATH/config_reset + + # Register specifies APC CPR closed-loop settled voltage for current voltage corner + echo 0xb1d2c18 1 > $DCC_PATH/config + + # Register specifies SW programmed open-loop voltage for current voltage corner + echo 0xb1d2900 1 > $DCC_PATH/config + + # Register specifies APM switch settings and APM FSM state + echo 0xb1112b0 1 > $DCC_PATH/config + + # Register specifies CPR mode change state and also #online cores input to CPR HW + echo 0xb018798 1 > $DCC_PATH/config + + echo 1 > $DCC_PATH/enable + done + + # disable thermal & BCL core_control to update interactive gov settings + echo 0 > /sys/module/msm_thermal/core_control/enabled + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n disable > $mode + done + for hotplug_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_mask + do + bcl_hotplug_mask=`cat $hotplug_mask` + echo 0 > $hotplug_mask + done + for hotplug_soc_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_soc_mask + do + bcl_soc_hotplug_mask=`cat $hotplug_soc_mask` + echo 0 > $hotplug_soc_mask + done + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n enable > $mode + done + + # configure governor settings for little cluster + echo 1 > /sys/devices/system/cpu/cpu0/online + echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us + echo 1363200 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq + #default value for hispeed_load is 90, for sdm632 it should be 85 + echo 85 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_load + # sched_load_boost as -6 is equivalent to target load as 85. + echo -6 > /sys/devices/system/cpu/cpu0/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu1/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu2/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu3/sched_load_boost + + # configure governor settings for big cluster + echo 1 > /sys/devices/system/cpu/cpu4/online + echo "schedutil" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/down_rate_limit_us + echo 1401600 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_freq + #default value for hispeed_load is 90, for sdm632 it should be 85 + echo 85 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_load + # sched_load_boost as -6 is equivalent to target load as 85. + echo -6 > /sys/devices/system/cpu/cpu4/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu5/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu7/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu6/sched_load_boost + + echo 614400 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 633600 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + + # cpuset settings + echo 0-3 > /dev/cpuset/background/cpus + echo 0-3 > /dev/cpuset/system-background/cpus + # choose idle CPU for top app tasks + echo 1 > /dev/stune/top-app/schedtune.prefer_idle + + # re-enable thermal & BCL core_control now + echo 1 > /sys/module/msm_thermal/core_control/enabled + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n disable > $mode + done + for hotplug_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_mask + do + echo $bcl_hotplug_mask > $hotplug_mask + done + for hotplug_soc_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_soc_mask + do + echo $bcl_soc_hotplug_mask > $hotplug_soc_mask + done + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n enable > $mode + done + + # Disable Core control + echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/enable + echo 0 > /sys/devices/system/cpu/cpu4/core_ctl/enable + + # Bring up all cores online + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + echo 1 > /sys/devices/system/cpu/cpu4/online + echo 1 > /sys/devices/system/cpu/cpu5/online + echo 1 > /sys/devices/system/cpu/cpu6/online + echo 1 > /sys/devices/system/cpu/cpu7/online + + # Enable low power modes + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + + # Set Memory parameters + configure_memory_parameters + + # Setting b.L scheduler parameters + echo 76 > /proc/sys/kernel/sched_downmigrate + echo 86 > /proc/sys/kernel/sched_upmigrate + echo 80 > /proc/sys/kernel/sched_group_downmigrate + echo 90 > /proc/sys/kernel/sched_group_upmigrate + echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks + + # Enable min frequency adjustment for big cluster + if [ -f /sys/module/big_cluster_min_freq_adjust/parameters/min_freq_cluster ]; then + echo "4-7" > /sys/module/big_cluster_min_freq_adjust/parameters/min_freq_cluster + fi + echo 1 > /sys/module/big_cluster_min_freq_adjust/parameters/min_freq_adjust + + ;; + esac + ;; +esac + +case "$target" in + "msm8937") + + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + else + hw_platform=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + if [ -f /sys/devices/soc0/platform_subtype_id ]; then + platform_subtype_id=`cat /sys/devices/soc0/platform_subtype_id` + fi + + # Socid 386 = Pukeena + case "$soc_id" in + "303" | "307" | "308" | "309" | "320" | "386" | "436") + + # Start Host based Touch processing + case "$hw_platform" in + "MTP" ) + start_hbtp + ;; + esac + + case "$hw_platform" in + "Surf" | "RCM" ) + if [ $platform_subtype_id -ne "4" ]; then + start_hbtp + fi + ;; + esac + # Apply Scheduler and Governor settings for 8917 / 8920 + + echo 20000000 > /proc/sys/kernel/sched_ravg_window + + #disable sched_boost in 8917 + echo 0 > /proc/sys/kernel/sched_boost + + # core_ctl is not needed for 8917. Disable it. + disable_core_ctl + + for devfreq_gov in /sys/class/devfreq/qcom,mincpubw*/governor + do + echo "cpufreq" > $devfreq_gov + done + + for devfreq_gov in /sys/class/devfreq/soc:qcom,cpubw/governor + do + echo "bw_hwmon" > $devfreq_gov + for cpu_io_percent in /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/io_percent + do + echo 20 > $cpu_io_percent + done + for cpu_guard_band in /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/guard_band_mbps + do + echo 30 > $cpu_guard_band + done + done + + for gpu_bimc_io_percent in /sys/class/devfreq/soc:qcom,gpubw/bw_hwmon/io_percent + do + echo 40 > $gpu_bimc_io_percent + done + + # disable thermal core_control to update interactive gov settings + echo 0 > /sys/module/msm_thermal/core_control/enabled + + if [ $KernelVersionA -ge 4 ] && [ $KernelVersionB -ge 9 ]; then + 8917_sched_dcvs_eas + else + 8917_sched_dcvs_hmp + fi + echo 960000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + # re-enable thermal core_control now + echo 1 > /sys/module/msm_thermal/core_control/enabled + + # Disable L2-GDHS low power modes + echo N > /sys/module/lpm_levels/perf/perf-l2-gdhs/idle_enabled + echo N > /sys/module/lpm_levels/perf/perf-l2-gdhs/suspend_enabled + + # Bring up all cores online + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + + # Enable low power modes + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + + # Set rps mask + echo 2 > /sys/class/net/rmnet0/queues/rx-0/rps_cpus + + # Enable dynamic clock gating + echo 1 > /sys/module/lpm_levels/lpm_workarounds/dynamic_clock_gating + # Enable timer migration to little cluster + echo 1 > /proc/sys/kernel/power_aware_timer_migration + # Set Memory parameters + configure_memory_parameters + ;; + *) + ;; + esac + + case "$soc_id" in + "294" | "295" | "313" ) + + # Start Host based Touch processing + case "$hw_platform" in + "MTP" | "Surf" | "RCM" ) + start_hbtp + ;; + esac + + # Apply Scheduler and Governor settings for 8937/8940 + + # HMP scheduler settings + echo 3 > /proc/sys/kernel/sched_window_stats_policy + echo 3 > /proc/sys/kernel/sched_ravg_hist_size + echo 20000000 > /proc/sys/kernel/sched_ravg_window + + #disable sched_boost in 8937 + echo 0 > /proc/sys/kernel/sched_boost + + for devfreq_gov in /sys/class/devfreq/qcom,mincpubw*/governor + do + echo "cpufreq" > $devfreq_gov + done + + for devfreq_gov in /sys/class/devfreq/soc:qcom,cpubw/governor + do + echo "bw_hwmon" > $devfreq_gov + for cpu_io_percent in /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/io_percent + do + echo 20 > $cpu_io_percent + done + for cpu_guard_band in /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/guard_band_mbps + do + echo 30 > $cpu_guard_band + done + done + + for gpu_bimc_io_percent in /sys/class/devfreq/soc:qcom,gpubw/bw_hwmon/io_percent + do + echo 40 > $gpu_bimc_io_percent + done + + # disable thermal core_control to update interactive gov and core_ctl settings + echo 0 > /sys/module/msm_thermal/core_control/enabled + + if [ $KernelVersionA -ge 4 ] && [ $KernelVersionB -ge 9 ]; then + 8937_sched_dcvs_eas + else + 8937_sched_dcvs_hmp + fi + echo 960000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 768000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + # Disable L2-GDHS low power modes + echo N > /sys/module/lpm_levels/system/pwr/pwr-l2-gdhs/idle_enabled + echo N > /sys/module/lpm_levels/system/pwr/pwr-l2-gdhs/suspend_enabled + echo N > /sys/module/lpm_levels/system/perf/perf-l2-gdhs/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/perf-l2-gdhs/suspend_enabled + + # Bring up all cores online + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + echo 1 > /sys/devices/system/cpu/cpu4/online + echo 1 > /sys/devices/system/cpu/cpu5/online + echo 1 > /sys/devices/system/cpu/cpu6/online + echo 1 > /sys/devices/system/cpu/cpu7/online + + # Enable low power modes + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + + # HMP scheduler (big.Little cluster related) settings + echo 93 > /proc/sys/kernel/sched_upmigrate + echo 83 > /proc/sys/kernel/sched_downmigrate + + # Enable core control + echo 2 > /sys/devices/system/cpu/cpu0/core_ctl/min_cpus + echo 4 > /sys/devices/system/cpu/cpu0/core_ctl/max_cpus + echo 68 > /sys/devices/system/cpu/cpu0/core_ctl/busy_up_thres + echo 40 > /sys/devices/system/cpu/cpu0/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu0/core_ctl/offline_delay_ms + echo 1 > /sys/devices/system/cpu/cpu0/core_ctl/is_big_cluster + + # re-enable thermal core_control + echo 1 > /sys/module/msm_thermal/core_control/enabled + + # Enable dynamic clock gating + echo 1 > /sys/module/lpm_levels/lpm_workarounds/dynamic_clock_gating + # Enable timer migration to little cluster + echo 1 > /proc/sys/kernel/power_aware_timer_migration + # Set Memory parameters + configure_memory_parameters + ;; + *) + + ;; + esac + + case "$soc_id" in + "354" | "364" | "353" | "363" ) + + # Start Host based Touch processing + case "$hw_platform" in + "MTP" | "Surf" | "RCM" | "QRD" ) + start_hbtp + ;; + esac + + # Apply settings for sdm429/sda429/sdm439/sda439 + + for cpubw in /sys/class/devfreq/*qcom,mincpubw* + do + echo "cpufreq" > $cpubw/governor + done + + for cpubw in /sys/class/devfreq/*qcom,cpubw* + do + echo "bw_hwmon" > $cpubw/governor + echo 20 > $cpubw/bw_hwmon/io_percent + echo 30 > $cpubw/bw_hwmon/guard_band_mbps + done + + for gpu_bimc_io_percent in /sys/class/devfreq/soc:qcom,gpubw/bw_hwmon/io_percent + do + echo 40 > $gpu_bimc_io_percent + done + + case "$soc_id" in + "353" | "363" ) + # Apply settings for sdm439/sda439 + # configure schedutil governor settings + # enable governor for perf cluster + echo 1 > /sys/devices/system/cpu/cpu0/online + echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us + + #set the hispeed_freq + echo 1497600 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq + echo 80 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_load + echo 960000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + # sched_load_boost as -6 is equivalent to target load as 85. + echo -6 > /sys/devices/system/cpu/cpu0/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu1/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu2/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu3/sched_load_boost + + ## enable governor for power cluster + echo 1 > /sys/devices/system/cpu/cpu4/online + echo "schedutil" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/down_rate_limit_us + + #set the hispeed_freq + echo 998400 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_freq + echo 85 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_load + echo 768000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + # sched_load_boost as -6 is equivalent to target load as 85. + echo -6 > /sys/devices/system/cpu/cpu4/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu5/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu6/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu7/sched_load_boost + + # EAS scheduler (big.Little cluster related) settings + echo 93 > /proc/sys/kernel/sched_upmigrate + echo 83 > /proc/sys/kernel/sched_downmigrate + echo 140 > /proc/sys/kernel/sched_group_upmigrate + echo 120 > /proc/sys/kernel/sched_group_downmigrate + + # cpuset settings + #echo 0-3 > /dev/cpuset/background/cpus + #echo 0-3 > /dev/cpuset/system-background/cpus + + # Bring up all cores online + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + echo 1 > /sys/devices/system/cpu/cpu4/online + echo 1 > /sys/devices/system/cpu/cpu5/online + echo 1 > /sys/devices/system/cpu/cpu6/online + echo 1 > /sys/devices/system/cpu/cpu7/online + + # Enable core control + echo 2 > /sys/devices/system/cpu/cpu0/core_ctl/min_cpus + echo 4 > /sys/devices/system/cpu/cpu0/core_ctl/max_cpus + echo 68 > /sys/devices/system/cpu/cpu0/core_ctl/busy_up_thres + echo 40 > /sys/devices/system/cpu/cpu0/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu0/core_ctl/offline_delay_ms + echo 1 > /sys/devices/system/cpu/cpu0/core_ctl/is_big_cluster + echo 4 > /sys/devices/system/cpu/cpu0/core_ctl/task_thres + + # Big cluster min frequency adjust settings + if [ -f /sys/module/big_cluster_min_freq_adjust/parameters/min_freq_cluster ]; then + echo "0-3" > /sys/module/big_cluster_min_freq_adjust/parameters/min_freq_cluster + fi + echo 1305600 > /sys/module/big_cluster_min_freq_adjust/parameters/min_freq_floor + ;; + *) + # Apply settings for sdm429/sda429 + # configure schedutil governor settings + echo 1 > /sys/devices/system/cpu/cpu0/online + echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us + + #set the hispeed_freq + echo 1305600 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq + echo 80 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_load + echo 960000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + # sched_load_boost as -6 is equivalent to target load as 85. + echo -6 > /sys/devices/system/cpu/cpu0/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu1/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu2/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu3/sched_load_boost + + # Bring up all cores online + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + ;; + esac + + # Set Memory parameters + configure_memory_parameters + + #disable sched_boost + echo 0 > /proc/sys/kernel/sched_boost + + # Disable L2-GDHS low power modes + echo N > /sys/module/lpm_levels/system/pwr/pwr-l2-gdhs/idle_enabled + echo N > /sys/module/lpm_levels/system/pwr/pwr-l2-gdhs/suspend_enabled + echo N > /sys/module/lpm_levels/system/perf/perf-l2-gdhs/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/perf-l2-gdhs/suspend_enabled + + # Enable low power modes + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + + case "$soc_id" in + "353" | "363" ) + echo 1 > /sys/module/big_cluster_min_freq_adjust/parameters/min_freq_adjust + ;; + esac + ;; + esac + + case "$soc_id" in + "386" | "436") + + # Start Host based Touch processing + case "$hw_platform" in + "QRD" ) + start_hbtp + ;; + esac + ;; + esac + ;; +esac + +case "$target" in + "sdm660") + + # Set the default IRQ affinity to the primary cluster. When a + # CPU is isolated/hotplugged, the IRQ affinity is adjusted + # to one of the CPU from the default IRQ affinity mask. + echo f > /proc/irq/default_smp_affinity + + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + else + hw_platform=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + + panel=`cat /sys/class/graphics/fb0/modes` + if [ "${panel:5:1}" == "x" ]; then + panel=${panel:2:3} + else + panel=${panel:2:4} + fi + + if [ $KernelVersionA -ge 4 ] && [ $KernelVersionB -le 14 ]; then + if [ $panel -gt 1080 ]; then + echo 2 > /proc/sys/kernel/sched_window_stats_policy + echo 5 > /proc/sys/kernel/sched_ravg_hist_size + else + echo 3 > /proc/sys/kernel/sched_window_stats_policy + echo 3 > /proc/sys/kernel/sched_ravg_hist_size + fi + fi + #Apply settings for sdm660, sdm636,sda636 + case "$soc_id" in + "317" | "324" | "325" | "326" | "345" | "346" ) + + echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu4/core_ctl/busy_up_thres + echo 30 > /sys/devices/system/cpu/cpu4/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu4/core_ctl/offline_delay_ms + echo 1 > /sys/devices/system/cpu/cpu4/core_ctl/is_big_cluster + echo 4 > /sys/devices/system/cpu/cpu4/core_ctl/task_thres + + # Setting b.L scheduler parameters + echo 96 > /proc/sys/kernel/sched_upmigrate + echo 90 > /proc/sys/kernel/sched_downmigrate + echo 140 > /proc/sys/kernel/sched_group_upmigrate + echo 120 > /proc/sys/kernel/sched_group_downmigrate + + # cpuset settings + echo 0-3 > /dev/cpuset/background/cpus + echo 0-3 > /dev/cpuset/system-background/cpus + + #if the kernel version >=4.14,use the schedutil governor + if [ $KernelVersionA -ge 4 ] && [ $KernelVersionB -ge 14 ]; then + sdm660_sched_schedutil_dcvs + else + sdm660_sched_interactive_dcvs + fi + + # Set Memory parameters + configure_memory_parameters + + # enable LPM + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + + # Start cdsprpcd only for sdm660 and disable for sdm630 + start vendor.cdsprpcd + + # Start Host based Touch processing + case "$hw_platform" in + "MTP" | "Surf" | "RCM" | "QRD" ) + start_hbtp + ;; + esac + ;; + esac + #Apply settings for sdm630 and Tahaa + case "$soc_id" in + "318" | "327" | "385" ) + + # Start Host based Touch processing + case "$hw_platform" in + "MTP" | "Surf" | "RCM" | "QRD" ) + start_hbtp + ;; + esac + + # Setting b.L scheduler parameters + echo 85 > /proc/sys/kernel/sched_upmigrate + echo 85 > /proc/sys/kernel/sched_downmigrate + echo 900 > /proc/sys/kernel/sched_group_upmigrate + echo 900 > /proc/sys/kernel/sched_group_downmigrate + echo 0 > /proc/sys/kernel/sched_select_prev_cpu_us + echo 400000 > /proc/sys/kernel/sched_freq_inc_notify + echo 400000 > /proc/sys/kernel/sched_freq_dec_notify + echo 3 > /proc/sys/kernel/sched_spill_nr_run + + #init task load, restrict wakeups to preferred cluster + echo 15 > /proc/sys/kernel/sched_init_task_load + echo 1 > /proc/sys/kernel/sched_restrict_cluster_spill + echo 50000 > /proc/sys/kernel/sched_short_burst_ns + + # cpuset settings + echo 0-3 > /dev/cpuset/background/cpus + echo 0-3 > /dev/cpuset/system-background/cpus + + # disable thermal bcl hotplug to switch governor + echo 0 > /sys/module/msm_thermal/core_control/enabled + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n disable > $mode + done + for hotplug_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_mask + do + bcl_hotplug_mask=`cat $hotplug_mask` + echo 0 > $hotplug_mask + done + for hotplug_soc_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_soc_mask + do + bcl_soc_hotplug_mask=`cat $hotplug_soc_mask` + echo 0 > $hotplug_soc_mask + done + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n enable > $mode + done + + # online CPU0 + echo 1 > /sys/devices/system/cpu/cpu0/online + # configure governor settings for Big cluster(CPU0 to CPU3) + echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_migration_notif + echo "19000 1344000:39000" > /sys/devices/system/cpu/cpu0/cpufreq/interactive/above_hispeed_delay + echo 85 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/timer_rate + echo 1344000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/io_is_busy + echo "85 1344000:80" > /sys/devices/system/cpu/cpu0/cpufreq/interactive/target_loads + echo 39000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/min_sample_time + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/max_freq_hysteresis + echo 787200 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/ignore_hispeed_on_notif + + # online CPU4 + echo 1 > /sys/devices/system/cpu/cpu4/online + # configure governor settings for Little cluster(CPU4 to CPU7) + echo "interactive" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/use_migration_notif + echo "19000 1094400:39000" > /sys/devices/system/cpu/cpu4/cpufreq/interactive/above_hispeed_delay + echo 85 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/timer_rate + echo 1094400 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/io_is_busy + echo "85 1094400:80" > /sys/devices/system/cpu/cpu4/cpufreq/interactive/target_loads + echo 39000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/min_sample_time + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/max_freq_hysteresis + echo 614400 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/ignore_hispeed_on_notif + + # bring all cores online + echo 1 > /sys/devices/system/cpu/cpu0/online + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + echo 1 > /sys/devices/system/cpu/cpu4/online + echo 1 > /sys/devices/system/cpu/cpu5/online + echo 1 > /sys/devices/system/cpu/cpu6/online + echo 1 > /sys/devices/system/cpu/cpu7/online + + # configure LPM + echo N > /sys/module/lpm_levels/system/perf/cpu0/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/cpu1/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/cpu2/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/cpu3/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/pwr/cpu4/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/pwr/cpu5/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/pwr/cpu6/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/pwr/cpu7/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/pwr/pwr-l2-dynret/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/perf-l2-dynret/idle_enabled + # enable LPM + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + + # re-enable thermal and BCL hotplug + echo 1 > /sys/module/msm_thermal/core_control/enabled + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n disable > $mode + done + for hotplug_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_mask + do + echo $bcl_hotplug_mask > $hotplug_mask + done + for hotplug_soc_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_soc_mask + do + echo $bcl_soc_hotplug_mask > $hotplug_soc_mask + done + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n enable > $mode + done + + # Set Memory parameters + configure_memory_parameters + + # Enable bus-dcvs + for cpubw in /sys/class/devfreq/*qcom,cpubw* + do + echo "bw_hwmon" > $cpubw/governor + echo 50 > $cpubw/polling_interval + echo 762 > $cpubw/min_freq + echo "1525 3143 4173 5195 5859 7759 9887 10327" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 85 > $cpubw/bw_hwmon/io_percent + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 0 > $cpubw/bw_hwmon/hyst_length + echo 100 > $cpubw/bw_hwmon/decay_rate + echo 50 > $cpubw/bw_hwmon/bw_step + echo 80 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/low_power_ceil_mbps + echo 50 > $cpubw/bw_hwmon/low_power_io_percent + echo 20 > $cpubw/bw_hwmon/low_power_delay + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + done + + for memlat in /sys/class/devfreq/*qcom,memlat-cpu* + do + echo "mem_latency" > $memlat/governor + echo 10 > $memlat/polling_interval + echo 400 > $memlat/mem_latency/ratio_ceil + done + + echo "cpufreq" > /sys/class/devfreq/soc:qcom,mincpubw/governor + ;; + esac + ;; +esac + +case "$target" in + "sdm710") + + #Apply settings for sdm710 + # Set the default IRQ affinity to the silver cluster. When a + # CPU is isolated/hotplugged, the IRQ affinity is adjusted + # to one of the CPU from the default IRQ affinity mask. + echo 3f > /proc/irq/default_smp_affinity + + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + else + hw_platform=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + + case "$soc_id" in + "336" | "337" | "347" | "360" | "393" ) + + # Start Host based Touch processing + case "$hw_platform" in + "MTP" | "Surf" | "RCM" | "QRD" ) + start_hbtp + ;; + esac + + # Core control parameters on silver + echo 0 0 0 0 1 1 > /sys/devices/system/cpu/cpu0/core_ctl/not_preferred + echo 4 > /sys/devices/system/cpu/cpu0/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu0/core_ctl/busy_up_thres + echo 40 > /sys/devices/system/cpu/cpu0/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu0/core_ctl/offline_delay_ms + echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/is_big_cluster + echo 8 > /sys/devices/system/cpu/cpu0/core_ctl/task_thres + + # Setting b.L scheduler parameters + echo 96 > /proc/sys/kernel/sched_upmigrate + echo 90 > /proc/sys/kernel/sched_downmigrate + echo 140 > /proc/sys/kernel/sched_group_upmigrate + echo 120 > /proc/sys/kernel/sched_group_downmigrate + echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks + + # configure governor settings for little cluster + echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/rate_limit_us + echo 1209600 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq + echo 576000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + + # configure governor settings for big cluster + echo "schedutil" > /sys/devices/system/cpu/cpu6/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/rate_limit_us + echo 1344000 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/hispeed_freq + echo 652800 > /sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq + + # sched_load_boost as -6 is equivalent to target load as 85. It is per cpu tunable. + echo -6 > /sys/devices/system/cpu/cpu6/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu7/sched_load_boost + echo 85 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/hispeed_load + + echo "0:1209600" > /sys/module/cpu_boost/parameters/input_boost_freq + echo 40 > /sys/module/cpu_boost/parameters/input_boost_ms + + # Set Memory parameters + configure_memory_parameters + + # Enable bus-dcvs + for cpubw in /sys/class/devfreq/*qcom,cpubw* + do + echo "bw_hwmon" > $cpubw/governor + echo 50 > $cpubw/polling_interval + echo "1144 1720 2086 2929 3879 5931 6881" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 68 > $cpubw/bw_hwmon/io_percent + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 0 > $cpubw/bw_hwmon/hyst_length + echo 80 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + done + + #Enable mem_latency governor for DDR scaling + for memlat in /sys/class/devfreq/*qcom,memlat-cpu* + do + echo "mem_latency" > $memlat/governor + echo 10 > $memlat/polling_interval + echo 400 > $memlat/mem_latency/ratio_ceil + done + + #Enable mem_latency governor for L3 scaling + for memlat in /sys/class/devfreq/*qcom,l3-cpu* + do + echo "mem_latency" > $memlat/governor + echo 10 > $memlat/polling_interval + echo 400 > $memlat/mem_latency/ratio_ceil + done + + #Enable userspace governor for L3 cdsp nodes + for l3cdsp in /sys/class/devfreq/*qcom,l3-cdsp* + do + echo "userspace" > $l3cdsp/governor + chown -h system $l3cdsp/userspace/set_freq + done + + echo "cpufreq" > /sys/class/devfreq/soc:qcom,mincpubw/governor + + # Disable CPU Retention + echo N > /sys/module/lpm_levels/L3/cpu0/ret/idle_enabled + echo N > /sys/module/lpm_levels/L3/cpu1/ret/idle_enabled + echo N > /sys/module/lpm_levels/L3/cpu2/ret/idle_enabled + echo N > /sys/module/lpm_levels/L3/cpu3/ret/idle_enabled + echo N > /sys/module/lpm_levels/L3/cpu4/ret/idle_enabled + echo N > /sys/module/lpm_levels/L3/cpu5/ret/idle_enabled + echo N > /sys/module/lpm_levels/L3/cpu6/ret/idle_enabled + echo N > /sys/module/lpm_levels/L3/cpu7/ret/idle_enabled + + # cpuset parameters + echo 0-5 > /dev/cpuset/background/cpus + echo 0-5 > /dev/cpuset/system-background/cpus + + # Turn off scheduler boost at the end + echo 0 > /proc/sys/kernel/sched_boost + + # Turn on sleep modes. + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + ;; + esac + ;; +esac + +case "$target" in + "trinket") + + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + case "$soc_id" in + "394" ) + + # Core control parameters on big + echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus + echo 40 > /sys/devices/system/cpu/cpu4/core_ctl/busy_down_thres + echo 60 > /sys/devices/system/cpu/cpu4/core_ctl/busy_up_thres + echo 100 > /sys/devices/system/cpu/cpu4/core_ctl/offline_delay_ms + echo 1 > /sys/devices/system/cpu/cpu4/core_ctl/is_big_cluster + echo 4 > /sys/devices/system/cpu/cpu4/core_ctl/task_thres + + # Setting b.L scheduler parameters + echo 67 > /proc/sys/kernel/sched_downmigrate + echo 77 > /proc/sys/kernel/sched_upmigrate + echo 85 > /proc/sys/kernel/sched_group_downmigrate + echo 100 > /proc/sys/kernel/sched_group_upmigrate + + # cpuset settings + echo 0-3 > /dev/cpuset/background/cpus + echo 0-3 > /dev/cpuset/system-background/cpus + + + # configure governor settings for little cluster + echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us + echo 1305600 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq + echo 614400 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + + # configure governor settings for big cluster + echo "schedutil" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us + echo 1401600 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_freq + echo 1056000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + + echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks + + # sched_load_boost as -6 is equivalent to target load as 85. It is per cpu tunable. + echo -6 > /sys/devices/system/cpu/cpu0/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu1/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu2/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu3/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu4/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu5/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu6/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu7/sched_load_boost + echo 85 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_load + echo 85 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_load + + # Set Memory parameters + configure_memory_parameters + + # Enable bus-dcvs + ddr_type=`od -An -tx /proc/device-tree/memory/ddr_device_type` + ddr_type4="07" + ddr_type3="05" + + for device in /sys/devices/platform/soc + do + for cpubw in $device/*cpu-cpu-ddr-bw/devfreq/*cpu-cpu-ddr-bw + do + echo "bw_hwmon" > $cpubw/governor + echo 762 > $cpubw/min_freq + if [ ${ddr_type:4:2} == $ddr_type4 ]; then + # LPDDR4 + echo "2288 3440 4173 5195 5859 7759 10322 11863 13763" > $cpubw/bw_hwmon/mbps_zones + echo 85 > $cpubw/bw_hwmon/io_percent + fi + if [ ${ddr_type:4:2} == $ddr_type3 ]; then + # LPDDR3 + echo "1525 3440 5195 5859 7102" > $cpubw/bw_hwmon/mbps_zones + echo 34 > $cpubw/bw_hwmon/io_percent + fi + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 90 > $cpubw/bw_hwmon/decay_rate + echo 190 > $cpubw/bw_hwmon/bw_step + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 0 > $cpubw/bw_hwmon/hyst_length + echo 80 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + echo 50 > $cpubw/polling_interval + done + + done + + # memlat specific settings are moved to seperate file under + # device/target specific folder + setprop vendor.dcvs.prop 1 + + # colcoation v3 disabled + echo 0 > /proc/sys/kernel/sched_min_task_util_for_boost + echo 0 > /proc/sys/kernel/sched_min_task_util_for_colocation + echo 0 > /proc/sys/kernel/sched_little_cluster_coloc_fmin_khz + + # Turn off scheduler boost at the end + echo 0 > /proc/sys/kernel/sched_boost + + # Turn on sleep modes. + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + + ;; + esac + ;; +esac + +case "$target" in + "sm6150") + + #Apply settings for sm6150 + # Set the default IRQ affinity to the silver cluster. When a + # CPU is isolated/hotplugged, the IRQ affinity is adjusted + # to one of the CPU from the default IRQ affinity mask. + echo 3f > /proc/irq/default_smp_affinity + + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + case "$soc_id" in + "355" | "369" | "377" | "380" | "384" ) + target_type=`getprop ro.hardware.type` + if [ "$target_type" == "automotive" ]; then + # update frequencies + configure_sku_parameters + sku_identified=`getprop vendor.sku_identified` + else + sku_identified=0 + fi + + # Core control parameters on silver + echo 0 0 0 0 1 1 > /sys/devices/system/cpu/cpu0/core_ctl/not_preferred + echo 4 > /sys/devices/system/cpu/cpu0/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu0/core_ctl/busy_up_thres + echo 40 > /sys/devices/system/cpu/cpu0/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu0/core_ctl/offline_delay_ms + echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/is_big_cluster + echo 8 > /sys/devices/system/cpu/cpu0/core_ctl/task_thres + echo 0 > /sys/devices/system/cpu/cpu6/core_ctl/enable + + + # Setting b.L scheduler parameters + # default sched up and down migrate values are 90 and 85 + echo 65 > /proc/sys/kernel/sched_downmigrate + echo 71 > /proc/sys/kernel/sched_upmigrate + # default sched up and down migrate values are 100 and 95 + echo 85 > /proc/sys/kernel/sched_group_downmigrate + echo 100 > /proc/sys/kernel/sched_group_upmigrate + echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks + + # colocation v3 settings + echo 740000 > /proc/sys/kernel/sched_little_cluster_coloc_fmin_khz + + + # configure governor settings for little cluster + echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us + echo 1209600 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq + if [ $sku_identified != 1 ]; then + echo 576000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + fi + + # configure governor settings for big cluster + echo "schedutil" > /sys/devices/system/cpu/cpu6/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/down_rate_limit_us + echo 1209600 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/hispeed_freq + if [ $sku_identified != 1 ]; then + echo 768000 > /sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq + fi + + # sched_load_boost as -6 is equivalent to target load as 85. It is per cpu tunable. + echo -6 > /sys/devices/system/cpu/cpu6/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu7/sched_load_boost + echo 85 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/hispeed_load + + echo "0:1209600" > /sys/module/cpu_boost/parameters/input_boost_freq + echo 40 > /sys/module/cpu_boost/parameters/input_boost_ms + + # Set Memory parameters + configure_memory_parameters + + # Enable bus-dcvs + for device in /sys/devices/platform/soc + do + for cpubw in $device/*cpu-cpu-llcc-bw/devfreq/*cpu-cpu-llcc-bw + do + echo "bw_hwmon" > $cpubw/governor + echo "2288 4577 7110 9155 12298 14236" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 68 > $cpubw/bw_hwmon/io_percent + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 0 > $cpubw/bw_hwmon/hyst_length + echo 80 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + echo 50 > $cpubw/polling_interval + done + + for llccbw in $device/*cpu-llcc-ddr-bw/devfreq/*cpu-llcc-ddr-bw + do + echo "bw_hwmon" > $llccbw/governor + echo "1144 1720 2086 2929 3879 5931 6881" > $llccbw/bw_hwmon/mbps_zones + echo 4 > $llccbw/bw_hwmon/sample_ms + echo 68 > $llccbw/bw_hwmon/io_percent + echo 20 > $llccbw/bw_hwmon/hist_memory + echo 0 > $llccbw/bw_hwmon/hyst_length + echo 80 > $llccbw/bw_hwmon/down_thres + echo 0 > $llccbw/bw_hwmon/guard_band_mbps + echo 250 > $llccbw/bw_hwmon/up_scale + echo 1600 > $llccbw/bw_hwmon/idle_mbps + echo 40 > $llccbw/polling_interval + done + done + + # memlat specific settings are moved to seperate file under + # device/target specific folder + setprop vendor.dcvs.prop 1 + + # cpuset parameters + echo 0-5 > /dev/cpuset/background/cpus + echo 0-5 > /dev/cpuset/system-background/cpus + + # Turn off scheduler boost at the end + echo 0 > /proc/sys/kernel/sched_boost + + # Turn on sleep modes. + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + ;; + esac + + #Apply settings for moorea + case "$soc_id" in + "365" | "366" ) + + # Core control parameters on silver + echo 0 0 0 0 1 1 > /sys/devices/system/cpu/cpu0/core_ctl/not_preferred + echo 4 > /sys/devices/system/cpu/cpu0/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu0/core_ctl/busy_up_thres + echo 40 > /sys/devices/system/cpu/cpu0/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu0/core_ctl/offline_delay_ms + echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/is_big_cluster + echo 8 > /sys/devices/system/cpu/cpu0/core_ctl/task_thres + echo 0 > /sys/devices/system/cpu/cpu6/core_ctl/enable + + # Setting b.L scheduler parameters + # default sched up and down migrate values are 71 and 65 + echo 65 > /proc/sys/kernel/sched_downmigrate + echo 71 > /proc/sys/kernel/sched_upmigrate + # default sched up and down migrate values are 100 and 95 + echo 85 > /proc/sys/kernel/sched_group_downmigrate + echo 100 > /proc/sys/kernel/sched_group_upmigrate + echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks + + #colocation v3 settings + echo 740000 > /proc/sys/kernel/sched_little_cluster_coloc_fmin_khz + + # configure governor settings for little cluster + echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us + echo 1248000 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq + echo 576000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + + # configure governor settings for big cluster + echo "schedutil" > /sys/devices/system/cpu/cpu6/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/down_rate_limit_us + echo 1324600 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/hispeed_freq + echo 652800 > /sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq + + # sched_load_boost as -6 is equivalent to target load as 85. It is per cpu tunable. + echo -6 > /sys/devices/system/cpu/cpu6/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu7/sched_load_boost + echo 85 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/hispeed_load + + echo "0:1248000" > /sys/module/cpu_boost/parameters/input_boost_freq + echo 40 > /sys/module/cpu_boost/parameters/input_boost_ms + + # Set Memory parameters + configure_memory_parameters + + # Enable bus-dcvs + for device in /sys/devices/platform/soc + do + for cpubw in $device/*cpu-cpu-llcc-bw/devfreq/*cpu-cpu-llcc-bw + do + echo "bw_hwmon" > $cpubw/governor + echo "2288 4577 7110 9155 12298 14236" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 68 > $cpubw/bw_hwmon/io_percent + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 0 > $cpubw/bw_hwmon/hyst_length + echo 80 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + echo 50 > $cpubw/polling_interval + done + + for llccbw in $device/*cpu-llcc-ddr-bw/devfreq/*cpu-llcc-ddr-bw + do + echo "bw_hwmon" > $llccbw/governor + echo "1144 1720 2086 2929 3879 5931 6881" > $llccbw/bw_hwmon/mbps_zones + echo 4 > $llccbw/bw_hwmon/sample_ms + echo 68 > $llccbw/bw_hwmon/io_percent + echo 20 > $llccbw/bw_hwmon/hist_memory + echo 0 > $llccbw/bw_hwmon/hyst_length + echo 80 > $llccbw/bw_hwmon/down_thres + echo 0 > $llccbw/bw_hwmon/guard_band_mbps + echo 250 > $llccbw/bw_hwmon/up_scale + echo 1600 > $llccbw/bw_hwmon/idle_mbps + echo 40 > $llccbw/polling_interval + done + + for npubw in $device/*npu-npu-ddr-bw/devfreq/*npu-npu-ddr-bw + do + echo 1 > /sys/devices/virtual/npu/msm_npu/pwr + echo "bw_hwmon" > $npubw/governor + echo "1144 1720 2086 2929 3879 5931 6881" > $npubw/bw_hwmon/mbps_zones + echo 4 > $npubw/bw_hwmon/sample_ms + echo 80 > $npubw/bw_hwmon/io_percent + echo 20 > $npubw/bw_hwmon/hist_memory + echo 10 > $npubw/bw_hwmon/hyst_length + echo 30 > $npubw/bw_hwmon/down_thres + echo 0 > $npubw/bw_hwmon/guard_band_mbps + echo 250 > $npubw/bw_hwmon/up_scale + echo 0 > $npubw/bw_hwmon/idle_mbps + echo 40 > $npubw/polling_interval + echo 0 > /sys/devices/virtual/npu/msm_npu/pwr + done + done + + # memlat specific settings are moved to seperate file under + # device/target specific folder + setprop vendor.dcvs.prop 1 + + # cpuset parameters + echo 0-5 > /dev/cpuset/background/cpus + echo 0-5 > /dev/cpuset/system-background/cpus + + # Turn off scheduler boost at the end + echo 0 > /proc/sys/kernel/sched_boost + + # Turn on sleep modes. + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + ;; + esac + + ;; +esac + + +case "$target" in + "lito") + + #Apply settings for lito + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + fi + + case "$soc_id" in + "400" | "440" | "476" ) + # Core control parameters on silver + echo 0 0 0 0 1 1 > /sys/devices/system/cpu/cpu0/core_ctl/not_preferred + echo 4 > /sys/devices/system/cpu/cpu0/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu0/core_ctl/busy_up_thres + echo 40 > /sys/devices/system/cpu/cpu0/core_ctl/busy_down_thres + echo 8 > /sys/devices/system/cpu/cpu0/core_ctl/task_thres + echo 100 > /sys/devices/system/cpu/cpu0/core_ctl/offline_delay_ms + + # Disable Core control on gold, prime + echo 0 > /sys/devices/system/cpu/cpu6/core_ctl/enable + echo 0 > /sys/devices/system/cpu/cpu7/core_ctl/enable + + # Setting b.L scheduler parameters + echo 65 85 > /proc/sys/kernel/sched_downmigrate + echo 71 95 > /proc/sys/kernel/sched_upmigrate + echo 85 > /proc/sys/kernel/sched_group_downmigrate + echo 100 > /proc/sys/kernel/sched_group_upmigrate + echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks + echo 0 > /proc/sys/kernel/sched_coloc_busy_hyst_ns + echo 0 > /proc/sys/kernel/sched_coloc_busy_hysteresis_enable_cpus + echo 0 > /proc/sys/kernel/sched_coloc_busy_hyst_max_ms + + # disable unfiltering + echo 20000000 > /proc/sys/kernel/sched_task_unfilter_period + echo 1 > /proc/sys/kernel/sched_task_unfilter_nr_windows + + # configure governor settings for silver cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/down_rate_limit_us + echo 1228800 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/pl + echo 576000 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq + echo 650000 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/rtg_boost_freq + + # configure governor settings for gold cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy6/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy6/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy6/schedutil/down_rate_limit_us + echo 1228800 > /sys/devices/system/cpu/cpufreq/policy6/schedutil/hispeed_freq + echo 85 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/hispeed_load + echo -6 > /sys/devices/system/cpu/cpu6/sched_load_boost + echo 0 > /sys/devices/system/cpu/cpufreq/policy6/schedutil/pl + echo 672000 > /sys/devices/system/cpu/cpufreq/policy6/scaling_min_freq + echo 0 > /sys/devices/system/cpu/cpufreq/policy6/schedutil/rtg_boost_freq + + # configure governor settings for gold+ cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy7/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/down_rate_limit_us + echo 1228800 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/hispeed_freq + echo 85 > /sys/devices/system/cpu/cpu7/cpufreq/schedutil/hispeed_load + echo -6 > /sys/devices/system/cpu/cpu7/sched_load_boost + echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/pl + echo 672000 > /sys/devices/system/cpu/cpufreq/policy7/scaling_min_freq + echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/rtg_boost_freq + + # colocation v3 settings + echo 51 > /proc/sys/kernel/sched_min_task_util_for_boost + echo 35 > /proc/sys/kernel/sched_min_task_util_for_colocation + + # Enable conservative pl + echo 1 > /proc/sys/kernel/sched_conservative_pl + + echo "0:1228800" > /sys/devices/system/cpu/cpu_boost/input_boost_freq + echo 120 > /sys/devices/system/cpu/cpu_boost/input_boost_ms + + # Set Memory parameters + configure_memory_parameters + + if [ `cat /sys/devices/soc0/revision` == "2.0" ]; then + # r2.0 related changes + echo "0:1075200" > /sys/devices/system/cpu/cpu_boost/input_boost_freq + echo 610000 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/rtg_boost_freq + echo 1075200 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/hispeed_freq + echo 1152000 > /sys/devices/system/cpu/cpufreq/policy6/schedutil/hispeed_freq + echo 1401600 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/hispeed_freq + echo 614400 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq + echo 652800 > /sys/devices/system/cpu/cpufreq/policy6/scaling_min_freq + echo 806400 > /sys/devices/system/cpu/cpufreq/policy7/scaling_min_freq + echo 83 > /proc/sys/kernel/sched_asym_cap_sibling_freq_match_pct + fi + + # Enable bus-dcvs + for device in /sys/devices/platform/soc + do + for cpubw in $device/*cpu-cpu-llcc-bw/devfreq/*cpu-cpu-llcc-bw + do + echo "bw_hwmon" > $cpubw/governor + echo "2288 4577 7110 9155 12298 14236 16265" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 68 > $cpubw/bw_hwmon/io_percent + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 0 > $cpubw/bw_hwmon/hyst_length + echo 80 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + echo 50 > $cpubw/polling_interval + done + + for llccbw in $device/*cpu-llcc-ddr-bw/devfreq/*cpu-llcc-ddr-bw + do + echo "bw_hwmon" > $llccbw/governor + echo "1144 1720 2086 2929 3879 5931 6881 7980" > $llccbw/bw_hwmon/mbps_zones + echo 4 > $llccbw/bw_hwmon/sample_ms + echo 68 > $llccbw/bw_hwmon/io_percent + echo 20 > $llccbw/bw_hwmon/hist_memory + echo 0 > $llccbw/bw_hwmon/hyst_length + echo 80 > $llccbw/bw_hwmon/down_thres + echo 0 > $llccbw/bw_hwmon/guard_band_mbps + echo 250 > $llccbw/bw_hwmon/up_scale + echo 1600 > $llccbw/bw_hwmon/idle_mbps + echo 50 > $llccbw/polling_interval + done + + for npubw in $device/*npu*-ddr-bw/devfreq/*npu*-ddr-bw + do + echo 1 > /sys/devices/virtual/npu/msm_npu/pwr + echo "bw_hwmon" > $npubw/governor + echo "1144 1720 2086 2929 3879 5931 6881 7980" > $npubw/bw_hwmon/mbps_zones + echo 4 > $npubw/bw_hwmon/sample_ms + echo 80 > $npubw/bw_hwmon/io_percent + echo 20 > $npubw/bw_hwmon/hist_memory + echo 10 > $npubw/bw_hwmon/hyst_length + echo 30 > $npubw/bw_hwmon/down_thres + echo 0 > $npubw/bw_hwmon/guard_band_mbps + echo 250 > $npubw/bw_hwmon/up_scale + echo 0 > $npubw/bw_hwmon/idle_mbps + echo 40 > $npubw/polling_interval + echo 0 > /sys/devices/virtual/npu/msm_npu/pwr + done + + for npullccbw in $device/*npu*-llcc-bw/devfreq/*npu*-llcc-bw + do + echo 1 > /sys/devices/virtual/npu/msm_npu/pwr + echo "bw_hwmon" > $npullccbw/governor + echo "2288 4577 7110 9155 12298 14236 16265" > $npullccbw/bw_hwmon/mbps_zones + echo 4 > $npullccbw/bw_hwmon/sample_ms + echo 100 > $npullccbw/bw_hwmon/io_percent + echo 20 > $npullccbw/bw_hwmon/hist_memory + echo 10 > $npullccbw/bw_hwmon/hyst_length + echo 30 > $npullccbw/bw_hwmon/down_thres + echo 0 > $npullccbw/bw_hwmon/guard_band_mbps + echo 250 > $npullccbw/bw_hwmon/up_scale + echo 40 > $npullccbw/polling_interval + echo 0 > /sys/devices/virtual/npu/msm_npu/pwr + done + done + # memlat specific settings are moved to seperate file under + # device/target specific folder + setprop vendor.dcvs.prop 0 + setprop vendor.dcvs.prop 1 + + # cpuset parameters + echo 0-5 > /dev/cpuset/background/cpus + echo 0-5 > /dev/cpuset/system-background/cpus + + # Turn off scheduler boost at the end + echo 0 > /proc/sys/kernel/sched_boost + + # Turn on sleep modes + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + ;; + esac + + #Apply settings for lagoon + case "$soc_id" in + "434" | "459" ) + + # Core control parameters on silver + echo 0 0 0 0 1 1 > /sys/devices/system/cpu/cpu0/core_ctl/not_preferred + echo 4 > /sys/devices/system/cpu/cpu0/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu0/core_ctl/busy_up_thres + echo 40 > /sys/devices/system/cpu/cpu0/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu0/core_ctl/offline_delay_ms + echo 8 > /sys/devices/system/cpu/cpu0/core_ctl/task_thres + + # Disable Core control on gold + echo 0 > /sys/devices/system/cpu/cpu6/core_ctl/enable + + + # disable unfiltering + echo 20000000 > /proc/sys/kernel/sched_task_unfilter_period + + # Setting b.L scheduler parameters + # default sched up and down migrate values are 95 and 85 + echo 65 > /proc/sys/kernel/sched_downmigrate + echo 71 > /proc/sys/kernel/sched_upmigrate + + # default sched up and down migrate values are 100 and 95 + echo 85 > /proc/sys/kernel/sched_group_downmigrate + echo 100 > /proc/sys/kernel/sched_group_upmigrate + echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks + echo 0 > /proc/sys/kernel/sched_coloc_busy_hyst_ns + echo 0 > /proc/sys/kernel/sched_coloc_busy_hysteresis_enable_cpus + echo 0 > /proc/sys/kernel/sched_coloc_busy_hyst_max_ms + + # configure governor settings for little cluster + echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us + echo 1248000 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq + echo 576000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + + # configure governor settings for big cluster + echo "schedutil" > /sys/devices/system/cpu/cpu6/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/down_rate_limit_us + echo 1248000 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/hispeed_freq + echo 652800 > /sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq + + #colocation v3 settings + echo 740000 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/rtg_boost_freq + echo 0 > /sys/devices/system/cpu/cpufreq/policy6/schedutil/rtg_boost_freq + echo 51 > /proc/sys/kernel/sched_min_task_util_for_boost + + # sched_load_boost as -6 is equivalent to target load as 85. It is per cpu tunable. + echo -6 > /sys/devices/system/cpu/cpu6/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu7/sched_load_boost + echo 85 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/hispeed_load + + # Enable conservative pl + echo 1 > /proc/sys/kernel/sched_conservative_pl + + echo "0:1248000" > /sys/devices/system/cpu/cpu_boost/input_boost_freq + echo 120 > /sys/devices/system/cpu/cpu_boost/input_boost_ms + + # Set Memory parameters + configure_memory_parameters + + # Enable bus-dcvs + for device in /sys/devices/platform/soc + do + for cpubw in $device/*cpu-cpu-llcc-bw/devfreq/*cpu-cpu-llcc-bw + do + echo "bw_hwmon" > $cpubw/governor + echo "2288 4577 7110 9155 12298 14236" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 68 > $cpubw/bw_hwmon/io_percent + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 0 > $cpubw/bw_hwmon/hyst_length + echo 80 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + echo 50 > $cpubw/polling_interval + done + + for llccbw in $device/*cpu-llcc-ddr-bw/devfreq/*cpu-llcc-ddr-bw + do + echo "bw_hwmon" > $llccbw/governor + echo "1144 1720 2086 2929 3879 5931 6881 8137" > $llccbw/bw_hwmon/mbps_zones + echo 4 > $llccbw/bw_hwmon/sample_ms + echo 68 > $llccbw/bw_hwmon/io_percent + echo 20 > $llccbw/bw_hwmon/hist_memory + echo 0 > $llccbw/bw_hwmon/hyst_length + echo 80 > $llccbw/bw_hwmon/down_thres + echo 0 > $llccbw/bw_hwmon/guard_band_mbps + echo 250 > $llccbw/bw_hwmon/up_scale + echo 1600 > $llccbw/bw_hwmon/idle_mbps + echo 40 > $llccbw/polling_interval + done + + for npubw in $device/*npu*-ddr-bw/devfreq/*npu*-ddr-bw + do + echo 1 > /sys/devices/virtual/npu/msm_npu/pwr + echo "bw_hwmon" > $npubw/governor + echo "1144 1720 2086 2929 3879 5931 6881 7980" > $npubw/bw_hwmon/mbps_zones + echo 4 > $npubw/bw_hwmon/sample_ms + echo 80 > $npubw/bw_hwmon/io_percent + echo 20 > $npubw/bw_hwmon/hist_memory + echo 10 > $npubw/bw_hwmon/hyst_length + echo 30 > $npubw/bw_hwmon/down_thres + echo 0 > $npubw/bw_hwmon/guard_band_mbps + echo 250 > $npubw/bw_hwmon/up_scale + echo 0 > $npubw/bw_hwmon/idle_mbps + echo 40 > $npubw/polling_interval + echo 0 > /sys/devices/virtual/npu/msm_npu/pwr + done + + for npullccbw in $device/*npu*-llcc-bw/devfreq/*npu*-llcc-bw + do + echo 1 > /sys/devices/virtual/npu/msm_npu/pwr + echo "bw_hwmon" > $npullccbw/governor + echo "2288 4577 7110 9155 12298 14236 16265" > $npullccbw/bw_hwmon/mbps_zones + echo 4 > $npullccbw/bw_hwmon/sample_ms + echo 100 > $npullccbw/bw_hwmon/io_percent + echo 20 > $npullccbw/bw_hwmon/hist_memory + echo 10 > $npullccbw/bw_hwmon/hyst_length + echo 30 > $npullccbw/bw_hwmon/down_thres + echo 0 > $npullccbw/bw_hwmon/guard_band_mbps + echo 250 > $npullccbw/bw_hwmon/up_scale + echo 40 > $npullccbw/polling_interval + echo 0 > /sys/devices/virtual/npu/msm_npu/pwr + done + done + # memlat specific settings are moved to seperate file under + # device/target specific folder + setprop vendor.dcvs.prop 1 + + # cpuset parameters + echo 0-5 > /dev/cpuset/background/cpus + echo 0-5 > /dev/cpuset/system-background/cpus + + # Turn off scheduler boost at the end + echo 0 > /proc/sys/kernel/sched_boost + + # Turn off sleep modes + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + ;; + esac +esac + +case "$target" in + "bengal") + + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + case "$soc_id" in + "417" | "420" | "444" | "445" | "469" | "470" ) + + # Core control is temporarily disabled till bring up + echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/enable + echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus + # Core control parameters on big + echo 40 > /sys/devices/system/cpu/cpu4/core_ctl/busy_down_thres + echo 60 > /sys/devices/system/cpu/cpu4/core_ctl/busy_up_thres + echo 100 > /sys/devices/system/cpu/cpu4/core_ctl/offline_delay_ms + echo 4 > /sys/devices/system/cpu/cpu4/core_ctl/task_thres + + # Setting b.L scheduler parameters + echo 67 > /proc/sys/kernel/sched_downmigrate + echo 77 > /proc/sys/kernel/sched_upmigrate + echo 85 > /proc/sys/kernel/sched_group_downmigrate + echo 100 > /proc/sys/kernel/sched_group_upmigrate + + # cpuset settings + echo 0-3 > /dev/cpuset/background/cpus + echo 0-3 > /dev/cpuset/system-background/cpus + + + # configure governor settings for little cluster + echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us + echo 1305600 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq + echo 614400 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/rtg_boost_freq + + # configure governor settings for big cluster + echo "schedutil" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/down_rate_limit_us + echo 1401600 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_freq + echo 1056000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/rtg_boost_freq + + echo "0:1017600" > /sys/devices/system/cpu/cpu_boost/input_boost_freq + echo 80 > /sys/devices/system/cpu/cpu_boost/input_boost_ms + + echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks + + # sched_load_boost as -6 is equivalent to target load as 85. It is per cpu tunable. + echo -6 > /sys/devices/system/cpu/cpu0/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu1/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu2/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu3/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu4/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu5/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu6/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu7/sched_load_boost + echo 85 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_load + echo 85 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_load + + # Set Memory parameters + configure_memory_parameters + + # Enable bus-dcvs + ddr_type=`od -An -tx /proc/device-tree/memory/ddr_device_type` + ddr_type4="07" + ddr_type3="05" + + for device in /sys/devices/platform/soc + do + for cpubw in $device/*cpu-cpu-ddr-bw/devfreq/*cpu-cpu-ddr-bw + do + echo "bw_hwmon" > $cpubw/governor + echo 50 > $cpubw/polling_interval + echo 762 > $cpubw/min_freq + if [ ${ddr_type:4:2} == $ddr_type4 ]; then + # LPDDR4 + echo "2288 3440 4173 5195 5859 7759 10322 11863 13763" > $cpubw/bw_hwmon/mbps_zones + echo 85 > $cpubw/bw_hwmon/io_percent + fi + if [ ${ddr_type:4:2} == $ddr_type3 ]; then + # LPDDR3 + echo "1525 3440 5195 5859 7102" > $cpubw/bw_hwmon/mbps_zones + echo 34 > $cpubw/bw_hwmon/io_percent + fi + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 90 > $cpubw/bw_hwmon/decay_rate + echo 190 > $cpubw/bw_hwmon/bw_step + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 0 > $cpubw/bw_hwmon/hyst_length + echo 80 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + done + + done + # memlat specific settings are moved to seperate file under + # device/target specific folder + setprop vendor.dcvs.prop 1 + + # colcoation v3 disabled + echo 0 > /proc/sys/kernel/sched_min_task_util_for_boost + echo 0 > /proc/sys/kernel/sched_min_task_util_for_colocation + + # Turn off scheduler boost at the end + echo 0 > /proc/sys/kernel/sched_boost + + # Turn on sleep modes + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + + ;; + esac + + # Scuba perf/power tunings + case "$soc_id" in + "441" ) + + # Quad-core device. disable core_ctl + echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/enable + + # Configure schedutil governor settings + echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us + echo 1305600 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq + echo 614400 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/rtg_boost_freq + + # sched_load_boost as -6 is equivalent to target load as 85. + echo 0 > /proc/sys/kernel/sched_boost + echo -6 > /sys/devices/system/cpu/cpu0/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu1/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu2/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu3/sched_load_boost + echo 85 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_load + + # Set Memory parameters + configure_memory_parameters + + # Enable bus-dcvs + ddr_type=`od -An -tx /proc/device-tree/memory/ddr_device_type` + ddr_type4="07" + ddr_type3="05" + + for device in /sys/devices/platform/soc + do + for cpubw in $device/*cpu-cpu-ddr-bw/devfreq/*cpu-cpu-ddr-bw + do + echo "bw_hwmon" > $cpubw/governor + echo 50 > $cpubw/polling_interval + echo 762 > $cpubw/min_freq + if [ ${ddr_type:4:2} == $ddr_type4 ]; then + # LPDDR4 + echo "2288 3440 4173 5195 5859 7759 10322 11863 13763" > $cpubw/bw_hwmon/mbps_zones + echo 85 > $cpubw/bw_hwmon/io_percent + fi + if [ ${ddr_type:4:2} == $ddr_type3 ]; then + # LPDDR3 + echo "1525 3440 5195 5859 7102" > $cpubw/bw_hwmon/mbps_zones + echo 34 > $cpubw/bw_hwmon/io_percent + fi + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 90 > $cpubw/bw_hwmon/decay_rate + echo 190 > $cpubw/bw_hwmon/bw_step + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 0 > $cpubw/bw_hwmon/hyst_length + echo 80 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + done + + for memlat in $device/*cpu*-lat/devfreq/*cpu*-lat + do + echo "mem_latency" > $memlat/governor + echo 10 > $memlat/polling_interval + echo 400 > $memlat/mem_latency/ratio_ceil + done + + for latfloor in $device/*cpu*-ddr-latfloor*/devfreq/*cpu-ddr-latfloor* + do + echo "compute" > $latfloor/governor + echo 10 > $latfloor/polling_interval + done + done + + # Disable low power modes. Enable it after LPM stable + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + ;; + esac + + ;; +esac + + +#Apply settings for atoll +case "$target" in + "atoll") + + # Core control parameters on silver + echo 0 0 0 0 1 1 > /sys/devices/system/cpu/cpu0/core_ctl/not_preferred + echo 4 > /sys/devices/system/cpu/cpu0/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu0/core_ctl/busy_up_thres + echo 40 > /sys/devices/system/cpu/cpu0/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu0/core_ctl/offline_delay_ms + echo 8 > /sys/devices/system/cpu/cpu0/core_ctl/task_thres + echo 0 > /sys/devices/system/cpu/cpu6/core_ctl/enable + + # Setting b.L scheduler parameters + # default sched up and down migrate values are 95 and 85 + echo 65 > /proc/sys/kernel/sched_downmigrate + echo 71 > /proc/sys/kernel/sched_upmigrate + # default sched up and down migrate values are 100 and 95 + echo 85 > /proc/sys/kernel/sched_group_downmigrate + echo 100 > /proc/sys/kernel/sched_group_upmigrate + echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks + + #colocation v3 settings + echo 740000 > /proc/sys/kernel/sched_little_cluster_coloc_fmin_khz + + # configure governor settings for little cluster + echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us + echo 1248000 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq + echo 576000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + + # configure governor settings for big cluster + echo "schedutil" > /sys/devices/system/cpu/cpu6/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/down_rate_limit_us + echo 1267200 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/hispeed_freq + echo 652800 > /sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq + + # sched_load_boost as -6 is equivalent to target load as 85. It is per cpu tunable. + echo -6 > /sys/devices/system/cpu/cpu6/sched_load_boost + echo -6 > /sys/devices/system/cpu/cpu7/sched_load_boost + echo 85 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/hispeed_load + + echo "0:1248000" > /sys/module/cpu_boost/parameters/input_boost_freq + echo 40 > /sys/module/cpu_boost/parameters/input_boost_ms + + # Set Memory parameters + configure_memory_parameters + + # Enable bus-dcvs + for device in /sys/devices/platform/soc + do + for cpubw in $device/*cpu-cpu-llcc-bw/devfreq/*cpu-cpu-llcc-bw + do + echo "bw_hwmon" > $cpubw/governor + echo "2288 4577 7110 9155 12298 14236" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 68 > $cpubw/bw_hwmon/io_percent + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 0 > $cpubw/bw_hwmon/hyst_length + echo 80 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + echo 50 > $cpubw/polling_interval + done + + for llccbw in $device/*cpu-llcc-ddr-bw/devfreq/*cpu-llcc-ddr-bw + do + echo "bw_hwmon" > $llccbw/governor + echo "1144 1720 2086 2929 3879 5931 6881 8137" > $llccbw/bw_hwmon/mbps_zones + echo 4 > $llccbw/bw_hwmon/sample_ms + echo 68 > $llccbw/bw_hwmon/io_percent + echo 20 > $llccbw/bw_hwmon/hist_memory + echo 0 > $llccbw/bw_hwmon/hyst_length + echo 80 > $llccbw/bw_hwmon/down_thres + echo 0 > $llccbw/bw_hwmon/guard_band_mbps + echo 250 > $llccbw/bw_hwmon/up_scale + echo 1600 > $llccbw/bw_hwmon/idle_mbps + echo 40 > $llccbw/polling_interval + done + + for npubw in $device/*npu*-npu-ddr-bw/devfreq/*npu*-npu-ddr-bw + do + echo 1 > /sys/devices/virtual/npu/msm_npu/pwr + echo "bw_hwmon" > $npubw/governor + echo "1144 1720 2086 2929 3879 5931 6881 8137" > $npubw/bw_hwmon/mbps_zones + echo 4 > $npubw/bw_hwmon/sample_ms + echo 80 > $npubw/bw_hwmon/io_percent + echo 20 > $npubw/bw_hwmon/hist_memory + echo 10 > $npubw/bw_hwmon/hyst_length + echo 30 > $npubw/bw_hwmon/down_thres + echo 0 > $npubw/bw_hwmon/guard_band_mbps + echo 250 > $npubw/bw_hwmon/up_scale + echo 0 > $npubw/bw_hwmon/idle_mbps + echo 40 > $npubw/polling_interval + echo 0 > /sys/devices/virtual/npu/msm_npu/pwr + done + + done + + # memlat specific settings are moved to seperate file under + # device/target specific folder + setprop vendor.dcvs.prop 1 + + # cpuset parameters + echo 0-5 > /dev/cpuset/background/cpus + echo 0-5 > /dev/cpuset/system-background/cpus + + # Turn off scheduler boost at the end + echo 0 > /proc/sys/kernel/sched_boost + + # Turn on sleep modes + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + ;; +esac + + +case "$target" in + "qcs605") + + #Apply settings for qcs605 + # Set the default IRQ affinity to the silver cluster. When a + # CPU is isolated/hotplugged, the IRQ affinity is adjusted + # to one of the CPU from the default IRQ affinity mask. + echo 3f > /proc/irq/default_smp_affinity + + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + else + hw_platform=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + + if [ -f /sys/devices/soc0/platform_subtype_id ]; then + platform_subtype_id=`cat /sys/devices/soc0/platform_subtype_id` + fi + + case "$soc_id" in + "347" ) + + # Start Host based Touch processing + case "$hw_platform" in + "Surf" | "RCM" | "QRD" ) + start_hbtp + ;; + "MTP" ) + if [ $platform_subtype_id != 5 ]; then + start_hbtp + fi + ;; + esac + + # Core control parameters on silver + echo 4 > /sys/devices/system/cpu/cpu0/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu0/core_ctl/busy_up_thres + echo 40 > /sys/devices/system/cpu/cpu0/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu0/core_ctl/offline_delay_ms + echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/is_big_cluster + echo 8 > /sys/devices/system/cpu/cpu0/core_ctl/task_thres + + # Setting b.L scheduler parameters + echo 96 > /proc/sys/kernel/sched_upmigrate + echo 90 > /proc/sys/kernel/sched_downmigrate + echo 140 > /proc/sys/kernel/sched_group_upmigrate + echo 120 > /proc/sys/kernel/sched_group_downmigrate + + # configure governor settings for little cluster + echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/rate_limit_us + echo 1209600 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq + echo 576000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + + # configure governor settings for big cluster + echo "schedutil" > /sys/devices/system/cpu/cpu6/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/rate_limit_us + echo 1344000 > /sys/devices/system/cpu/cpu6/cpufreq/schedutil/hispeed_freq + echo 825600 > /sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq + + echo "0:1209600" > /sys/module/cpu_boost/parameters/input_boost_freq + echo 40 > /sys/module/cpu_boost/parameters/input_boost_ms + + # Enable bus-dcvs + for cpubw in /sys/class/devfreq/*qcom,cpubw* + do + echo "bw_hwmon" > $cpubw/governor + echo 50 > $cpubw/polling_interval + echo "1144 1720 2086 2929 3879 5931 6881" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 68 > $cpubw/bw_hwmon/io_percent + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 0 > $cpubw/bw_hwmon/hyst_length + echo 80 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/low_power_ceil_mbps + echo 68 > $cpubw/bw_hwmon/low_power_io_percent + echo 20 > $cpubw/bw_hwmon/low_power_delay + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + done + + #Enable mem_latency governor for DDR scaling + for memlat in /sys/class/devfreq/*qcom,memlat-cpu* + do + echo "mem_latency" > $memlat/governor + echo 10 > $memlat/polling_interval + echo 400 > $memlat/mem_latency/ratio_ceil + done + + #Enable mem_latency governor for L3 scaling + for memlat in /sys/class/devfreq/*qcom,l3-cpu* + do + echo "mem_latency" > $memlat/governor + echo 10 > $memlat/polling_interval + echo 400 > $memlat/mem_latency/ratio_ceil + done + + echo "cpufreq" > /sys/class/devfreq/soc:qcom,mincpubw/governor + + # cpuset parameters + echo 0-5 > /dev/cpuset/background/cpus + echo 0-5 > /dev/cpuset/system-background/cpus + + # Turn off scheduler boost at the end + echo 0 > /proc/sys/kernel/sched_boost + + # Turn on sleep modes. + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + echo 100 > /proc/sys/vm/swappiness + ;; + esac + ;; +esac + +case "$target" in + "apq8084") + echo 4 > /sys/module/lpm_levels/enable_low_power/l2 + echo 1 > /sys/module/msm_pm/modes/cpu0/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/retention/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/retention/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/retention/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/retention/idle_enabled + echo 0 > /sys/module/msm_thermal/core_control/enabled + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + for devfreq_gov in /sys/class/devfreq/qcom,cpubw*/governor + do + echo "cpubw_hwmon" > $devfreq_gov + done + echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo "interactive" > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor + echo "interactive" > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor + echo "interactive" > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor + echo "20000 1400000:40000 1700000:20000" > /sys/devices/system/cpu/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load + echo 1497600 > /sys/devices/system/cpu/cpufreq/interactive/hispeed_freq + echo "85 1500000:90 1800000:70" > /sys/devices/system/cpu/cpufreq/interactive/target_loads + echo 40000 > /sys/devices/system/cpu/cpufreq/interactive/min_sample_time + echo 20 > /sys/module/cpu_boost/parameters/boost_ms + echo 1728000 > /sys/module/cpu_boost/parameters/sync_threshold + echo 100000 > /sys/devices/system/cpu/cpufreq/interactive/sampling_down_factor + echo 1497600 > /sys/module/cpu_boost/parameters/input_boost_freq + echo 40 > /sys/module/cpu_boost/parameters/input_boost_ms + echo 1 > /dev/cpuctl/apps/cpu.notify_on_migrate + echo 300000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 300000 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq + echo 300000 > /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq + echo 300000 > /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq + echo 1 > /sys/module/msm_thermal/core_control/enabled + chown -h system /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq + chown -h system /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + chown -h root.system /sys/devices/system/cpu/mfreq + chmod -h 220 /sys/devices/system/cpu/mfreq + chown -h root.system /sys/devices/system/cpu/cpu1/online + chown -h root.system /sys/devices/system/cpu/cpu2/online + chown -h root.system /sys/devices/system/cpu/cpu3/online + chmod -h 664 /sys/devices/system/cpu/cpu1/online + chmod -h 664 /sys/devices/system/cpu/cpu2/online + chmod -h 664 /sys/devices/system/cpu/cpu3/online + ;; +esac + +case "$target" in + "mpq8092") + echo 4 > /sys/module/lpm_levels/enable_low_power/l2 + echo 1 > /sys/module/msm_pm/modes/cpu0/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu0/retention/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu1/retention/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu2/retention/idle_enabled + echo 1 > /sys/module/msm_pm/modes/cpu3/retention/idle_enabled + echo 0 > /sys/module/msm_thermal/core_control/enabled + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + echo "ondemand" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo "ondemand" > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor + echo "ondemand" > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor + echo "ondemand" > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor + echo 50000 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate + echo 90 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold + echo 1 > /sys/devices/system/cpu/cpufreq/ondemand/io_is_busy + echo 300000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 300000 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq + echo 300000 > /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq + echo 300000 > /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq + echo 1 > /sys/module/msm_thermal/core_control/enabled + chown -h system /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq + chown -h system /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + chown -h root.system /sys/devices/system/cpu/mfreq + chmod -h 220 /sys/devices/system/cpu/mfreq + chown -h root.system /sys/devices/system/cpu/cpu1/online + chown -h root.system /sys/devices/system/cpu/cpu2/online + chown -h root.system /sys/devices/system/cpu/cpu3/online + chmod -h 664 /sys/devices/system/cpu/cpu1/online + chmod -h 664 /sys/devices/system/cpu/cpu2/online + chmod -h 664 /sys/devices/system/cpu/cpu3/online + ;; +esac + +case "$target" in + "msm8992") + # disable thermal bcl hotplug to switch governor + echo 0 > /sys/module/msm_thermal/core_control/enabled + echo -n disable > /sys/devices/soc.*/qcom,bcl.*/mode + bcl_hotplug_mask=`cat /sys/devices/soc.*/qcom,bcl.*/hotplug_mask` + echo 0 > /sys/devices/soc.*/qcom,bcl.*/hotplug_mask + echo -n enable > /sys/devices/soc.*/qcom,bcl.*/mode + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + # configure governor settings for little cluster + echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_migration_notif + echo 19000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/timer_rate + echo 960000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/hispeed_freq + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/io_is_busy + echo 80 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/target_loads + echo 40000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/min_sample_time + echo 80000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/max_freq_hysteresis + echo 384000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + # online CPU4 + echo 1 > /sys/devices/system/cpu/cpu4/online + # configure governor settings for big cluster + echo "interactive" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/use_migration_notif + echo 19000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/timer_rate + echo 1536000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/hispeed_freq + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/io_is_busy + echo 85 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/target_loads + echo 40000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/min_sample_time + echo 80000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/max_freq_hysteresis + echo 384000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + # re-enable thermal and BCL hotplug + echo 1 > /sys/module/msm_thermal/core_control/enabled + echo -n disable > /sys/devices/soc.*/qcom,bcl.*/mode + echo $bcl_hotplug_mask > /sys/devices/soc.*/qcom,bcl.*/hotplug_mask + echo $bcl_soc_hotplug_mask > /sys/devices/soc.*/qcom,bcl.*/hotplug_soc_mask + echo -n enable > /sys/devices/soc.*/qcom,bcl.*/mode + # plugin remaining A57s + echo 1 > /sys/devices/system/cpu/cpu5/online + # input boost configuration + echo 0:1248000 > /sys/module/cpu_boost/parameters/input_boost_freq + echo 40 > /sys/module/cpu_boost/parameters/input_boost_ms + # Enable task migration fixups in the scheduler + echo 1 > /proc/sys/kernel/sched_migration_fixup + for devfreq_gov in /sys/class/devfreq/qcom,cpubw*/governor + do + echo "bw_hwmon" > $devfreq_gov + done + #enable rps static configuration + echo 8 > /sys/class/net/rmnet_ipa0/queues/rx-0/rps_cpus + echo 30 > /proc/sys/kernel/sched_small_task + ;; +esac + +case "$target" in + "msm8994") + # ensure at most one A57 is online when thermal hotplug is disabled + echo 0 > /sys/devices/system/cpu/cpu5/online + echo 0 > /sys/devices/system/cpu/cpu6/online + echo 0 > /sys/devices/system/cpu/cpu7/online + # in case CPU4 is online, limit its frequency + echo 960000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq + # Limit A57 max freq from msm_perf module in case CPU 4 is offline + echo "4:960000 5:960000 6:960000 7:960000" > /sys/module/msm_performance/parameters/cpu_max_freq + # disable thermal bcl hotplug to switch governor + echo 0 > /sys/module/msm_thermal/core_control/enabled + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n disable > $mode + done + for hotplug_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_mask + do + bcl_hotplug_mask=`cat $hotplug_mask` + echo 0 > $hotplug_mask + done + for hotplug_soc_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_soc_mask + do + bcl_soc_hotplug_mask=`cat $hotplug_soc_mask` + echo 0 > $hotplug_soc_mask + done + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n enable > $mode + done + # configure governor settings for little cluster + echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_migration_notif + echo 19000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/timer_rate + echo 960000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/hispeed_freq + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/io_is_busy + echo 80 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/target_loads + echo 40000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/min_sample_time + echo 80000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/max_freq_hysteresis + echo 384000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + # online CPU4 + echo 1 > /sys/devices/system/cpu/cpu4/online + # Best effort limiting for first time boot if msm_performance module is absent + echo 960000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq + # configure governor settings for big cluster + echo "interactive" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/use_migration_notif + echo "19000 1400000:39000 1700000:19000" > /sys/devices/system/cpu/cpu4/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/timer_rate + echo 1248000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/hispeed_freq + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/io_is_busy + echo "85 1500000:90 1800000:70" > /sys/devices/system/cpu/cpu4/cpufreq/interactive/target_loads + echo 40000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/min_sample_time + echo 80000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/max_freq_hysteresis + echo 384000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + # restore A57's max + cat /sys/devices/system/cpu/cpu4/cpufreq/cpuinfo_max_freq > /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq + # re-enable thermal and BCL hotplug + echo 1 > /sys/module/msm_thermal/core_control/enabled + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n disable > $mode + done + for hotplug_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_mask + do + echo $bcl_hotplug_mask > $hotplug_mask + done + for hotplug_soc_mask in /sys/devices/soc.0/qcom,bcl.*/hotplug_soc_mask + do + echo $bcl_soc_hotplug_mask > $hotplug_soc_mask + done + for mode in /sys/devices/soc.0/qcom,bcl.*/mode + do + echo -n enable > $mode + done + # plugin remaining A57s + echo 1 > /sys/devices/system/cpu/cpu5/online + echo 1 > /sys/devices/system/cpu/cpu6/online + echo 1 > /sys/devices/system/cpu/cpu7/online + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + # Restore CPU 4 max freq from msm_performance + echo "4:4294967295 5:4294967295 6:4294967295 7:4294967295" > /sys/module/msm_performance/parameters/cpu_max_freq + # input boost configuration + echo 0:1344000 > /sys/module/cpu_boost/parameters/input_boost_freq + echo 40 > /sys/module/cpu_boost/parameters/input_boost_ms + # Setting b.L scheduler parameters + echo 1 > /proc/sys/kernel/sched_migration_fixup + echo 30 > /proc/sys/kernel/sched_small_task + echo 20 > /proc/sys/kernel/sched_mostly_idle_load + echo 3 > /proc/sys/kernel/sched_mostly_idle_nr_run + echo 99 > /proc/sys/kernel/sched_upmigrate + echo 85 > /proc/sys/kernel/sched_downmigrate + echo 400000 > /proc/sys/kernel/sched_freq_inc_notify + echo 400000 > /proc/sys/kernel/sched_freq_dec_notify + #enable rps static configuration + echo 8 > /sys/class/net/rmnet_ipa0/queues/rx-0/rps_cpus + for devfreq_gov in /sys/class/devfreq/qcom,cpubw*/governor + do + echo "bw_hwmon" > $devfreq_gov + done + ;; +esac + +case "$target" in + "msm8996") + # disable thermal bcl hotplug to switch governor + echo 0 > /sys/module/msm_thermal/core_control/enabled + echo -n disable > /sys/devices/soc/soc:qcom,bcl/mode + bcl_hotplug_mask=`cat /sys/devices/soc/soc:qcom,bcl/hotplug_mask` + echo 0 > /sys/devices/soc/soc:qcom,bcl/hotplug_mask + bcl_soc_hotplug_mask=`cat /sys/devices/soc/soc:qcom,bcl/hotplug_soc_mask` + echo 0 > /sys/devices/soc/soc:qcom,bcl/hotplug_soc_mask + echo -n enable > /sys/devices/soc/soc:qcom,bcl/mode + # set sync wakee policy tunable + echo 1 > /proc/sys/kernel/sched_prefer_sync_wakee_to_waker + # configure governor settings for little cluster + echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_migration_notif + echo 19000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/timer_rate + echo 960000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/hispeed_freq + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/io_is_busy + echo 80 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/target_loads + echo 19000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/min_sample_time + echo 79000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/max_freq_hysteresis + echo 300000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/ignore_hispeed_on_notif + # online CPU2 + echo 1 > /sys/devices/system/cpu/cpu2/online + # configure governor settings for big cluster + echo "interactive" > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor + echo 1 > /sys/devices/system/cpu/cpu2/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu2/cpufreq/interactive/use_migration_notif + echo "19000 1400000:39000 1700000:19000 2100000:79000" > /sys/devices/system/cpu/cpu2/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpu2/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu2/cpufreq/interactive/timer_rate + echo 1248000 > /sys/devices/system/cpu/cpu2/cpufreq/interactive/hispeed_freq + echo 1 > /sys/devices/system/cpu/cpu2/cpufreq/interactive/io_is_busy + echo "85 1500000:90 1800000:70 2100000:95" > /sys/devices/system/cpu/cpu2/cpufreq/interactive/target_loads + echo 19000 > /sys/devices/system/cpu/cpu2/cpufreq/interactive/min_sample_time + echo 79000 > /sys/devices/system/cpu/cpu2/cpufreq/interactive/max_freq_hysteresis + echo 300000 > /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq + echo 1 > /sys/devices/system/cpu/cpu2/cpufreq/interactive/ignore_hispeed_on_notif + # re-enable thermal and BCL hotplug + echo 1 > /sys/module/msm_thermal/core_control/enabled + echo -n disable > /sys/devices/soc/soc:qcom,bcl/mode + echo $bcl_hotplug_mask > /sys/devices/soc/soc:qcom,bcl/hotplug_mask + echo $bcl_soc_hotplug_mask > /sys/devices/soc/soc:qcom,bcl/hotplug_soc_mask + echo -n enable > /sys/devices/soc/soc:qcom,bcl/mode + # input boost configuration + echo "0:1324800 2:1324800" > /sys/module/cpu_boost/parameters/input_boost_freq + echo 40 > /sys/module/cpu_boost/parameters/input_boost_ms + # Setting b.L scheduler parameters + echo 0 > /proc/sys/kernel/sched_boost + echo 1 > /proc/sys/kernel/sched_migration_fixup + echo 45 > /proc/sys/kernel/sched_downmigrate + echo 45 > /proc/sys/kernel/sched_upmigrate + echo 400000 > /proc/sys/kernel/sched_freq_inc_notify + echo 400000 > /proc/sys/kernel/sched_freq_dec_notify + echo 3 > /proc/sys/kernel/sched_spill_nr_run + echo 100 > /proc/sys/kernel/sched_init_task_load + # Enable bus-dcvs + for cpubw in /sys/class/devfreq/*qcom,cpubw* + do + echo "bw_hwmon" > $cpubw/governor + echo 50 > $cpubw/polling_interval + echo 1525 > $cpubw/min_freq + echo "1525 5195 11863 13763" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 34 > $cpubw/bw_hwmon/io_percent + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 10 > $cpubw/bw_hwmon/hyst_length + echo 0 > $cpubw/bw_hwmon/low_power_ceil_mbps + echo 34 > $cpubw/bw_hwmon/low_power_io_percent + echo 20 > $cpubw/bw_hwmon/low_power_delay + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + done + + for memlat in /sys/class/devfreq/*qcom,memlat-cpu* + do + echo "mem_latency" > $memlat/governor + echo 10 > $memlat/polling_interval + done + echo "cpufreq" > /sys/class/devfreq/soc:qcom,mincpubw/governor + + soc_revision=`cat /sys/devices/soc0/revision` + if [ "$soc_revision" == "2.0" ]; then + #Disable suspend for v2.0 + echo pwr_dbg > /sys/power/wake_lock + elif [ "$soc_revision" == "2.1" ]; then + # Enable C4.D4.E4.M3 LPM modes + # Disable D3 state + echo 0 > /sys/module/lpm_levels/system/pwr/pwr-l2-gdhs/idle_enabled + echo 0 > /sys/module/lpm_levels/system/perf/perf-l2-gdhs/idle_enabled + # Disable DEF-FPC mode + echo N > /sys/module/lpm_levels/system/pwr/cpu0/fpc-def/idle_enabled + echo N > /sys/module/lpm_levels/system/pwr/cpu1/fpc-def/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/cpu2/fpc-def/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/cpu3/fpc-def/idle_enabled + else + # Enable all LPMs by default + # This will enable C4, D4, D3, E4 and M3 LPMs + echo N > /sys/module/lpm_levels/parameters/sleep_disabled + fi + echo N > /sys/module/lpm_levels/parameters/sleep_disabled + # Starting io prefetcher service + start iop + + # Set Memory parameters + configure_memory_parameters + ;; +esac + +case "$target" in + "sdm845") + + # Set the default IRQ affinity to the silver cluster. When a + # CPU is isolated/hotplugged, the IRQ affinity is adjusted + # to one of the CPU from the default IRQ affinity mask. + echo f > /proc/irq/default_smp_affinity + + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + fi + + if [ -f /sys/devices/soc0/platform_subtype_id ]; then + platform_subtype_id=`cat /sys/devices/soc0/platform_subtype_id` + fi + + case "$soc_id" in + "321" | "341") + # Start Host based Touch processing + case "$hw_platform" in + "QRD" ) + case "$platform_subtype_id" in + "32") #QVR845 do nothing + ;; + *) + start_hbtp + ;; + esac + ;; + *) + start_hbtp + ;; + esac + ;; + esac + # Core control parameters + echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu4/core_ctl/busy_up_thres + echo 30 > /sys/devices/system/cpu/cpu4/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu4/core_ctl/offline_delay_ms + echo 1 > /sys/devices/system/cpu/cpu4/core_ctl/is_big_cluster + echo 4 > /sys/devices/system/cpu/cpu4/core_ctl/task_thres + + # Setting b.L scheduler parameters + echo 95 > /proc/sys/kernel/sched_upmigrate + echo 85 > /proc/sys/kernel/sched_downmigrate + echo 100 > /proc/sys/kernel/sched_group_upmigrate + echo 95 > /proc/sys/kernel/sched_group_downmigrate + echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks + + # configure governor settings for little cluster + echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/rate_limit_us + echo 1209600 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/schedutil/pl + echo 576000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + + # configure governor settings for big cluster + echo "schedutil" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor + echo 0 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/rate_limit_us + echo 1574400 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_freq + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/schedutil/pl + echo "0:1324800" > /sys/module/cpu_boost/parameters/input_boost_freq + echo 120 > /sys/module/cpu_boost/parameters/input_boost_ms + # Limit the min frequency to 825MHz + echo 825000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + + # Enable oom_reaper + echo 1 > /sys/module/lowmemorykiller/parameters/oom_reaper + + # Enable bus-dcvs + for cpubw in /sys/class/devfreq/*qcom,cpubw* + do + echo "bw_hwmon" > $cpubw/governor + echo 50 > $cpubw/polling_interval + echo "2288 4577 6500 8132 9155 10681" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 50 > $cpubw/bw_hwmon/io_percent + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 10 > $cpubw/bw_hwmon/hyst_length + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + done + + for llccbw in /sys/class/devfreq/*qcom,llccbw* + do + echo "bw_hwmon" > $llccbw/governor + echo 50 > $llccbw/polling_interval + echo "1720 2929 3879 5931 6881" > $llccbw/bw_hwmon/mbps_zones + echo 4 > $llccbw/bw_hwmon/sample_ms + echo 80 > $llccbw/bw_hwmon/io_percent + echo 20 > $llccbw/bw_hwmon/hist_memory + echo 10 > $llccbw/bw_hwmon/hyst_length + echo 0 > $llccbw/bw_hwmon/guard_band_mbps + echo 250 > $llccbw/bw_hwmon/up_scale + echo 1600 > $llccbw/bw_hwmon/idle_mbps + done + + #Enable mem_latency governor for DDR scaling + for memlat in /sys/class/devfreq/*qcom,memlat-cpu* + do + echo "mem_latency" > $memlat/governor + echo 10 > $memlat/polling_interval + echo 400 > $memlat/mem_latency/ratio_ceil + done + + #Enable mem_latency governor for L3 scaling + for memlat in /sys/class/devfreq/*qcom,l3-cpu* + do + echo "mem_latency" > $memlat/governor + echo 10 > $memlat/polling_interval + echo 400 > $memlat/mem_latency/ratio_ceil + done + + #Enable userspace governor for L3 cdsp nodes + for l3cdsp in /sys/class/devfreq/*qcom,l3-cdsp* + do + echo "userspace" > $l3cdsp/governor + chown -h system $l3cdsp/userspace/set_freq + done + + #Gold L3 ratio ceil + echo 4000 > /sys/class/devfreq/soc:qcom,l3-cpu4/mem_latency/ratio_ceil + + echo "compute" > /sys/class/devfreq/soc:qcom,mincpubw/governor + echo 10 > /sys/class/devfreq/soc:qcom,mincpubw/polling_interval + + # cpuset parameters + echo 0-3 > /dev/cpuset/background/cpus + echo 0-3 > /dev/cpuset/system-background/cpus + + # Turn off scheduler boost at the end + echo 0 > /proc/sys/kernel/sched_boost + # Disable CPU Retention + echo N > /sys/module/lpm_levels/L3/cpu0/ret/idle_enabled + echo N > /sys/module/lpm_levels/L3/cpu1/ret/idle_enabled + echo N > /sys/module/lpm_levels/L3/cpu2/ret/idle_enabled + echo N > /sys/module/lpm_levels/L3/cpu3/ret/idle_enabled + echo N > /sys/module/lpm_levels/L3/cpu4/ret/idle_enabled + echo N > /sys/module/lpm_levels/L3/cpu5/ret/idle_enabled + echo N > /sys/module/lpm_levels/L3/cpu6/ret/idle_enabled + echo N > /sys/module/lpm_levels/L3/cpu7/ret/idle_enabled + echo N > /sys/module/lpm_levels/L3/l3-dyn-ret/idle_enabled + # Turn on sleep modes. + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + echo 100 > /proc/sys/vm/swappiness + echo 120 > /proc/sys/vm/watermark_scale_factor + ;; +esac + +case "$target" in + "msmnile") + # Core control parameters for gold + echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu4/core_ctl/busy_up_thres + echo 30 > /sys/devices/system/cpu/cpu4/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu4/core_ctl/offline_delay_ms + echo 3 > /sys/devices/system/cpu/cpu4/core_ctl/task_thres + + # Core control parameters for gold+ + echo 0 > /sys/devices/system/cpu/cpu7/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu7/core_ctl/busy_up_thres + echo 30 > /sys/devices/system/cpu/cpu7/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu7/core_ctl/offline_delay_ms + echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/task_thres + # Controls how many more tasks should be eligible to run on gold CPUs + # w.r.t number of gold CPUs available to trigger assist (max number of + # tasks eligible to run on previous cluster minus number of CPUs in + # the previous cluster). + # + # Setting to 1 by default which means there should be at least + # 4 tasks eligible to run on gold cluster (tasks running on gold cores + # plus misfit tasks on silver cores) to trigger assitance from gold+. + echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/nr_prev_assist_thresh + + # Disable Core control on silver + echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/enable + + # Setting b.L scheduler parameters + echo 95 95 > /proc/sys/kernel/sched_upmigrate + echo 85 85 > /proc/sys/kernel/sched_downmigrate + echo 100 > /proc/sys/kernel/sched_group_upmigrate + echo 10 > /proc/sys/kernel/sched_group_downmigrate + echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks + + # cpuset parameters + echo 0-3 > /dev/cpuset/background/cpus + echo 0-3 > /dev/cpuset/system-background/cpus + + # Turn off scheduler boost at the end + echo 0 > /proc/sys/kernel/sched_boost + + # configure governor settings for silver cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/down_rate_limit_us + echo 1209600 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/hispeed_freq + echo 576000 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq + echo 1 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/pl + + # configure governor settings for gold cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy4/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/down_rate_limit_us + echo 1612800 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/hispeed_freq + echo 1 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/pl + + # configure governor settings for gold+ cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy7/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/down_rate_limit_us + echo 1612800 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/hispeed_freq + echo 1 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/pl + + # configure input boost settings + echo "0:1324800" > /sys/module/cpu_boost/parameters/input_boost_freq + echo 120 > /sys/module/cpu_boost/parameters/input_boost_ms + + # Disable wsf, beacause we are using efk. + # wsf Range : 1..1000 So set to bare minimum value 1. + echo 1 > /proc/sys/vm/watermark_scale_factor + + echo 0-3 > /dev/cpuset/background/cpus + echo 0-3 > /dev/cpuset/system-background/cpus + + # Enable oom_reaper + if [ -f /sys/module/lowmemorykiller/parameters/oom_reaper ]; then + echo 1 > /sys/module/lowmemorykiller/parameters/oom_reaper + else + echo 1 > /proc/sys/vm/reap_mem_on_sigkill + fi + + # Enable bus-dcvs + for device in /sys/devices/platform/soc + do + for cpubw in $device/*cpu-cpu-llcc-bw/devfreq/*cpu-cpu-llcc-bw + do + echo "bw_hwmon" > $cpubw/governor + echo "2288 4577 7110 9155 12298 14236 15258" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 50 > $cpubw/bw_hwmon/io_percent + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 10 > $cpubw/bw_hwmon/hyst_length + echo 30 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + echo 14236 > $cpubw/max_freq + echo 40 > $cpubw/polling_interval + done + + for llccbw in $device/*cpu-llcc-ddr-bw/devfreq/*cpu-llcc-ddr-bw + do + echo "bw_hwmon" > $llccbw/governor + echo "1720 2929 3879 5931 6881 7980" > $llccbw/bw_hwmon/mbps_zones + echo 4 > $llccbw/bw_hwmon/sample_ms + echo 80 > $llccbw/bw_hwmon/io_percent + echo 20 > $llccbw/bw_hwmon/hist_memory + echo 10 > $llccbw/bw_hwmon/hyst_length + echo 30 > $llccbw/bw_hwmon/down_thres + echo 0 > $llccbw/bw_hwmon/guard_band_mbps + echo 250 > $llccbw/bw_hwmon/up_scale + echo 1600 > $llccbw/bw_hwmon/idle_mbps + echo 6881 > $llccbw/max_freq + echo 40 > $llccbw/polling_interval + done + + for npubw in $device/*npu-npu-ddr-bw/devfreq/*npu-npu-ddr-bw + do + echo 1 > /sys/devices/virtual/npu/msm_npu/pwr + echo "bw_hwmon" > $npubw/governor + echo "1720 2929 3879 5931 6881 7980" > $npubw/bw_hwmon/mbps_zones + echo 4 > $npubw/bw_hwmon/sample_ms + echo 80 > $npubw/bw_hwmon/io_percent + echo 20 > $npubw/bw_hwmon/hist_memory + echo 6 > $npubw/bw_hwmon/hyst_length + echo 30 > $npubw/bw_hwmon/down_thres + echo 0 > $npubw/bw_hwmon/guard_band_mbps + echo 250 > $npubw/bw_hwmon/up_scale + echo 0 > $npubw/bw_hwmon/idle_mbps + echo 40 > $npubw/polling_interval + echo 0 > /sys/devices/virtual/npu/msm_npu/pwr + done + done + + # memlat specific settings are moved to seperate file under + # device/target specific folder + setprop vendor.dcvs.prop 1 + + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + else + hw_platform=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + + if [ -f /sys/devices/soc0/platform_subtype_id ]; then + platform_subtype_id=`cat /sys/devices/soc0/platform_subtype_id` + fi + + case "$hw_platform" in + "MTP" | "Surf" | "RCM" ) + # Start Host based Touch processing + case "$platform_subtype_id" in + "0" | "1" | "2" | "3" | "4") + start_hbtp + ;; + esac + ;; + "HDK" ) + if [ -d /sys/kernel/hbtpsensor ] ; then + start_hbtp + fi + ;; + esac + + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + configure_memory_parameters + target_type=`getprop ro.hardware.type` + if [ "$target_type" == "automotive" ]; then + # update frequencies + configure_automotive_sku_parameters + fi + + ;; +esac + +case "$target" in + "sdmshrike") + # Core control parameters for gold + echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu4/core_ctl/busy_up_thres + echo 30 > /sys/devices/system/cpu/cpu4/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu4/core_ctl/offline_delay_ms + echo 3 > /sys/devices/system/cpu/cpu4/core_ctl/task_thres + + # Core control parameters for gold+ + echo 0 > /sys/devices/system/cpu/cpu7/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu7/core_ctl/busy_up_thres + echo 30 > /sys/devices/system/cpu/cpu7/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu7/core_ctl/offline_delay_ms + echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/task_thres + # Controls how many more tasks should be eligible to run on gold CPUs + # w.r.t number of gold CPUs available to trigger assist (max number of + # tasks eligible to run on previous cluster minus number of CPUs in + # the previous cluster). + # + # Setting to 1 by default which means there should be at least + # 4 tasks eligible to run on gold cluster (tasks running on gold cores + # plus misfit tasks on silver cores) to trigger assitance from gold+. + echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/nr_prev_assist_thresh + + # Disable Core control on silver + echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/enable + + # Setting b.L scheduler parameters + echo 95 95 > /proc/sys/kernel/sched_upmigrate + echo 85 85 > /proc/sys/kernel/sched_downmigrate + echo 100 > /proc/sys/kernel/sched_group_upmigrate + echo 10 > /proc/sys/kernel/sched_group_downmigrate + echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks + + # cpuset parameters + echo 0-3 > /dev/cpuset/background/cpus + echo 0-3 > /dev/cpuset/system-background/cpus + + # Turn off scheduler boost at the end + echo 0 > /proc/sys/kernel/sched_boost + + # configure governor settings for silver cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/down_rate_limit_us + echo 1209600 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/hispeed_freq + echo 576000 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq + echo 1 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/pl + + # configure governor settings for gold cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy4/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/down_rate_limit_us + echo 1612800 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/hispeed_freq + echo 1 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/pl + + # configure governor settings for gold+ cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy7/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/up_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/down_rate_limit_us + echo 1612800 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/hispeed_freq + echo 1 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/pl + + # configure input boost settings + echo "0:1324800" > /sys/module/cpu_boost/parameters/input_boost_freq + echo 120 > /sys/module/cpu_boost/parameters/input_boost_ms + + # Disable wsf, beacause we are using efk. + # wsf Range : 1..1000 So set to bare minimum value 1. + echo 1 > /proc/sys/vm/watermark_scale_factor + + echo 0-3 > /dev/cpuset/background/cpus + echo 0-3 > /dev/cpuset/system-background/cpus + + # Enable oom_reaper + if [ -f /sys/module/lowmemorykiller/parameters/oom_reaper ]; then + echo 1 > /sys/module/lowmemorykiller/parameters/oom_reaper + else + echo 1 > /proc/sys/vm/reap_mem_on_sigkill + fi + + # Enable bus-dcvs + for device in /sys/devices/platform/soc + do + for cpubw in $device/*cpu-cpu-llcc-bw/devfreq/*cpu-cpu-llcc-bw + do + echo "bw_hwmon" > $cpubw/governor + echo 40 > $cpubw/polling_interval + echo "2288 4577 7110 9155 12298 14236 15258" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 50 > $cpubw/bw_hwmon/io_percent + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 10 > $cpubw/bw_hwmon/hyst_length + echo 30 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + echo 14236 > $cpubw/max_freq + done + + for llccbw in $device/*cpu-llcc-ddr-bw/devfreq/*cpu-llcc-ddr-bw + do + echo "bw_hwmon" > $llccbw/governor + echo 40 > $llccbw/polling_interval + echo "1720 2929 3879 5931 6881 7980" > $llccbw/bw_hwmon/mbps_zones + echo 4 > $llccbw/bw_hwmon/sample_ms + echo 80 > $llccbw/bw_hwmon/io_percent + echo 20 > $llccbw/bw_hwmon/hist_memory + echo 10 > $llccbw/bw_hwmon/hyst_length + echo 30 > $llccbw/bw_hwmon/down_thres + echo 0 > $llccbw/bw_hwmon/guard_band_mbps + echo 250 > $llccbw/bw_hwmon/up_scale + echo 1600 > $llccbw/bw_hwmon/idle_mbps + echo 6881 > $llccbw/max_freq + done + + for npubw in $device/*npu-npu-ddr-bw/devfreq/*npu-npu-ddr-bw + do + echo 1 > /sys/devices/virtual/npu/msm_npu/pwr + echo "bw_hwmon" > $npubw/governor + echo 40 > $npubw/polling_interval + echo "1720 2929 3879 5931 6881 7980" > $npubw/bw_hwmon/mbps_zones + echo 4 > $npubw/bw_hwmon/sample_ms + echo 80 > $npubw/bw_hwmon/io_percent + echo 20 > $npubw/bw_hwmon/hist_memory + echo 6 > $npubw/bw_hwmon/hyst_length + echo 30 > $npubw/bw_hwmon/down_thres + echo 0 > $npubw/bw_hwmon/guard_band_mbps + echo 250 > $npubw/bw_hwmon/up_scale + echo 0 > $npubw/bw_hwmon/idle_mbps + echo 0 > /sys/devices/virtual/npu/msm_npu/pwr + done + + #Enable mem_latency governor for L3, LLCC, and DDR scaling + for memlat in $device/*cpu*-lat/devfreq/*cpu*-lat + do + echo "mem_latency" > $memlat/governor + echo 10 > $memlat/polling_interval + echo 400 > $memlat/mem_latency/ratio_ceil + done + + #Enable userspace governor for L3 cdsp nodes + for l3cdsp in $device/*cdsp-cdsp-l3-lat/devfreq/*cdsp-cdsp-l3-lat + do + echo "cdspl3" > $l3cdsp/governor + done + + #Enable compute governor for gold latfloor + for latfloor in $device/*cpu-ddr-latfloor*/devfreq/*cpu-ddr-latfloor* + do + echo "compute" > $latfloor/governor + echo 10 > $latfloor/polling_interval + done + + #Gold L3 ratio ceil + for l3gold in $device/*cpu4-cpu-l3-lat/devfreq/*cpu4-cpu-l3-lat + do + echo 4000 > $l3gold/mem_latency/ratio_ceil + done + + #Prime L3 ratio ceil + for l3prime in $device/*cpu7-cpu-l3-lat/devfreq/*cpu7-cpu-l3-lat + do + echo 20000 > $l3prime/mem_latency/ratio_ceil + done + done + + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + else + hw_platform=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + + if [ -f /sys/devices/soc0/platform_subtype_id ]; then + platform_subtype_id=`cat /sys/devices/soc0/platform_subtype_id` + fi + + case "$hw_platform" in + "MTP" | "Surf" | "RCM" ) + # Start Host based Touch processing + case "$platform_subtype_id" in + "0" | "1") + start_hbtp + ;; + esac + ;; + "HDK" ) + if [ -d /sys/kernel/hbtpsensor ] ; then + start_hbtp + fi + ;; + esac + + #Setting the min and max supported frequencies + reg_val=`cat /sys/devices/platform/soc/780130.qfprom/qfprom0/nvmem | od -An -t d4` + feature_id=$(((reg_val >> 20) & 0xFF)) + + #Setting the min supported frequencies + echo 1113600 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 1171200 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + echo 940800000 > /sys/class/devfreq/soc\:qcom,cpu0-cpu-l3-lat/min_freq + echo 940800000 > /sys/class/devfreq/soc\:qcom,cpu4-cpu-l3-lat/min_freq + echo 1651200000 > /sys/class/devfreq/soc\:qcom,cpu0-cpu-l3-lat/max_freq + echo 1651200000 > /sys/class/devfreq/soc\:qcom,cpu4-cpu-l3-lat/max_freq + #setting min gpu freq to 392 MHz + echo 4 > /sys/class/kgsl/kgsl-3d0/min_pwrlevel + if [ $feature_id == 0 ]; then + echo "feature_id is 0 for SA8195AA" + + #setting max cpu freq to 2.496GHz + echo 2496000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq + #setting max gpu freq to 530 MHz + echo 3 > /sys/class/kgsl/kgsl-3d0/max_pwrlevel + elif [ $feature_id == 1 ] || [ $feature_id == 2 ]; then + echo "feature_id is 1 for external SA8195AB" + echo "feature_id is 2 for internal SA8195AB" + + #setting max cpu freq to 2.496GHz + echo 2496000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq + #setting max gpu freq to 670 MHz + echo 0 > /sys/class/kgsl/kgsl-3d0/max_pwrlevel + elif [ $feature_id == 3 ]; then + echo "feature_id is 3 for external SA8195AC" + else + echo "unknown feature_id value" $feature_id + fi + + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + configure_memory_parameters + ;; +esac + +case "$target" in + "kona") + rev=`cat /sys/devices/soc0/revision` + ddr_type=`od -An -tx /proc/device-tree/memory/ddr_device_type` + ddr_type4="07" + ddr_type5="08" + + # Core control parameters for gold + echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu4/core_ctl/busy_up_thres + echo 30 > /sys/devices/system/cpu/cpu4/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu4/core_ctl/offline_delay_ms + echo 3 > /sys/devices/system/cpu/cpu4/core_ctl/task_thres + + # Core control parameters for gold+ + echo 0 > /sys/devices/system/cpu/cpu7/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu7/core_ctl/busy_up_thres + echo 30 > /sys/devices/system/cpu/cpu7/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu7/core_ctl/offline_delay_ms + echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/task_thres + # Controls how many more tasks should be eligible to run on gold CPUs + # w.r.t number of gold CPUs available to trigger assist (max number of + # tasks eligible to run on previous cluster minus number of CPUs in + # the previous cluster). + # + # Setting to 1 by default which means there should be at least + # 4 tasks eligible to run on gold cluster (tasks running on gold cores + # plus misfit tasks on silver cores) to trigger assitance from gold+. + echo 1 > /sys/devices/system/cpu/cpu7/core_ctl/nr_prev_assist_thresh + + # Disable Core control on silver + echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/enable + + # Setting b.L scheduler parameters + echo 95 95 > /proc/sys/kernel/sched_upmigrate + echo 85 85 > /proc/sys/kernel/sched_downmigrate + echo 100 > /proc/sys/kernel/sched_group_upmigrate + echo 85 > /proc/sys/kernel/sched_group_downmigrate + echo 1 > /proc/sys/kernel/sched_walt_rotate_big_tasks + echo 400000000 > /proc/sys/kernel/sched_coloc_downmigrate_ns + + # cpuset parameters + echo 0-3 > /dev/cpuset/background/cpus + echo 0-3 > /dev/cpuset/system-background/cpus + + # Turn off scheduler boost at the end + echo 0 > /proc/sys/kernel/sched_boost + + # configure governor settings for silver cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/down_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/up_rate_limit_us + if [ $rev == "2.0" ] || [ $rev == "2.1" ]; then + echo 1248000 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/hispeed_freq + else + echo 1228800 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/hispeed_freq + fi + echo 691200 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq + echo 1 > /sys/devices/system/cpu/cpufreq/policy0/schedutil/pl + + # configure input boost settings + echo "0:1324800" > /sys/devices/system/cpu/cpu_boost/input_boost_freq + echo 120 > /sys/devices/system/cpu/cpu_boost/input_boost_ms + + # configure governor settings for gold cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy4/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/down_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/up_rate_limit_us + echo 1574400 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/hispeed_freq + echo 1 > /sys/devices/system/cpu/cpufreq/policy4/schedutil/pl + + # configure governor settings for gold+ cluster + echo "schedutil" > /sys/devices/system/cpu/cpufreq/policy7/scaling_governor + echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/down_rate_limit_us + echo 0 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/up_rate_limit_us + if [ $rev == "2.0" ] || [ $rev == "2.1" ]; then + echo 1632000 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/hispeed_freq + else + echo 1612800 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/hispeed_freq + fi + echo 1 > /sys/devices/system/cpu/cpufreq/policy7/schedutil/pl + + # Enable bus-dcvs + for device in /sys/devices/platform/soc + do + for cpubw in $device/*cpu-cpu-llcc-bw/devfreq/*cpu-cpu-llcc-bw + do + echo "bw_hwmon" > $cpubw/governor + echo "4577 7110 9155 12298 14236 15258" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 50 > $cpubw/bw_hwmon/io_percent + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 10 > $cpubw/bw_hwmon/hyst_length + echo 30 > $cpubw/bw_hwmon/down_thres + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + echo 14236 > $cpubw/max_freq + echo 40 > $cpubw/polling_interval + done + + for llccbw in $device/*cpu-llcc-ddr-bw/devfreq/*cpu-llcc-ddr-bw + do + echo "bw_hwmon" > $llccbw/governor + if [ ${ddr_type:4:2} == $ddr_type4 ]; then + echo "1720 2086 2929 3879 5161 5931 6881 7980" > $llccbw/bw_hwmon/mbps_zones + elif [ ${ddr_type:4:2} == $ddr_type5 ]; then + echo "1720 2086 2929 3879 5931 6881 7980 10437" > $llccbw/bw_hwmon/mbps_zones + fi + echo 4 > $llccbw/bw_hwmon/sample_ms + echo 80 > $llccbw/bw_hwmon/io_percent + echo 20 > $llccbw/bw_hwmon/hist_memory + echo 10 > $llccbw/bw_hwmon/hyst_length + echo 30 > $llccbw/bw_hwmon/down_thres + echo 0 > $llccbw/bw_hwmon/guard_band_mbps + echo 250 > $llccbw/bw_hwmon/up_scale + echo 1600 > $llccbw/bw_hwmon/idle_mbps + echo 6881 > $llccbw/max_freq + echo 40 > $llccbw/polling_interval + done + + for npubw in $device/*npu*-ddr-bw/devfreq/*npu*-ddr-bw + do + echo 1 > /sys/devices/virtual/npu/msm_npu/pwr + echo "bw_hwmon" > $npubw/governor + if [ ${ddr_type:4:2} == $ddr_type4 ]; then + echo "1720 2086 2929 3879 5931 6881 7980" > $npubw/bw_hwmon/mbps_zones + elif [ ${ddr_type:4:2} == $ddr_type5 ]; then + echo "1720 2086 2929 3879 5931 6881 7980 10437" > $npubw/bw_hwmon/mbps_zones + fi + echo 4 > $npubw/bw_hwmon/sample_ms + echo 160 > $npubw/bw_hwmon/io_percent + echo 20 > $npubw/bw_hwmon/hist_memory + echo 10 > $npubw/bw_hwmon/hyst_length + echo 30 > $npubw/bw_hwmon/down_thres + echo 0 > $npubw/bw_hwmon/guard_band_mbps + echo 250 > $npubw/bw_hwmon/up_scale + echo 1600 > $npubw/bw_hwmon/idle_mbps + echo 40 > $npubw/polling_interval + echo 0 > /sys/devices/virtual/npu/msm_npu/pwr + done + + for npullccbw in $device/*npu*-llcc-bw/devfreq/*npu*-llcc-bw + do + echo 1 > /sys/devices/virtual/npu/msm_npu/pwr + echo "bw_hwmon" > $npullccbw/governor + echo "4577 7110 9155 12298 14236 15258" > $npullccbw/bw_hwmon/mbps_zones + echo 4 > $npullccbw/bw_hwmon/sample_ms + echo 160 > $npullccbw/bw_hwmon/io_percent + echo 20 > $npullccbw/bw_hwmon/hist_memory + echo 10 > $npullccbw/bw_hwmon/hyst_length + echo 30 > $npullccbw/bw_hwmon/down_thres + echo 0 > $npullccbw/bw_hwmon/guard_band_mbps + echo 250 > $npullccbw/bw_hwmon/up_scale + echo 1600 > $npullccbw/bw_hwmon/idle_mbps + echo 40 > $npullccbw/polling_interval + echo 0 > /sys/devices/virtual/npu/msm_npu/pwr + done + done + # memlat specific settings are moved to seperate file under + # device/target specific folder + setprop vendor.dcvs.prop 0 + setprop vendor.dcvs.prop 1 + echo N > /sys/module/lpm_levels/parameters/sleep_disabled + configure_memory_parameters + ;; +esac + +case "$target" in + "msm8998" | "apq8098_latv") + + echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus + echo 60 > /sys/devices/system/cpu/cpu4/core_ctl/busy_up_thres + echo 30 > /sys/devices/system/cpu/cpu4/core_ctl/busy_down_thres + echo 100 > /sys/devices/system/cpu/cpu4/core_ctl/offline_delay_ms + echo 1 > /sys/devices/system/cpu/cpu4/core_ctl/is_big_cluster + echo 4 > /sys/devices/system/cpu/cpu4/core_ctl/task_thres + + # Setting b.L scheduler parameters + echo 1 > /proc/sys/kernel/sched_migration_fixup + echo 95 > /proc/sys/kernel/sched_upmigrate + echo 90 > /proc/sys/kernel/sched_downmigrate + echo 100 > /proc/sys/kernel/sched_group_upmigrate + echo 95 > /proc/sys/kernel/sched_group_downmigrate + echo 0 > /proc/sys/kernel/sched_select_prev_cpu_us + echo 400000 > /proc/sys/kernel/sched_freq_inc_notify + echo 400000 > /proc/sys/kernel/sched_freq_dec_notify + echo 5 > /proc/sys/kernel/sched_spill_nr_run + echo 1 > /proc/sys/kernel/sched_restrict_cluster_spill + echo 1 > /proc/sys/kernel/sched_prefer_sync_wakee_to_waker + start iop + + # disable thermal bcl hotplug to switch governor + echo 0 > /sys/module/msm_thermal/core_control/enabled + + # online CPU0 + echo 1 > /sys/devices/system/cpu/cpu0/online + # configure governor settings for little cluster + echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_migration_notif + echo 19000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/timer_rate + echo 1248000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/hispeed_freq + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/io_is_busy + echo "83 1804800:95" > /sys/devices/system/cpu/cpu0/cpufreq/interactive/target_loads + echo 19000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/min_sample_time + echo 79000 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/max_freq_hysteresis + echo 518400 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/interactive/ignore_hispeed_on_notif + # online CPU4 + echo 1 > /sys/devices/system/cpu/cpu4/online + # configure governor settings for big cluster + echo "interactive" > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/use_sched_load + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/use_migration_notif + echo 19000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/go_hispeed_load + echo 20000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/timer_rate + echo 1574400 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/hispeed_freq + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/io_is_busy + echo "83 1939200:90 2016000:95" > /sys/devices/system/cpu/cpu4/cpufreq/interactive/target_loads + echo 19000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/min_sample_time + echo 79000 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/max_freq_hysteresis + echo 806400 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq + echo 1 > /sys/devices/system/cpu/cpu4/cpufreq/interactive/ignore_hispeed_on_notif + + # re-enable thermal and BCL hotplug + echo 1 > /sys/module/msm_thermal/core_control/enabled + + # Enable input boost configuration + echo "0:1324800" > /sys/module/cpu_boost/parameters/input_boost_freq + echo 40 > /sys/module/cpu_boost/parameters/input_boost_ms + # Enable bus-dcvs + for cpubw in /sys/class/devfreq/*qcom,cpubw* + do + echo "bw_hwmon" > $cpubw/governor + echo 50 > $cpubw/polling_interval + echo 1525 > $cpubw/min_freq + echo "3143 5859 11863 13763" > $cpubw/bw_hwmon/mbps_zones + echo 4 > $cpubw/bw_hwmon/sample_ms + echo 34 > $cpubw/bw_hwmon/io_percent + echo 20 > $cpubw/bw_hwmon/hist_memory + echo 10 > $cpubw/bw_hwmon/hyst_length + echo 0 > $cpubw/bw_hwmon/low_power_ceil_mbps + echo 34 > $cpubw/bw_hwmon/low_power_io_percent + echo 20 > $cpubw/bw_hwmon/low_power_delay + echo 0 > $cpubw/bw_hwmon/guard_band_mbps + echo 250 > $cpubw/bw_hwmon/up_scale + echo 1600 > $cpubw/bw_hwmon/idle_mbps + done + + for memlat in /sys/class/devfreq/*qcom,memlat-cpu* + do + echo "mem_latency" > $memlat/governor + echo 10 > $memlat/polling_interval + echo 400 > $memlat/mem_latency/ratio_ceil + done + echo "cpufreq" > /sys/class/devfreq/soc:qcom,mincpubw/governor + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + else + hw_platform=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + + if [ -f /sys/devices/soc0/platform_version ]; then + platform_version=`cat /sys/devices/soc0/platform_version` + platform_major_version=$((10#${platform_version}>>16)) + fi + + if [ -f /sys/devices/soc0/platform_subtype_id ]; then + platform_subtype_id=`cat /sys/devices/soc0/platform_subtype_id` + fi + + case "$soc_id" in + "292") #msm8998 apq8098_latv + # Start Host based Touch processing + case "$hw_platform" in + "QRD") + case "$platform_subtype_id" in + "0") + start_hbtp + ;; + "16") + if [ $platform_major_version -lt 6 ]; then + start_hbtp + fi + ;; + esac + + ;; + esac + ;; + esac + + echo N > /sys/module/lpm_levels/system/pwr/cpu0/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/pwr/cpu1/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/pwr/cpu2/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/pwr/cpu3/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/cpu4/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/cpu5/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/cpu6/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/cpu7/ret/idle_enabled + echo N > /sys/module/lpm_levels/system/pwr/pwr-l2-dynret/idle_enabled + echo N > /sys/module/lpm_levels/system/pwr/pwr-l2-ret/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/perf-l2-dynret/idle_enabled + echo N > /sys/module/lpm_levels/system/perf/perf-l2-ret/idle_enabled + echo N > /sys/module/lpm_levels/parameters/sleep_disabled + + echo 0-3 > /dev/cpuset/background/cpus + echo 0-3 > /dev/cpuset/system-background/cpus + echo 0 > /proc/sys/kernel/sched_boost + + # Set Memory parameters + configure_memory_parameters + ;; +esac + +case "$target" in + "msm8909") + + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + # HMP scheduler settings for 8909 similiar to 8917 + echo 3 > /proc/sys/kernel/sched_window_stats_policy + echo 3 > /proc/sys/kernel/sched_ravg_hist_size + + echo 1 > /proc/sys/kernel/sched_restrict_tasks_spread + + echo 20 > /proc/sys/kernel/sched_small_task + echo 30 > /sys/devices/system/cpu/cpu0/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu1/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu2/sched_mostly_idle_load + echo 30 > /sys/devices/system/cpu/cpu3/sched_mostly_idle_load + + echo 3 > /sys/devices/system/cpu/cpu0/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu1/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu2/sched_mostly_idle_nr_run + echo 3 > /sys/devices/system/cpu/cpu3/sched_mostly_idle_nr_run + + echo 0 > /sys/devices/system/cpu/cpu0/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu1/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu2/sched_prefer_idle + echo 0 > /sys/devices/system/cpu/cpu3/sched_prefer_idle + + # Apply governor settings for 8909 + + # disable thermal core_control to update scaling_min_freq + echo 0 > /sys/module/msm_thermal/core_control/enabled + echo 1 > /sys/devices/system/cpu/cpu0/online + echo "interactive" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor + echo 800000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq + # enable thermal core_control now + echo 1 > /sys/module/msm_thermal/core_control/enabled + + echo "29000 1094400:49000" > /sys/devices/system/cpu/cpufreq/interactive/above_hispeed_delay + echo 90 > /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load + echo 30000 > /sys/devices/system/cpu/cpufreq/interactive/timer_rate + echo 998400 > /sys/devices/system/cpu/cpufreq/interactive/hispeed_freq + echo 0 > /sys/devices/system/cpu/cpufreq/interactive/io_is_busy + echo "1 800000:85 998400:90 1094400:80" > /sys/devices/system/cpu/cpufreq/interactive/target_loads + echo 50000 > /sys/devices/system/cpu/cpufreq/interactive/min_sample_time + echo 50000 > /sys/devices/system/cpu/cpufreq/interactive/sampling_down_factor + + # Bring up all cores online + echo 1 > /sys/devices/system/cpu/cpu1/online + echo 1 > /sys/devices/system/cpu/cpu2/online + echo 1 > /sys/devices/system/cpu/cpu3/online + echo 0 > /sys/module/lpm_levels/parameters/sleep_disabled + + for devfreq_gov in /sys/class/devfreq/*qcom,cpubw*/governor + do + echo "bw_hwmon" > $devfreq_gov + for cpu_bimc_bw_step in /sys/class/devfreq/*qcom,cpubw*/bw_hwmon/bw_step + do + echo 60 > $cpu_bimc_bw_step + done + for cpu_guard_band_mbps in /sys/class/devfreq/*qcom,cpubw*/bw_hwmon/guard_band_mbps + do + echo 30 > $cpu_guard_band_mbps + done + done + + for gpu_bimc_io_percent in /sys/class/devfreq/*qcom,gpubw*/bw_hwmon/io_percent + do + echo 40 > $gpu_bimc_io_percent + done + for gpu_bimc_bw_step in /sys/class/devfreq/*qcom,gpubw*/bw_hwmon/bw_step + do + echo 60 > $gpu_bimc_bw_step + done + for gpu_bimc_guard_band_mbps in /sys/class/devfreq/*qcom,gpubw*/bw_hwmon/guard_band_mbps + do + echo 30 > $gpu_bimc_guard_band_mbps + done + + # Set Memory parameters + configure_memory_parameters + restorecon -R /sys/devices/system/cpu + ;; +esac + +case "$target" in + "msm7627_ffa" | "msm7627_surf" | "msm7627_6x") + echo 25000 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate + ;; +esac + +case "$target" in + "qsd8250_surf" | "qsd8250_ffa" | "qsd8650a_st1x") + echo 50000 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate + ;; +esac + +chown -h system /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate +chown -h system /sys/devices/system/cpu/cpufreq/ondemand/sampling_down_factor +chown -h system /sys/devices/system/cpu/cpufreq/ondemand/io_is_busy + +emmc_boot=`getprop vendor.boot.emmc` +case "$emmc_boot" + in "true") + chown -h system /sys/devices/platform/rs300000a7.65536/force_sync + chown -h system /sys/devices/platform/rs300000a7.65536/sync_sts + chown -h system /sys/devices/platform/rs300100a7.65536/force_sync + chown -h system /sys/devices/platform/rs300100a7.65536/sync_sts + ;; +esac + +case "$target" in + "msm8960" | "msm8660" | "msm7630_surf") + echo 10 > /sys/devices/platform/msm_sdcc.3/idle_timeout + ;; + "msm7627a") + echo 10 > /sys/devices/platform/msm_sdcc.1/idle_timeout + ;; +esac + +# Post-setup services +case "$target" in + "msm8660" | "msm8960" | "msm8226" | "msm8610" | "mpq8092" ) + start mpdecision + ;; + "msm8974") + start mpdecision + echo 512 > /sys/block/mmcblk0/bdi/read_ahead_kb + ;; + "msm8909" | "msm8916" | "msm8937" | "msm8952" | "msm8953" | "msm8994" | "msm8992" | "msm8996" | "msm8998" | "sdm660" | "apq8098_latv" | "sdm845" | "sdm710" | "msmnile" | "msmsteppe" | "sm6150" | "kona" | "lito" | "trinket" | "atoll" | "bengal" | "sdmshrike") + setprop vendor.post_boot.parsed 1 + ;; + "apq8084") + rm /data/system/perfd/default_values + start mpdecision + echo 512 > /sys/block/mmcblk0/bdi/read_ahead_kb + echo 512 > /sys/block/sda/bdi/read_ahead_kb + echo 512 > /sys/block/sdb/bdi/read_ahead_kb + echo 512 > /sys/block/sdc/bdi/read_ahead_kb + echo 512 > /sys/block/sdd/bdi/read_ahead_kb + echo 512 > /sys/block/sde/bdi/read_ahead_kb + echo 512 > /sys/block/sdf/bdi/read_ahead_kb + echo 512 > /sys/block/sdg/bdi/read_ahead_kb + echo 512 > /sys/block/sdh/bdi/read_ahead_kb + ;; + "msm7627a") + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + case "$soc_id" in + "127" | "128" | "129") + start mpdecision + ;; + esac + ;; +esac + +# Enable Power modes and set the CPU Freq Sampling rates +case "$target" in + "msm7627a") + start qosmgrd + echo 1 > /sys/module/pm2/modes/cpu0/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/pm2/modes/cpu1/standalone_power_collapse/idle_enabled + echo 1 > /sys/module/pm2/modes/cpu0/standalone_power_collapse/suspend_enabled + echo 1 > /sys/module/pm2/modes/cpu1/standalone_power_collapse/suspend_enabled + #SuspendPC: + echo 1 > /sys/module/pm2/modes/cpu0/power_collapse/suspend_enabled + #IdlePC: + echo 1 > /sys/module/pm2/modes/cpu0/power_collapse/idle_enabled + echo 25000 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate + ;; +esac + +# Change adj level and min_free_kbytes setting for lowmemory killer to kick in +case "$target" in + "msm7627a") + echo 0,1,2,4,9,12 > /sys/module/lowmemorykiller/parameters/adj + echo 5120 > /proc/sys/vm/min_free_kbytes + ;; +esac + +# Install AdrenoTest.apk if not already installed +if [ -f /data/prebuilt/AdrenoTest.apk ]; then + if [ ! -d /data/data/com.qualcomm.adrenotest ]; then + pm install /data/prebuilt/AdrenoTest.apk + fi +fi + +# Install SWE_Browser.apk if not already installed +if [ -f /data/prebuilt/SWE_AndroidBrowser.apk ]; then + if [ ! -d /data/data/com.android.swe.browser ]; then + pm install /data/prebuilt/SWE_AndroidBrowser.apk + fi +fi + +# Change adj level and min_free_kbytes setting for lowmemory killer to kick in +case "$target" in + "msm8660") + start qosmgrd + echo 0,1,2,4,9,12 > /sys/module/lowmemorykiller/parameters/adj + echo 5120 > /proc/sys/vm/min_free_kbytes + ;; +esac +# Let kernel know our image version/variant/crm_version +if [ -f /sys/devices/soc0/select_image ]; then + image_version="10:" + image_version+=`getprop ro.build.id` + image_version+=":" + image_version+=`getprop ro.build.version.incremental` + image_variant=`getprop ro.product.name` + image_variant+="-" + image_variant+=`getprop ro.build.type` + oem_version=`getprop ro.build.version.codename` + echo 10 > /sys/devices/soc0/select_image + echo $image_version > /sys/devices/soc0/image_version + echo $image_variant > /sys/devices/soc0/image_variant + echo $oem_version > /sys/devices/soc0/image_crm_version +fi + +# Change console log level as per console config property +console_config=`getprop persist.vendor.console.silent.config` +case "$console_config" in + "1") + echo "Enable console config to $console_config" + echo 0 > /proc/sys/kernel/printk + ;; + *) + echo "Enable console config to $console_config" + ;; +esac + +# Parse misc partition path and set property +misc_link=$(ls -l /dev/block/bootdevice/by-name/misc) +real_path=${misc_link##*>} +setprop persist.vendor.mmi.misc_dev_path $real_path diff --git a/rootdir/bin/init.qcom.sdio.sh b/rootdir/bin/init.qcom.sdio.sh new file mode 100644 index 0000000..df77745 --- /dev/null +++ b/rootdir/bin/init.qcom.sdio.sh @@ -0,0 +1,78 @@ +#! /vendor/bin/sh + +# Copyright (c) 2010, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# * Neither the name of The Linux Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +# For successful WLAN card detection, WLAN needs SDIO polling turned on. +# This script can be used to turn on/off SDIO polling on appropriate +# SDIO slot on the MSM target (e.g. slot 3 on 7x30 surf). + +arg=$1 +target=`getprop ro.board.platform` + +case "$target" in + "msm7627_6x") + echo 1 > /sys/devices/platform/msm_sdcc.1/polling + echo 1 > /sys/devices/platform/msm_sdcc.2/polling + ;; + + "msm7627_ffa") + echo 1 > /sys/devices/platform/msm_sdcc.2/polling + ;; + + "msm7627_surf") + echo 1 > /sys/devices/platform/msm_sdcc.1/polling + echo 1 > /sys/devices/platform/msm_sdcc.2/polling + ;; + + "msm7627a") + echo 1 > /sys/devices/platform/msm_sdcc.2/polling + ;; + + "msm7630_surf") + echo 1 > /sys/devices/platform/msm_sdcc.3/polling + ;; + + "msm7630_1x") + echo 1 > /sys/devices/platform/msm_sdcc.3/polling + ;; + + "msm7630_fusion") + echo 1 > /sys/devices/platform/msm_sdcc.3/polling + ;; + + "msm8660") + echo 1 > /sys/devices/platform/msm_sdcc.4/polling + ;; + + "msm8660_csfb") + echo 1 > /sys/devices/platform/msm_sdcc.4/polling + ;; +esac + +exit 0 diff --git a/rootdir/bin/init.qcom.sensors.sh b/rootdir/bin/init.qcom.sensors.sh new file mode 100644 index 0000000..dcc0556 --- /dev/null +++ b/rootdir/bin/init.qcom.sensors.sh @@ -0,0 +1,33 @@ +#!/vendor/bin/sh +# Copyright (c) 2020 The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +# +# Function to start sensors for SSC enabled platforms +# +cp /vendor/etc/sensors/scripts/* /data/vendor/sensors/scripts/ +chmod a+rw /data/vendor/sensors/scripts/* diff --git a/rootdir/bin/init.qcom.sh b/rootdir/bin/init.qcom.sh new file mode 100644 index 0000000..5fcc108 --- /dev/null +++ b/rootdir/bin/init.qcom.sh @@ -0,0 +1,517 @@ +#! /vendor/bin/sh + +# Copyright (c) 2009-2016, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +target=`getprop ro.board.platform` +low_ram=`getprop ro.config.low_ram` +if [ -f /sys/devices/soc0/soc_id ]; then + platformid=`cat /sys/devices/soc0/soc_id` +else + platformid=`cat /sys/devices/system/soc/soc0/id` +fi + +start_battery_monitor() +{ + if ls /sys/bus/spmi/devices/qpnp-bms-*/fcc_data ; then + chown -h root.system /sys/module/pm8921_bms/parameters/* + chown -h root.system /sys/module/qpnp_bms/parameters/* + chown -h root.system /sys/bus/spmi/devices/qpnp-bms-*/fcc_data + chown -h root.system /sys/bus/spmi/devices/qpnp-bms-*/fcc_temp + chown -h root.system /sys/bus/spmi/devices/qpnp-bms-*/fcc_chgcyl + chmod 0660 /sys/module/qpnp_bms/parameters/* + chmod 0660 /sys/module/pm8921_bms/parameters/* + mkdir -p /data/bms + chown -h root.system /data/bms + chmod 0770 /data/bms + start battery_monitor + fi +} + +start_charger_monitor() +{ + if ls /sys/module/qpnp_charger/parameters/charger_monitor; then + chown -h root.system /sys/module/qpnp_charger/parameters/* + chown -h root.system /sys/class/power_supply/battery/input_current_max + chown -h root.system /sys/class/power_supply/battery/input_current_trim + chown -h root.system /sys/class/power_supply/battery/input_current_settled + chown -h root.system /sys/class/power_supply/battery/voltage_min + chmod 0664 /sys/class/power_supply/battery/input_current_max + chmod 0664 /sys/class/power_supply/battery/input_current_trim + chmod 0664 /sys/class/power_supply/battery/input_current_settled + chmod 0664 /sys/class/power_supply/battery/voltage_min + chmod 0664 /sys/module/qpnp_charger/parameters/charger_monitor + start charger_monitor + fi +} + +start_vm_bms() +{ + if [ -e /dev/vm_bms ]; then + chown -h root.system /sys/class/power_supply/bms/current_now + chown -h root.system /sys/class/power_supply/bms/voltage_ocv + chmod 0664 /sys/class/power_supply/bms/current_now + chmod 0664 /sys/class/power_supply/bms/voltage_ocv + start vm_bms + fi +} + +start_msm_irqbalance_8939() +{ + if [ -f /vendor/bin/msm_irqbalance ]; then + case "$platformid" in + "239" | "293" | "294" | "295" | "304" | "338" | "313" | "353" | "354") + start vendor.msm_irqbalance;; + "349" | "350" ) + start vendor.msm_irqbal_lb;; + esac + fi +} + +start_msm_irqbalance_msmnile() +{ + if [ -f /vendor/bin/msm_irqbalance ]; then + start vendor.msm_irqbalance + fi +} + +start_msm_irqbalance_kona() +{ + if [ -f /vendor/bin/msm_irqbalance ]; then + start vendor.msm_irqbalance + fi +} + +start_msm_irqbalance_lito() +{ + if [ -f /vendor/bin/msm_irqbalance ]; then + start vendor.msm_irqbalance + fi +} + +start_msm_irqbalance_atoll() +{ + if [ -f /vendor/bin/msm_irqbalance ]; then + start vendor.msm_irqbalance + fi +} + +start_msm_irqbalance660() +{ + if [ -f /vendor/bin/msm_irqbalance ]; then + case "$platformid" in + "317" | "321" | "324" | "325" | "326" | "336" | "345" | "346" | "360" | "393") + start vendor.msm_irqbalance;; + "318" | "327" | "385") + start vendor.msm_irqbl_sdm630;; + esac + fi +} + +start_msm_irqbalance() +{ + if [ -f /vendor/bin/msm_irqbalance ]; then + start vendor.msm_irqbalance + fi +} + +baseband=`getprop ro.baseband` +echo 1 > /proc/sys/net/ipv6/conf/default/accept_ra_defrtr + +case "$baseband" in + "svlte2a") + start bridgemgrd + ;; +esac + +case "$target" in + "msm7630_surf" | "msm7630_1x" | "msm7630_fusion") + if [ -f /sys/devices/soc0/hw_platform ]; then + value=`cat /sys/devices/soc0/hw_platform` + else + value=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + case "$value" in + "Fluid") + start profiler_daemon;; + esac + ;; + "msm8660" ) + if [ -f /sys/devices/soc0/hw_platform ]; then + platformvalue=`cat /sys/devices/soc0/hw_platform` + else + platformvalue=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + case "$platformvalue" in + "Fluid") + start profiler_daemon;; + esac + ;; + "msm8960") + case "$baseband" in + "msm") + start_battery_monitor;; + esac + + if [ -f /sys/devices/soc0/hw_platform ]; then + platformvalue=`cat /sys/devices/soc0/hw_platform` + else + platformvalue=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + case "$platformvalue" in + "Fluid") + start profiler_daemon;; + "Liquid") + start profiler_daemon;; + esac + ;; + "msm8974") + platformvalue=`cat /sys/devices/soc0/hw_platform` + case "$platformvalue" in + "Fluid") + start profiler_daemon;; + "Liquid") + start profiler_daemon;; + esac + case "$baseband" in + "msm") + start_battery_monitor + ;; + esac + start_charger_monitor + ;; + "sdm660") + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + else + hw_platform=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + + case "$soc_id" in + "317" | "324" | "325" | "326" | "318" | "327" ) + case "$hw_platform" in + "Surf") + setprop qemu.hw.mainkeys 0 + ;; + "MTP") + setprop qemu.hw.mainkeys 0 + ;; + "RCM") + setprop qemu.hw.mainkeys 0 + ;; + "QRD") + setprop qemu.hw.mainkeys 0 + ;; + esac + ;; + esac + start_msm_irqbalance660 + ;; + "apq8084") + platformvalue=`cat /sys/devices/soc0/hw_platform` + case "$platformvalue" in + "Fluid") + start profiler_daemon;; + "Liquid") + start profiler_daemon;; + esac + ;; + "msm8226") + start_charger_monitor + ;; + "msm8610") + start_charger_monitor + ;; + "msm8916") + start_vm_bms + start_msm_irqbalance_8939 + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + if [ -f /sys/devices/soc0/platform_subtype_id ]; then + platform_subtype_id=`cat /sys/devices/soc0/platform_subtype_id` + fi + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + fi + case "$soc_id" in + "239") + case "$hw_platform" in + "Surf") + case "$platform_subtype_id" in + "1") + setprop qemu.hw.mainkeys 0 + ;; + esac + ;; + "MTP") + case "$platform_subtype_id" in + "3") + setprop qemu.hw.mainkeys 0 + ;; + esac + ;; + esac + ;; + esac + ;; + "msm8994" | "msm8992" | "msm8998" | "apq8098_latv" | "sdm845" | "sdm710" | "qcs605" | "sm6150" | "trinket" | "bengal") + start_msm_irqbalance + ;; + "msm8996") + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + fi + case "$hw_platform" in + "MTP" | "CDP") + #Loop through the sysfs nodes and determine the correct sysfs to change the permission and ownership. + for count in 0 1 2 3 4 5 6 7 8 9 10 + do + dir="/sys/devices/soc/75ba000.i2c/i2c-12/12-0020/input/input"$count + if [ -d "$dir" ]; then + chmod 0660 $dir/secure_touch_enable + chmod 0440 $dir/secure_touch + chown system.drmrpc $dir/secure_touch_enable + chown system.drmrpc $dir/secure_touch + break + fi + done + ;; + esac + ;; + "msm8909") + start_vm_bms + ;; + "msmnile") + start_msm_irqbalance_msmnile + ;; + "kona") + start_msm_irqbalance_kona + ;; + "lito") + start_msm_irqbalance_lito + ;; + "atoll") + start_msm_irqbalance_atoll + ;; + "msm8937") + start_msm_irqbalance_8939 + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + else + hw_platform=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + if [ "$low_ram" != "true" ]; then + case "$soc_id" in + "294" | "295" | "303" | "307" | "308" | "309" | "313" | "320" | "353" | "354" | "363" | "364") + case "$hw_platform" in + "Surf") + setprop qemu.hw.mainkeys 0 + ;; + "MTP") + setprop qemu.hw.mainkeys 0 + ;; + "RCM") + setprop qemu.hw.mainkeys 0 + ;; + "QRD") + setprop qemu.hw.mainkeys 0 + ;; + esac + ;; + esac + fi + ;; + "msm8953") + start_msm_irqbalance_8939 + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + else + hw_platform=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + case "$soc_id" in + "293" | "304" | "338" | "351" | "349" | "350" ) + case "$hw_platform" in + "Surf") + setprop qemu.hw.mainkeys 0 + ;; + "MTP") + setprop qemu.hw.mainkeys 0 + ;; + "RCM") + setprop qemu.hw.mainkeys 0 + ;; + "QRD") + setprop qemu.hw.mainkeys 0 + ;; + esac + ;; + esac + ;; + "sdm710") + if [ -f /sys/devices/soc0/soc_id ]; then + soc_id=`cat /sys/devices/soc0/soc_id` + else + soc_id=`cat /sys/devices/system/soc/soc0/id` + fi + + if [ -f /sys/devices/soc0/hw_platform ]; then + hw_platform=`cat /sys/devices/soc0/hw_platform` + else + hw_platform=`cat /sys/devices/system/soc/soc0/hw_platform` + fi + case "$soc_id" in + "336" | "337" | "347" | "360" | "393" ) + case "$hw_platform" in + "Surf") + setprop qemu.hw.mainkeys 0 + ;; + "MTP") + setprop qemu.hw.mainkeys 0 + ;; + "RCM") + setprop qemu.hw.mainkeys 0 + ;; + "QRD") + setprop qemu.hw.mainkeys 0 + ;; + esac + ;; + esac + ;; +esac + +# +# Make modem config folder and copy firmware config to that folder for RIL +# +if [ -f /data/vendor/modem_config/ver_info.txt ]; then + prev_version_info=`cat /data/vendor/modem_config/ver_info.txt` +else + prev_version_info="" +fi + +cur_version_info=`cat /vendor/firmware_mnt/verinfo/ver_info.txt` +if [ ! -f /vendor/firmware_mnt/verinfo/ver_info.txt -o "$prev_version_info" != "$cur_version_info" ]; then + # add W for group recursively before delete + chmod g+w -R /data/vendor/modem_config/* + rm -rf /data/vendor/modem_config/* + # preserve the read only mode for all subdir and files + cp --preserve=m -dr /vendor/firmware_mnt/image/modem_pr/mcfg/configs/* /data/vendor/modem_config + cp --preserve=m -d /vendor/firmware_mnt/verinfo/ver_info.txt /data/vendor/modem_config/ + cp --preserve=m -d /vendor/firmware_mnt/image/modem_pr/mbn_ota.txt /data/vendor/modem_config/ + # the group must be root, otherwise this script could not add "W" for group recursively + chown -hR radio.root /data/vendor/modem_config/* +fi +chmod g-w /data/vendor/modem_config +setprop ro.vendor.ril.mbn_copy_completed 1 + +#check build variant for printk logging +#current default minimum boot-time-default +buildvariant=`getprop ro.build.type` +case "$buildvariant" in + "userdebug" | "eng") + #set default loglevel to KERN_INFO + echo "6 6 1 7" > /proc/sys/kernel/printk + ;; + *) + #set default loglevel to KERN_WARNING + echo "4 4 1 4" > /proc/sys/kernel/printk + ;; +esac + +#add permission for block_size, mem_type, mem_size nodes to collect diag over QDSS by ODL +#application by "oem_2902" group +chown -h root.oem_2902 /sys/devices/platform/soc/10048000.tmc/coresight-tmc-etr/block_size +chmod 660 /sys/devices/platform/soc/10048000.tmc/coresight-tmc-etr/block_size +chown -h root.oem_2902 /sys/devices/platform/soc/10048000.tmc/coresight-tmc-etr/buffer_size +chmod 660 /sys/devices/platform/soc/10048000.tmc/coresight-tmc-etr/buffer_size +chmod 660 /sys/devices/platform/soc/10048000.tmc/coresight-tmc-etr/out_mode +chown -h root.oem_2902 /sys/devices/platform/soc/1004f000.tmc/coresight-tmc-etr1/block_size +chmod 660 /sys/devices/platform/soc/1004f000.tmc/coresight-tmc-etr1/block_size +chown -h root.oem_2902 /sys/devices/platform/soc/1004f000.tmc/coresight-tmc-etr1/buffer_size +chmod 660 /sys/devices/platform/soc/1004f000.tmc/coresight-tmc-etr1/buffer_size +chmod 660 /sys/devices/platform/soc/1004f000.tmc/coresight-tmc-etr1/out_mode +chmod 660 /sys/devices/platform/soc/1004f000.tmc/coresight-tmc-etr1/enable_sink +chmod 660 /sys/devices/platform/soc/soc:modem_diag/coresight-modem-diag/enable_source +chown -h root.oem_2902 /sys/bus/coresight/reset_source_sink +chmod 660 /sys/bus/coresight/reset_source_sink + +# qcom case +chown -h system.system /sys/bus/coresight/devices/coresight-tmc-etf/curr_sink +chown -h system.system /sys/bus/coresight/devices/coresight-tmc-etf/enable_sink +chown -h system.system /sys/bus/coresight/devices/coresight-tmc-etr/curr_sink +chown -h system.system /sys/bus/coresight/devices/coresight-tmc-etr/enable_sink +chown -h system.system /sys/bus/coresight/devices/coresight-tmc-etr/out_mode +chown -h system.system /sys/bus/coresight/devices/coresight-tpiu/curr_sink +chown -h system.system /sys/bus/coresight/devices/coresight-tpiu/out_mode +chown -h system.system /sys/bus/coresight/devices/coresight-stm/enable +chown -h system.system /sys/bus/coresight/devices/coresight-stm/enable_source +chown -h system.system /sys/bus/coresight/devices/coresight-hwevent/enable +chown -h system.system /sys/bus/coresight/devices/coresight-stm/hwevent_enable +chown -h system.system /sys/bus/coresight/devices/coresight-hwevent/setreg +chown -h system.system /sys/bus/coresight/devices/coresight-swao-csr/timestamp +chown -h system.system /sys/bus/coresight/devices/coresight-modem-diag/enable_source +chown -h system.system /sys/bus/coresight/devices/coresight-tmc-etr1/enable_sink +chown -h system.system /sys/bus/coresight/devices/coresight-tmc-etr1/out_mode +chown -h system.system /sys/bus/coresight/devices/coresight-tmc-etr1/curr_sink + +# qcom case 05386569 +mkdir /config/stp-policy/coresight-stm:p_ost.policy +chmod 660 /config/stp-policy/coresight-stm:p_ost.policy +mkdir /config/stp-policy/coresight-stm:p_ost.policy/default +chmod 660 /config/stp-policy/coresight-stm:p_ost.policy/default +echo 0x10 > /sys/bus/coresight/devices/coresight-stm/traceid + +# disable ftrace log on coresight stm buffer +case "$buildvariant" in + "eng") + echo 0 > /sys/bus/coresight/devices/coresight-stm/port_enable + echo 0x10000003 > /sys/bus/coresight/devices/coresight-stm/port_select + echo 0xffffffff > /sys/bus/coresight/devices/coresight-stm/port_enable + ;; +esac diff --git a/rootdir/bin/init.qcom.usb.sh b/rootdir/bin/init.qcom.usb.sh new file mode 100644 index 0000000..6cfe674 --- /dev/null +++ b/rootdir/bin/init.qcom.usb.sh @@ -0,0 +1,200 @@ +#!/vendor/bin/sh +# Copyright (c) 2012-2018, 2020-2021 The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# * Neither the name of The Linux Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +# Changes from Qualcomm Innovation Center are provided under the following license: +# Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. +# SPDX-License-Identifier: BSD-3-Clause-Clear +# + +# Set platform variables +soc_hwplatform=`cat /sys/devices/soc0/hw_platform 2> /dev/null` +soc_machine=`cat /sys/devices/soc0/machine 2> /dev/null` +soc_machine=${soc_machine:0:2} +soc_id=`cat /sys/devices/soc0/soc_id 2> /dev/null` + +# +# Check ESOC for external modem +# +# Note: currently only a single MDM/SDX is supported +# +esoc_name=`cat /sys/bus/esoc/devices/esoc0/esoc_name 2> /dev/null` + +target=`getprop ro.board.platform` + +# +# Override USB default composition +# +if [ "$(getprop ro.build.type)" != "user" ]; then + # If USB persist config not set, set default configuration + if [ "$(getprop persist.vendor.usb.config)" == "" ]; then + if [ "$esoc_name" != "" ]; then + setprop persist.vendor.usb.config diag,diag_mdm,qdss,qdss_mdm,serial_cdev,dpl,rmnet,adb + else + case "$(getprop ro.baseband)" in + "apq") + setprop persist.vendor.usb.config diag,adb + ;; + *) + case "$soc_hwplatform" in + "Dragon" | "SBC") + setprop persist.vendor.usb.config diag,adb + ;; + *) + case "$soc_machine" in + "SA") + setprop persist.vendor.usb.config diag,adb + ;; + *) + case "$target" in + "msm8996") + setprop persist.vendor.usb.config diag,serial_cdev,serial_tty,rmnet_ipa,mass_storage,adb + ;; + "msm8909") + setprop persist.vendor.usb.config diag,serial_smd,rmnet_qti_bam,adb + ;; + "msm8937") + if [ -d /config/usb_gadget ]; then + setprop persist.vendor.usb.config diag,serial_cdev,rmnet,dpl,adb + else + case "$soc_id" in + "313" | "320") + setprop persist.vendor.usb.config diag,serial_smd,rmnet_ipa,adb + ;; + *) + setprop persist.vendor.usb.config diag,serial_smd,rmnet_qti_bam,adb + ;; + esac + fi + ;; + "msm8953") + if [ -d /config/usb_gadget ]; then + setprop persist.vendor.usb.config diag,serial_cdev,rmnet,dpl,adb + else + setprop persist.vendor.usb.config diag,serial_smd,rmnet_ipa,adb + fi + ;; + "msm8998" | "sdm660" | "apq8098_latv") + setprop persist.vendor.usb.config diag,serial_cdev,rmnet,adb + ;; + "sdm845" | "sdm710") + setprop persist.vendor.usb.config diag,serial_cdev,rmnet,dpl,adb + ;; + "msmnile" | "sm6150" | "trinket" | "lito" | "atoll" | "bengal" | "lahaina" | "holi" | \ + "taro" | "kalama" | "pineapple" | "blair") + setprop persist.vendor.usb.config diag,adb +# setprop persist.vendor.usb.config diag,serial_cdev,rmnet,dpl,qdss,adb + ;; + "gen4") + setprop persist.vendor.usb.config adb + ;; + *) + setprop persist.vendor.usb.config diag,adb + ;; + esac + ;; + esac + ;; + esac + ;; + esac + fi + fi +else # for user build let persist.sys.usb.config dictate the default composition + setprop persist.vendor.usb.config "" +fi + +# This check is needed for GKI 1.0 targets where QDSS is not available +if [ "$(getprop persist.vendor.usb.config)" == "diag,serial_cdev,rmnet,dpl,qdss,adb" -a \ + ! -d /config/usb_gadget/g1/functions/qdss.qdss ]; then + setprop persist.vendor.usb.config diag,serial_cdev,rmnet,dpl,adb +fi + +# Start peripheral mode on primary USB controllers for Automotive platforms +case "$soc_machine" in + "SA") + if [ -f /sys/bus/platform/devices/a600000.ssusb/mode ]; then + default_mode=`cat /sys/bus/platform/devices/a600000.ssusb/mode` + case "$default_mode" in + "none") + echo peripheral > /sys/bus/platform/devices/a600000.ssusb/mode + ;; + esac + fi + ;; +esac + +# check configfs is mounted or not +if [ -d /config/usb_gadget ]; then + machine_type=`cat /sys/devices/soc0/machine` + + # Chip ID & serial are used for unique MSM identification in Product String + # If not present, then omit them instead of using 0x00000000 + msm_chipid=`cat /sys/devices/soc0/nproduct_id`; + if [ "$msm_chipid" != "" ]; then + msm_chipid_hex=`printf _CID:%04X $msm_chipid` + fi + + msm_serial=`cat /sys/devices/soc0/serial_number`; + if [ "$msm_serial" != "" ]; then + msm_serial_hex=`printf _SN:%08X $msm_serial` + fi + + setprop vendor.usb.product_string "$machine_type-$soc_hwplatform$msm_chipid_hex$msm_serial_hex" + + # ADB requires valid iSerialNumber; if ro.serialno is missing, use dummy + serialnumber=`cat /config/usb_gadget/g1/strings/0x409/serialnumber 2> /dev/null` + if [ "$serialnumber" == "" ]; then + serialno=1234567 + echo $serialno > /config/usb_gadget/g1/strings/0x409/serialnumber + fi + setprop vendor.usb.configfs 1 +fi + +# +# Initialize RNDIS Diag option. If unset, set it to 'none'. +# +diag_extra=`getprop persist.vendor.usb.config.extra` +if [ "$diag_extra" == "" ]; then + setprop persist.vendor.usb.config.extra none +fi + +# enable rps cpus on msm8937 target +setprop vendor.usb.rps_mask 0 +case "$soc_id" in + "294" | "295" | "353" | "354") + setprop vendor.usb.rps_mask 40 + ;; +esac + +# +# Initialize UVC conifguration. +# +if [ -d /config/usb_gadget/g1/functions/uvc.0 ]; then + setprop vendor.usb.uvc.function.init 1 +fi diff --git a/rootdir/bin/init.qti.display_boot.sh b/rootdir/bin/init.qti.display_boot.sh new file mode 100644 index 0000000..5f93728 --- /dev/null +++ b/rootdir/bin/init.qti.display_boot.sh @@ -0,0 +1,166 @@ +#!/vendor/bin/sh +# Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. +# Copyright (c) 2020-2021, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# * Neither the name of The Linux Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# + +target=`getprop ro.board.platform` +if [ -f /sys/devices/soc0/soc_id ]; then + soc_hwid=`cat /sys/devices/soc0/soc_id` +else + soc_hwid=`cat /sys/devices/system/soc/soc0/id` +fi + +case "$target" in + "pineapple") + #SOC ID for Pineapple is 557 + case "$soc_hwid" in + 557) + setprop vendor.display.enable_fb_scaling 0 + setprop vendor.gralloc.use_dma_buf_heaps 1 + setprop vendor.display.target.version 4 + setprop vendor.display.enable_posted_start_dyn 2 + setprop vendor.display.enable_allow_idle_fallback 1 + setprop vendor.display.enable_perf_hint_large_comp_cycle 1 + setprop vendor.display.enable_rotator_ui 1 + setprop vendor.display.enable_spec_fence 1 + setprop vendor.display.thermal.version 1 + setprop vendor.display.enable_rc_support 1 + setprop vendor.display.enable_latch_media_content 1 + setprop vendor.display.enable_inline_writeback 0 + setprop vendor.display.timed_render_enable 1 + setprop vendor.gralloc.hw_supports_ubwcp 0 + ;; + esac + ;; + "kalama") + #SOC ID for Kalama is 519 + case "$soc_hwid" in + 519) + setprop vendor.display.enable_fb_scaling 0 + setprop vendor.display.target.version 4 + setprop vendor.gralloc.use_dma_buf_heaps 1 + setprop vendor.display.enable_posted_start_dyn 2 + setprop vendor.display.enable_allow_idle_fallback 1 + setprop vendor.display.enable_perf_hint_large_comp_cycle 1 + setprop vendor.display.enable_rotator_ui 1 + setprop vendor.display.enable_spec_fence 0 + setprop vendor.display.thermal.version 1 + setprop vendor.display.enable_rc_support 1 + setprop vendor.display.enable_latch_media_content 1 + setprop vendor.display.enable_inline_writeback 1 + setprop vendor.display.timed_render_enable 1 + setprop debug.sf.disable_client_composition_cache 0 + setprop vendor.gralloc.hw_supports_ubwcp 0 + ;; + esac + ;; + "taro") + #Set property to differentiate Waipio + #SOC ID for Waipio is 457 + #SOC ID for Cape MSM is 530 + #SOC ID for Cape APQ is 531 + #SOC ID for Cape 4g is 540 + case "$soc_hwid" in + 457) + setprop vendor.gralloc.use_dma_buf_heaps 1 + setprop vendor.display.enable_posted_start_dyn 2 + setprop vendor.display.enable_allow_idle_fallback 1 + setprop vendor.display.enable_perf_hint_large_comp_cycle 1 + setprop vendor.display.enable_rotator_ui 1 + setprop vendor.display.enable_spec_fence 0 + setprop vendor.display.thermal.version 1 + setprop vendor.display.enable_rc_support 1 + setprop vendor.display.target.version 3 + setprop vendor.display.enable_fb_scaling 0 + setprop vendor.display.disable_cwb_idle_fallback 1 + ;; + 530|531|540) + setprop vendor.gralloc.use_dma_buf_heaps 1 + setprop vendor.display.enable_posted_start_dyn 2 + setprop vendor.display.enable_allow_idle_fallback 1 + setprop vendor.display.enable_perf_hint_large_comp_cycle 1 + setprop vendor.display.enable_rotator_ui 1 + setprop vendor.display.enable_spec_fence 0 + setprop vendor.display.thermal.version 1 + setprop vendor.display.enable_rc_support 1 + setprop vendor.display.target.version 2 + setprop vendor.display.enable_qsync_idle 1 + setprop vendor.display.disable_cwb_idle_fallback 1 + ;; + 506|547) + # Set property for Diwali + # SOC ID for Diwali is 506 + setprop vendor.gralloc.use_dma_buf_heaps 1 + setprop vendor.display.enable_posted_start_dyn 2 + setprop vendor.display.enable_allow_idle_fallback 1 + setprop vendor.display.enable_perf_hint_large_comp_cycle 1 + setprop vendor.display.enable_rotator_ui 1 + setprop vendor.display.enable_spec_fence 0 + setprop vendor.display.thermal.version 1 + setprop vendor.display.enable_rc_support 1 + setprop vendor.display.target.version 2 + setprop vendor.display.enable_qsync_idle 1 + ;; + esac + ;; + "lahaina") + #Set property to differentiate Lahaina & Shima + #SOC ID for Lahaina is 415, Lahaina P is 439, Lahaina-ATP is 456 + case "$soc_hwid" in + 415|439|456) + # Set property for lahaina + setprop vendor.display.target.version 1 + setprop vendor.display.enable_posted_start_dyn 2 + setprop vendor.display.enable_perf_hint_large_comp_cycle 1 + setprop vendor.display.enable_allow_idle_fallback 1 + ;; + 450) + # Set property for shima + setprop vendor.display.target.version 2 + setprop vendor.display.enable_perf_hint_large_comp_cycle 1 + setprop vendor.display.enable_posted_start_dyn 1 + setprop vendor.display.enable_qsync_idle 1 + setprop vendor.display.enable_allow_idle_fallback 1 + ;; + 475) + # Set property for Yupik + setprop vendor.display.enable_posted_start_dyn 2 + ;; + esac + ;; + "holi") + # Set property for holi + setprop vendor.display.target.version 2 + setprop vendor.display.disable_offline_rotator 0 + setprop vendor.display.disable_rotator_ubwc 1 + setprop vendor.display.enable_perf_hint_large_comp_cycle 0 + setprop vendor.display.enable_posted_start_dyn 1 + setprop vendor.display.enable_allow_idle_fallback 1 + ;; +esac diff --git a/rootdir/bin/init.qti.kernel.debug-cliffs.sh b/rootdir/bin/init.qti.kernel.debug-cliffs.sh new file mode 100644 index 0000000..fd37119 --- /dev/null +++ b/rootdir/bin/init.qti.kernel.debug-cliffs.sh @@ -0,0 +1,31 @@ +#============================================================================= +# Copyright (c) 2020-2023 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +# +# Copyright (c) 2014-2017, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +#============================================================================= diff --git a/rootdir/bin/init.qti.kernel.debug-pineapple.sh b/rootdir/bin/init.qti.kernel.debug-pineapple.sh new file mode 100644 index 0000000..3fc7710 --- /dev/null +++ b/rootdir/bin/init.qti.kernel.debug-pineapple.sh @@ -0,0 +1,10706 @@ +#============================================================================= +# Copyright (c) 2020-2023 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +# +# Copyright (c) 2014-2017, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +#============================================================================= + +enable_tracing_events() +{ + # timer + echo 1 > /sys/kernel/tracing/events/timer/timer_expire_entry/enable + echo 1 > /sys/kernel/tracing/events/timer/timer_expire_exit/enable + echo 1 > /sys/kernel/tracing/events/timer/hrtimer_cancel/enable + echo 1 > /sys/kernel/tracing/events/timer/hrtimer_expire_entry/enable + echo 1 > /sys/kernel/tracing/events/timer/hrtimer_expire_exit/enable + echo 1 > /sys/kernel/tracing/events/timer/hrtimer_init/enable + echo 1 > /sys/kernel/tracing/events/timer/hrtimer_start/enable + #enble FTRACE for softirq events + echo 1 > /sys/kernel/tracing/events/irq/enable + #enble FTRACE for Workqueue events + echo 1 > /sys/kernel/tracing/events/workqueue/enable + echo 1 > /sys/kernel/tracing/events/workqueue/workqueue_execute_start/enable + # schedular + # echo 1 > /sys/kernel/tracing/events/sched/sched_cpu_hotplug/enable + echo 1 > /sys/kernel/tracing/events/sched/sched_migrate_task/enable + echo 1 > /sys/kernel/tracing/events/sched/sched_pi_setprio/enable + echo 1 > /sys/kernel/tracing/events/sched/sched_switch/enable + echo 1 > /sys/kernel/tracing/events/sched/sched_wakeup/enable + echo 1 > /sys/kernel/tracing/events/sched/sched_wakeup_new/enable + # sound + # echo 1 > /sys/kernel/tracing/events/asoc/snd_soc_reg_read/enable + # echo 1 > /sys/kernel/tracing/events/asoc/snd_soc_reg_write/enable + # mdp + # echo 1 > /sys/kernel/tracing/events/mdss/mdp_video_underrun_done/enable + # video + # echo 1 > /sys/kernel/tracing/events/msm_vidc/enable + # clock + echo 1 > /sys/kernel/tracing/events/power/clock_set_rate/enable + echo 1 > /sys/kernel/tracing/events/power/clock_enable/enable + echo 1 > /sys/kernel/tracing/events/power/clock_disable/enable + echo 1 > /sys/kernel/tracing/events/power/cpu_frequency/enable + # regulator + echo 1 > /sys/kernel/tracing/events/regulator/enable + # power + # echo 1 > /sys/kernel/tracing/events/msm_low_power/enable + # fastrpc + echo 1 > /sys/kernel/tracing/events/fastrpc/enable + + echo 1 > /sys/kernel/tracing/tracing_on +} + +# function to disable SF tracing on perf config +sf_tracing_disablement() +{ + # disable SF tracing if its perf config + if [ "$debug_build" = false ] + then + setprop debug.sf.enable_transaction_tracing 0 + fi +} + +# function to enable ftrace events +enable_ftrace_event_tracing() +{ + # bail out if its perf config + if [ "$debug_build" = false ] + then + return + fi + + # bail out if ftrace events aren't present + if [ ! -d /sys/kernel/tracing/events ] + then + return + fi + + enable_tracing_events +} + +gemnoc_dump() +{ + #; gem_noc_fault_sbm + echo 0x24183040 1 > $DCC_PATH/config + echo 0x24183048 1 > $DCC_PATH/config + + #; gem_noc_qns_llcc0_poc_err + echo 0x24102010 1 > $DCC_PATH/config + echo 0x24102020 6 > $DCC_PATH/config + #; gem_noc_qns_llcc2_poc_err + echo 0x24102410 1 > $DCC_PATH/config + echo 0x24102420 6 > $DCC_PATH/config + #; gem_noc_qns_llcc1_poc_err + echo 0x24142010 1 > $DCC_PATH/config + echo 0x24142020 6 > $DCC_PATH/config + #; gem_noc_qns_llcc3_poc_err + echo 0x24142410 1 > $DCC_PATH/config + echo 0x24142420 6 > $DCC_PATH/config + #; gem_noc_qns_cnoc_poc_err + echo 0x24182010 1 > $DCC_PATH/config + echo 0x24182020 6 > $DCC_PATH/config + #; gem_noc_qns_pcie_poc_err + echo 0x24182410 1 > $DCC_PATH/config + echo 0x24182420 6 > $DCC_PATH/config + + #; gem_noc_qns_llcc0_poc_dbg + echo 0x24100810 1 > $DCC_PATH/config + echo 0x24100838 1 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100838 1 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100838 1 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100838 1 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100808 2 > $DCC_PATH/config + #; gem_noc_qns_llcc2_poc_dbg + echo 0x24100C10 1 > $DCC_PATH/config + echo 0x24100C38 1 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C38 1 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C38 1 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C38 1 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C08 2 > $DCC_PATH/config + #; gem_noc_qns_llcc1_poc_dbg + echo 0x24140810 1 > $DCC_PATH/config + echo 0x24140838 1 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140838 1 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140838 1 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140838 1 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140808 2 > $DCC_PATH/config + #; gem_noc_qns_llcc3_poc_dbg + echo 0x24140C10 1 > $DCC_PATH/config + echo 0x24140C38 1 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C38 1 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C38 1 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C38 1 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C08 2 > $DCC_PATH/config + #; gem_noc_qns_cnoc_poc_dbg + echo 0x24180010 1 > $DCC_PATH/config + echo 0x24180038 1 > $DCC_PATH/config + echo 0x24180030 2 > $DCC_PATH/config + echo 0x24180030 2 > $DCC_PATH/config + echo 0x24180030 2 > $DCC_PATH/config + echo 0x24180030 2 > $DCC_PATH/config + echo 0x24180038 1 > $DCC_PATH/config + echo 0x24180030 2 > $DCC_PATH/config + echo 0x24180030 2 > $DCC_PATH/config + echo 0x24180030 2 > $DCC_PATH/config + echo 0x24180030 2 > $DCC_PATH/config + echo 0x24180038 1 > $DCC_PATH/config + echo 0x24180030 2 > $DCC_PATH/config + echo 0x24180030 2 > $DCC_PATH/config + echo 0x24180030 2 > $DCC_PATH/config + echo 0x24180030 2 > $DCC_PATH/config + echo 0x24180038 1 > $DCC_PATH/config + echo 0x24180030 2 > $DCC_PATH/config + echo 0x24180030 2 > $DCC_PATH/config + echo 0x24180030 2 > $DCC_PATH/config + echo 0x24180030 2 > $DCC_PATH/config + echo 0x24180008 2 > $DCC_PATH/config + #; gem_noc_qns_pcie_poc_dbg + echo 0x24180410 1 > $DCC_PATH/config + echo 0x24180438 1 > $DCC_PATH/config + echo 0x24180430 2 > $DCC_PATH/config + echo 0x24180430 2 > $DCC_PATH/config + echo 0x24180430 2 > $DCC_PATH/config + echo 0x24180430 2 > $DCC_PATH/config + echo 0x24180438 1 > $DCC_PATH/config + echo 0x24180430 2 > $DCC_PATH/config + echo 0x24180430 2 > $DCC_PATH/config + echo 0x24180430 2 > $DCC_PATH/config + echo 0x24180430 2 > $DCC_PATH/config + echo 0x24180438 1 > $DCC_PATH/config + echo 0x24180430 2 > $DCC_PATH/config + echo 0x24180430 2 > $DCC_PATH/config + echo 0x24180430 2 > $DCC_PATH/config + echo 0x24180430 2 > $DCC_PATH/config + echo 0x24180438 1 > $DCC_PATH/config + echo 0x24180430 2 > $DCC_PATH/config + echo 0x24180430 2 > $DCC_PATH/config + echo 0x24180430 2 > $DCC_PATH/config + echo 0x24180430 2 > $DCC_PATH/config + echo 0x24180408 2 > $DCC_PATH/config + + #; Coherent_even_chain + echo 0x24101018 1 > $DCC_PATH/config + echo 0x24101008 1 > $DCC_PATH/config + echo 0x24101010 2 > $DCC_PATH/config + echo 0x24101010 2 > $DCC_PATH/config + echo 0x24101010 2 > $DCC_PATH/config + echo 0x24101010 2 > $DCC_PATH/config + #; NonCoherent_even_chain + echo 0x24101098 1 > $DCC_PATH/config + echo 0x24101088 1 > $DCC_PATH/config + echo 0x24101090 2 > $DCC_PATH/config + echo 0x24101090 2 > $DCC_PATH/config + echo 0x24101090 2 > $DCC_PATH/config + echo 0x24101090 2 > $DCC_PATH/config + echo 0x24101090 2 > $DCC_PATH/config + #; Coherent_odd_chain + echo 0x24141018 1 > $DCC_PATH/config + echo 0x24141008 1 > $DCC_PATH/config + echo 0x24141010 2 > $DCC_PATH/config + echo 0x24141010 2 > $DCC_PATH/config + echo 0x24141010 2 > $DCC_PATH/config + echo 0x24141010 2 > $DCC_PATH/config + #; NonCoherent_odd_chain + echo 0x24141098 1 > $DCC_PATH/config + echo 0x24141088 1 > $DCC_PATH/config + echo 0x24141090 2 > $DCC_PATH/config + echo 0x24141090 2 > $DCC_PATH/config + echo 0x24141090 2 > $DCC_PATH/config + echo 0x24141090 2 > $DCC_PATH/config + echo 0x24141090 2 > $DCC_PATH/config + #; Coherent_sys_chain + echo 0x24181018 1 > $DCC_PATH/config + echo 0x24181008 1 > $DCC_PATH/config + echo 0x24181010 2 > $DCC_PATH/config + echo 0x24181010 2 > $DCC_PATH/config + echo 0x24181010 2 > $DCC_PATH/config + #; NonCoherent_sys_chain + echo 0x24181098 1 > $DCC_PATH/config + echo 0x24181088 1 > $DCC_PATH/config + echo 0x24181090 2 > $DCC_PATH/config + echo 0x24181090 2 > $DCC_PATH/config + echo 0x24181090 2 > $DCC_PATH/config + echo 0x24181090 2 > $DCC_PATH/config + echo 0x24181090 2 > $DCC_PATH/config + echo 0x24181090 2 > $DCC_PATH/config + echo 0x24181090 2 > $DCC_PATH/config + echo 0x24181090 2 > $DCC_PATH/config + echo 0x24181090 2 > $DCC_PATH/config + echo 0x24181090 2 > $DCC_PATH/config + echo 0x24181090 2 > $DCC_PATH/config + echo 0x24181090 2 > $DCC_PATH/config + + echo 0x24101014 1 > $DCC_PATH/config + echo 0x24101094 1 > $DCC_PATH/config + echo 0x24141014 1 > $DCC_PATH/config + echo 0x24141094 1 > $DCC_PATH/config + echo 0x24181014 1 > $DCC_PATH/config + echo 0x24181094 1 > $DCC_PATH/config +} + +gemnoc_dump_full_cxt() +{ + # gem_noc_qns_llcc0_poc_dbg + echo 0x24100828 0x2 > $DCC_PATH/config_write + echo 0x40 > $DCC_PATH/loop + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x24100830 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + echo 0x24100828 0x1 > $DCC_PATH/config_write + + # gem_noc_qns_llcc2_poc_dbg + echo 0x24100C28 0x2 > $DCC_PATH/config_write + echo 0x40 > $DCC_PATH/loop + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x24100C30 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + echo 0x24100C28 0x1 > $DCC_PATH/config_write + + # gem_noc_qns_llcc1_poc_dbg + echo 0x24140828 0x2 > $DCC_PATH/config_write + echo 0x40 > $DCC_PATH/loop + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x24140830 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + echo 0x24140828 0x1 > $DCC_PATH/config_write + + # gem_noc_qns_llcc3_poc_dbg + echo 0x24140C28 0x2 > $DCC_PATH/config_write + echo 0x40 > $DCC_PATH/loop + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x24140C30 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + echo 0x24140C28 0x1 > $DCC_PATH/config_write +} + +dc_noc_dump() +{ + #; dc_noc_dch_erl + echo 0x240e0010 1 > $DCC_PATH/config + echo 0x240e0020 8 > $DCC_PATH/config + echo 0x240e0248 1 > $DCC_PATH/config + #; dc_noc_ch_hm02_erl + echo 0x245f0010 1 > $DCC_PATH/config + echo 0x245f0020 8 > $DCC_PATH/config + echo 0x245f0248 1 > $DCC_PATH/config + #; dc_noc_ch_hm13_erl + echo 0x247f0010 1 > $DCC_PATH/config + echo 0x247f0020 8 > $DCC_PATH/config + echo 0x247f0248 1 > $DCC_PATH/config + #; llclpi_noc_erl + echo 0x24330010 1 > $DCC_PATH/config + echo 0x24330020 8 > $DCC_PATH/config + echo 0x24330248 1 > $DCC_PATH/config + + #; dch/DebugChain + echo 0x240e1018 1 > $DCC_PATH/config + echo 0x240e1008 1 > $DCC_PATH/config + echo 0x9 > $DCC_PATH/loop + echo 0x240e1010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + #; ch_hm02/DebugChain + echo 0x245f2018 1 > $DCC_PATH/config + echo 0x245f2008 1 > $DCC_PATH/config + echo 0x3 > $DCC_PATH/loop + echo 0x245f2010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + #; ch_hm13/DebugChain + echo 0x247f2018 1 > $DCC_PATH/config + echo 0x247f2008 1 > $DCC_PATH/config + echo 0x3 > $DCC_PATH/loop + echo 0x247f2010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + #; llclpi_noc/DebugChain + echo 0x24331018 1 > $DCC_PATH/config + echo 0x24331008 1 > $DCC_PATH/config + echo 0x8 > $DCC_PATH/loop + echo 0x24331010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop +} + + +lpass_noc_dump() +{ + echo 0x00506048 1 > $DCC_PATH/config + echo 0x00510018 1 > $DCC_PATH/config + echo 0x00510008 1 > $DCC_PATH/config + echo 0x4 > $DCC_PATH/loop + echo 0x00510010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + echo 0x00511018 1 > $DCC_PATH/config + echo 0x00511008 1 > $DCC_PATH/config + echo 0x4 > $DCC_PATH/loop + echo 0x00511010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + + #; lpass_lpiaon_noc_lpiaon_chipcx_erl + echo 0x07400010 1 > $DCC_PATH/config + echo 0x07400020 8 > $DCC_PATH/config + echo 0x07402048 1 > $DCC_PATH/config + #; lpass_lpiaon_noc_lpiaon_chipcx/DebugChain + echo 0x07401018 1 > $DCC_PATH/config + echo 0x07401008 1 > $DCC_PATH/config + echo 0x07401010 2 > $DCC_PATH/config + echo 0x07401010 2 > $DCC_PATH/config + + #; lpass_lpiaon_noc_lpiaon_lpicx_erl + echo 0x07410010 1 > $DCC_PATH/config + echo 0x07410020 8 > $DCC_PATH/config + echo 0x07410248 1 > $DCC_PATH/config + #; lpass_lpiaon_noc_lpiaon_lpicx/DebugChain + echo 0x07402018 1 > $DCC_PATH/config + echo 0x07402008 1 > $DCC_PATH/config + echo 0x07402010 2 > $DCC_PATH/config + echo 0x07402010 2 > $DCC_PATH/config + echo 0x07402010 2 > $DCC_PATH/config + + #; lpass_lpicx_erl + echo 0x07430010 1 > $DCC_PATH/config + echo 0x07430020 8 > $DCC_PATH/config + echo 0x07430248 1 > $DCC_PATH/config + #; lpass_lpicx/DebugChain + echo 0x07432018 1 > $DCC_PATH/config + echo 0x07432008 1 > $DCC_PATH/config + echo 0xd > $DCC_PATH/loop + echo 0x07432010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + + #; lpass_ag_noc_erl + echo 0x074e0010 1 > $DCC_PATH/config + echo 0x074e0020 8 > $DCC_PATH/config + echo 0x074e0248 1 > $DCC_PATH/config + #; lpass_ag_noc/DebugChain + echo 0x074e2018 1 > $DCC_PATH/config + echo 0x074e2008 1 > $DCC_PATH/config + echo 0x6 > $DCC_PATH/loop + echo 0x074e2010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop +} + +mmss_noc_dump() +{ + #; mmss_noc_erl + echo 0x01780010 1 > $DCC_PATH/config + echo 0x01780020 8 > $DCC_PATH/config + echo 0x01780248 1 > $DCC_PATH/config + #; mmss_noc/DebugChain + echo 0x01782018 1 > $DCC_PATH/config + echo 0x01782008 1 > $DCC_PATH/config + echo 0xc > $DCC_PATH/loop + echo 0x01782010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + #; mmss_noc_QTB500/DebugChain + echo 0x01783018 1 > $DCC_PATH/config + echo 0x01783008 1 > $DCC_PATH/config + echo 0x11 > $DCC_PATH/loop + echo 0x01783010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop +} + +system_noc_dump() +{ + #; system_noc_erl + echo 0x01680010 1 > $DCC_PATH/config + echo 0x01680020 8 > $DCC_PATH/config + echo 0x01681048 1 > $DCC_PATH/config + #; system_noc/DebugChain + echo 0x01682018 1 > $DCC_PATH/config + echo 0x01682008 1 > $DCC_PATH/config + echo 0x6 > $DCC_PATH/loop + echo 0x01682010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop +} + +aggre_noc_dump() +{ + #; a1_noc_aggre_noc_erl + echo 0x016e0010 1 > $DCC_PATH/config + echo 0x016e0020 8 > $DCC_PATH/config + echo 0x016e0248 1 > $DCC_PATH/config + #; a1_noc_aggre_noc_south/DebugChain + echo 0x016e1018 1 > $DCC_PATH/config + echo 0x016e1008 1 > $DCC_PATH/config + echo 0x4 > $DCC_PATH/loop + echo 0x016e1010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + #; a1_noc_aggre_noc_ANOC_NIU/DebugChain + echo 0x016e1098 1 > $DCC_PATH/config + echo 0x016e1088 1 > $DCC_PATH/config + echo 0x3 > $DCC_PATH/loop + echo 0x016e1090 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + #; a1_noc_aggre_noc_ANOC_QTB/DebugChain + echo 0x016e1118 1 > $DCC_PATH/config + echo 0x016e1108 1 > $DCC_PATH/config + echo 0x7 > $DCC_PATH/loop + echo 0x016e1110 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + + #; a2_noc_aggre_noc_erl + echo 0x01700010 1 > $DCC_PATH/config + echo 0x01700020 8 > $DCC_PATH/config + echo 0x01700248 1 > $DCC_PATH/config + #; a2_noc_aggre_noc_center/DebugChain + echo 0x01701018 1 > $DCC_PATH/config + echo 0x01701008 1 > $DCC_PATH/config + echo 0x4 > $DCC_PATH/loop + echo 0x01701010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + #; a2_noc_aggre_noc_east/DebugChain + echo 0x01701098 1 > $DCC_PATH/config + echo 0x01701088 1 > $DCC_PATH/config + echo 0x2 > $DCC_PATH/loop + echo 0x01701090 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + #; a2_noc_aggre_noc_north/DebugChain + echo 0x01701118 1 > $DCC_PATH/config + echo 0x01701108 1 > $DCC_PATH/config + echo 0x3 > $DCC_PATH/loop + echo 0x01701110 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop +} + +config_noc_dump() +{ + #; cnoc_cfg_erl + echo 0x01600010 1 > $DCC_PATH/config + echo 0x01600020 8 > $DCC_PATH/config + echo 0x01600248 2 > $DCC_PATH/config + echo 0x01600258 1 > $DCC_PATH/config + #; cnoc_cfg_center/DebugChain + echo 0x01602018 1 > $DCC_PATH/config + echo 0x01602008 1 > $DCC_PATH/config + echo 0x7 > $DCC_PATH/loop + echo 0x01602010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + #; cnoc_cfg_west/DebugChain + echo 0x01602098 1 > $DCC_PATH/config + echo 0x01602088 1 > $DCC_PATH/config + echo 0x2 > $DCC_PATH/loop + echo 0x01602090 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + #; cnoc_cfg_mmnoc/DebugChain + echo 0x01602118 1 > $DCC_PATH/config + echo 0x01602108 1 > $DCC_PATH/config + echo 0x3 > $DCC_PATH/loop + echo 0x01602110 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + #; cnoc_cfg_north/DebugChain + echo 0x01602198 1 > $DCC_PATH/config + echo 0x01602188 1 > $DCC_PATH/config + echo 0x3 > $DCC_PATH/loop + echo 0x01602190 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + #; cnoc_cfg_south/DebugChain + echo 0x01602218 1 > $DCC_PATH/config + echo 0x01602208 1 > $DCC_PATH/config + echo 0x2 > $DCC_PATH/loop + echo 0x01602210 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + #; cnoc_cfg_east/DebugChain + echo 0x01602298 1 > $DCC_PATH/config + echo 0x01602288 1 > $DCC_PATH/config + echo 0x2 > $DCC_PATH/loop + echo 0x01602290 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + + #; cnoc_main_erl + echo 0x01500010 1 > $DCC_PATH/config + echo 0x01500020 8 > $DCC_PATH/config + echo 0x01500248 1 > $DCC_PATH/config + echo 0x01500448 1 > $DCC_PATH/config + #; cnoc_main_center/DebugChain + echo 0x01502018 1 > $DCC_PATH/config + echo 0x01502008 1 > $DCC_PATH/config + echo 0x7 > $DCC_PATH/loop + echo 0x01502010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + #; cnoc_main_north/DebugChain + echo 0x01502098 1 > $DCC_PATH/config + echo 0x01502088 1 > $DCC_PATH/config + echo 0x7 > $DCC_PATH/loop + echo 0x01502090 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop +} + +nsp_noc_dump() +{ + echo 0x00526048 1 > $DCC_PATH/config + echo 0x00531018 1 > $DCC_PATH/config + echo 0x00531008 1 > $DCC_PATH/config + echo 0x4 > $DCC_PATH/loop + echo 0x00531010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + echo 0x00532018 1 > $DCC_PATH/config + echo 0x00532008 1 > $DCC_PATH/config + echo 0x4 > $DCC_PATH/loop + echo 0x00532010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop + + #; turing_nsp_erl + echo 0x320c0010 1 > $DCC_PATH/config + echo 0x320c0020 8 > $DCC_PATH/config + echo 0x320c0248 1 > $DCC_PATH/config + #; turing_nsp_noc/DebugChain + echo 0x320c1018 1 > $DCC_PATH/config + echo 0x320c1008 1 > $DCC_PATH/config + echo 0x5 > $DCC_PATH/loop + echo 0x320c1010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop +} + +config_dcc_ddr() +{ + #DDR -DCC starts here. + #DDRSS + echo 0x2407701c > $DCC_PATH/config + echo 0x24077030 > $DCC_PATH/config + echo 0x2408005c > $DCC_PATH/config + echo 0x240800c8 > $DCC_PATH/config + echo 0x240800d4 > $DCC_PATH/config + echo 0x240800e0 > $DCC_PATH/config + echo 0x240800ec > $DCC_PATH/config + echo 0x240800f8 > $DCC_PATH/config + echo 0x240801b4 > $DCC_PATH/config + echo 0x240a8120 > $DCC_PATH/config + echo 0x240a8124 > $DCC_PATH/config + echo 0x240a8128 > $DCC_PATH/config + echo 0x240a812c > $DCC_PATH/config + echo 0x240a8130 > $DCC_PATH/config + echo 0x240a8144 > $DCC_PATH/config + echo 0x240a8148 > $DCC_PATH/config + echo 0x240a81d0 > $DCC_PATH/config + echo 0x240a81d4 > $DCC_PATH/config + echo 0x240a81d8 > $DCC_PATH/config + echo 0x240a81dc > $DCC_PATH/config + echo 0x240a81f0 > $DCC_PATH/config + echo 0x240a81fc > $DCC_PATH/config + echo 0x240a8208 > $DCC_PATH/config + echo 0x240a8214 > $DCC_PATH/config + # echo 0x240a81c8 > $DCC_PATH/config + # echo 0x240a81cc > $DCC_PATH/config + echo 0x240a8264 > $DCC_PATH/config + echo 0x240a8284 > $DCC_PATH/config + echo 0x240a82fc > $DCC_PATH/config + # echo 0x240a8804 > $DCC_PATH/config + # echo 0x240a880c > $DCC_PATH/config + echo 0x240a8860 > $DCC_PATH/config + echo 0x240a8864 > $DCC_PATH/config + echo 0x240a8868 > $DCC_PATH/config + echo 0x240aa034 > $DCC_PATH/config + echo 0x240aa038 > $DCC_PATH/config + echo 0x240aa03c > $DCC_PATH/config + echo 0x240ba28c > $DCC_PATH/config + echo 0x240ba294 > $DCC_PATH/config + echo 0x240ba29c > $DCC_PATH/config + echo 0x24185100 > $DCC_PATH/config + echo 0x24185104 > $DCC_PATH/config + echo 0x24185108 > $DCC_PATH/config + echo 0x2418510c > $DCC_PATH/config + echo 0x24187100 > $DCC_PATH/config + echo 0x2418c100 > $DCC_PATH/config + echo 0x24401e64 > $DCC_PATH/config + echo 0x24401ea0 > $DCC_PATH/config + echo 0x24403e64 > $DCC_PATH/config + echo 0x24403ea0 > $DCC_PATH/config + echo 0x2440527c > $DCC_PATH/config + echo 0x24405290 > $DCC_PATH/config + echo 0x244054ec > $DCC_PATH/config + echo 0x244054f4 > $DCC_PATH/config + echo 0x24405514 > $DCC_PATH/config + echo 0x2440551c > $DCC_PATH/config + echo 0x24405524 > $DCC_PATH/config + echo 0x24405548 > $DCC_PATH/config + echo 0x24405550 > $DCC_PATH/config + echo 0x24405558 > $DCC_PATH/config + echo 0x244055b8 > $DCC_PATH/config + echo 0x244055c0 > $DCC_PATH/config + echo 0x244055ec > $DCC_PATH/config + echo 0x24405870 > $DCC_PATH/config + echo 0x244058a0 > $DCC_PATH/config + echo 0x244058a8 > $DCC_PATH/config + echo 0x244058b0 > $DCC_PATH/config + echo 0x244058b8 > $DCC_PATH/config + echo 0x244058d8 > $DCC_PATH/config + echo 0x244058dc > $DCC_PATH/config + echo 0x244058f4 > $DCC_PATH/config + echo 0x244058fc > $DCC_PATH/config + echo 0x24405920 > $DCC_PATH/config + echo 0x24405928 > $DCC_PATH/config + echo 0x24405944 > $DCC_PATH/config + echo 0x24406604 > $DCC_PATH/config + echo 0x2440660c > $DCC_PATH/config + echo 0x24440310 > $DCC_PATH/config + echo 0x24440400 > $DCC_PATH/config + echo 0x24440404 > $DCC_PATH/config + echo 0x24440410 > $DCC_PATH/config + echo 0x24440414 > $DCC_PATH/config + echo 0x24440418 > $DCC_PATH/config + echo 0x24440428 > $DCC_PATH/config + echo 0x24440430 > $DCC_PATH/config + echo 0x24440440 > $DCC_PATH/config + echo 0x24440448 > $DCC_PATH/config + echo 0x244404a0 > $DCC_PATH/config + echo 0x244404b0 > $DCC_PATH/config + echo 0x244404b4 > $DCC_PATH/config + echo 0x244404b8 > $DCC_PATH/config + echo 0x244404d0 > $DCC_PATH/config + echo 0x244404d4 > $DCC_PATH/config + echo 0x2444341c > $DCC_PATH/config + echo 0x24445804 > $DCC_PATH/config + echo 0x2444590c > $DCC_PATH/config + echo 0x24445a14 > $DCC_PATH/config + echo 0x24445c1c > $DCC_PATH/config + echo 0x24445c38 > $DCC_PATH/config + echo 0x24449100 > $DCC_PATH/config + echo 0x24449110 > $DCC_PATH/config + echo 0x24449120 > $DCC_PATH/config + echo 0x24449180 > $DCC_PATH/config + echo 0x24449184 > $DCC_PATH/config + echo 0x24460618 > $DCC_PATH/config + echo 0x24460684 > $DCC_PATH/config + echo 0x2446068c > $DCC_PATH/config + echo 0x24481e64 > $DCC_PATH/config + echo 0x24481ea0 > $DCC_PATH/config + echo 0x24483e64 > $DCC_PATH/config + echo 0x24483ea0 > $DCC_PATH/config + echo 0x2448527c > $DCC_PATH/config + echo 0x24485290 > $DCC_PATH/config + echo 0x244854ec > $DCC_PATH/config + echo 0x244854f4 > $DCC_PATH/config + echo 0x24485514 > $DCC_PATH/config + echo 0x2448551c > $DCC_PATH/config + echo 0x24485524 > $DCC_PATH/config + echo 0x24485548 > $DCC_PATH/config + echo 0x24485550 > $DCC_PATH/config + echo 0x24485558 > $DCC_PATH/config + echo 0x244855b8 > $DCC_PATH/config + echo 0x244855c0 > $DCC_PATH/config + echo 0x244855ec > $DCC_PATH/config + echo 0x24485870 > $DCC_PATH/config + echo 0x244858a0 > $DCC_PATH/config + echo 0x244858a8 > $DCC_PATH/config + echo 0x244858b0 > $DCC_PATH/config + echo 0x244858b8 > $DCC_PATH/config + echo 0x244858d8 > $DCC_PATH/config + echo 0x244858dc > $DCC_PATH/config + echo 0x244858f4 > $DCC_PATH/config + echo 0x244858fc > $DCC_PATH/config + echo 0x24485920 > $DCC_PATH/config + echo 0x24485928 > $DCC_PATH/config + echo 0x24485944 > $DCC_PATH/config + echo 0x24486604 > $DCC_PATH/config + echo 0x2448660c > $DCC_PATH/config + echo 0x244c0310 > $DCC_PATH/config + echo 0x244c0400 > $DCC_PATH/config + echo 0x244c0404 > $DCC_PATH/config + echo 0x244c0410 > $DCC_PATH/config + echo 0x244c0414 > $DCC_PATH/config + echo 0x244c0418 > $DCC_PATH/config + echo 0x244c0428 > $DCC_PATH/config + echo 0x244c0430 > $DCC_PATH/config + echo 0x244c0440 > $DCC_PATH/config + echo 0x244c0448 > $DCC_PATH/config + echo 0x244c04a0 > $DCC_PATH/config + echo 0x244c04b0 > $DCC_PATH/config + echo 0x244c04b4 > $DCC_PATH/config + echo 0x244c04b8 > $DCC_PATH/config + echo 0x244c04d0 > $DCC_PATH/config + echo 0x244c04d4 > $DCC_PATH/config + echo 0x244c341c > $DCC_PATH/config + echo 0x244c5804 > $DCC_PATH/config + echo 0x244c590c > $DCC_PATH/config + echo 0x244c5a14 > $DCC_PATH/config + echo 0x244c5c1c > $DCC_PATH/config + echo 0x244c5c38 > $DCC_PATH/config + echo 0x244c9100 > $DCC_PATH/config + echo 0x244c9110 > $DCC_PATH/config + echo 0x244c9120 > $DCC_PATH/config + echo 0x244c9180 > $DCC_PATH/config + echo 0x244c9184 > $DCC_PATH/config + echo 0x244e0618 > $DCC_PATH/config + echo 0x244e0684 > $DCC_PATH/config + echo 0x244e068c > $DCC_PATH/config + echo 0x24601e64 > $DCC_PATH/config + echo 0x24601ea0 > $DCC_PATH/config + echo 0x24603e64 > $DCC_PATH/config + echo 0x24603ea0 > $DCC_PATH/config + echo 0x2460527c > $DCC_PATH/config + echo 0x24605290 > $DCC_PATH/config + echo 0x246054ec > $DCC_PATH/config + echo 0x246054f4 > $DCC_PATH/config + echo 0x24605514 > $DCC_PATH/config + echo 0x2460551c > $DCC_PATH/config + echo 0x24605524 > $DCC_PATH/config + echo 0x24605548 > $DCC_PATH/config + echo 0x24605550 > $DCC_PATH/config + echo 0x24605558 > $DCC_PATH/config + echo 0x246055b8 > $DCC_PATH/config + echo 0x246055c0 > $DCC_PATH/config + echo 0x246055ec > $DCC_PATH/config + echo 0x24605870 > $DCC_PATH/config + echo 0x246058a0 > $DCC_PATH/config + echo 0x246058a8 > $DCC_PATH/config + echo 0x246058b0 > $DCC_PATH/config + echo 0x246058b8 > $DCC_PATH/config + echo 0x246058d8 > $DCC_PATH/config + echo 0x246058dc > $DCC_PATH/config + echo 0x246058f4 > $DCC_PATH/config + echo 0x246058fc > $DCC_PATH/config + echo 0x24605920 > $DCC_PATH/config + echo 0x24605928 > $DCC_PATH/config + echo 0x24605944 > $DCC_PATH/config + echo 0x24606604 > $DCC_PATH/config + echo 0x2460660c > $DCC_PATH/config + echo 0x24640310 > $DCC_PATH/config + echo 0x24640400 > $DCC_PATH/config + echo 0x24640404 > $DCC_PATH/config + echo 0x24640410 > $DCC_PATH/config + echo 0x24640414 > $DCC_PATH/config + echo 0x24640418 > $DCC_PATH/config + echo 0x24640428 > $DCC_PATH/config + echo 0x24640430 > $DCC_PATH/config + echo 0x24640440 > $DCC_PATH/config + echo 0x24640448 > $DCC_PATH/config + echo 0x246404a0 > $DCC_PATH/config + echo 0x246404b0 > $DCC_PATH/config + echo 0x246404b4 > $DCC_PATH/config + echo 0x246404b8 > $DCC_PATH/config + echo 0x246404d0 > $DCC_PATH/config + echo 0x246404d4 > $DCC_PATH/config + echo 0x2464341c > $DCC_PATH/config + echo 0x24645804 > $DCC_PATH/config + echo 0x2464590c > $DCC_PATH/config + echo 0x24645a14 > $DCC_PATH/config + echo 0x24645c1c > $DCC_PATH/config + echo 0x24645c38 > $DCC_PATH/config + echo 0x24649100 > $DCC_PATH/config + echo 0x24649110 > $DCC_PATH/config + echo 0x24649120 > $DCC_PATH/config + echo 0x24649180 > $DCC_PATH/config + echo 0x24649184 > $DCC_PATH/config + echo 0x24660618 > $DCC_PATH/config + echo 0x24660684 > $DCC_PATH/config + echo 0x2466068c > $DCC_PATH/config + echo 0x24681e64 > $DCC_PATH/config + echo 0x24681ea0 > $DCC_PATH/config + echo 0x24683e64 > $DCC_PATH/config + echo 0x24683ea0 > $DCC_PATH/config + echo 0x2468527c > $DCC_PATH/config + echo 0x24685290 > $DCC_PATH/config + echo 0x246854ec > $DCC_PATH/config + echo 0x246854f4 > $DCC_PATH/config + echo 0x24685514 > $DCC_PATH/config + echo 0x2468551c > $DCC_PATH/config + echo 0x24685524 > $DCC_PATH/config + echo 0x24685548 > $DCC_PATH/config + echo 0x24685550 > $DCC_PATH/config + echo 0x24685558 > $DCC_PATH/config + echo 0x246855b8 > $DCC_PATH/config + echo 0x246855c0 > $DCC_PATH/config + echo 0x246855ec > $DCC_PATH/config + echo 0x24685870 > $DCC_PATH/config + echo 0x246858a0 > $DCC_PATH/config + echo 0x246858a8 > $DCC_PATH/config + echo 0x246858b0 > $DCC_PATH/config + echo 0x246858b8 > $DCC_PATH/config + echo 0x246858d8 > $DCC_PATH/config + echo 0x246858dc > $DCC_PATH/config + echo 0x246858f4 > $DCC_PATH/config + echo 0x246858fc > $DCC_PATH/config + echo 0x24685920 > $DCC_PATH/config + echo 0x24685928 > $DCC_PATH/config + echo 0x24685944 > $DCC_PATH/config + echo 0x24686604 > $DCC_PATH/config + echo 0x2468660c > $DCC_PATH/config + echo 0x246c0310 > $DCC_PATH/config + echo 0x246c0400 > $DCC_PATH/config + echo 0x246c0404 > $DCC_PATH/config + echo 0x246c0410 > $DCC_PATH/config + echo 0x246c0414 > $DCC_PATH/config + echo 0x246c0418 > $DCC_PATH/config + echo 0x246c0428 > $DCC_PATH/config + echo 0x246c0430 > $DCC_PATH/config + echo 0x246c0440 > $DCC_PATH/config + echo 0x246c0448 > $DCC_PATH/config + echo 0x246c04a0 > $DCC_PATH/config + echo 0x246c04b0 > $DCC_PATH/config + echo 0x246c04b4 > $DCC_PATH/config + echo 0x246c04b8 > $DCC_PATH/config + echo 0x246c04d0 > $DCC_PATH/config + echo 0x246c04d4 > $DCC_PATH/config + echo 0x246c341c > $DCC_PATH/config + echo 0x246c5804 > $DCC_PATH/config + echo 0x246c590c > $DCC_PATH/config + echo 0x246c5a14 > $DCC_PATH/config + echo 0x246c5c1c > $DCC_PATH/config + echo 0x246c5c38 > $DCC_PATH/config + echo 0x246c9100 > $DCC_PATH/config + echo 0x246c9110 > $DCC_PATH/config + echo 0x246c9120 > $DCC_PATH/config + echo 0x246c9180 > $DCC_PATH/config + echo 0x246c9184 > $DCC_PATH/config + echo 0x246e0618 > $DCC_PATH/config + echo 0x246e0684 > $DCC_PATH/config + echo 0x246e068c > $DCC_PATH/config + echo 0x24840310 > $DCC_PATH/config + echo 0x24840400 > $DCC_PATH/config + echo 0x24840404 > $DCC_PATH/config + echo 0x24840410 > $DCC_PATH/config + echo 0x24840414 > $DCC_PATH/config + echo 0x24840418 > $DCC_PATH/config + echo 0x24840428 > $DCC_PATH/config + echo 0x24840430 > $DCC_PATH/config + echo 0x24840440 > $DCC_PATH/config + echo 0x24840448 > $DCC_PATH/config + echo 0x248404a0 > $DCC_PATH/config + echo 0x248404b0 > $DCC_PATH/config + echo 0x248404b4 > $DCC_PATH/config + echo 0x248404b8 > $DCC_PATH/config + echo 0x248404d0 > $DCC_PATH/config + echo 0x248404d4 > $DCC_PATH/config + echo 0x2484341c > $DCC_PATH/config + echo 0x24845804 > $DCC_PATH/config + echo 0x2484590c > $DCC_PATH/config + echo 0x24845a14 > $DCC_PATH/config + echo 0x24845c1c > $DCC_PATH/config + echo 0x24845c38 > $DCC_PATH/config + echo 0x24849100 > $DCC_PATH/config + echo 0x24849110 > $DCC_PATH/config + echo 0x24849120 > $DCC_PATH/config + echo 0x24849180 > $DCC_PATH/config + echo 0x24849184 > $DCC_PATH/config + echo 0x24860618 > $DCC_PATH/config + echo 0x24860684 > $DCC_PATH/config + echo 0x2486068c > $DCC_PATH/config + echo 0x248c0310 > $DCC_PATH/config + echo 0x248c0400 > $DCC_PATH/config + echo 0x248c0404 > $DCC_PATH/config + echo 0x248c0410 > $DCC_PATH/config + echo 0x248c0414 > $DCC_PATH/config + echo 0x248c0418 > $DCC_PATH/config + echo 0x248c0428 > $DCC_PATH/config + echo 0x248c0430 > $DCC_PATH/config + echo 0x248c0440 > $DCC_PATH/config + echo 0x248c0448 > $DCC_PATH/config + echo 0x248c04a0 > $DCC_PATH/config + echo 0x248c04b0 > $DCC_PATH/config + echo 0x248c04b4 > $DCC_PATH/config + echo 0x248c04b8 > $DCC_PATH/config + echo 0x248c04d0 > $DCC_PATH/config + echo 0x248c04d4 > $DCC_PATH/config + echo 0x248c341c > $DCC_PATH/config + echo 0x248c5804 > $DCC_PATH/config + echo 0x248c590c > $DCC_PATH/config + echo 0x248c5a14 > $DCC_PATH/config + echo 0x248c5c1c > $DCC_PATH/config + echo 0x248c5c38 > $DCC_PATH/config + echo 0x248c9100 > $DCC_PATH/config + echo 0x248c9110 > $DCC_PATH/config + echo 0x248c9120 > $DCC_PATH/config + echo 0x248c9180 > $DCC_PATH/config + echo 0x248c9184 > $DCC_PATH/config + echo 0x248e0618 > $DCC_PATH/config + echo 0x248e0684 > $DCC_PATH/config + echo 0x248e068c > $DCC_PATH/config + echo 0x25020348 > $DCC_PATH/config + echo 0x25020480 > $DCC_PATH/config + echo 0x25022400 > $DCC_PATH/config + echo 0x25023220 > $DCC_PATH/config + echo 0x25023224 > $DCC_PATH/config + echo 0x25023228 > $DCC_PATH/config + echo 0x2502322c > $DCC_PATH/config + echo 0x25023258 > $DCC_PATH/config + echo 0x2502325c > $DCC_PATH/config + echo 0x25023308 > $DCC_PATH/config + echo 0x25023318 > $DCC_PATH/config + echo 0x25038100 > $DCC_PATH/config + echo 0x2503c030 > $DCC_PATH/config + echo 0x25042044 > $DCC_PATH/config + echo 0x25042048 > $DCC_PATH/config + echo 0x2504204c > $DCC_PATH/config + echo 0x250420b0 > $DCC_PATH/config + echo 0x25042104 > $DCC_PATH/config + echo 0x25042114 > $DCC_PATH/config + echo 0x25048004 > $DCC_PATH/config + echo 0x25048008 > $DCC_PATH/config + echo 0x2504800c > $DCC_PATH/config + echo 0x25048010 > $DCC_PATH/config + echo 0x25048014 > $DCC_PATH/config + echo 0x2504c030 > $DCC_PATH/config + echo 0x25050020 > $DCC_PATH/config + echo 0x2506004c > $DCC_PATH/config + echo 0x25060050 > $DCC_PATH/config + echo 0x25060054 > $DCC_PATH/config + echo 0x25060058 > $DCC_PATH/config + echo 0x2506005c > $DCC_PATH/config + echo 0x25060060 > $DCC_PATH/config + echo 0x25060064 > $DCC_PATH/config + echo 0x25060068 > $DCC_PATH/config + echo 0x25220348 > $DCC_PATH/config + echo 0x25220480 > $DCC_PATH/config + echo 0x25222400 > $DCC_PATH/config + echo 0x25223220 > $DCC_PATH/config + echo 0x25223224 > $DCC_PATH/config + echo 0x25223228 > $DCC_PATH/config + echo 0x2522322c > $DCC_PATH/config + echo 0x25223258 > $DCC_PATH/config + echo 0x2522325c > $DCC_PATH/config + echo 0x25223308 > $DCC_PATH/config + echo 0x25223318 > $DCC_PATH/config + echo 0x25238100 > $DCC_PATH/config + echo 0x2523c030 > $DCC_PATH/config + echo 0x25242044 > $DCC_PATH/config + echo 0x25242048 > $DCC_PATH/config + echo 0x2524204c > $DCC_PATH/config + echo 0x252420b0 > $DCC_PATH/config + echo 0x25242104 > $DCC_PATH/config + echo 0x25242114 > $DCC_PATH/config + echo 0x25248004 > $DCC_PATH/config + echo 0x25248008 > $DCC_PATH/config + echo 0x2524800c > $DCC_PATH/config + echo 0x25248010 > $DCC_PATH/config + echo 0x25248014 > $DCC_PATH/config + echo 0x2524c030 > $DCC_PATH/config + echo 0x25250020 > $DCC_PATH/config + echo 0x2526004c > $DCC_PATH/config + echo 0x25260050 > $DCC_PATH/config + echo 0x25260054 > $DCC_PATH/config + echo 0x25260058 > $DCC_PATH/config + echo 0x2526005c > $DCC_PATH/config + echo 0x25260060 > $DCC_PATH/config + echo 0x25260064 > $DCC_PATH/config + echo 0x25260068 > $DCC_PATH/config + echo 0x25420348 > $DCC_PATH/config + echo 0x25420480 > $DCC_PATH/config + echo 0x25422400 > $DCC_PATH/config + echo 0x25423220 > $DCC_PATH/config + echo 0x25423224 > $DCC_PATH/config + echo 0x25423228 > $DCC_PATH/config + echo 0x2542322c > $DCC_PATH/config + echo 0x25423258 > $DCC_PATH/config + echo 0x2542325c > $DCC_PATH/config + echo 0x25423308 > $DCC_PATH/config + echo 0x25423318 > $DCC_PATH/config + echo 0x25438100 > $DCC_PATH/config + echo 0x2543c030 > $DCC_PATH/config + echo 0x25442044 > $DCC_PATH/config + echo 0x25442048 > $DCC_PATH/config + echo 0x2544204c > $DCC_PATH/config + echo 0x254420b0 > $DCC_PATH/config + echo 0x25442104 > $DCC_PATH/config + echo 0x25442114 > $DCC_PATH/config + echo 0x25448004 > $DCC_PATH/config + echo 0x25448008 > $DCC_PATH/config + echo 0x2544800c > $DCC_PATH/config + echo 0x25448010 > $DCC_PATH/config + echo 0x25448014 > $DCC_PATH/config + echo 0x2544c030 > $DCC_PATH/config + echo 0x25450020 > $DCC_PATH/config + echo 0x2546004c > $DCC_PATH/config + echo 0x25460050 > $DCC_PATH/config + echo 0x25460054 > $DCC_PATH/config + echo 0x25460058 > $DCC_PATH/config + echo 0x2546005c > $DCC_PATH/config + echo 0x25460060 > $DCC_PATH/config + echo 0x25460064 > $DCC_PATH/config + echo 0x25460068 > $DCC_PATH/config + echo 0x25620348 > $DCC_PATH/config + echo 0x25620480 > $DCC_PATH/config + echo 0x25622400 > $DCC_PATH/config + echo 0x25623220 > $DCC_PATH/config + echo 0x25623224 > $DCC_PATH/config + echo 0x25623228 > $DCC_PATH/config + echo 0x2562322c > $DCC_PATH/config + echo 0x25623258 > $DCC_PATH/config + echo 0x2562325c > $DCC_PATH/config + echo 0x25623308 > $DCC_PATH/config + echo 0x25623318 > $DCC_PATH/config + echo 0x25638100 > $DCC_PATH/config + echo 0x2563c030 > $DCC_PATH/config + echo 0x25642044 > $DCC_PATH/config + echo 0x25642048 > $DCC_PATH/config + echo 0x2564204c > $DCC_PATH/config + echo 0x256420b0 > $DCC_PATH/config + echo 0x25642104 > $DCC_PATH/config + echo 0x25642114 > $DCC_PATH/config + echo 0x25648004 > $DCC_PATH/config + echo 0x25648008 > $DCC_PATH/config + echo 0x2564800c > $DCC_PATH/config + echo 0x25648010 > $DCC_PATH/config + echo 0x25648014 > $DCC_PATH/config + echo 0x2564c030 > $DCC_PATH/config + echo 0x25650020 > $DCC_PATH/config + echo 0x2566004c > $DCC_PATH/config + echo 0x25660050 > $DCC_PATH/config + echo 0x25660054 > $DCC_PATH/config + echo 0x25660058 > $DCC_PATH/config + echo 0x2566005c > $DCC_PATH/config + echo 0x25660060 > $DCC_PATH/config + echo 0x25660064 > $DCC_PATH/config + echo 0x25660068 > $DCC_PATH/config + echo 0x25820348 > $DCC_PATH/config + echo 0x25820480 > $DCC_PATH/config + echo 0x25822400 > $DCC_PATH/config + echo 0x25823220 > $DCC_PATH/config + echo 0x25823224 > $DCC_PATH/config + echo 0x25823228 > $DCC_PATH/config + echo 0x2582322c > $DCC_PATH/config + echo 0x25823258 > $DCC_PATH/config + echo 0x2582325c > $DCC_PATH/config + echo 0x25823308 > $DCC_PATH/config + echo 0x25823318 > $DCC_PATH/config + echo 0x25838100 > $DCC_PATH/config + echo 0x2583c030 > $DCC_PATH/config + echo 0x25842044 > $DCC_PATH/config + echo 0x25842048 > $DCC_PATH/config + echo 0x2584204c > $DCC_PATH/config + echo 0x258420b0 > $DCC_PATH/config + echo 0x25842104 > $DCC_PATH/config + echo 0x25842114 > $DCC_PATH/config + echo 0x25848004 > $DCC_PATH/config + echo 0x25848008 > $DCC_PATH/config + echo 0x2584800c > $DCC_PATH/config + echo 0x25848010 > $DCC_PATH/config + echo 0x25848014 > $DCC_PATH/config + echo 0x2584c030 > $DCC_PATH/config + echo 0x25850020 > $DCC_PATH/config + echo 0x2586004c > $DCC_PATH/config + echo 0x25860050 > $DCC_PATH/config + echo 0x25860054 > $DCC_PATH/config + echo 0x25860058 > $DCC_PATH/config + echo 0x2586005c > $DCC_PATH/config + echo 0x25860060 > $DCC_PATH/config + echo 0x25860064 > $DCC_PATH/config + echo 0x25860068 > $DCC_PATH/config + echo 0x25a20348 > $DCC_PATH/config + echo 0x25a20480 > $DCC_PATH/config + echo 0x25a22400 > $DCC_PATH/config + echo 0x25a23220 > $DCC_PATH/config + echo 0x25a23224 > $DCC_PATH/config + echo 0x25a23228 > $DCC_PATH/config + echo 0x25a2322c > $DCC_PATH/config + echo 0x25a23258 > $DCC_PATH/config + echo 0x25a2325c > $DCC_PATH/config + echo 0x25a23308 > $DCC_PATH/config + echo 0x25a23318 > $DCC_PATH/config + echo 0x25a38100 > $DCC_PATH/config + echo 0x25a3c030 > $DCC_PATH/config + echo 0x25a42044 > $DCC_PATH/config + echo 0x25a42048 > $DCC_PATH/config + echo 0x25a4204c > $DCC_PATH/config + echo 0x25a420b0 > $DCC_PATH/config + echo 0x25a42104 > $DCC_PATH/config + echo 0x25a42114 > $DCC_PATH/config + echo 0x25a48004 > $DCC_PATH/config + echo 0x25a48008 > $DCC_PATH/config + echo 0x25a4800c > $DCC_PATH/config + echo 0x25a48010 > $DCC_PATH/config + echo 0x25a48014 > $DCC_PATH/config + echo 0x25a4c030 > $DCC_PATH/config + echo 0x25a50020 > $DCC_PATH/config + echo 0x25a6004c > $DCC_PATH/config + echo 0x25a60050 > $DCC_PATH/config + echo 0x25a60054 > $DCC_PATH/config + echo 0x25a60058 > $DCC_PATH/config + echo 0x25a6005c > $DCC_PATH/config + echo 0x25a60060 > $DCC_PATH/config + echo 0x25a60064 > $DCC_PATH/config + echo 0x25a60068 > $DCC_PATH/config + ########## > $DCC_PATH/config ####LLCC LCP & LB ## + echo 0x25a01004 1 > $DCC_PATH/config + echo 0x25a00004 1 > $DCC_PATH/config + echo 0x25a03004 1 > $DCC_PATH/config + echo 0x25a04004 1 > $DCC_PATH/config + echo 0x25a02004 1 > $DCC_PATH/config + echo 0x25a05004 1 > $DCC_PATH/config + echo 0x25a06004 1 > $DCC_PATH/config + echo 0x25a07004 1 > $DCC_PATH/config + echo 0x25a08004 1 > $DCC_PATH/config + echo 0x25a09004 1 > $DCC_PATH/config + echo 0x25a0a004 1 > $DCC_PATH/config + echo 0x25a0b004 1 > $DCC_PATH/config + echo 0x25a0c004 1 > $DCC_PATH/config + echo 0x25a0d004 1 > $DCC_PATH/config + echo 0x25a0e004 1 > $DCC_PATH/config + echo 0x25a0f004 1 > $DCC_PATH/config + echo 0x25a10004 1 > $DCC_PATH/config + echo 0x25a11004 1 > $DCC_PATH/config + echo 0x25a12004 1 > $DCC_PATH/config + echo 0x25a13004 1 > $DCC_PATH/config + echo 0x25a14004 1 > $DCC_PATH/config + echo 0x25a15004 1 > $DCC_PATH/config + echo 0x25a16004 1 > $DCC_PATH/config + echo 0x25a17004 1 > $DCC_PATH/config + echo 0x25a19004 1 > $DCC_PATH/config + echo 0x25a1a004 1 > $DCC_PATH/config + echo 0x25a1b004 1 > $DCC_PATH/config + echo 0x25a1c004 1 > $DCC_PATH/config + echo 0x25a1d004 1 > $DCC_PATH/config + echo 0x25a1e004 1 > $DCC_PATH/config + echo 0x25a1f004 1 > $DCC_PATH/config + echo 0x25001004 1 > $DCC_PATH/config + echo 0x25000004 1 > $DCC_PATH/config + echo 0x25003004 1 > $DCC_PATH/config + echo 0x25004004 1 > $DCC_PATH/config + echo 0x25002004 1 > $DCC_PATH/config + echo 0x25005004 1 > $DCC_PATH/config + echo 0x25006004 1 > $DCC_PATH/config + echo 0x25007004 1 > $DCC_PATH/config + echo 0x25008004 1 > $DCC_PATH/config + echo 0x25009004 1 > $DCC_PATH/config + echo 0x2500a004 1 > $DCC_PATH/config + echo 0x2500b004 1 > $DCC_PATH/config + echo 0x2500c004 1 > $DCC_PATH/config + echo 0x2500d004 1 > $DCC_PATH/config + echo 0x2500e004 1 > $DCC_PATH/config + echo 0x2500f004 1 > $DCC_PATH/config + echo 0x25010004 1 > $DCC_PATH/config + echo 0x25011004 1 > $DCC_PATH/config + echo 0x25012004 1 > $DCC_PATH/config + echo 0x25013004 1 > $DCC_PATH/config + echo 0x25014004 1 > $DCC_PATH/config + echo 0x25015004 1 > $DCC_PATH/config + echo 0x25016004 1 > $DCC_PATH/config + echo 0x25017004 1 > $DCC_PATH/config + echo 0x25018004 1 > $DCC_PATH/config + echo 0x25019004 1 > $DCC_PATH/config + echo 0x2501a004 1 > $DCC_PATH/config + echo 0x2501b004 1 > $DCC_PATH/config + echo 0x2501c004 1 > $DCC_PATH/config + echo 0x2501d004 1 > $DCC_PATH/config + echo 0x2501e004 1 > $DCC_PATH/config + echo 0x2501f004 1 > $DCC_PATH/config + echo 0x25201004 1 > $DCC_PATH/config + echo 0x25200004 1 > $DCC_PATH/config + echo 0x25203004 1 > $DCC_PATH/config + echo 0x25204004 1 > $DCC_PATH/config + echo 0x25202004 1 > $DCC_PATH/config + echo 0x25205004 1 > $DCC_PATH/config + echo 0x25206004 1 > $DCC_PATH/config + echo 0x25207004 1 > $DCC_PATH/config + echo 0x25208004 1 > $DCC_PATH/config + echo 0x25209004 1 > $DCC_PATH/config + echo 0x2520a004 1 > $DCC_PATH/config + echo 0x2520b004 1 > $DCC_PATH/config + echo 0x2520c004 1 > $DCC_PATH/config + echo 0x2520d004 1 > $DCC_PATH/config + echo 0x2520e004 1 > $DCC_PATH/config + echo 0x2520f004 1 > $DCC_PATH/config + echo 0x25210004 1 > $DCC_PATH/config + echo 0x25211004 1 > $DCC_PATH/config + echo 0x25212004 1 > $DCC_PATH/config + echo 0x25213004 1 > $DCC_PATH/config + echo 0x25214004 1 > $DCC_PATH/config + echo 0x25215004 1 > $DCC_PATH/config + echo 0x25216004 1 > $DCC_PATH/config + echo 0x25217004 1 > $DCC_PATH/config + echo 0x25218004 1 > $DCC_PATH/config + echo 0x25219004 1 > $DCC_PATH/config + echo 0x2521a004 1 > $DCC_PATH/config + echo 0x2521b004 1 > $DCC_PATH/config + echo 0x2521c004 1 > $DCC_PATH/config + echo 0x2521d004 1 > $DCC_PATH/config + echo 0x2521e004 1 > $DCC_PATH/config + echo 0x2521f004 1 > $DCC_PATH/config + echo 0x25401004 1 > $DCC_PATH/config + echo 0x25400004 1 > $DCC_PATH/config + echo 0x25403004 1 > $DCC_PATH/config + echo 0x25404004 1 > $DCC_PATH/config + echo 0x25402004 1 > $DCC_PATH/config + echo 0x25405004 1 > $DCC_PATH/config + echo 0x25406004 1 > $DCC_PATH/config + echo 0x25407004 1 > $DCC_PATH/config + echo 0x25408004 1 > $DCC_PATH/config + echo 0x25409004 1 > $DCC_PATH/config + echo 0x2540a004 1 > $DCC_PATH/config + echo 0x2540b004 1 > $DCC_PATH/config + echo 0x2540c004 1 > $DCC_PATH/config + echo 0x2540d004 1 > $DCC_PATH/config + echo 0x2540e004 1 > $DCC_PATH/config + echo 0x2540f004 1 > $DCC_PATH/config + echo 0x25410004 1 > $DCC_PATH/config + echo 0x25411004 1 > $DCC_PATH/config + echo 0x25412004 1 > $DCC_PATH/config + echo 0x25413004 1 > $DCC_PATH/config + echo 0x25414004 1 > $DCC_PATH/config + echo 0x25415004 1 > $DCC_PATH/config + echo 0x25416004 1 > $DCC_PATH/config + echo 0x25417004 1 > $DCC_PATH/config + echo 0x25418004 1 > $DCC_PATH/config + echo 0x25419004 1 > $DCC_PATH/config + echo 0x2541a004 1 > $DCC_PATH/config + echo 0x2541b004 1 > $DCC_PATH/config + echo 0x2541c004 1 > $DCC_PATH/config + echo 0x2541d004 1 > $DCC_PATH/config + echo 0x2541e004 1 > $DCC_PATH/config + echo 0x2541f004 1 > $DCC_PATH/config + echo 0x25601004 1 > $DCC_PATH/config + echo 0x25600004 1 > $DCC_PATH/config + echo 0x25603004 1 > $DCC_PATH/config + echo 0x25604004 1 > $DCC_PATH/config + echo 0x25602004 1 > $DCC_PATH/config + echo 0x25605004 1 > $DCC_PATH/config + echo 0x25606004 1 > $DCC_PATH/config + echo 0x25607004 1 > $DCC_PATH/config + echo 0x25608004 1 > $DCC_PATH/config + echo 0x25609004 1 > $DCC_PATH/config + echo 0x2560a004 1 > $DCC_PATH/config + echo 0x2560b004 1 > $DCC_PATH/config + echo 0x2560c004 1 > $DCC_PATH/config + echo 0x2560d004 1 > $DCC_PATH/config + echo 0x2560e004 1 > $DCC_PATH/config + echo 0x2560f004 1 > $DCC_PATH/config + echo 0x25610004 1 > $DCC_PATH/config + echo 0x25611004 1 > $DCC_PATH/config + echo 0x25612004 1 > $DCC_PATH/config + echo 0x25613004 1 > $DCC_PATH/config + echo 0x25614004 1 > $DCC_PATH/config + echo 0x25615004 1 > $DCC_PATH/config + echo 0x25616004 1 > $DCC_PATH/config + echo 0x25617004 1 > $DCC_PATH/config + echo 0x25618004 1 > $DCC_PATH/config + echo 0x25619004 1 > $DCC_PATH/config + echo 0x2561a004 1 > $DCC_PATH/config + echo 0x2561b004 1 > $DCC_PATH/config + echo 0x2561c004 1 > $DCC_PATH/config + echo 0x2561d004 1 > $DCC_PATH/config + echo 0x2561e004 1 > $DCC_PATH/config + echo 0x2561f004 1 > $DCC_PATH/config + echo 0x250a002c > $DCC_PATH/config + echo 0x250a009c > $DCC_PATH/config + echo 0x250a00a0 > $DCC_PATH/config + echo 0x250a00a8 > $DCC_PATH/config + echo 0x250a00ac > $DCC_PATH/config + echo 0x250a00b0 > $DCC_PATH/config + echo 0x250a00b8 > $DCC_PATH/config + echo 0x250a00c0 > $DCC_PATH/config + echo 0x250a00c4 > $DCC_PATH/config + echo 0x250a00cc > $DCC_PATH/config + echo 0x250a00d0 > $DCC_PATH/config + echo 0x250a00d4 > $DCC_PATH/config + echo 0x250a00d8 > $DCC_PATH/config + echo 0x250a00e0 > $DCC_PATH/config + echo 0x250a00e8 > $DCC_PATH/config + echo 0x250a00f0 > $DCC_PATH/config + echo 0x250a00f0 > $DCC_PATH/config + echo 0x250a0100 > $DCC_PATH/config + echo 0x250a0108 > $DCC_PATH/config + echo 0x250a0110 > $DCC_PATH/config + echo 0x250a0118 > $DCC_PATH/config + echo 0x250a0120 > $DCC_PATH/config + echo 0x250a0128 > $DCC_PATH/config + echo 0x250a1010 > $DCC_PATH/config + echo 0x250a1070 > $DCC_PATH/config + echo 0x250a3004 > $DCC_PATH/config + echo 0x254a002c > $DCC_PATH/config + echo 0x254a009c > $DCC_PATH/config + echo 0x254a00a0 > $DCC_PATH/config + echo 0x254a00a8 > $DCC_PATH/config + echo 0x254a00ac > $DCC_PATH/config + echo 0x254a00b0 > $DCC_PATH/config + echo 0x254a00b8 > $DCC_PATH/config + echo 0x254a00c0 > $DCC_PATH/config + echo 0x254a00c4 > $DCC_PATH/config + echo 0x254a00cc > $DCC_PATH/config + echo 0x254a00d0 > $DCC_PATH/config + echo 0x254a00d4 > $DCC_PATH/config + echo 0x254a00d8 > $DCC_PATH/config + echo 0x254a00e0 > $DCC_PATH/config + echo 0x254a00e8 > $DCC_PATH/config + echo 0x254a00f0 > $DCC_PATH/config + echo 0x254a00f0 > $DCC_PATH/config + echo 0x254a0100 > $DCC_PATH/config + echo 0x254a0108 > $DCC_PATH/config + echo 0x254a0110 > $DCC_PATH/config + echo 0x254a0118 > $DCC_PATH/config + echo 0x254a0120 > $DCC_PATH/config + echo 0x254a0128 > $DCC_PATH/config + echo 0x254a1010 > $DCC_PATH/config + echo 0x254a1070 > $DCC_PATH/config + echo 0x254a3004 > $DCC_PATH/config + echo 0x252a002c > $DCC_PATH/config + echo 0x252a009c > $DCC_PATH/config + echo 0x252a00a0 > $DCC_PATH/config + echo 0x252a00a8 > $DCC_PATH/config + echo 0x252a00ac > $DCC_PATH/config + echo 0x252a00b0 > $DCC_PATH/config + echo 0x252a00b8 > $DCC_PATH/config + echo 0x252a00c0 > $DCC_PATH/config + echo 0x252a00c4 > $DCC_PATH/config + echo 0x252a00cc > $DCC_PATH/config + echo 0x252a00d0 > $DCC_PATH/config + echo 0x252a00d4 > $DCC_PATH/config + echo 0x252a00d8 > $DCC_PATH/config + echo 0x252a00e0 > $DCC_PATH/config + echo 0x252a00e8 > $DCC_PATH/config + echo 0x252a00f0 > $DCC_PATH/config + echo 0x252a00f0 > $DCC_PATH/config + echo 0x252a0100 > $DCC_PATH/config + echo 0x252a0108 > $DCC_PATH/config + echo 0x252a0110 > $DCC_PATH/config + echo 0x252a0118 > $DCC_PATH/config + echo 0x252a0120 > $DCC_PATH/config + echo 0x252a0128 > $DCC_PATH/config + echo 0x252a1010 > $DCC_PATH/config + echo 0x252a1070 > $DCC_PATH/config + echo 0x252a3004 > $DCC_PATH/config + echo 0x256a002c > $DCC_PATH/config + echo 0x256a009c > $DCC_PATH/config + echo 0x256a00a0 > $DCC_PATH/config + echo 0x256a00a8 > $DCC_PATH/config + echo 0x256a00ac > $DCC_PATH/config + echo 0x256a00b0 > $DCC_PATH/config + echo 0x256a00b8 > $DCC_PATH/config + echo 0x256a00c0 > $DCC_PATH/config + echo 0x256a00c4 > $DCC_PATH/config + echo 0x256a00cc > $DCC_PATH/config + echo 0x256a00d0 > $DCC_PATH/config + echo 0x256a00d4 > $DCC_PATH/config + echo 0x256a00d8 > $DCC_PATH/config + echo 0x256a00e0 > $DCC_PATH/config + echo 0x256a00e8 > $DCC_PATH/config + echo 0x256a00f0 > $DCC_PATH/config + echo 0x256a00f0 > $DCC_PATH/config + echo 0x256a0100 > $DCC_PATH/config + echo 0x256a0108 > $DCC_PATH/config + echo 0x256a0110 > $DCC_PATH/config + echo 0x256a0118 > $DCC_PATH/config + echo 0x256a0120 > $DCC_PATH/config + echo 0x256a0128 > $DCC_PATH/config + echo 0x256a1010 > $DCC_PATH/config + echo 0x256a1070 > $DCC_PATH/config + echo 0x256a3004 > $DCC_PATH/config + echo 0x2507601C > $DCC_PATH/config + echo 0x25076020 > $DCC_PATH/config + echo 0x25076024 > $DCC_PATH/config + echo 0x25076028 > $DCC_PATH/config + echo 0x25076034 > $DCC_PATH/config + echo 0x25076038 > $DCC_PATH/config + echo 0x2507603C > $DCC_PATH/config + echo 0x25076040 > $DCC_PATH/config + echo 0x25076058 > $DCC_PATH/config + echo 0x25076060 > $DCC_PATH/config + echo 0x25076064 > $DCC_PATH/config + echo 0x25076200 > $DCC_PATH/config + echo 0x25077020 > $DCC_PATH/config + echo 0x25077030 > $DCC_PATH/config + echo 0x25077034 > $DCC_PATH/config + echo 0x25077038 > $DCC_PATH/config + echo 0x2507703c > $DCC_PATH/config + echo 0x25077040 > $DCC_PATH/config + echo 0x25077044 > $DCC_PATH/config + echo 0x25077048 > $DCC_PATH/config + echo 0x2507704c > $DCC_PATH/config + echo 0x25077050 > $DCC_PATH/config + echo 0x25077054 > $DCC_PATH/config + echo 0x25077058 > $DCC_PATH/config + echo 0x2507705c > $DCC_PATH/config + echo 0x25077060 > $DCC_PATH/config + echo 0x25077064 > $DCC_PATH/config + echo 0x25077068 > $DCC_PATH/config + echo 0x2507706c > $DCC_PATH/config + echo 0x25077070 > $DCC_PATH/config + echo 0x25077074 > $DCC_PATH/config + echo 0x25077078 > $DCC_PATH/config + echo 0x2507707c > $DCC_PATH/config + echo 0x25077084 > $DCC_PATH/config + echo 0x25077090 > $DCC_PATH/config + echo 0x25077094 > $DCC_PATH/config + echo 0x25077098 > $DCC_PATH/config + echo 0x2507709C > $DCC_PATH/config + echo 0x250770a0 > $DCC_PATH/config + echo 0x25077218 > $DCC_PATH/config + echo 0x2507721c > $DCC_PATH/config + echo 0x25077220 > $DCC_PATH/config + echo 0x25077224 > $DCC_PATH/config + echo 0x25077228 > $DCC_PATH/config + echo 0x2507722c > $DCC_PATH/config + echo 0x25077230 > $DCC_PATH/config + echo 0x25077234 > $DCC_PATH/config + echo 0x2547601C > $DCC_PATH/config + echo 0x25476020 > $DCC_PATH/config + echo 0x25476024 > $DCC_PATH/config + echo 0x25476028 > $DCC_PATH/config + echo 0x25476034 > $DCC_PATH/config + echo 0x25476038 > $DCC_PATH/config + echo 0x2547603C > $DCC_PATH/config + echo 0x25476040 > $DCC_PATH/config + echo 0x25476058 > $DCC_PATH/config + echo 0x25476060 > $DCC_PATH/config + echo 0x25476064 > $DCC_PATH/config + echo 0x25476200 > $DCC_PATH/config + echo 0x25477020 > $DCC_PATH/config + echo 0x25477030 > $DCC_PATH/config + echo 0x25477034 > $DCC_PATH/config + echo 0x25477038 > $DCC_PATH/config + echo 0x2547703c > $DCC_PATH/config + echo 0x25477040 > $DCC_PATH/config + echo 0x25477044 > $DCC_PATH/config + echo 0x25477048 > $DCC_PATH/config + echo 0x2547704c > $DCC_PATH/config + echo 0x25477050 > $DCC_PATH/config + echo 0x25477054 > $DCC_PATH/config + echo 0x25477058 > $DCC_PATH/config + echo 0x2547705c > $DCC_PATH/config + echo 0x25477060 > $DCC_PATH/config + echo 0x25477064 > $DCC_PATH/config + echo 0x25477068 > $DCC_PATH/config + echo 0x2547706c > $DCC_PATH/config + echo 0x25477070 > $DCC_PATH/config + echo 0x25477074 > $DCC_PATH/config + echo 0x25477078 > $DCC_PATH/config + echo 0x2547707c > $DCC_PATH/config + echo 0x25477084 > $DCC_PATH/config + echo 0x25477090 > $DCC_PATH/config + echo 0x25477094 > $DCC_PATH/config + echo 0x25477098 > $DCC_PATH/config + echo 0x2547709C > $DCC_PATH/config + echo 0x254770a0 > $DCC_PATH/config + echo 0x25477218 > $DCC_PATH/config + echo 0x2547721c > $DCC_PATH/config + echo 0x25477220 > $DCC_PATH/config + echo 0x25477224 > $DCC_PATH/config + echo 0x25477228 > $DCC_PATH/config + echo 0x2547722c > $DCC_PATH/config + echo 0x25477230 > $DCC_PATH/config + echo 0x25477234 > $DCC_PATH/config + echo 0x2527601C > $DCC_PATH/config + echo 0x25276020 > $DCC_PATH/config + echo 0x25276024 > $DCC_PATH/config + echo 0x25276028 > $DCC_PATH/config + echo 0x25276034 > $DCC_PATH/config + echo 0x25276038 > $DCC_PATH/config + echo 0x2527603C > $DCC_PATH/config + echo 0x25276040 > $DCC_PATH/config + echo 0x25276058 > $DCC_PATH/config + echo 0x25276060 > $DCC_PATH/config + echo 0x25276064 > $DCC_PATH/config + echo 0x25276200 > $DCC_PATH/config + echo 0x25277020 > $DCC_PATH/config + echo 0x25277030 > $DCC_PATH/config + echo 0x25277034 > $DCC_PATH/config + echo 0x25277038 > $DCC_PATH/config + echo 0x2527703c > $DCC_PATH/config + echo 0x25277040 > $DCC_PATH/config + echo 0x25277044 > $DCC_PATH/config + echo 0x25277048 > $DCC_PATH/config + echo 0x2527704c > $DCC_PATH/config + echo 0x25277050 > $DCC_PATH/config + echo 0x25277054 > $DCC_PATH/config + echo 0x25277058 > $DCC_PATH/config + echo 0x2527705c > $DCC_PATH/config + echo 0x25277060 > $DCC_PATH/config + echo 0x25277064 > $DCC_PATH/config + echo 0x25277068 > $DCC_PATH/config + echo 0x2527706c > $DCC_PATH/config + echo 0x25277070 > $DCC_PATH/config + echo 0x25277074 > $DCC_PATH/config + echo 0x25277078 > $DCC_PATH/config + echo 0x2527707c > $DCC_PATH/config + echo 0x25277084 > $DCC_PATH/config + echo 0x25277090 > $DCC_PATH/config + echo 0x25277094 > $DCC_PATH/config + echo 0x25277098 > $DCC_PATH/config + echo 0x2527709C > $DCC_PATH/config + echo 0x252770a0 > $DCC_PATH/config + echo 0x25277218 > $DCC_PATH/config + echo 0x2527721c > $DCC_PATH/config + echo 0x25277220 > $DCC_PATH/config + echo 0x25277224 > $DCC_PATH/config + echo 0x25277228 > $DCC_PATH/config + echo 0x2527722c > $DCC_PATH/config + echo 0x25277230 > $DCC_PATH/config + echo 0x25277234 > $DCC_PATH/config + echo 0x2567601C > $DCC_PATH/config + echo 0x25676020 > $DCC_PATH/config + echo 0x25676024 > $DCC_PATH/config + echo 0x25676028 > $DCC_PATH/config + echo 0x25676034 > $DCC_PATH/config + echo 0x25676038 > $DCC_PATH/config + echo 0x2567603C > $DCC_PATH/config + echo 0x25676040 > $DCC_PATH/config + echo 0x25676058 > $DCC_PATH/config + echo 0x25676060 > $DCC_PATH/config + echo 0x25676064 > $DCC_PATH/config + echo 0x25676200 > $DCC_PATH/config + echo 0x25677020 > $DCC_PATH/config + echo 0x25677030 > $DCC_PATH/config + echo 0x25677034 > $DCC_PATH/config + echo 0x25677038 > $DCC_PATH/config + echo 0x2567703c > $DCC_PATH/config + echo 0x25677040 > $DCC_PATH/config + echo 0x25677044 > $DCC_PATH/config + echo 0x25677048 > $DCC_PATH/config + echo 0x2567704c > $DCC_PATH/config + echo 0x25677050 > $DCC_PATH/config + echo 0x25677054 > $DCC_PATH/config + echo 0x25677058 > $DCC_PATH/config + echo 0x2567705c > $DCC_PATH/config + echo 0x25677060 > $DCC_PATH/config + echo 0x25677064 > $DCC_PATH/config + echo 0x25677068 > $DCC_PATH/config + echo 0x2567706c > $DCC_PATH/config + echo 0x25677070 > $DCC_PATH/config + echo 0x25677074 > $DCC_PATH/config + echo 0x25677078 > $DCC_PATH/config + echo 0x2567707c > $DCC_PATH/config + echo 0x25677084 > $DCC_PATH/config + echo 0x25677090 > $DCC_PATH/config + echo 0x25677094 > $DCC_PATH/config + echo 0x25677098 > $DCC_PATH/config + echo 0x2567709C > $DCC_PATH/config + echo 0x256770a0 > $DCC_PATH/config + echo 0x25677218 > $DCC_PATH/config + echo 0x2567721c > $DCC_PATH/config + echo 0x25677220 > $DCC_PATH/config + echo 0x25677224 > $DCC_PATH/config + echo 0x25677228 > $DCC_PATH/config + echo 0x2567722c > $DCC_PATH/config + echo 0x25677230 > $DCC_PATH/config + echo 0x25677234 > $DCC_PATH/config + ########## > $DCC_PATH/config ###LPI# + echo 0x250a6008 > $DCC_PATH/config + echo 0x250a600c > $DCC_PATH/config + echo 0x250a6010 > $DCC_PATH/config + echo 0x250a7008 > $DCC_PATH/config + echo 0x250a700c > $DCC_PATH/config + echo 0x250a7010 > $DCC_PATH/config + echo 0x254a6008 > $DCC_PATH/config + echo 0x254a600c > $DCC_PATH/config + echo 0x254a6010 > $DCC_PATH/config + echo 0x254a7008 > $DCC_PATH/config + echo 0x254a700c > $DCC_PATH/config + echo 0x254a7010 > $DCC_PATH/config + echo 0x252a6008 > $DCC_PATH/config + echo 0x252a600c > $DCC_PATH/config + echo 0x252a6010 > $DCC_PATH/config + echo 0x252a7008 > $DCC_PATH/config + echo 0x252a700c > $DCC_PATH/config + echo 0x252a7010 > $DCC_PATH/config + echo 0x256a6008 > $DCC_PATH/config + echo 0x256a600c > $DCC_PATH/config + echo 0x256a6010 > $DCC_PATH/config + echo 0x256a7008 > $DCC_PATH/config + echo 0x256a700c > $DCC_PATH/config + echo 0x256a7010 > $DCC_PATH/config + echo 0x2507718c > $DCC_PATH/config + echo 0x250771b0 > $DCC_PATH/config + echo 0x25077204 > $DCC_PATH/config + echo 0x25077208 > $DCC_PATH/config + echo 0x2507720c > $DCC_PATH/config + echo 0x25077210 > $DCC_PATH/config + echo 0x25077214 > $DCC_PATH/config + echo 0x25023210 > $DCC_PATH/config + echo 0x25025010 > $DCC_PATH/config + echo 0x25025000 > $DCC_PATH/config + echo 0x25040064 > $DCC_PATH/config + echo 0x25040070 > $DCC_PATH/config + echo 0x25040074 > $DCC_PATH/config + echo 0x25040078 > $DCC_PATH/config + echo 0x2504007c > $DCC_PATH/config + echo 0x25040080 > $DCC_PATH/config + echo 0x2504002c > $DCC_PATH/config + echo 0x25040030 > $DCC_PATH/config + echo 0x25040034 > $DCC_PATH/config + echo 0x25040038 > $DCC_PATH/config + echo 0x25040048 > $DCC_PATH/config + echo 0x2504004c > $DCC_PATH/config + echo 0x25040050 > $DCC_PATH/config + echo 0x25040054 > $DCC_PATH/config + echo 0x25040058 > $DCC_PATH/config + echo 0x25040060 > $DCC_PATH/config + echo 0x2547718c > $DCC_PATH/config + echo 0x254771b0 > $DCC_PATH/config + echo 0x25477204 > $DCC_PATH/config + echo 0x25477208 > $DCC_PATH/config + echo 0x2547720c > $DCC_PATH/config + echo 0x25477210 > $DCC_PATH/config + echo 0x25477214 > $DCC_PATH/config + echo 0x25423210 > $DCC_PATH/config + echo 0x25425010 > $DCC_PATH/config + echo 0x25425000 > $DCC_PATH/config + echo 0x25440064 > $DCC_PATH/config + echo 0x25440070 > $DCC_PATH/config + echo 0x25440074 > $DCC_PATH/config + echo 0x25440078 > $DCC_PATH/config + echo 0x2544007c > $DCC_PATH/config + echo 0x25440080 > $DCC_PATH/config + echo 0x2544002c > $DCC_PATH/config + echo 0x25440030 > $DCC_PATH/config + echo 0x25440034 > $DCC_PATH/config + echo 0x25440038 > $DCC_PATH/config + echo 0x25440048 > $DCC_PATH/config + echo 0x2544004c > $DCC_PATH/config + echo 0x25440050 > $DCC_PATH/config + echo 0x25440054 > $DCC_PATH/config + echo 0x25440058 > $DCC_PATH/config + echo 0x25440060 > $DCC_PATH/config + echo 0x2527718c > $DCC_PATH/config + echo 0x252771b0 > $DCC_PATH/config + echo 0x25277204 > $DCC_PATH/config + echo 0x25277208 > $DCC_PATH/config + echo 0x2527720c > $DCC_PATH/config + echo 0x25277210 > $DCC_PATH/config + echo 0x25277214 > $DCC_PATH/config + echo 0x25223210 > $DCC_PATH/config + echo 0x25225010 > $DCC_PATH/config + echo 0x25225000 > $DCC_PATH/config + echo 0x25240064 > $DCC_PATH/config + echo 0x25240070 > $DCC_PATH/config + echo 0x25240074 > $DCC_PATH/config + echo 0x25240078 > $DCC_PATH/config + echo 0x2524007c > $DCC_PATH/config + echo 0x25240080 > $DCC_PATH/config + echo 0x2524002c > $DCC_PATH/config + echo 0x25240030 > $DCC_PATH/config + echo 0x25240034 > $DCC_PATH/config + echo 0x25240038 > $DCC_PATH/config + echo 0x25240048 > $DCC_PATH/config + echo 0x2524004c > $DCC_PATH/config + echo 0x25240050 > $DCC_PATH/config + echo 0x25240054 > $DCC_PATH/config + echo 0x25240058 > $DCC_PATH/config + echo 0x25240060 > $DCC_PATH/config + echo 0x2567718c > $DCC_PATH/config + echo 0x256771b0 > $DCC_PATH/config + echo 0x25677204 > $DCC_PATH/config + echo 0x25677208 > $DCC_PATH/config + echo 0x2567720c > $DCC_PATH/config + echo 0x25677210 > $DCC_PATH/config + echo 0x25677214 > $DCC_PATH/config + echo 0x25623210 > $DCC_PATH/config + echo 0x25625010 > $DCC_PATH/config + echo 0x25625000 > $DCC_PATH/config + echo 0x25640064 > $DCC_PATH/config + echo 0x25640070 > $DCC_PATH/config + echo 0x25640074 > $DCC_PATH/config + echo 0x25640078 > $DCC_PATH/config + echo 0x2564007c > $DCC_PATH/config + echo 0x25640080 > $DCC_PATH/config + echo 0x2564002c > $DCC_PATH/config + echo 0x25640030 > $DCC_PATH/config + echo 0x25640034 > $DCC_PATH/config + echo 0x25640038 > $DCC_PATH/config + echo 0x25640048 > $DCC_PATH/config + echo 0x2564004c > $DCC_PATH/config + echo 0x25640050 > $DCC_PATH/config + echo 0x25640054 > $DCC_PATH/config + echo 0x25640058 > $DCC_PATH/config + echo 0x25640060 > $DCC_PATH/config + echo 0x258A009C > $DCC_PATH/config + echo 0x258A0128 16 > $DCC_PATH/config + echo 0x25AA009C > $DCC_PATH/config + echo 0x25AA0128 16 > $DCC_PATH/config + echo 0x250A009C > $DCC_PATH/config + echo 0x250A0128 16 > $DCC_PATH/config + echo 0x252A009C > $DCC_PATH/config + echo 0x252A0128 16 > $DCC_PATH/config + echo 0x254A009C > $DCC_PATH/config + echo 0x254A0128 16 > $DCC_PATH/config + echo 0x256A009C > $DCC_PATH/config + echo 0x256A0128 16 > $DCC_PATH/config + ########## > $DCC_PATH/config ####DARE###################### + echo 0x250a9004 > $DCC_PATH/config + echo 0x250a9010 > $DCC_PATH/config + echo 0x250a9014 > $DCC_PATH/config + echo 0x250a9018 > $DCC_PATH/config + echo 0x250a9020 > $DCC_PATH/config + echo 0x250a9024 > $DCC_PATH/config + echo 0x250a9028 > $DCC_PATH/config + echo 0x250a9030 > $DCC_PATH/config + echo 0x250a9034 > $DCC_PATH/config + echo 0x250a9038 > $DCC_PATH/config + echo 0x250a9040 > $DCC_PATH/config + echo 0x250a9044 > $DCC_PATH/config + echo 0x250a9048 > $DCC_PATH/config + echo 0x250a9050 > $DCC_PATH/config + echo 0x250a9054 > $DCC_PATH/config + echo 0x250a9058 > $DCC_PATH/config + echo 0x250aa004 > $DCC_PATH/config + echo 0x250aa010 > $DCC_PATH/config + echo 0x250aa014 > $DCC_PATH/config + echo 0x250aa018 > $DCC_PATH/config + echo 0x250aa020 > $DCC_PATH/config + echo 0x250aa024 > $DCC_PATH/config + echo 0x250aa028 > $DCC_PATH/config + echo 0x250aa030 > $DCC_PATH/config + echo 0x250aa034 > $DCC_PATH/config + echo 0x250aa038 > $DCC_PATH/config + echo 0x250aa040 > $DCC_PATH/config + echo 0x250aa044 > $DCC_PATH/config + echo 0x250aa048 > $DCC_PATH/config + echo 0x250aa050 > $DCC_PATH/config + echo 0x250aa054 > $DCC_PATH/config + echo 0x250aa058 > $DCC_PATH/config + echo 0x250b001c > $DCC_PATH/config + echo 0x250b101c > $DCC_PATH/config + echo 0x250b201c > $DCC_PATH/config + echo 0x250b301c > $DCC_PATH/config + echo 0x250b401c > $DCC_PATH/config + echo 0x250b501c > $DCC_PATH/config + echo 0x250b601c > $DCC_PATH/config + echo 0x250b701c > $DCC_PATH/config + echo 0x250b801c > $DCC_PATH/config + echo 0x250b901c > $DCC_PATH/config + echo 0x250ba01c > $DCC_PATH/config + echo 0x250bb01c > $DCC_PATH/config + echo 0x250bc01c > $DCC_PATH/config + echo 0x250bd01c > $DCC_PATH/config + echo 0x250be01c > $DCC_PATH/config + echo 0x250bf01c > $DCC_PATH/config + echo 0x254a9004 > $DCC_PATH/config + echo 0x254a9010 > $DCC_PATH/config + echo 0x254a9014 > $DCC_PATH/config + echo 0x254a9018 > $DCC_PATH/config + echo 0x254a9020 > $DCC_PATH/config + echo 0x254a9024 > $DCC_PATH/config + echo 0x254a9028 > $DCC_PATH/config + echo 0x254a9030 > $DCC_PATH/config + echo 0x254a9034 > $DCC_PATH/config + echo 0x254a9038 > $DCC_PATH/config + echo 0x254a9040 > $DCC_PATH/config + echo 0x254a9044 > $DCC_PATH/config + echo 0x254a9048 > $DCC_PATH/config + echo 0x254a9050 > $DCC_PATH/config + echo 0x254a9054 > $DCC_PATH/config + echo 0x254a9058 > $DCC_PATH/config + echo 0x254aa004 > $DCC_PATH/config + echo 0x254aa010 > $DCC_PATH/config + echo 0x254aa014 > $DCC_PATH/config + echo 0x254aa018 > $DCC_PATH/config + echo 0x254aa020 > $DCC_PATH/config + echo 0x254aa024 > $DCC_PATH/config + echo 0x254aa028 > $DCC_PATH/config + echo 0x254aa030 > $DCC_PATH/config + echo 0x254aa034 > $DCC_PATH/config + echo 0x254aa038 > $DCC_PATH/config + echo 0x254aa040 > $DCC_PATH/config + echo 0x254aa044 > $DCC_PATH/config + echo 0x254aa048 > $DCC_PATH/config + echo 0x254aa050 > $DCC_PATH/config + echo 0x254aa054 > $DCC_PATH/config + echo 0x254aa058 > $DCC_PATH/config + echo 0x254b001c > $DCC_PATH/config + echo 0x254b101c > $DCC_PATH/config + echo 0x254b201c > $DCC_PATH/config + echo 0x254b301c > $DCC_PATH/config + echo 0x254b401c > $DCC_PATH/config + echo 0x254b501c > $DCC_PATH/config + echo 0x254b601c > $DCC_PATH/config + echo 0x254b701c > $DCC_PATH/config + echo 0x254b801c > $DCC_PATH/config + echo 0x254b901c > $DCC_PATH/config + echo 0x254ba01c > $DCC_PATH/config + echo 0x254bb01c > $DCC_PATH/config + echo 0x254bc01c > $DCC_PATH/config + echo 0x254bd01c > $DCC_PATH/config + echo 0x254be01c > $DCC_PATH/config + echo 0x254bf01c > $DCC_PATH/config + echo 0x252a9004 > $DCC_PATH/config + echo 0x252a9010 > $DCC_PATH/config + echo 0x252a9014 > $DCC_PATH/config + echo 0x252a9018 > $DCC_PATH/config + echo 0x252a9020 > $DCC_PATH/config + echo 0x252a9024 > $DCC_PATH/config + echo 0x252a9028 > $DCC_PATH/config + echo 0x252a9030 > $DCC_PATH/config + echo 0x252a9034 > $DCC_PATH/config + echo 0x252a9038 > $DCC_PATH/config + echo 0x252a9040 > $DCC_PATH/config + echo 0x252a9044 > $DCC_PATH/config + echo 0x252a9048 > $DCC_PATH/config + echo 0x252a9050 > $DCC_PATH/config + echo 0x252a9054 > $DCC_PATH/config + echo 0x252a9058 > $DCC_PATH/config + echo 0x252aa004 > $DCC_PATH/config + echo 0x252aa010 > $DCC_PATH/config + echo 0x252aa014 > $DCC_PATH/config + echo 0x252aa018 > $DCC_PATH/config + echo 0x252aa020 > $DCC_PATH/config + echo 0x252aa024 > $DCC_PATH/config + echo 0x252aa028 > $DCC_PATH/config + echo 0x252aa030 > $DCC_PATH/config + echo 0x252aa034 > $DCC_PATH/config + echo 0x252aa038 > $DCC_PATH/config + echo 0x252aa040 > $DCC_PATH/config + echo 0x252aa044 > $DCC_PATH/config + echo 0x252aa048 > $DCC_PATH/config + echo 0x252aa050 > $DCC_PATH/config + echo 0x252aa054 > $DCC_PATH/config + echo 0x252aa058 > $DCC_PATH/config + echo 0x252b001c > $DCC_PATH/config + echo 0x252b101c > $DCC_PATH/config + echo 0x252b201c > $DCC_PATH/config + echo 0x252b301c > $DCC_PATH/config + echo 0x252b401c > $DCC_PATH/config + echo 0x252b501c > $DCC_PATH/config + echo 0x252b601c > $DCC_PATH/config + echo 0x252b701c > $DCC_PATH/config + echo 0x252b801c > $DCC_PATH/config + echo 0x252b901c > $DCC_PATH/config + echo 0x252ba01c > $DCC_PATH/config + echo 0x252bb01c > $DCC_PATH/config + echo 0x252bc01c > $DCC_PATH/config + echo 0x252bd01c > $DCC_PATH/config + echo 0x252be01c > $DCC_PATH/config + echo 0x252bf01c > $DCC_PATH/config + echo 0x256a9004 > $DCC_PATH/config + echo 0x256a9010 > $DCC_PATH/config + echo 0x256a9014 > $DCC_PATH/config + echo 0x256a9018 > $DCC_PATH/config + echo 0x256a9020 > $DCC_PATH/config + echo 0x256a9024 > $DCC_PATH/config + echo 0x256a9028 > $DCC_PATH/config + echo 0x256a9030 > $DCC_PATH/config + echo 0x256a9034 > $DCC_PATH/config + echo 0x256a9038 > $DCC_PATH/config + echo 0x256a9040 > $DCC_PATH/config + echo 0x256a9044 > $DCC_PATH/config + echo 0x256a9048 > $DCC_PATH/config + echo 0x256a9050 > $DCC_PATH/config + echo 0x256a9054 > $DCC_PATH/config + echo 0x256a9058 > $DCC_PATH/config + echo 0x256aa004 > $DCC_PATH/config + echo 0x256aa010 > $DCC_PATH/config + echo 0x256aa014 > $DCC_PATH/config + echo 0x256aa018 > $DCC_PATH/config + echo 0x256aa020 > $DCC_PATH/config + echo 0x256aa024 > $DCC_PATH/config + echo 0x256aa028 > $DCC_PATH/config + echo 0x256aa030 > $DCC_PATH/config + echo 0x256aa034 > $DCC_PATH/config + echo 0x256aa038 > $DCC_PATH/config + echo 0x256aa040 > $DCC_PATH/config + echo 0x256aa044 > $DCC_PATH/config + echo 0x256aa048 > $DCC_PATH/config + echo 0x256aa050 > $DCC_PATH/config + echo 0x256aa054 > $DCC_PATH/config + echo 0x256aa058 > $DCC_PATH/config + echo 0x256b001c > $DCC_PATH/config + echo 0x256b101c > $DCC_PATH/config + echo 0x256b201c > $DCC_PATH/config + echo 0x256b301c > $DCC_PATH/config + echo 0x256b401c > $DCC_PATH/config + echo 0x256b501c > $DCC_PATH/config + echo 0x256b601c > $DCC_PATH/config + echo 0x256b701c > $DCC_PATH/config + echo 0x256b801c > $DCC_PATH/config + echo 0x256b901c > $DCC_PATH/config + echo 0x256ba01c > $DCC_PATH/config + echo 0x256bb01c > $DCC_PATH/config + echo 0x256bc01c > $DCC_PATH/config + echo 0x256bd01c > $DCC_PATH/config + echo 0x256be01c > $DCC_PATH/config + echo 0x256bf01c > $DCC_PATH/config + #LLCC_BROADCAST_ORLLCC_LCP_REGION + echo 0x258a4040 > $DCC_PATH/config + echo 0x258a4044 > $DCC_PATH/config + echo 0x258a4048 > $DCC_PATH/config + echo 0x258a404c > $DCC_PATH/config + echo 0x258a4050 > $DCC_PATH/config + echo 0x258a4054 > $DCC_PATH/config + echo 0x258a4058 > $DCC_PATH/config + echo 0x258a405c > $DCC_PATH/config + echo 0x258a4060 > $DCC_PATH/config + echo 0x258a4064 > $DCC_PATH/config + echo 0x258a4068 > $DCC_PATH/config + echo 0x258a406c > $DCC_PATH/config + echo 0x258a4070 > $DCC_PATH/config + echo 0x258a4074 > $DCC_PATH/config + echo 0x258a4078 > $DCC_PATH/config + echo 0x258a407c > $DCC_PATH/config + echo 0x258a4080 > $DCC_PATH/config + echo 0x258a4084 > $DCC_PATH/config + echo 0x258a4088 > $DCC_PATH/config + echo 0x258a408c > $DCC_PATH/config + echo 0x258a4090 > $DCC_PATH/config + echo 0x258a4094 > $DCC_PATH/config + echo 0x258a4098 > $DCC_PATH/config + echo 0x258a409c > $DCC_PATH/config + echo 0x258a40a0 > $DCC_PATH/config + echo 0x258a40a4 > $DCC_PATH/config + echo 0x258a40a8 > $DCC_PATH/config + echo 0x258a40ac > $DCC_PATH/config + echo 0x258a40b0 > $DCC_PATH/config + echo 0x258a40b4 > $DCC_PATH/config + echo 0x258a40b8 > $DCC_PATH/config + echo 0x258a40bc > $DCC_PATH/config + echo 0x258a40c0 > $DCC_PATH/config + echo 0x258a40c4 > $DCC_PATH/config + echo 0x258a40c8 > $DCC_PATH/config + echo 0x258a40cc > $DCC_PATH/config + echo 0x258a40d0 > $DCC_PATH/config + echo 0x258a40d4 > $DCC_PATH/config + echo 0x258a40d8 > $DCC_PATH/config + echo 0x258a40dc > $DCC_PATH/config + echo 0x258a40e0 > $DCC_PATH/config + echo 0x258a40e4 > $DCC_PATH/config + echo 0x258a40e8 > $DCC_PATH/config + echo 0x258a40ec > $DCC_PATH/config + echo 0x258a40f0 > $DCC_PATH/config + echo 0x258a40f4 > $DCC_PATH/config + echo 0x258a40f8 > $DCC_PATH/config + echo 0x258a40fc > $DCC_PATH/config + echo 0x258b0000 > $DCC_PATH/config + echo 0x258b1000 > $DCC_PATH/config + echo 0x258b2000 > $DCC_PATH/config + echo 0x258b3000 > $DCC_PATH/config + echo 0x258b4000 > $DCC_PATH/config + echo 0x258b5000 > $DCC_PATH/config + echo 0x258b6000 > $DCC_PATH/config + echo 0x258b7000 > $DCC_PATH/config + echo 0x258b8000 > $DCC_PATH/config + echo 0x258b9000 > $DCC_PATH/config + echo 0x258ba000 > $DCC_PATH/config + echo 0x258bb000 > $DCC_PATH/config + echo 0x258bc000 > $DCC_PATH/config + echo 0x258bd000 > $DCC_PATH/config + echo 0x258be000 > $DCC_PATH/config + echo 0x258bf000 > $DCC_PATH/config + echo 0x258b005c > $DCC_PATH/config + echo 0x258b105c > $DCC_PATH/config + echo 0x258b205c > $DCC_PATH/config + echo 0x258b305c > $DCC_PATH/config + echo 0x258b405c > $DCC_PATH/config + echo 0x258b505c > $DCC_PATH/config + echo 0x258b605c > $DCC_PATH/config + echo 0x258b705c > $DCC_PATH/config + echo 0x258b805c > $DCC_PATH/config + echo 0x258b905c > $DCC_PATH/config + echo 0x258ba05c > $DCC_PATH/config + echo 0x258bb05c > $DCC_PATH/config + echo 0x258bc05c > $DCC_PATH/config + echo 0x258bd05c > $DCC_PATH/config + echo 0x258be05c > $DCC_PATH/config + echo 0x258bf05c > $DCC_PATH/config + + echo 0x24405688 2 > $DCC_PATH/config + echo 0x24605688 2 > $DCC_PATH/config + echo 0x24485688 2 > $DCC_PATH/config + echo 0x24685688 2 > $DCC_PATH/config + echo 0x24407010 3 > $DCC_PATH/config + echo 0x24607010 3 > $DCC_PATH/config + echo 0x24487010 3 > $DCC_PATH/config + echo 0x24687010 3 > $DCC_PATH/config +} + +config_dcc_rpmh() +{ + echo 0xB281024 > $DCC_PATH/config + echo 0xBDE1034 > $DCC_PATH/config + + #RPMH_PDC_APSS + echo 0xB201020 2 > $DCC_PATH/config + echo 0xB211020 2 > $DCC_PATH/config + echo 0xB221020 2 > $DCC_PATH/config + echo 0xB231020 2 > $DCC_PATH/config + echo 0xB204520 > $DCC_PATH/config + echo 0xB200000 1 > $DCC_PATH/config + echo 0xB210000 1 > $DCC_PATH/config + echo 0xB220000 1 > $DCC_PATH/config + echo 0xB230000 1 > $DCC_PATH/config + + echo 0xC400204 1 > $DCC_PATH/config + echo 0xC400304 1 > $DCC_PATH/config + echo 0xC400288 1 > $DCC_PATH/config + echo 0xC40028C 1 > $DCC_PATH/config + echo 0xC400290 1 > $DCC_PATH/config + echo 0xC400294 1 > $DCC_PATH/config + echo 0xC42C02C 1 > $DCC_PATH/config + echo 0xC42F000 1 > $DCC_PATH/config +} + +config_dcc_apss_rscc() +{ + #APSS_RSCC_RSC register + echo 0x17A00010 > $DCC_PATH/config + echo 0x17A10010 > $DCC_PATH/config + echo 0x17A20010 > $DCC_PATH/config + echo 0x17A30010 > $DCC_PATH/config + echo 0x17A00030 > $DCC_PATH/config + echo 0x17A10030 > $DCC_PATH/config + echo 0x17A20030 > $DCC_PATH/config + echo 0x17A30030 > $DCC_PATH/config + echo 0x17A00038 > $DCC_PATH/config + echo 0x17A10038 > $DCC_PATH/config + echo 0x17A20038 > $DCC_PATH/config + echo 0x17A30038 > $DCC_PATH/config + echo 0x17A00040 > $DCC_PATH/config + echo 0x17A10040 > $DCC_PATH/config + echo 0x17A20040 > $DCC_PATH/config + echo 0x17A30040 > $DCC_PATH/config + echo 0x17A00048 > $DCC_PATH/config + echo 0x17A00400 3 > $DCC_PATH/config + echo 0x17A10400 3 > $DCC_PATH/config + echo 0x17A20400 3 > $DCC_PATH/config + echo 0x17A30400 3 > $DCC_PATH/config + echo 0x17a10d3c > $DCC_PATH/config + echo 0x17a10d54 > $DCC_PATH/config + echo 0x17a10d6c > $DCC_PATH/config + echo 0x17a10d84 > $DCC_PATH/config + echo 0x17a10d9c > $DCC_PATH/config + echo 0x17a10db4 > $DCC_PATH/config + echo 0x17a10dcc > $DCC_PATH/config + echo 0x17a10de4 > $DCC_PATH/config + echo 0x17a10dfc > $DCC_PATH/config + echo 0x17a10e14 > $DCC_PATH/config + echo 0x17a10e2c > $DCC_PATH/config + echo 0x17a10e44 > $DCC_PATH/config + echo 0x17a10e5c > $DCC_PATH/config + echo 0x17a10e74 > $DCC_PATH/config + echo 0x17a10e8c > $DCC_PATH/config + echo 0x17a10ea4 > $DCC_PATH/config + echo 0x17a10fdc > $DCC_PATH/config + echo 0x17a10ff4 > $DCC_PATH/config + echo 0x17a1100c > $DCC_PATH/config + echo 0x17a11024 > $DCC_PATH/config + echo 0x17a1103c > $DCC_PATH/config + echo 0x17a11054 > $DCC_PATH/config + echo 0x17a1106c > $DCC_PATH/config + echo 0x17a11084 > $DCC_PATH/config + echo 0x17a1109c > $DCC_PATH/config + echo 0x17a110b4 > $DCC_PATH/config + echo 0x17a110cc > $DCC_PATH/config + echo 0x17a110e4 > $DCC_PATH/config + echo 0x17a110fc > $DCC_PATH/config + echo 0x17a11114 > $DCC_PATH/config + echo 0x17a1112c > $DCC_PATH/config + echo 0x17a11144 > $DCC_PATH/config + echo 0x17a1127c > $DCC_PATH/config + echo 0x17a11294 > $DCC_PATH/config + echo 0x17a112ac > $DCC_PATH/config + echo 0x17a112c4 > $DCC_PATH/config + echo 0x17a112dc > $DCC_PATH/config + echo 0x17a112f4 > $DCC_PATH/config + echo 0x17a1130c > $DCC_PATH/config + echo 0x17a11324 > $DCC_PATH/config + echo 0x17a1133c > $DCC_PATH/config + echo 0x17a11354 > $DCC_PATH/config + echo 0x17a1136c > $DCC_PATH/config + echo 0x17a11384 > $DCC_PATH/config + echo 0x17a1139c > $DCC_PATH/config + echo 0x17a113b4 > $DCC_PATH/config + echo 0x17a113cc > $DCC_PATH/config + echo 0x17a113e4 > $DCC_PATH/config + echo 0x17a1151c > $DCC_PATH/config + echo 0x17a11534 > $DCC_PATH/config + echo 0x17a1154c > $DCC_PATH/config + echo 0x17a11564 > $DCC_PATH/config + echo 0x17a1157c > $DCC_PATH/config + echo 0x17a11594 > $DCC_PATH/config + echo 0x17a115ac > $DCC_PATH/config + echo 0x17a115c4 > $DCC_PATH/config + echo 0x17a115dc > $DCC_PATH/config + echo 0x17a115f4 > $DCC_PATH/config + echo 0x17a1160c > $DCC_PATH/config + echo 0x17a11624 > $DCC_PATH/config + echo 0x17a1163c > $DCC_PATH/config + echo 0x17a11654 > $DCC_PATH/config + echo 0x17a1166c > $DCC_PATH/config + echo 0x17a11684 > $DCC_PATH/config +} + +config_dcc_misc() +{ + #WDOG register + echo 0xC234004 5 > $DCC_PATH/config + echo 0x5 > $DCC_PATH/loop + echo 0x17410000 6 > $DCC_PATH/config + echo 0x17411000 6 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop +} + +config_dcc_epss() +{ + #EPSSFAST_SEQ_MEM_r register + echo 0x17D10200 320 > $DCC_PATH/config +} + +config_dcc_gict() +{ + echo 0x17120000 > $DCC_PATH/config + echo 0x17120008 > $DCC_PATH/config + echo 0x17120010 > $DCC_PATH/config + echo 0x17120018 > $DCC_PATH/config + echo 0x17120020 > $DCC_PATH/config + echo 0x17120028 > $DCC_PATH/config + echo 0x17120040 > $DCC_PATH/config + echo 0x17120048 > $DCC_PATH/config + echo 0x17120050 > $DCC_PATH/config + echo 0x17120058 > $DCC_PATH/config + echo 0x17120060 > $DCC_PATH/config + echo 0x17120068 > $DCC_PATH/config + echo 0x17120080 > $DCC_PATH/config + echo 0x17120088 > $DCC_PATH/config + echo 0x17120090 > $DCC_PATH/config + echo 0x17120098 > $DCC_PATH/config + echo 0x171200a0 > $DCC_PATH/config + echo 0x171200a8 > $DCC_PATH/config + echo 0x171200c0 > $DCC_PATH/config + echo 0x171200c8 > $DCC_PATH/config + echo 0x171200d0 > $DCC_PATH/config + echo 0x171200d8 > $DCC_PATH/config + echo 0x171200e0 > $DCC_PATH/config + echo 0x171200e8 > $DCC_PATH/config + echo 0x17120100 > $DCC_PATH/config + echo 0x17120108 > $DCC_PATH/config + echo 0x17120110 > $DCC_PATH/config + echo 0x17120118 > $DCC_PATH/config + echo 0x17120120 > $DCC_PATH/config + echo 0x17120128 > $DCC_PATH/config + echo 0x17120140 > $DCC_PATH/config + echo 0x17120148 > $DCC_PATH/config + echo 0x17120150 > $DCC_PATH/config + echo 0x17120158 > $DCC_PATH/config + echo 0x17120160 > $DCC_PATH/config + echo 0x17120168 > $DCC_PATH/config + echo 0x17120180 > $DCC_PATH/config + echo 0x17120188 > $DCC_PATH/config + echo 0x17120190 > $DCC_PATH/config + echo 0x17120198 > $DCC_PATH/config + echo 0x171201a0 > $DCC_PATH/config + echo 0x171201a8 > $DCC_PATH/config + echo 0x171201c0 > $DCC_PATH/config + echo 0x171201c8 > $DCC_PATH/config + echo 0x171201d0 > $DCC_PATH/config + echo 0x171201d8 > $DCC_PATH/config + echo 0x171201e0 > $DCC_PATH/config + echo 0x171201e8 > $DCC_PATH/config + echo 0x17120200 > $DCC_PATH/config + echo 0x17120208 > $DCC_PATH/config + echo 0x17120210 > $DCC_PATH/config + echo 0x17120218 > $DCC_PATH/config + echo 0x17120220 > $DCC_PATH/config + echo 0x17120228 > $DCC_PATH/config + echo 0x17120240 > $DCC_PATH/config + echo 0x17120248 > $DCC_PATH/config + echo 0x17120250 > $DCC_PATH/config + echo 0x17120258 > $DCC_PATH/config + echo 0x17120260 > $DCC_PATH/config + echo 0x17120268 > $DCC_PATH/config + echo 0x17120280 > $DCC_PATH/config + echo 0x17120288 > $DCC_PATH/config + echo 0x17120290 > $DCC_PATH/config + echo 0x17120298 > $DCC_PATH/config + echo 0x171202a0 > $DCC_PATH/config + echo 0x171202a8 > $DCC_PATH/config + echo 0x171202c0 > $DCC_PATH/config + echo 0x171202c8 > $DCC_PATH/config + echo 0x171202d0 > $DCC_PATH/config + echo 0x171202d8 > $DCC_PATH/config + echo 0x171202e0 > $DCC_PATH/config + echo 0x171202e8 > $DCC_PATH/config + echo 0x17120300 > $DCC_PATH/config + echo 0x17120308 > $DCC_PATH/config + echo 0x17120310 > $DCC_PATH/config + echo 0x17120318 > $DCC_PATH/config + echo 0x17120320 > $DCC_PATH/config + echo 0x17120328 > $DCC_PATH/config + echo 0x17120340 > $DCC_PATH/config + echo 0x17120348 > $DCC_PATH/config + echo 0x17120350 > $DCC_PATH/config + echo 0x17120358 > $DCC_PATH/config + echo 0x17120360 > $DCC_PATH/config + echo 0x17120368 > $DCC_PATH/config + echo 0x17120380 > $DCC_PATH/config + echo 0x17120388 > $DCC_PATH/config + echo 0x17120390 > $DCC_PATH/config + echo 0x17120398 > $DCC_PATH/config + echo 0x171203a0 > $DCC_PATH/config + echo 0x171203a8 > $DCC_PATH/config + echo 0x171203c0 > $DCC_PATH/config + echo 0x171203c8 > $DCC_PATH/config + echo 0x171203d0 > $DCC_PATH/config + echo 0x171203d8 > $DCC_PATH/config + echo 0x171203e0 > $DCC_PATH/config + echo 0x171203e8 > $DCC_PATH/config + echo 0x17120400 > $DCC_PATH/config + echo 0x17120408 > $DCC_PATH/config + echo 0x17120410 > $DCC_PATH/config + echo 0x17120418 > $DCC_PATH/config + echo 0x17120420 > $DCC_PATH/config + echo 0x17120428 > $DCC_PATH/config + echo 0x17120440 > $DCC_PATH/config + echo 0x17120448 > $DCC_PATH/config + echo 0x17120450 > $DCC_PATH/config + echo 0x17120458 > $DCC_PATH/config + echo 0x17120460 > $DCC_PATH/config + echo 0x17120468 > $DCC_PATH/config + echo 0x17120480 > $DCC_PATH/config + echo 0x17120488 > $DCC_PATH/config + echo 0x17120490 > $DCC_PATH/config + echo 0x17120498 > $DCC_PATH/config + echo 0x171204a0 > $DCC_PATH/config + echo 0x171204a8 > $DCC_PATH/config + echo 0x171204c0 > $DCC_PATH/config + echo 0x171204c8 > $DCC_PATH/config + echo 0x171204d0 > $DCC_PATH/config + echo 0x171204d8 > $DCC_PATH/config + echo 0x171204e0 > $DCC_PATH/config + echo 0x171204e8 > $DCC_PATH/config + echo 0x17120500 > $DCC_PATH/config + echo 0x17120508 > $DCC_PATH/config + echo 0x17120510 > $DCC_PATH/config + echo 0x17120518 > $DCC_PATH/config + echo 0x17120520 > $DCC_PATH/config + echo 0x17120528 > $DCC_PATH/config + echo 0x17120540 > $DCC_PATH/config + echo 0x17120548 > $DCC_PATH/config + echo 0x17120550 > $DCC_PATH/config + echo 0x17120558 > $DCC_PATH/config + echo 0x17120560 > $DCC_PATH/config + echo 0x17120568 > $DCC_PATH/config + echo 0x17120580 > $DCC_PATH/config + echo 0x17120588 > $DCC_PATH/config + echo 0x17120590 > $DCC_PATH/config + echo 0x17120598 > $DCC_PATH/config + echo 0x171205a0 > $DCC_PATH/config + echo 0x171205a8 > $DCC_PATH/config + echo 0x171205c0 > $DCC_PATH/config + echo 0x171205c8 > $DCC_PATH/config + echo 0x171205d0 > $DCC_PATH/config + echo 0x171205d8 > $DCC_PATH/config + echo 0x171205e0 > $DCC_PATH/config + echo 0x171205e8 > $DCC_PATH/config + echo 0x17120600 > $DCC_PATH/config + echo 0x17120608 > $DCC_PATH/config + echo 0x17120610 > $DCC_PATH/config + echo 0x17120618 > $DCC_PATH/config + echo 0x17120620 > $DCC_PATH/config + echo 0x17120628 > $DCC_PATH/config + echo 0x17120640 > $DCC_PATH/config + echo 0x17120648 > $DCC_PATH/config + echo 0x17120650 > $DCC_PATH/config + echo 0x17120658 > $DCC_PATH/config + echo 0x17120660 > $DCC_PATH/config + echo 0x17120668 > $DCC_PATH/config + echo 0x17120680 > $DCC_PATH/config + echo 0x17120688 > $DCC_PATH/config + echo 0x17120690 > $DCC_PATH/config + echo 0x17120698 > $DCC_PATH/config + echo 0x171206a0 > $DCC_PATH/config + echo 0x171206a8 > $DCC_PATH/config + echo 0x171206c0 > $DCC_PATH/config + echo 0x171206c8 > $DCC_PATH/config + echo 0x171206d0 > $DCC_PATH/config + echo 0x171206d8 > $DCC_PATH/config + echo 0x171206e0 > $DCC_PATH/config + echo 0x171206e8 > $DCC_PATH/config + echo 0x1712e000 > $DCC_PATH/config +} + +config_dcc_lpm_pcu() +{ + #PCU -DCC for LPM path + # Read only registers + echo 0x17800010 1 > $DCC_PATH/config + echo 0x17800024 1 > $DCC_PATH/config + echo 0x17800038 1 > $DCC_PATH/config + echo 0x1780003C 1 > $DCC_PATH/config + echo 0x17800040 1 > $DCC_PATH/config + echo 0x17800044 1 > $DCC_PATH/config + echo 0x17800048 1 > $DCC_PATH/config + echo 0x1780004C 1 > $DCC_PATH/config + echo 0x17800058 1 > $DCC_PATH/config + echo 0x1780005C 1 > $DCC_PATH/config + echo 0x17800060 1 > $DCC_PATH/config + echo 0x17800064 1 > $DCC_PATH/config + echo 0x1780006C 1 > $DCC_PATH/config + echo 0x178000F0 1 > $DCC_PATH/config + echo 0x178000F4 1 > $DCC_PATH/config + + echo 0x17810010 1 > $DCC_PATH/config + echo 0x17810024 1 > $DCC_PATH/config + echo 0x17810038 1 > $DCC_PATH/config + echo 0x1781003C 1 > $DCC_PATH/config + echo 0x17810040 1 > $DCC_PATH/config + echo 0x17810044 1 > $DCC_PATH/config + echo 0x17810048 1 > $DCC_PATH/config + echo 0x1781004C 1 > $DCC_PATH/config + echo 0x17810058 1 > $DCC_PATH/config + echo 0x1781005C 1 > $DCC_PATH/config + echo 0x17810060 1 > $DCC_PATH/config + echo 0x17810064 1 > $DCC_PATH/config + echo 0x1781006C 1 > $DCC_PATH/config + echo 0x178100F0 1 > $DCC_PATH/config + echo 0x178100F4 1 > $DCC_PATH/config + + echo 0x17820010 1 > $DCC_PATH/config + echo 0x17820024 1 > $DCC_PATH/config + echo 0x17820038 1 > $DCC_PATH/config + echo 0x1782003C 1 > $DCC_PATH/config + echo 0x17820040 1 > $DCC_PATH/config + echo 0x17820044 1 > $DCC_PATH/config + echo 0x17820048 1 > $DCC_PATH/config + echo 0x1782004C 1 > $DCC_PATH/config + echo 0x17820058 1 > $DCC_PATH/config + echo 0x1782005C 1 > $DCC_PATH/config + echo 0x17820060 1 > $DCC_PATH/config + echo 0x17820064 1 > $DCC_PATH/config + echo 0x178200F0 1 > $DCC_PATH/config + echo 0x178200F4 1 > $DCC_PATH/config + + echo 0x17830010 1 > $DCC_PATH/config + echo 0x17830024 1 > $DCC_PATH/config + echo 0x17830038 1 > $DCC_PATH/config + echo 0x1783003C 1 > $DCC_PATH/config + echo 0x17830040 1 > $DCC_PATH/config + echo 0x17830044 1 > $DCC_PATH/config + echo 0x17830048 1 > $DCC_PATH/config + echo 0x1783004C 1 > $DCC_PATH/config + echo 0x17830058 1 > $DCC_PATH/config + echo 0x1783005C 1 > $DCC_PATH/config + echo 0x17830060 1 > $DCC_PATH/config + echo 0x17830064 1 > $DCC_PATH/config + echo 0x178300F0 1 > $DCC_PATH/config + echo 0x178300F4 1 > $DCC_PATH/config + + echo 0x17840010 1 > $DCC_PATH/config + echo 0x17840024 1 > $DCC_PATH/config + echo 0x17840038 1 > $DCC_PATH/config + echo 0x1784003C 1 > $DCC_PATH/config + echo 0x17840040 1 > $DCC_PATH/config + echo 0x17840044 1 > $DCC_PATH/config + echo 0x17840048 1 > $DCC_PATH/config + echo 0x1784004C 1 > $DCC_PATH/config + echo 0x17840058 1 > $DCC_PATH/config + echo 0x1784005C 1 > $DCC_PATH/config + echo 0x17840060 1 > $DCC_PATH/config + echo 0x17840064 1 > $DCC_PATH/config + echo 0x178400F0 1 > $DCC_PATH/config + echo 0x178400F4 1 > $DCC_PATH/config + + echo 0x17850010 1 > $DCC_PATH/config + echo 0x17850024 1 > $DCC_PATH/config + echo 0x17850038 1 > $DCC_PATH/config + echo 0x1785003C 1 > $DCC_PATH/config + echo 0x17850040 1 > $DCC_PATH/config + echo 0x17850044 1 > $DCC_PATH/config + echo 0x17850048 1 > $DCC_PATH/config + echo 0x1785004C 1 > $DCC_PATH/config + echo 0x17850058 1 > $DCC_PATH/config + echo 0x1785005C 1 > $DCC_PATH/config + echo 0x17850060 1 > $DCC_PATH/config + echo 0x17850064 1 > $DCC_PATH/config + echo 0x178500F0 1 > $DCC_PATH/config + echo 0x178500F4 1 > $DCC_PATH/config + + echo 0x17860010 1 > $DCC_PATH/config + echo 0x17860024 1 > $DCC_PATH/config + echo 0x17860038 1 > $DCC_PATH/config + echo 0x1786003C 1 > $DCC_PATH/config + echo 0x17860040 1 > $DCC_PATH/config + echo 0x17860044 1 > $DCC_PATH/config + echo 0x17860048 1 > $DCC_PATH/config + echo 0x1786004C 1 > $DCC_PATH/config + echo 0x17860058 1 > $DCC_PATH/config + echo 0x1786005C 1 > $DCC_PATH/config + echo 0x17860060 1 > $DCC_PATH/config + echo 0x17860064 1 > $DCC_PATH/config + echo 0x178600F0 1 > $DCC_PATH/config + echo 0x178600F4 1 > $DCC_PATH/config + + echo 0x17870010 1 > $DCC_PATH/config + echo 0x17870024 1 > $DCC_PATH/config + echo 0x17870038 1 > $DCC_PATH/config + echo 0x1787003C 1 > $DCC_PATH/config + echo 0x17870040 1 > $DCC_PATH/config + echo 0x17870044 1 > $DCC_PATH/config + echo 0x17870048 1 > $DCC_PATH/config + echo 0x1787004C 1 > $DCC_PATH/config + echo 0x17870058 1 > $DCC_PATH/config + echo 0x1787005C 1 > $DCC_PATH/config + echo 0x17870060 1 > $DCC_PATH/config + echo 0x17870064 1 > $DCC_PATH/config + echo 0x178700F0 1 > $DCC_PATH/config + echo 0x178700F4 1 > $DCC_PATH/config + + echo 0x178A0010 1 > $DCC_PATH/config + echo 0x178A0024 1 > $DCC_PATH/config + echo 0x178A0038 1 > $DCC_PATH/config + echo 0x178A003C 1 > $DCC_PATH/config + echo 0x178A0040 1 > $DCC_PATH/config + echo 0x178A0044 1 > $DCC_PATH/config + echo 0x178A0048 1 > $DCC_PATH/config + echo 0x178A004C 1 > $DCC_PATH/config + echo 0x178A006C 1 > $DCC_PATH/config + echo 0x178A0070 1 > $DCC_PATH/config + echo 0x178A0074 1 > $DCC_PATH/config + echo 0x178A0078 1 > $DCC_PATH/config + echo 0x178A007C 1 > $DCC_PATH/config + echo 0x178A0084 1 > $DCC_PATH/config + echo 0x178A00F4 1 > $DCC_PATH/config + echo 0x178A00F8 1 > $DCC_PATH/config + echo 0x178A00FC 1 > $DCC_PATH/config + echo 0x178A0100 1 > $DCC_PATH/config + echo 0x178A0104 1 > $DCC_PATH/config + echo 0x178A0118 1 > $DCC_PATH/config + echo 0x178A011C 1 > $DCC_PATH/config + echo 0x178A0120 1 > $DCC_PATH/config + echo 0x178A0124 1 > $DCC_PATH/config + echo 0x178A0128 1 > $DCC_PATH/config + echo 0x178A012C 1 > $DCC_PATH/config + echo 0x178A0130 1 > $DCC_PATH/config + echo 0x178A0134 1 > $DCC_PATH/config + echo 0x178A0138 1 > $DCC_PATH/config + echo 0x178A0158 1 > $DCC_PATH/config + echo 0x178A015C 1 > $DCC_PATH/config + echo 0x178A0160 1 > $DCC_PATH/config + echo 0x178A0164 1 > $DCC_PATH/config + echo 0x178A0168 1 > $DCC_PATH/config + echo 0x178A0170 1 > $DCC_PATH/config + echo 0x178A0174 1 > $DCC_PATH/config + echo 0x178A0188 1 > $DCC_PATH/config + echo 0x178A018C 1 > $DCC_PATH/config + echo 0x178A0190 1 > $DCC_PATH/config + echo 0x178A0194 1 > $DCC_PATH/config + echo 0x178A0198 1 > $DCC_PATH/config + echo 0x178A01AC 1 > $DCC_PATH/config + echo 0x178A01B0 1 > $DCC_PATH/config + echo 0x178A01B4 1 > $DCC_PATH/config + echo 0x178A01B8 1 > $DCC_PATH/config + echo 0x178A01BC 1 > $DCC_PATH/config + echo 0x178A01C0 1 > $DCC_PATH/config + echo 0x178A01C8 1 > $DCC_PATH/config + + echo 0x17880010 1 > $DCC_PATH/config + echo 0x17880024 1 > $DCC_PATH/config + echo 0x17880038 1 > $DCC_PATH/config + echo 0x1788003C 1 > $DCC_PATH/config + echo 0x17880040 1 > $DCC_PATH/config + echo 0x17880044 1 > $DCC_PATH/config + echo 0x17880048 1 > $DCC_PATH/config + echo 0x1788004C 1 > $DCC_PATH/config + + echo 0x17890010 1 > $DCC_PATH/config + echo 0x17890024 1 > $DCC_PATH/config + echo 0x17890038 1 > $DCC_PATH/config + echo 0x1789003C 1 > $DCC_PATH/config + echo 0x17890040 1 > $DCC_PATH/config + echo 0x17890044 1 > $DCC_PATH/config + echo 0x17890048 1 > $DCC_PATH/config + echo 0x1789004C 1 > $DCC_PATH/config + + echo 0x178A0290 1 > $DCC_PATH/config +} +config_dcc_lpm() +{ + #PPU PWPR/PWSR/DISR register + echo 0x178A0204 > $DCC_PATH/config + echo 0x178A0244 > $DCC_PATH/config + echo 0x17E30000 > $DCC_PATH/config + echo 0x17E30008 > $DCC_PATH/config + echo 0x17E30010 > $DCC_PATH/config + echo 0x17E80000 > $DCC_PATH/config + echo 0x17E80008 > $DCC_PATH/config + echo 0x17E80010 > $DCC_PATH/config + echo 0x17F80000 > $DCC_PATH/config + echo 0x17F80008 > $DCC_PATH/config + echo 0x17F80010 > $DCC_PATH/config + echo 0x18080000 > $DCC_PATH/config + echo 0x18080008 > $DCC_PATH/config + echo 0x18080010 > $DCC_PATH/config + echo 0x18180000 > $DCC_PATH/config + echo 0x18180008 > $DCC_PATH/config + echo 0x18180010 > $DCC_PATH/config + echo 0x18280000 > $DCC_PATH/config + echo 0x18280008 > $DCC_PATH/config + echo 0x18280010 > $DCC_PATH/config + echo 0x18380000 > $DCC_PATH/config + echo 0x18380008 > $DCC_PATH/config + echo 0x18380010 > $DCC_PATH/config + echo 0x18480000 > $DCC_PATH/config + echo 0x18480008 > $DCC_PATH/config + echo 0x18480010 > $DCC_PATH/config + echo 0x18580000 > $DCC_PATH/config + echo 0x18580008 > $DCC_PATH/config + echo 0x18580010 > $DCC_PATH/config +} +config_dcc_core() +{ + # core hang + echo 0x1780005C 1 > $DCC_PATH/config + echo 0x1781005C 1 > $DCC_PATH/config + echo 0x1782005C 1 > $DCC_PATH/config + echo 0x1783005C 1 > $DCC_PATH/config + echo 0x1784005C 1 > $DCC_PATH/config + echo 0x1785005C 1 > $DCC_PATH/config + echo 0x1786005C 1 > $DCC_PATH/config + echo 0x1787005C 1 > $DCC_PATH/config + echo 0x1740003C 1 > $DCC_PATH/config + + #MIBU Debug registers + echo 0x17600238 1 > $DCC_PATH/config + echo 0x17600240 11 > $DCC_PATH/config + echo 0x17600530 > $DCC_PATH/config + echo 0x1760051C > $DCC_PATH/config + echo 0x17600524 > $DCC_PATH/config + echo 0x1760052C > $DCC_PATH/config + echo 0x17600518 > $DCC_PATH/config + echo 0x17600520 > $DCC_PATH/config + echo 0x17600528 > $DCC_PATH/config + + #CHI (GNOC) Hang counters + echo 0x17600404 3 > $DCC_PATH/config + echo 0x1760041C 3 > $DCC_PATH/config + echo 0x17600434 1 > $DCC_PATH/config + echo 0x1760043C 1 > $DCC_PATH/config + echo 0x17600440 1 > $DCC_PATH/config + + #SYSCO and other misc debug + echo 0x17400438 1 > $DCC_PATH/config + echo 0x17600044 1 > $DCC_PATH/config + echo 0x17600500 1 > $DCC_PATH/config + + #PPUHWSTAT_STS + echo 0x17600504 5 > $DCC_PATH/config + + #CPRh + echo 0x17900908 1 > $DCC_PATH/config + echo 0x17900C18 1 > $DCC_PATH/config + echo 0x17901908 1 > $DCC_PATH/config + echo 0x17901C18 1 > $DCC_PATH/config + echo 0x17902908 1 > $DCC_PATH/config + echo 0x17902C18 1 > $DCC_PATH/config + + echo 0x17B90810 1 > $DCC_PATH/config + echo 0x17B90C50 1 > $DCC_PATH/config + echo 0x17B90814 1 > $DCC_PATH/config + echo 0x17B90C54 1 > $DCC_PATH/config + echo 0x17B90818 1 > $DCC_PATH/config + echo 0x17B90C58 1 > $DCC_PATH/config + echo 0x17B93A04 2 > $DCC_PATH/config + echo 0x17B94810 1 > $DCC_PATH/config + echo 0x17B94814 1 > $DCC_PATH/config + echo 0x17B94818 1 > $DCC_PATH/config + echo 0x17B97A04 1 > $DCC_PATH/config + echo 0x17BA0810 1 > $DCC_PATH/config + echo 0x17BA0C50 1 > $DCC_PATH/config + echo 0x17BA0814 1 > $DCC_PATH/config + echo 0x17BA0C54 1 > $DCC_PATH/config + echo 0x17BA0818 1 > $DCC_PATH/config + echo 0x17BA0C58 1 > $DCC_PATH/config + echo 0x17BA3A04 2 > $DCC_PATH/config + + echo 0x17B93000 80 > $DCC_PATH/config + echo 0x17B97000 40 > $DCC_PATH/config + echo 0x17BA3000 80 > $DCC_PATH/config + + #rpmh + echo 0x0C201244 1 > $DCC_PATH/config + echo 0x0C202244 1 > $DCC_PATH/config + + #apm + echo 0x17B02000 1 > $DCC_PATH/config + echo 0x17B00000 1 > $DCC_PATH/config + + #L3-ACD + echo 0x17A94030 1 > $DCC_PATH/config + echo 0x17A9408C 1 > $DCC_PATH/config + echo 0x17A9409C 0x78 > $DCC_PATH/config_write + echo 0x17A9409C 0x0 > $DCC_PATH/config_write + echo 0x17A94048 0x1 > $DCC_PATH/config_write + echo 0x17A94090 0x0 > $DCC_PATH/config_write + echo 0x17A94090 0x25 > $DCC_PATH/config_write + echo 0x17A94098 1 > $DCC_PATH/config + echo 0x17A94048 0x1D > $DCC_PATH/config_write + echo 0x17A94090 0x0 > $DCC_PATH/config_write + echo 0x17A94090 0x25 > $DCC_PATH/config_write + echo 0x17A94098 1 > $DCC_PATH/config + + #SILVER-ACD + echo 0x17A90030 1 > $DCC_PATH/config + echo 0x17A9008C 1 > $DCC_PATH/config + echo 0x17A9009C 0x78 > $DCC_PATH/config_write + echo 0x17A9009C 0x0 > $DCC_PATH/config_write + echo 0x17A90048 0x1 > $DCC_PATH/config_write + echo 0x17A90090 0x0 > $DCC_PATH/config_write + echo 0x17A90090 0x25 > $DCC_PATH/config_write + echo 0x17A90098 1 > $DCC_PATH/config + echo 0x17A90048 0x1D > $DCC_PATH/config_write + echo 0x17A90090 0x0 > $DCC_PATH/config_write + echo 0x17A90090 0x25 > $DCC_PATH/config_write + echo 0x17A90098 1 > $DCC_PATH/config + + + #GOLD-ACD + echo 0x17A92030 1 > $DCC_PATH/config + echo 0x17A9208C 1 > $DCC_PATH/config + echo 0x17A9209C 0x78 > $DCC_PATH/config_write + echo 0x17A9209C 0x0 > $DCC_PATH/config_write + echo 0x17A92048 0x1 > $DCC_PATH/config_write + echo 0x17A92090 0x0 > $DCC_PATH/config_write + echo 0x17A92090 0x25 > $DCC_PATH/config_write + echo 0x17A92098 1 > $DCC_PATH/config + echo 0x17A92048 0x1D > $DCC_PATH/config_write + echo 0x17A92090 0x0 > $DCC_PATH/config_write + echo 0x17A92090 0x25 > $DCC_PATH/config_write + echo 0x17A92098 1 > $DCC_PATH/config + + #GOLDPLUS-ACD + echo 0x17A96030 1 > $DCC_PATH/config + echo 0x17A9608C 1 > $DCC_PATH/config + echo 0x17A9609C 0x78 > $DCC_PATH/config_write + echo 0x17A9609C 0x0 > $DCC_PATH/config_write + echo 0x17A96048 0x1 > $DCC_PATH/config_write + echo 0x17A96090 0x0 > $DCC_PATH/config_write + echo 0x17A96090 0x25 > $DCC_PATH/config_write + echo 0x17A96098 1 > $DCC_PATH/config + echo 0x17A96048 0x1D > $DCC_PATH/config_write + echo 0x17A96090 0x0 > $DCC_PATH/config_write + echo 0x17A96090 0x25 > $DCC_PATH/config_write + echo 0x17A96098 1 > $DCC_PATH/config + + echo 0x17D98024 1 > $DCC_PATH/config + + #Security Control Core for Binning info + echo 0x221C20A4 1 > $DCC_PATH/config + + #SoC version + echo 0x01FC8000 1 > $DCC_PATH/config + + #WDOG BIT Config + echo 0x17400038 1 > $DCC_PATH/config + + #Curr Freq + echo 0x17D91020 > $DCC_PATH/config + echo 0x17D92020 > $DCC_PATH/config + echo 0x17D93020 > $DCC_PATH/config + echo 0x17D94020 > $DCC_PATH/config + echo 0x17D90020 > $DCC_PATH/config + + #OSM Seq curr addr + echo 0x17D9134C > $DCC_PATH/config + echo 0x17D9234C > $DCC_PATH/config + echo 0x17D9334C > $DCC_PATH/config + echo 0x17D9434C > $DCC_PATH/config + echo 0x17D9034C > $DCC_PATH/config + + #DCVS_IN_PROGRESS + echo 0x17D91300 > $DCC_PATH/config + echo 0x17D92300 > $DCC_PATH/config + echo 0x17D93300 > $DCC_PATH/config + echo 0x17D94300 > $DCC_PATH/config + echo 0x17D90300 > $DCC_PATH/config +} + +config_dcc_gic() +{ + echo 0x17100104 29 > $DCC_PATH/config + echo 0x17100204 29 > $DCC_PATH/config + echo 0x17100384 29 > $DCC_PATH/config + echo 0x178A0250 > $DCC_PATH/config + echo 0x178A0254 > $DCC_PATH/config + echo 0x178A025C > $DCC_PATH/config +} + +config_turing() +{ + echo 0x32302028 1 > $DCC_PATH/config + echo 0x320A4404 2 > $DCC_PATH/config + echo 0x323C0404 2 > $DCC_PATH/config + #echo 0xB2B1020 1 > $DCC_PATH/config + #echo 0xB2B1024 1 > $DCC_PATH/config +} + +enable_dcc_pll_status() +{ + echo 0x17A80000 > $DCC_PATH/config + echo 0x17A80004 > $DCC_PATH/config + echo 0x17A80008 > $DCC_PATH/config + echo 0x17A8000C > $DCC_PATH/config + echo 0x17A80010 > $DCC_PATH/config + echo 0x17A80014 > $DCC_PATH/config + echo 0x17A80018 > $DCC_PATH/config + echo 0x17A8001C > $DCC_PATH/config + echo 0x17A80020 > $DCC_PATH/config + echo 0x17A80024 > $DCC_PATH/config + echo 0x17A80028 > $DCC_PATH/config + echo 0x17A8002C > $DCC_PATH/config + echo 0x17A80030 > $DCC_PATH/config + echo 0x17A80034 > $DCC_PATH/config + echo 0x17A80038 > $DCC_PATH/config + echo 0x17A8003C > $DCC_PATH/config + echo 0x17A80040 > $DCC_PATH/config + + echo 0x17A82000 > $DCC_PATH/config + echo 0x17A82004 > $DCC_PATH/config + echo 0x17A82008 > $DCC_PATH/config + echo 0x17A8200C > $DCC_PATH/config + echo 0x17A82010 > $DCC_PATH/config + echo 0x17A82014 > $DCC_PATH/config + echo 0x17A82018 > $DCC_PATH/config + echo 0x17A8201C > $DCC_PATH/config + echo 0x17A82020 > $DCC_PATH/config + echo 0x17A82024 > $DCC_PATH/config + echo 0x17A82028 > $DCC_PATH/config + echo 0x17A8202C > $DCC_PATH/config + echo 0x17A82030 > $DCC_PATH/config + echo 0x17A82034 > $DCC_PATH/config + echo 0x17A82038 > $DCC_PATH/config + echo 0x17A8203C > $DCC_PATH/config + echo 0x17A82040 > $DCC_PATH/config + + echo 0x17A88000 > $DCC_PATH/config + echo 0x17A88004 > $DCC_PATH/config + echo 0x17A88008 > $DCC_PATH/config + echo 0x17A8800C > $DCC_PATH/config + echo 0x17A88010 > $DCC_PATH/config + echo 0x17A88014 > $DCC_PATH/config + echo 0x17A88018 > $DCC_PATH/config + echo 0x17A8801C > $DCC_PATH/config + echo 0x17A88020 > $DCC_PATH/config + echo 0x17A88024 > $DCC_PATH/config + echo 0x17A88028 > $DCC_PATH/config + echo 0x17A8802C > $DCC_PATH/config + echo 0x17A88030 > $DCC_PATH/config + echo 0x17A88034 > $DCC_PATH/config + echo 0x17A88038 > $DCC_PATH/config + echo 0x17A8803C > $DCC_PATH/config + echo 0x17A88040 > $DCC_PATH/config + + echo 0x17A86000 > $DCC_PATH/config + echo 0x17A86004 > $DCC_PATH/config + echo 0x17A86008 > $DCC_PATH/config + echo 0x17A8600C > $DCC_PATH/config + echo 0x17A86010 > $DCC_PATH/config + echo 0x17A86014 > $DCC_PATH/config + echo 0x17A86018 > $DCC_PATH/config + echo 0x17A8601C > $DCC_PATH/config + echo 0x17A86020 > $DCC_PATH/config + echo 0x17A86024 > $DCC_PATH/config + echo 0x17A86028 > $DCC_PATH/config + echo 0x17A8602C > $DCC_PATH/config + echo 0x17A86030 > $DCC_PATH/config + echo 0x17A86034 > $DCC_PATH/config + echo 0x17A86038 > $DCC_PATH/config + echo 0x17A8603C > $DCC_PATH/config + echo 0x17A86040 > $DCC_PATH/config + + echo 0x17A84000 > $DCC_PATH/config + echo 0x17A84004 > $DCC_PATH/config + echo 0x17A84008 > $DCC_PATH/config + echo 0x17A8400C > $DCC_PATH/config + echo 0x17A84010 > $DCC_PATH/config + echo 0x17A84014 > $DCC_PATH/config + echo 0x17A84018 > $DCC_PATH/config + echo 0x17A8401C > $DCC_PATH/config + echo 0x17A84020 > $DCC_PATH/config + echo 0x17A84024 > $DCC_PATH/config + echo 0x17A84028 > $DCC_PATH/config + echo 0x17A8402C > $DCC_PATH/config + echo 0x17A84030 > $DCC_PATH/config + echo 0x17A84034 > $DCC_PATH/config + echo 0x17A84038 > $DCC_PATH/config + echo 0x17A8403C > $DCC_PATH/config + echo 0x17A84040 > $DCC_PATH/config +} + +config_lpass() +{ + #LPASS RSC + echo 0x6802028 1 > $DCC_PATH/config + echo 0x7200408 1 > $DCC_PATH/config + echo 0x7200404 1 > $DCC_PATH/config + echo 0x6800000 1 > $DCC_PATH/config + echo 0x68C0404 1 > $DCC_PATH/config + echo 0x68C0408 1 > $DCC_PATH/config + + #eNPU + echo 0x6E26000 1 > $DCC_PATH/config + echo 0x6E26024 1 > $DCC_PATH/config + echo 0x6E2608C 1 > $DCC_PATH/config + echo 0x6E260AC 1 > $DCC_PATH/config + echo 0x6E260B0 1 > $DCC_PATH/config + echo 0x6E260B4 1 > $DCC_PATH/config + echo 0x6E260B8 1 > $DCC_PATH/config + echo 0x6E260BC 1 > $DCC_PATH/config + echo 0x6E260C0 1 > $DCC_PATH/config + echo 0x6E26100 1 > $DCC_PATH/config + echo 0x6E26104 1 > $DCC_PATH/config + echo 0x6E26108 1 > $DCC_PATH/config + echo 0x6E2610C 1 > $DCC_PATH/config + echo 0x6E26110 1 > $DCC_PATH/config + echo 0x6E26120 1 > $DCC_PATH/config + echo 0x6E26124 1 > $DCC_PATH/config + echo 0x6E26128 1 > $DCC_PATH/config + echo 0x6E2612C 1 > $DCC_PATH/config + echo 0x6E261AC 1 > $DCC_PATH/config + echo 0x6E26504 1 > $DCC_PATH/config +} + +config_qdsp_lpm() +{ + # LPASS + echo 0x68C0404 2 > $DCC_PATH/config + echo 0x68C0208 3 > $DCC_PATH/config + echo 0x68C0228 3 > $DCC_PATH/config + echo 0x68C0248 3 > $DCC_PATH/config + echo 0x68C0268 3 > $DCC_PATH/config + echo 0x68C040C 1 > $DCC_PATH/config + echo 0x68C0110 2 > $DCC_PATH/config + echo 0x68C011C 1 > $DCC_PATH/config + echo 0x7200404 2 > $DCC_PATH/config + echo 0x7200208 3 > $DCC_PATH/config + echo 0x7200228 3 > $DCC_PATH/config + echo 0x7200248 3 > $DCC_PATH/config + echo 0x7200268 3 > $DCC_PATH/config + echo 0x720040C 1 > $DCC_PATH/config + echo 0x7200110 2 > $DCC_PATH/config + echo 0x720011C 1 > $DCC_PATH/config + echo 0x7201c30 1 > $DCC_PATH/config + echo 0x7201ed0 1 > $DCC_PATH/config + echo 0x7202170 1 > $DCC_PATH/config + echo 0x7202410 1 > $DCC_PATH/config + echo 0x72026b0 1 > $DCC_PATH/config + echo 0x7202950 1 > $DCC_PATH/config + echo 0x7202bf0 1 > $DCC_PATH/config + echo 0x7202e90 1 > $DCC_PATH/config + echo 0x7203130 1 > $DCC_PATH/config + echo 0x72033d0 1 > $DCC_PATH/config + echo 0x7203670 1 > $DCC_PATH/config + echo 0x7201c48 1 > $DCC_PATH/config + echo 0x7201c60 1 > $DCC_PATH/config + echo 0x7201c78 1 > $DCC_PATH/config + echo 0x7201c90 1 > $DCC_PATH/config + echo 0x7201ca8 1 > $DCC_PATH/config + echo 0x7201cc0 1 > $DCC_PATH/config + echo 0x7201cd8 1 > $DCC_PATH/config + echo 0x7201cf0 1 > $DCC_PATH/config + echo 0x7201d08 1 > $DCC_PATH/config + echo 0x7201d20 1 > $DCC_PATH/config + echo 0x7201d38 1 > $DCC_PATH/config + echo 0x7201d50 1 > $DCC_PATH/config + echo 0x7201d68 1 > $DCC_PATH/config + echo 0x7201d80 1 > $DCC_PATH/config + echo 0x7201d98 1 > $DCC_PATH/config + echo 0x7201db0 1 > $DCC_PATH/config + echo 0x7201ee8 1 > $DCC_PATH/config + echo 0x7201f00 1 > $DCC_PATH/config + echo 0x7201f18 1 > $DCC_PATH/config + echo 0x7201f30 1 > $DCC_PATH/config + echo 0x7201f48 1 > $DCC_PATH/config + echo 0x7201f60 1 > $DCC_PATH/config + echo 0x7201f78 1 > $DCC_PATH/config + echo 0x7201f90 1 > $DCC_PATH/config + echo 0x7201fa8 1 > $DCC_PATH/config + echo 0x7201fc0 1 > $DCC_PATH/config + echo 0x7201fd8 1 > $DCC_PATH/config + echo 0x7201ff0 1 > $DCC_PATH/config + echo 0x7202008 1 > $DCC_PATH/config + echo 0x7202020 1 > $DCC_PATH/config + echo 0x7202038 1 > $DCC_PATH/config + echo 0x7202050 1 > $DCC_PATH/config + echo 0x7202188 1 > $DCC_PATH/config + echo 0x72021a0 1 > $DCC_PATH/config + echo 0x72021b8 1 > $DCC_PATH/config + echo 0x72021d0 1 > $DCC_PATH/config + echo 0x72021e8 1 > $DCC_PATH/config + echo 0x7202200 1 > $DCC_PATH/config + echo 0x7202218 1 > $DCC_PATH/config + echo 0x7202230 1 > $DCC_PATH/config + echo 0x7202248 1 > $DCC_PATH/config + echo 0x7202260 1 > $DCC_PATH/config + echo 0x7202278 1 > $DCC_PATH/config + echo 0x7202290 1 > $DCC_PATH/config + echo 0x72022a8 1 > $DCC_PATH/config + echo 0x72022c0 1 > $DCC_PATH/config + echo 0x72022d8 1 > $DCC_PATH/config + echo 0x72022f0 1 > $DCC_PATH/config + echo 0x7202428 1 > $DCC_PATH/config + echo 0x7202440 1 > $DCC_PATH/config + echo 0x7202458 1 > $DCC_PATH/config + echo 0x7202470 1 > $DCC_PATH/config + echo 0x7202488 1 > $DCC_PATH/config + echo 0x72024a0 1 > $DCC_PATH/config + echo 0x72024b8 1 > $DCC_PATH/config + echo 0x72024d0 1 > $DCC_PATH/config + echo 0x72024e8 1 > $DCC_PATH/config + echo 0x7202500 1 > $DCC_PATH/config + echo 0x7202518 1 > $DCC_PATH/config + echo 0x7202530 1 > $DCC_PATH/config + echo 0x7202548 1 > $DCC_PATH/config + echo 0x7202560 1 > $DCC_PATH/config + echo 0x7202578 1 > $DCC_PATH/config + echo 0x7202590 1 > $DCC_PATH/config + echo 0x72026c8 1 > $DCC_PATH/config + echo 0x72026e0 1 > $DCC_PATH/config + echo 0x72026f8 1 > $DCC_PATH/config + echo 0x7202710 1 > $DCC_PATH/config + echo 0x7202728 1 > $DCC_PATH/config + echo 0x7202740 1 > $DCC_PATH/config + echo 0x7202758 1 > $DCC_PATH/config + echo 0x7202770 1 > $DCC_PATH/config + echo 0x7202788 1 > $DCC_PATH/config + echo 0x72027a0 1 > $DCC_PATH/config + echo 0x72027b8 1 > $DCC_PATH/config + echo 0x72027d0 1 > $DCC_PATH/config + echo 0x72027e8 1 > $DCC_PATH/config + echo 0x7202800 1 > $DCC_PATH/config + echo 0x7202818 1 > $DCC_PATH/config + echo 0x7202830 1 > $DCC_PATH/config + echo 0x7202968 1 > $DCC_PATH/config + echo 0x7202980 1 > $DCC_PATH/config + echo 0x7202998 1 > $DCC_PATH/config + echo 0x72029b0 1 > $DCC_PATH/config + echo 0x72029c8 1 > $DCC_PATH/config + echo 0x72029e0 1 > $DCC_PATH/config + echo 0x72029f8 1 > $DCC_PATH/config + echo 0x7202a10 1 > $DCC_PATH/config + echo 0x7202a28 1 > $DCC_PATH/config + echo 0x7202a40 1 > $DCC_PATH/config + echo 0x7202a58 1 > $DCC_PATH/config + echo 0x7202a70 1 > $DCC_PATH/config + echo 0x7202a88 1 > $DCC_PATH/config + echo 0x7202aa0 1 > $DCC_PATH/config + echo 0x7202ab8 1 > $DCC_PATH/config + echo 0x7202ad0 1 > $DCC_PATH/config + echo 0x7202c08 1 > $DCC_PATH/config + echo 0x7202c20 1 > $DCC_PATH/config + echo 0x7202c38 1 > $DCC_PATH/config + echo 0x7202c50 1 > $DCC_PATH/config + echo 0x7202c68 1 > $DCC_PATH/config + echo 0x7202c80 1 > $DCC_PATH/config + echo 0x7202c98 1 > $DCC_PATH/config + echo 0x7202cb0 1 > $DCC_PATH/config + echo 0x7202cc8 1 > $DCC_PATH/config + echo 0x7202ce0 1 > $DCC_PATH/config + echo 0x7202cf8 1 > $DCC_PATH/config + echo 0x7202d10 1 > $DCC_PATH/config + echo 0x7202d28 1 > $DCC_PATH/config + echo 0x7202d40 1 > $DCC_PATH/config + echo 0x7202d58 1 > $DCC_PATH/config + echo 0x7202d70 1 > $DCC_PATH/config + echo 0x7202ea8 1 > $DCC_PATH/config + echo 0x7202ec0 1 > $DCC_PATH/config + echo 0x7202ed8 1 > $DCC_PATH/config + echo 0x7202ef0 1 > $DCC_PATH/config + echo 0x7202f08 1 > $DCC_PATH/config + echo 0x7202f20 1 > $DCC_PATH/config + echo 0x7202f38 1 > $DCC_PATH/config + echo 0x7202f50 1 > $DCC_PATH/config + echo 0x7202f68 1 > $DCC_PATH/config + echo 0x7202f80 1 > $DCC_PATH/config + echo 0x7202f98 1 > $DCC_PATH/config + echo 0x7202fb0 1 > $DCC_PATH/config + echo 0x7202fc8 1 > $DCC_PATH/config + echo 0x7202fe0 1 > $DCC_PATH/config + echo 0x7202ff8 1 > $DCC_PATH/config + echo 0x7203010 1 > $DCC_PATH/config + echo 0x7203148 1 > $DCC_PATH/config + echo 0x7203160 1 > $DCC_PATH/config + echo 0x7203178 1 > $DCC_PATH/config + echo 0x7203190 1 > $DCC_PATH/config + echo 0x72031a8 1 > $DCC_PATH/config + echo 0x72031c0 1 > $DCC_PATH/config + echo 0x72031d8 1 > $DCC_PATH/config + echo 0x72031f0 1 > $DCC_PATH/config + echo 0x7203208 1 > $DCC_PATH/config + echo 0x7203220 1 > $DCC_PATH/config + echo 0x7203238 1 > $DCC_PATH/config + echo 0x7203250 1 > $DCC_PATH/config + echo 0x7203268 1 > $DCC_PATH/config + echo 0x7203280 1 > $DCC_PATH/config + echo 0x7203298 1 > $DCC_PATH/config + echo 0x72032b0 1 > $DCC_PATH/config + echo 0x72033e8 1 > $DCC_PATH/config + echo 0x7203400 1 > $DCC_PATH/config + echo 0x7203418 1 > $DCC_PATH/config + echo 0x7203430 1 > $DCC_PATH/config + echo 0x7203448 1 > $DCC_PATH/config + echo 0x7203460 1 > $DCC_PATH/config + echo 0x7203478 1 > $DCC_PATH/config + echo 0x7203490 1 > $DCC_PATH/config + echo 0x72034a8 1 > $DCC_PATH/config + echo 0x72034c0 1 > $DCC_PATH/config + echo 0x72034d8 1 > $DCC_PATH/config + echo 0x72034f0 1 > $DCC_PATH/config + echo 0x7203508 1 > $DCC_PATH/config + echo 0x7203520 1 > $DCC_PATH/config + echo 0x7203538 1 > $DCC_PATH/config + echo 0x7203550 1 > $DCC_PATH/config + echo 0x7203688 1 > $DCC_PATH/config + echo 0x72036a0 1 > $DCC_PATH/config + echo 0x72036b8 1 > $DCC_PATH/config + echo 0x72036d0 1 > $DCC_PATH/config + echo 0x72036e8 1 > $DCC_PATH/config + echo 0x7203700 1 > $DCC_PATH/config + echo 0x7203718 1 > $DCC_PATH/config + echo 0x7203730 1 > $DCC_PATH/config + echo 0x7203748 1 > $DCC_PATH/config + echo 0x7203760 1 > $DCC_PATH/config + echo 0x7203778 1 > $DCC_PATH/config + echo 0x7203790 1 > $DCC_PATH/config + echo 0x72037a8 1 > $DCC_PATH/config + echo 0x72037c0 1 > $DCC_PATH/config + echo 0x72037d8 1 > $DCC_PATH/config + echo 0x72037f0 1 > $DCC_PATH/config + + # NSP + echo 0x323C0404 2 > $DCC_PATH/config + echo 0x323C0208 3 > $DCC_PATH/config + echo 0x323C0228 3 > $DCC_PATH/config + echo 0x323C0248 3 > $DCC_PATH/config + echo 0x323C0268 3 > $DCC_PATH/config + echo 0x323C040C 1 > $DCC_PATH/config + echo 0x323C0110 2 > $DCC_PATH/config + echo 0x323C011C 1 > $DCC_PATH/config + echo 0x320A4404 2 > $DCC_PATH/config + echo 0x320A4208 3 > $DCC_PATH/config + echo 0x320A4228 3 > $DCC_PATH/config + echo 0x320A4248 3 > $DCC_PATH/config + echo 0x320A4268 3 > $DCC_PATH/config + echo 0x320A440C 1 > $DCC_PATH/config + echo 0x320A4110 2 > $DCC_PATH/config + echo 0x320A411C 1 > $DCC_PATH/config + echo 0x320A4D30 1 > $DCC_PATH/config + echo 0x320A4Fd0 1 > $DCC_PATH/config + echo 0x320A5270 1 > $DCC_PATH/config + echo 0x320A5510 1 > $DCC_PATH/config + echo 0x320A57B0 1 > $DCC_PATH/config + echo 0x320A5A50 1 > $DCC_PATH/config + echo 0x320A5CF0 1 > $DCC_PATH/config + echo 0x320A5F90 1 > $DCC_PATH/config + echo 0x320a4d48 1 > $DCC_PATH/config + echo 0x320a4d60 1 > $DCC_PATH/config + echo 0x320a4d78 1 > $DCC_PATH/config + echo 0x320a4d90 1 > $DCC_PATH/config + echo 0x320a4da8 1 > $DCC_PATH/config + echo 0x320a4dc0 1 > $DCC_PATH/config + echo 0x320a4dd8 1 > $DCC_PATH/config + echo 0x320a4df0 1 > $DCC_PATH/config + echo 0x320a4e08 1 > $DCC_PATH/config + echo 0x320a4e20 1 > $DCC_PATH/config + echo 0x320a4e38 1 > $DCC_PATH/config + echo 0x320a4e50 1 > $DCC_PATH/config + echo 0x320a4e68 1 > $DCC_PATH/config + echo 0x320a4e80 1 > $DCC_PATH/config + echo 0x320a4e98 1 > $DCC_PATH/config + echo 0x320a4eb0 1 > $DCC_PATH/config + echo 0x320a4fe8 1 > $DCC_PATH/config + echo 0x320a5000 1 > $DCC_PATH/config + echo 0x320a5018 1 > $DCC_PATH/config + echo 0x320a5030 1 > $DCC_PATH/config + echo 0x320a5048 1 > $DCC_PATH/config + echo 0x320a5060 1 > $DCC_PATH/config + echo 0x320a5078 1 > $DCC_PATH/config + echo 0x320a5090 1 > $DCC_PATH/config + echo 0x320a50a8 1 > $DCC_PATH/config + echo 0x320a50c0 1 > $DCC_PATH/config + echo 0x320a50d8 1 > $DCC_PATH/config + echo 0x320a50f0 1 > $DCC_PATH/config + echo 0x320a5108 1 > $DCC_PATH/config + echo 0x320a5120 1 > $DCC_PATH/config + echo 0x320a5138 1 > $DCC_PATH/config + echo 0x320a5150 1 > $DCC_PATH/config + echo 0x320a5288 1 > $DCC_PATH/config + echo 0x320a52a0 1 > $DCC_PATH/config + echo 0x320a52b8 1 > $DCC_PATH/config + echo 0x320a52d0 1 > $DCC_PATH/config + echo 0x320a52e8 1 > $DCC_PATH/config + echo 0x320a5300 1 > $DCC_PATH/config + echo 0x320a5318 1 > $DCC_PATH/config + echo 0x320a5330 1 > $DCC_PATH/config + echo 0x320a5348 1 > $DCC_PATH/config + echo 0x320a5360 1 > $DCC_PATH/config + echo 0x320a5378 1 > $DCC_PATH/config + echo 0x320a5390 1 > $DCC_PATH/config + echo 0x320a53a8 1 > $DCC_PATH/config + echo 0x320a53c0 1 > $DCC_PATH/config + echo 0x320a53d8 1 > $DCC_PATH/config + echo 0x320a53f0 1 > $DCC_PATH/config + echo 0x320a5528 1 > $DCC_PATH/config + echo 0x320a5540 1 > $DCC_PATH/config + echo 0x320a5558 1 > $DCC_PATH/config + echo 0x320a5570 1 > $DCC_PATH/config + echo 0x320a5588 1 > $DCC_PATH/config + echo 0x320a55a0 1 > $DCC_PATH/config + echo 0x320a55b8 1 > $DCC_PATH/config + echo 0x320a55d0 1 > $DCC_PATH/config + echo 0x320a55e8 1 > $DCC_PATH/config + echo 0x320a5600 1 > $DCC_PATH/config + echo 0x320a5618 1 > $DCC_PATH/config + echo 0x320a5630 1 > $DCC_PATH/config + echo 0x320a5648 1 > $DCC_PATH/config + echo 0x320a5660 1 > $DCC_PATH/config + echo 0x320a5678 1 > $DCC_PATH/config + echo 0x320a5690 1 > $DCC_PATH/config + echo 0x320a57c8 1 > $DCC_PATH/config + echo 0x320a57e0 1 > $DCC_PATH/config + echo 0x320a57f8 1 > $DCC_PATH/config + echo 0x320a5810 1 > $DCC_PATH/config + echo 0x320a5828 1 > $DCC_PATH/config + echo 0x320a5840 1 > $DCC_PATH/config + echo 0x320a5858 1 > $DCC_PATH/config + echo 0x320a5870 1 > $DCC_PATH/config + echo 0x320a5888 1 > $DCC_PATH/config + echo 0x320a58a0 1 > $DCC_PATH/config + echo 0x320a58b8 1 > $DCC_PATH/config + echo 0x320a58d0 1 > $DCC_PATH/config + echo 0x320a58e8 1 > $DCC_PATH/config + echo 0x320a5900 1 > $DCC_PATH/config + echo 0x320a5918 1 > $DCC_PATH/config + echo 0x320a5930 1 > $DCC_PATH/config + echo 0x320a5a68 1 > $DCC_PATH/config + echo 0x320a5a80 1 > $DCC_PATH/config + echo 0x320a5a98 1 > $DCC_PATH/config + echo 0x320a5ab0 1 > $DCC_PATH/config + echo 0x320a5ac8 1 > $DCC_PATH/config + echo 0x320a5ae0 1 > $DCC_PATH/config + echo 0x320a5af8 1 > $DCC_PATH/config + echo 0x320a5b10 1 > $DCC_PATH/config + echo 0x320a5b28 1 > $DCC_PATH/config + echo 0x320a5b40 1 > $DCC_PATH/config + echo 0x320a5b58 1 > $DCC_PATH/config + echo 0x320a5b70 1 > $DCC_PATH/config + echo 0x320a5b88 1 > $DCC_PATH/config + echo 0x320a5ba0 1 > $DCC_PATH/config + echo 0x320a5bb8 1 > $DCC_PATH/config + echo 0x320a5bd0 1 > $DCC_PATH/config + echo 0x320a5d08 1 > $DCC_PATH/config + echo 0x320a5d20 1 > $DCC_PATH/config + echo 0x320a5d38 1 > $DCC_PATH/config + echo 0x320a5d50 1 > $DCC_PATH/config + echo 0x320a5d68 1 > $DCC_PATH/config + echo 0x320a5d80 1 > $DCC_PATH/config + echo 0x320a5d98 1 > $DCC_PATH/config + echo 0x320a5db0 1 > $DCC_PATH/config + echo 0x320a5dc8 1 > $DCC_PATH/config + echo 0x320a5de0 1 > $DCC_PATH/config + echo 0x320a5df8 1 > $DCC_PATH/config + echo 0x320a5e10 1 > $DCC_PATH/config + echo 0x320a5e28 1 > $DCC_PATH/config + echo 0x320a5e40 1 > $DCC_PATH/config + echo 0x320a5e58 1 > $DCC_PATH/config + echo 0x320a5e70 1 > $DCC_PATH/config + echo 0x320a5fa8 1 > $DCC_PATH/config + echo 0x320a5fc0 1 > $DCC_PATH/config + echo 0x320a5fd8 1 > $DCC_PATH/config + echo 0x320a5ff0 1 > $DCC_PATH/config + echo 0x320a6008 1 > $DCC_PATH/config + echo 0x320a6020 1 > $DCC_PATH/config + echo 0x320a6038 1 > $DCC_PATH/config + echo 0x320a6050 1 > $DCC_PATH/config + echo 0x320a6068 1 > $DCC_PATH/config + echo 0x320a6080 1 > $DCC_PATH/config + echo 0x320a6098 1 > $DCC_PATH/config + echo 0x320a60b0 1 > $DCC_PATH/config + echo 0x320a60c8 1 > $DCC_PATH/config + echo 0x320a60e0 1 > $DCC_PATH/config + echo 0x320a60f8 1 > $DCC_PATH/config + + # MODEM + echo 0x4082028 1 > $DCC_PATH/config + echo 0x4140404 2 > $DCC_PATH/config + echo 0x4140208 3 > $DCC_PATH/config + echo 0x4140228 3 > $DCC_PATH/config + echo 0x4140248 3 > $DCC_PATH/config + echo 0x4140268 3 > $DCC_PATH/config + echo 0x414040C 1 > $DCC_PATH/config + echo 0x4140110 2 > $DCC_PATH/config + echo 0x414011C 1 > $DCC_PATH/config + echo 0x4200404 2 > $DCC_PATH/config + echo 0x4200208 3 > $DCC_PATH/config + echo 0x4200228 3 > $DCC_PATH/config + echo 0x4200248 3 > $DCC_PATH/config + echo 0x4200268 3 > $DCC_PATH/config + echo 0x420040C 1 > $DCC_PATH/config + echo 0x4200110 2 > $DCC_PATH/config + echo 0x420011C 1 > $DCC_PATH/config + echo 0x4200d30 1 > $DCC_PATH/config + echo 0x4200fd0 1 > $DCC_PATH/config + echo 0x4201270 1 > $DCC_PATH/config + echo 0x4201510 1 > $DCC_PATH/config + echo 0x42017b0 1 > $DCC_PATH/config + echo 0x4201a50 1 > $DCC_PATH/config + echo 0x4201cf0 1 > $DCC_PATH/config + echo 0x4201f90 1 > $DCC_PATH/config + echo 0x4202230 1 > $DCC_PATH/config + echo 0x42024d0 1 > $DCC_PATH/config + echo 0x4202770 1 > $DCC_PATH/config + echo 0x4202a10 1 > $DCC_PATH/config + echo 0x4202cb0 1 > $DCC_PATH/config + echo 0x4202f50 1 > $DCC_PATH/config + echo 0x4200d48 1 > $DCC_PATH/config + echo 0x4200d60 1 > $DCC_PATH/config + echo 0x4200d78 1 > $DCC_PATH/config + echo 0x4200d90 1 > $DCC_PATH/config + echo 0x4200da8 1 > $DCC_PATH/config + echo 0x4200dc0 1 > $DCC_PATH/config + echo 0x4200dd8 1 > $DCC_PATH/config + echo 0x4200df0 1 > $DCC_PATH/config + echo 0x4200e08 1 > $DCC_PATH/config + echo 0x4200e20 1 > $DCC_PATH/config + echo 0x4200e38 1 > $DCC_PATH/config + echo 0x4200e50 1 > $DCC_PATH/config + echo 0x4200e68 1 > $DCC_PATH/config + echo 0x4200e80 1 > $DCC_PATH/config + echo 0x4200e98 1 > $DCC_PATH/config + echo 0x4200eb0 1 > $DCC_PATH/config + echo 0x4200fe8 1 > $DCC_PATH/config + echo 0x4201000 1 > $DCC_PATH/config + echo 0x4201018 1 > $DCC_PATH/config + echo 0x4201030 1 > $DCC_PATH/config + echo 0x4201048 1 > $DCC_PATH/config + echo 0x4201060 1 > $DCC_PATH/config + echo 0x4201078 1 > $DCC_PATH/config + echo 0x4201090 1 > $DCC_PATH/config + echo 0x42010a8 1 > $DCC_PATH/config + echo 0x42010c0 1 > $DCC_PATH/config + echo 0x42010d8 1 > $DCC_PATH/config + echo 0x42010f0 1 > $DCC_PATH/config + echo 0x4201108 1 > $DCC_PATH/config + echo 0x4201120 1 > $DCC_PATH/config + echo 0x4201138 1 > $DCC_PATH/config + echo 0x4201150 1 > $DCC_PATH/config + echo 0x4201288 1 > $DCC_PATH/config + echo 0x42012a0 1 > $DCC_PATH/config + echo 0x42012b8 1 > $DCC_PATH/config + echo 0x42012d0 1 > $DCC_PATH/config + echo 0x42012e8 1 > $DCC_PATH/config + echo 0x4201300 1 > $DCC_PATH/config + echo 0x4201318 1 > $DCC_PATH/config + echo 0x4201330 1 > $DCC_PATH/config + echo 0x4201348 1 > $DCC_PATH/config + echo 0x4201360 1 > $DCC_PATH/config + echo 0x4201378 1 > $DCC_PATH/config + echo 0x4201390 1 > $DCC_PATH/config + echo 0x42013a8 1 > $DCC_PATH/config + echo 0x42013c0 1 > $DCC_PATH/config + echo 0x42013d8 1 > $DCC_PATH/config + echo 0x42013f0 1 > $DCC_PATH/config + echo 0x4201528 1 > $DCC_PATH/config + echo 0x4201540 1 > $DCC_PATH/config + echo 0x4201558 1 > $DCC_PATH/config + echo 0x4201570 1 > $DCC_PATH/config + echo 0x4201588 1 > $DCC_PATH/config + echo 0x42015a0 1 > $DCC_PATH/config + echo 0x42015b8 1 > $DCC_PATH/config + echo 0x42015d0 1 > $DCC_PATH/config + echo 0x42015e8 1 > $DCC_PATH/config + echo 0x4201600 1 > $DCC_PATH/config + echo 0x4201618 1 > $DCC_PATH/config + echo 0x4201630 1 > $DCC_PATH/config + echo 0x4201648 1 > $DCC_PATH/config + echo 0x4201660 1 > $DCC_PATH/config + echo 0x4201678 1 > $DCC_PATH/config + echo 0x4201690 1 > $DCC_PATH/config + echo 0x42017c8 1 > $DCC_PATH/config + echo 0x42017e0 1 > $DCC_PATH/config + echo 0x42017f8 1 > $DCC_PATH/config + echo 0x4201810 1 > $DCC_PATH/config + echo 0x4201828 1 > $DCC_PATH/config + echo 0x4201840 1 > $DCC_PATH/config + echo 0x4201858 1 > $DCC_PATH/config + echo 0x4201870 1 > $DCC_PATH/config + echo 0x4201888 1 > $DCC_PATH/config + echo 0x42018a0 1 > $DCC_PATH/config + echo 0x42018b8 1 > $DCC_PATH/config + echo 0x42018d0 1 > $DCC_PATH/config + echo 0x42018e8 1 > $DCC_PATH/config + echo 0x4201900 1 > $DCC_PATH/config + echo 0x4201918 1 > $DCC_PATH/config + echo 0x4201930 1 > $DCC_PATH/config + echo 0x4201a68 1 > $DCC_PATH/config + echo 0x4201a80 1 > $DCC_PATH/config + echo 0x4201a98 1 > $DCC_PATH/config + echo 0x4201ab0 1 > $DCC_PATH/config + echo 0x4201ac8 1 > $DCC_PATH/config + echo 0x4201ae0 1 > $DCC_PATH/config + echo 0x4201af8 1 > $DCC_PATH/config + echo 0x4201b10 1 > $DCC_PATH/config + echo 0x4201b28 1 > $DCC_PATH/config + echo 0x4201b40 1 > $DCC_PATH/config + echo 0x4201b58 1 > $DCC_PATH/config + echo 0x4201b70 1 > $DCC_PATH/config + echo 0x4201b88 1 > $DCC_PATH/config + echo 0x4201ba0 1 > $DCC_PATH/config + echo 0x4201bb8 1 > $DCC_PATH/config + echo 0x4201bd0 1 > $DCC_PATH/config + echo 0x4201d08 1 > $DCC_PATH/config + echo 0x4201d20 1 > $DCC_PATH/config + echo 0x4201d38 1 > $DCC_PATH/config + echo 0x4201d50 1 > $DCC_PATH/config + echo 0x4201d68 1 > $DCC_PATH/config + echo 0x4201d80 1 > $DCC_PATH/config + echo 0x4201d98 1 > $DCC_PATH/config + echo 0x4201db0 1 > $DCC_PATH/config + echo 0x4201dc8 1 > $DCC_PATH/config + echo 0x4201de0 1 > $DCC_PATH/config + echo 0x4201df8 1 > $DCC_PATH/config + echo 0x4201e10 1 > $DCC_PATH/config + echo 0x4201e28 1 > $DCC_PATH/config + echo 0x4201e40 1 > $DCC_PATH/config + echo 0x4201e58 1 > $DCC_PATH/config + echo 0x4201e70 1 > $DCC_PATH/config + echo 0x4201fa8 1 > $DCC_PATH/config + echo 0x4201fc0 1 > $DCC_PATH/config + echo 0x4201fd8 1 > $DCC_PATH/config + echo 0x4201ff0 1 > $DCC_PATH/config + echo 0x4202008 1 > $DCC_PATH/config + echo 0x4202020 1 > $DCC_PATH/config + echo 0x4202038 1 > $DCC_PATH/config + echo 0x4202050 1 > $DCC_PATH/config + echo 0x4202068 1 > $DCC_PATH/config + echo 0x4202080 1 > $DCC_PATH/config + echo 0x4202098 1 > $DCC_PATH/config + echo 0x42020b0 1 > $DCC_PATH/config + echo 0x42020c8 1 > $DCC_PATH/config + echo 0x42020e0 1 > $DCC_PATH/config + echo 0x42020f8 1 > $DCC_PATH/config + echo 0x4202110 1 > $DCC_PATH/config + echo 0x4202248 1 > $DCC_PATH/config + echo 0x4202260 1 > $DCC_PATH/config + echo 0x4202278 1 > $DCC_PATH/config + echo 0x4202290 1 > $DCC_PATH/config + echo 0x42022a8 1 > $DCC_PATH/config + echo 0x42022c0 1 > $DCC_PATH/config + echo 0x42022d8 1 > $DCC_PATH/config + echo 0x42022f0 1 > $DCC_PATH/config + echo 0x4202308 1 > $DCC_PATH/config + echo 0x4202320 1 > $DCC_PATH/config + echo 0x4202338 1 > $DCC_PATH/config + echo 0x4202350 1 > $DCC_PATH/config + echo 0x4202368 1 > $DCC_PATH/config + echo 0x4202380 1 > $DCC_PATH/config + echo 0x4202398 1 > $DCC_PATH/config + echo 0x42023b0 1 > $DCC_PATH/config + echo 0x42024e8 1 > $DCC_PATH/config + echo 0x4202500 1 > $DCC_PATH/config + echo 0x4202518 1 > $DCC_PATH/config + echo 0x4202530 1 > $DCC_PATH/config + echo 0x4202548 1 > $DCC_PATH/config + echo 0x4202560 1 > $DCC_PATH/config + echo 0x4202578 1 > $DCC_PATH/config + echo 0x4202590 1 > $DCC_PATH/config + echo 0x42025a8 1 > $DCC_PATH/config + echo 0x42025c0 1 > $DCC_PATH/config + echo 0x42025d8 1 > $DCC_PATH/config + echo 0x42025f0 1 > $DCC_PATH/config + echo 0x4202608 1 > $DCC_PATH/config + echo 0x4202620 1 > $DCC_PATH/config + echo 0x4202638 1 > $DCC_PATH/config + echo 0x4202650 1 > $DCC_PATH/config + echo 0x4202788 1 > $DCC_PATH/config + echo 0x42027a0 1 > $DCC_PATH/config + echo 0x42027b8 1 > $DCC_PATH/config + echo 0x42027d0 1 > $DCC_PATH/config + echo 0x42027e8 1 > $DCC_PATH/config + echo 0x4202800 1 > $DCC_PATH/config + echo 0x4202818 1 > $DCC_PATH/config + echo 0x4202830 1 > $DCC_PATH/config + echo 0x4202848 1 > $DCC_PATH/config + echo 0x4202860 1 > $DCC_PATH/config + echo 0x4202878 1 > $DCC_PATH/config + echo 0x4202890 1 > $DCC_PATH/config + echo 0x42028a8 1 > $DCC_PATH/config + echo 0x42028c0 1 > $DCC_PATH/config + echo 0x42028d8 1 > $DCC_PATH/config + echo 0x42028f0 1 > $DCC_PATH/config + echo 0x4202a28 1 > $DCC_PATH/config + echo 0x4202a40 1 > $DCC_PATH/config + echo 0x4202a58 1 > $DCC_PATH/config + echo 0x4202a70 1 > $DCC_PATH/config + echo 0x4202a88 1 > $DCC_PATH/config + echo 0x4202aa0 1 > $DCC_PATH/config + echo 0x4202ab8 1 > $DCC_PATH/config + echo 0x4202ad0 1 > $DCC_PATH/config + echo 0x4202ae8 1 > $DCC_PATH/config + echo 0x4202b00 1 > $DCC_PATH/config + echo 0x4202b18 1 > $DCC_PATH/config + echo 0x4202b30 1 > $DCC_PATH/config + echo 0x4202b48 1 > $DCC_PATH/config + echo 0x4202b60 1 > $DCC_PATH/config + echo 0x4202b78 1 > $DCC_PATH/config + echo 0x4202b90 1 > $DCC_PATH/config + echo 0x4202cc8 1 > $DCC_PATH/config + echo 0x4202ce0 1 > $DCC_PATH/config + echo 0x4202cf8 1 > $DCC_PATH/config + echo 0x4202d10 1 > $DCC_PATH/config + echo 0x4202d28 1 > $DCC_PATH/config + echo 0x4202d40 1 > $DCC_PATH/config + echo 0x4202d58 1 > $DCC_PATH/config + echo 0x4202d70 1 > $DCC_PATH/config + echo 0x4202d88 1 > $DCC_PATH/config + echo 0x4202da0 1 > $DCC_PATH/config + echo 0x4202db8 1 > $DCC_PATH/config + echo 0x4202dd0 1 > $DCC_PATH/config + echo 0x4202de8 1 > $DCC_PATH/config + echo 0x4202e00 1 > $DCC_PATH/config + echo 0x4202e18 1 > $DCC_PATH/config + echo 0x4202e30 1 > $DCC_PATH/config + echo 0x4202f68 1 > $DCC_PATH/config + echo 0x4202f80 1 > $DCC_PATH/config + echo 0x4202f98 1 > $DCC_PATH/config + echo 0x4202fb0 1 > $DCC_PATH/config + echo 0x4202fc8 1 > $DCC_PATH/config + echo 0x4202fe0 1 > $DCC_PATH/config + echo 0x4202ff8 1 > $DCC_PATH/config + echo 0x4203010 1 > $DCC_PATH/config + echo 0x4203028 1 > $DCC_PATH/config + echo 0x4203040 1 > $DCC_PATH/config + echo 0x4203058 1 > $DCC_PATH/config + echo 0x4203070 1 > $DCC_PATH/config + echo 0x4203088 1 > $DCC_PATH/config + echo 0x42030a0 1 > $DCC_PATH/config + echo 0x42030b8 1 > $DCC_PATH/config + echo 0x42030d0 1 > $DCC_PATH/config + + # LPASS_AON + echo 0x6E0A100 1 > $DCC_PATH/config + echo 0x6E0A0AC 1 > $DCC_PATH/config + echo 0x6E0A0B0 1 > $DCC_PATH/config + echo 0x6E21104 1 > $DCC_PATH/config + echo 0x6E21108 1 > $DCC_PATH/config + echo 0x6E212AC 1 > $DCC_PATH/config + echo 0x6E212B0 1 > $DCC_PATH/config + echo 0x6E21300 1 > $DCC_PATH/config + echo 0x6E0A000 1 > $DCC_PATH/config + echo 0x7402048 1 > $DCC_PATH/config + echo 0x7402040 1 > $DCC_PATH/config + echo 0x25a01000 6 > $DCC_PATH/config + echo 0x25a03000 6 > $DCC_PATH/config + echo 0x25a04000 6 > $DCC_PATH/config + echo 0x25a02000 6 > $DCC_PATH/config + echo 0x25a05000 6 > $DCC_PATH/config + echo 0x25a06000 6 > $DCC_PATH/config + echo 0x25a07000 6 > $DCC_PATH/config + echo 0x25a08000 6 > $DCC_PATH/config + echo 0x25a09000 6 > $DCC_PATH/config + echo 0x25a0a000 6 > $DCC_PATH/config + echo 0x25a0b000 6 > $DCC_PATH/config + echo 0x25a0c000 6 > $DCC_PATH/config + echo 0x25a0d000 6 > $DCC_PATH/config + echo 0x25a0e000 6 > $DCC_PATH/config + echo 0x25a0f000 6 > $DCC_PATH/config + echo 0x25a10000 6 > $DCC_PATH/config + echo 0x25a11000 6 > $DCC_PATH/config + echo 0x25a12000 6 > $DCC_PATH/config + echo 0x25a13000 6 > $DCC_PATH/config + echo 0x25a14000 6 > $DCC_PATH/config + echo 0x25a15000 6 > $DCC_PATH/config + echo 0x25a16000 6 > $DCC_PATH/config + echo 0x25a17000 6 > $DCC_PATH/config + echo 0x25a19000 6 > $DCC_PATH/config + echo 0x25a1a000 6 > $DCC_PATH/config + echo 0x25a1b000 6 > $DCC_PATH/config + echo 0x25a1c000 6 > $DCC_PATH/config + echo 0x25a1d000 6 > $DCC_PATH/config + echo 0x25a1e000 6 > $DCC_PATH/config + echo 0x25a1f000 6 > $DCC_PATH/config + echo 0x25001000 6 > $DCC_PATH/config + echo 0x25000000 6 > $DCC_PATH/config + echo 0x25003000 6 > $DCC_PATH/config + echo 0x25004000 6 > $DCC_PATH/config + echo 0x25002000 6 > $DCC_PATH/config + echo 0x25005000 6 > $DCC_PATH/config + echo 0x25006000 6 > $DCC_PATH/config + echo 0x25007000 6 > $DCC_PATH/config + echo 0x25008000 6 > $DCC_PATH/config + echo 0x25009000 6 > $DCC_PATH/config + echo 0x2500a000 6 > $DCC_PATH/config + echo 0x2500b000 6 > $DCC_PATH/config + echo 0x2500c000 6 > $DCC_PATH/config + echo 0x2500d000 6 > $DCC_PATH/config + echo 0x2500e000 6 > $DCC_PATH/config + echo 0x2500f000 6 > $DCC_PATH/config + echo 0x25010000 6 > $DCC_PATH/config + echo 0x25011000 6 > $DCC_PATH/config + echo 0x25012000 6 > $DCC_PATH/config + echo 0x25013000 6 > $DCC_PATH/config + echo 0x25014000 6 > $DCC_PATH/config + echo 0x25015000 6 > $DCC_PATH/config + echo 0x25016000 6 > $DCC_PATH/config + echo 0x25017000 6 > $DCC_PATH/config + echo 0x25018000 6 > $DCC_PATH/config + echo 0x25019000 6 > $DCC_PATH/config + echo 0x2501a000 6 > $DCC_PATH/config + echo 0x2501b000 6 > $DCC_PATH/config + echo 0x2501c000 6 > $DCC_PATH/config + echo 0x2501d000 6 > $DCC_PATH/config + echo 0x2501e000 6 > $DCC_PATH/config + echo 0x2501f000 6 > $DCC_PATH/config + echo 0x25201000 6 > $DCC_PATH/config + echo 0x25200000 6 > $DCC_PATH/config + echo 0x25203000 6 > $DCC_PATH/config + echo 0x25204000 6 > $DCC_PATH/config + echo 0x25202000 6 > $DCC_PATH/config + echo 0x25205000 6 > $DCC_PATH/config + echo 0x25206000 6 > $DCC_PATH/config + echo 0x25207000 6 > $DCC_PATH/config + echo 0x25208000 6 > $DCC_PATH/config + echo 0x25209000 6 > $DCC_PATH/config + echo 0x2520a000 6 > $DCC_PATH/config + echo 0x2520b000 6 > $DCC_PATH/config + echo 0x2520c000 6 > $DCC_PATH/config + echo 0x2520d000 6 > $DCC_PATH/config + echo 0x2520e000 6 > $DCC_PATH/config + echo 0x2520f000 6 > $DCC_PATH/config + echo 0x25210000 6 > $DCC_PATH/config + echo 0x25211000 6 > $DCC_PATH/config + echo 0x25212000 6 > $DCC_PATH/config + echo 0x25213000 6 > $DCC_PATH/config + echo 0x25214000 6 > $DCC_PATH/config + echo 0x25215000 6 > $DCC_PATH/config + echo 0x25216000 6 > $DCC_PATH/config + echo 0x25217000 6 > $DCC_PATH/config + echo 0x25218000 6 > $DCC_PATH/config + echo 0x25219000 6 > $DCC_PATH/config + echo 0x2521a000 6 > $DCC_PATH/config + echo 0x2521b000 6 > $DCC_PATH/config + echo 0x2521c000 6 > $DCC_PATH/config + echo 0x2521d000 6 > $DCC_PATH/config + echo 0x2521e000 6 > $DCC_PATH/config + echo 0x2521f000 6 > $DCC_PATH/config + echo 0x25401000 6 > $DCC_PATH/config + echo 0x25400000 6 > $DCC_PATH/config + echo 0x25403000 6 > $DCC_PATH/config + echo 0x25404000 6 > $DCC_PATH/config + echo 0x25402000 6 > $DCC_PATH/config + echo 0x25405000 6 > $DCC_PATH/config + echo 0x25406000 6 > $DCC_PATH/config + echo 0x25407000 6 > $DCC_PATH/config + echo 0x25408000 6 > $DCC_PATH/config + echo 0x25409000 6 > $DCC_PATH/config + echo 0x2540a000 6 > $DCC_PATH/config + echo 0x2540b000 6 > $DCC_PATH/config + echo 0x2540c000 6 > $DCC_PATH/config + echo 0x2540d000 6 > $DCC_PATH/config + echo 0x2540e000 6 > $DCC_PATH/config + echo 0x2540f000 6 > $DCC_PATH/config + echo 0x25410000 6 > $DCC_PATH/config + echo 0x25411000 6 > $DCC_PATH/config + echo 0x25412000 6 > $DCC_PATH/config + echo 0x25413000 6 > $DCC_PATH/config + echo 0x25414000 6 > $DCC_PATH/config + echo 0x25415000 6 > $DCC_PATH/config + echo 0x25416000 6 > $DCC_PATH/config + echo 0x25417000 6 > $DCC_PATH/config + echo 0x25418000 6 > $DCC_PATH/config + echo 0x25419000 6 > $DCC_PATH/config + echo 0x2541a000 6 > $DCC_PATH/config + echo 0x2541b000 6 > $DCC_PATH/config + echo 0x2541c000 6 > $DCC_PATH/config + echo 0x2541d000 6 > $DCC_PATH/config + echo 0x2541e000 6 > $DCC_PATH/config + echo 0x2541f000 6 > $DCC_PATH/config + echo 0x25601000 6 > $DCC_PATH/config + echo 0x25600000 6 > $DCC_PATH/config + echo 0x25603000 6 > $DCC_PATH/config + echo 0x25604000 6 > $DCC_PATH/config + echo 0x25602000 6 > $DCC_PATH/config + echo 0x25605000 6 > $DCC_PATH/config + echo 0x25606000 6 > $DCC_PATH/config + echo 0x25607000 6 > $DCC_PATH/config + echo 0x25608000 6 > $DCC_PATH/config + echo 0x25609000 6 > $DCC_PATH/config + echo 0x2560a000 6 > $DCC_PATH/config + echo 0x2560b000 6 > $DCC_PATH/config + echo 0x2560c000 6 > $DCC_PATH/config + echo 0x2560d000 6 > $DCC_PATH/config + echo 0x2560e000 6 > $DCC_PATH/config + echo 0x2560f000 6 > $DCC_PATH/config + echo 0x25610000 6 > $DCC_PATH/config + echo 0x25611000 6 > $DCC_PATH/config + echo 0x25612000 6 > $DCC_PATH/config + echo 0x25613000 6 > $DCC_PATH/config + echo 0x25614000 6 > $DCC_PATH/config + echo 0x25615000 6 > $DCC_PATH/config + echo 0x25616000 6 > $DCC_PATH/config + echo 0x25617000 6 > $DCC_PATH/config + echo 0x25618000 6 > $DCC_PATH/config + echo 0x25619000 6 > $DCC_PATH/config + echo 0x2561a000 6 > $DCC_PATH/config + echo 0x2561b000 6 > $DCC_PATH/config + echo 0x2561c000 6 > $DCC_PATH/config + echo 0x2561d000 6 > $DCC_PATH/config + echo 0x2561e000 6 > $DCC_PATH/config + echo 0x2561f000 6 > $DCC_PATH/config + echo 0x25822870 4 > $DCC_PATH/config + echo 0x25A22870 4 > $DCC_PATH/config + echo 0x25823000 3 > $DCC_PATH/config + echo 0x2582320C 21 > $DCC_PATH/config + echo 0x25A23000 3 > $DCC_PATH/config + echo 0x25A2320C 21 > $DCC_PATH/config + echo 0x25023000 3 > $DCC_PATH/config + echo 0x2502320C 21 > $DCC_PATH/config + echo 0x25223000 3 > $DCC_PATH/config + echo 0x2522320C 21 > $DCC_PATH/config + echo 0x25423000 3 > $DCC_PATH/config + echo 0x2542320C 21 > $DCC_PATH/config + echo 0x25623000 3 > $DCC_PATH/config + echo 0x2562320C 21 > $DCC_PATH/config + echo 0x2587601C 3 > $DCC_PATH/config + echo 0x25A7601C 3 > $DCC_PATH/config + echo 0x2587603C 2 > $DCC_PATH/config + echo 0x25A7603C 2 > $DCC_PATH/config + echo 0x25876058 2 > $DCC_PATH/config + echo 0x25A76058 2 > $DCC_PATH/config + echo 0x25021000 64 > $DCC_PATH/config + echo 0x25421000 64 > $DCC_PATH/config + echo 0x25221000 64 > $DCC_PATH/config + echo 0x25621000 64 > $DCC_PATH/config + #echo 0x7434208 1 > $DCC_PATH/config + #echo 0x7434210 1 > $DCC_PATH/config + #echo 0x7434218 1 > $DCC_PATH/config + #echo 0x7434220 1 > $DCC_PATH/config + #echo 0x7434228 1 > $DCC_PATH/config + #echo 0x7434230 1 > $DCC_PATH/config +} + +config_dcc_anoc_pcie() +{ + echo 0x110004 1 > $DCC_PATH/config + echo 0x110008 1 > $DCC_PATH/config + echo 0x11003C 1 > $DCC_PATH/config + echo 0x110040 1 > $DCC_PATH/config + echo 0x110044 1 > $DCC_PATH/config + #RPMH_SYS_NOC_CMD_DFSR + echo 0x17603C 1 > $DCC_PATH/config +} + + +config_dcc_rng() +{ + echo 0x10C0000 4 > $DCC_PATH/config + echo 0x10C1000 2 > $DCC_PATH/config + echo 0x10C1010 7 > $DCC_PATH/config + echo 0x10C1100 3 > $DCC_PATH/config + echo 0x10C1110 5 > $DCC_PATH/config + echo 0x10C1130 2 > $DCC_PATH/config + echo 0x10C113C 2 > $DCC_PATH/config + echo 0x10C1148 3 > $DCC_PATH/config + echo 0x10C1800 11 > $DCC_PATH/config + echo 0x10C2000 1 > $DCC_PATH/config + echo 0x10CF004 1 > $DCC_PATH/config +} + + +config_dcc_ubwcp() +{ + #ubwcp ipm + echo 0x17890000 1 > $DCC_PATH/config + echo 0x17890008 1 > $DCC_PATH/config + echo 0x1789000c 1 > $DCC_PATH/config + echo 0x17890010 1 > $DCC_PATH/config + echo 0x17890014 1 > $DCC_PATH/config + echo 0x17890018 1 > $DCC_PATH/config + echo 0x1789001c 1 > $DCC_PATH/config + echo 0x17890020 1 > $DCC_PATH/config + echo 0x17890024 1 > $DCC_PATH/config + echo 0x17890028 1 > $DCC_PATH/config + echo 0x1789002c 1 > $DCC_PATH/config + echo 0x17890030 1 > $DCC_PATH/config + echo 0x17890034 1 > $DCC_PATH/config + echo 0x17890038 1 > $DCC_PATH/config + echo 0x1789003c 1 > $DCC_PATH/config + echo 0x17890040 1 > $DCC_PATH/config + echo 0x17890044 1 > $DCC_PATH/config + echo 0x17890048 1 > $DCC_PATH/config + echo 0x1789004c 1 > $DCC_PATH/config + echo 0x17890068 1 > $DCC_PATH/config + echo 0x1789006c 1 > $DCC_PATH/config + echo 0x178900f0 1 > $DCC_PATH/config + echo 0x178900f4 1 > $DCC_PATH/config + echo 0x178900f8 1 > $DCC_PATH/config + echo 0x178900fc 1 > $DCC_PATH/config + echo 0x17890100 1 > $DCC_PATH/config + echo 0x17890104 1 > $DCC_PATH/config + echo 0x17891000 1 > $DCC_PATH/config + echo 0x17892000 1 > $DCC_PATH/config + echo 0x17893000 1 > $DCC_PATH/config + echo 0x17893004 1 > $DCC_PATH/config + echo 0x17898000 1 > $DCC_PATH/config + echo 0x17898004 1 > $DCC_PATH/config + echo 0x17898008 1 > $DCC_PATH/config + echo 0x1789800c 1 > $DCC_PATH/config + echo 0x17898010 1 > $DCC_PATH/config + echo 0x17898014 1 > $DCC_PATH/config + + #power on ubwcp + echo 0x17891000 0x0 > $DCC_PATH/config_write + echo 0x17892000 0x0 > $DCC_PATH/config_write + echo 0x17893000 0x0 > $DCC_PATH/config_write + echo 0x17893004 0x0 > $DCC_PATH/config_write + + #read back power status + echo 0x17891000 > $DCC_PATH/config + echo 0x17892000 > $DCC_PATH/config + echo 0x17893000 > $DCC_PATH/config + echo 0x17893004 > $DCC_PATH/config + + #ubwcp top + echo 0x17980000 256 > $DCC_PATH/config + echo 0x17980800 256 > $DCC_PATH/config + echo 0x17981000 16 > $DCC_PATH/config + echo 0x17981060 8 > $DCC_PATH/config + echo 0x179810a0 1 > $DCC_PATH/config + echo 0x179810a4 1 > $DCC_PATH/config + echo 0x179810b0 1 > $DCC_PATH/config + echo 0x179810c0 1 > $DCC_PATH/config + echo 0x179810c4 1 > $DCC_PATH/config + echo 0x179810c8 1 > $DCC_PATH/config + echo 0x179810cc 1 > $DCC_PATH/config + echo 0x17981100 1 > $DCC_PATH/config + echo 0x17981104 1 > $DCC_PATH/config + echo 0x17981108 1 > $DCC_PATH/config + echo 0x1798110c 1 > $DCC_PATH/config + echo 0x17981110 1 > $DCC_PATH/config + echo 0x17981114 1 > $DCC_PATH/config + echo 0x17981118 1 > $DCC_PATH/config + echo 0x1798111c 1 > $DCC_PATH/config + echo 0x17981120 1 > $DCC_PATH/config + echo 0x17981124 1 > $DCC_PATH/config + echo 0x17981128 1 > $DCC_PATH/config + echo 0x1798112c 1 > $DCC_PATH/config + echo 0x17981130 1 > $DCC_PATH/config + echo 0x17981134 1 > $DCC_PATH/config + echo 0x17981138 1 > $DCC_PATH/config + echo 0x1798113c 1 > $DCC_PATH/config + echo 0x17981140 1 > $DCC_PATH/config + echo 0x17981144 1 > $DCC_PATH/config + echo 0x17981148 1 > $DCC_PATH/config + echo 0x1798114c 1 > $DCC_PATH/config + echo 0x17981150 1 > $DCC_PATH/config + echo 0x17981154 1 > $DCC_PATH/config + echo 0x17981158 1 > $DCC_PATH/config + echo 0x1798115c 1 > $DCC_PATH/config + echo 0x17981160 1 > $DCC_PATH/config + echo 0x17981164 1 > $DCC_PATH/config + echo 0x17981168 1 > $DCC_PATH/config + echo 0x1798116c 1 > $DCC_PATH/config + echo 0x17981170 1 > $DCC_PATH/config + echo 0x17981174 1 > $DCC_PATH/config + echo 0x17981178 1 > $DCC_PATH/config + echo 0x1798117c 1 > $DCC_PATH/config + echo 0x17981180 1 > $DCC_PATH/config + echo 0x17981184 1 > $DCC_PATH/config + echo 0x17981188 1 > $DCC_PATH/config + echo 0x1798118c 1 > $DCC_PATH/config + echo 0x17981190 1 > $DCC_PATH/config + echo 0x17981194 1 > $DCC_PATH/config + echo 0x17981198 1 > $DCC_PATH/config + echo 0x1798119c 1 > $DCC_PATH/config + echo 0x179811a0 1 > $DCC_PATH/config + echo 0x179811a4 1 > $DCC_PATH/config + echo 0x179811a8 1 > $DCC_PATH/config + echo 0x179811ac 1 > $DCC_PATH/config + echo 0x179811b0 1 > $DCC_PATH/config + echo 0x179811b4 1 > $DCC_PATH/config + echo 0x179811b8 1 > $DCC_PATH/config + echo 0x179811bc 1 > $DCC_PATH/config + echo 0x179811c0 1 > $DCC_PATH/config + echo 0x179811c4 1 > $DCC_PATH/config + echo 0x179811c8 1 > $DCC_PATH/config + echo 0x179811cc 1 > $DCC_PATH/config + echo 0x179811d0 1 > $DCC_PATH/config + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x17981ffc 1 > $DCC_PATH/config + + #ubwcp ctrl/status debug + echo 0x179811d4 0x0 > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0x1 > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0x2 > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0x3 > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0x4 > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0x5 > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0x6 > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0x7 > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0x8 > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0x9 > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0xa > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0xb > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0xc > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0xd > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0xe > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0xf > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0x10 > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0x11 > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0x12 > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + echo 0x179811d4 0x13 > $DCC_PATH/config_write + echo 0x179811d4 1 > $DCC_PATH/config + echo 0x179811d8 1 > $DCC_PATH/config + + #ubwcp smmu + #FSR + echo 0x179a8058 1 > $DCC_PATH/config + echo 0x179a9058 1 > $DCC_PATH/config + echo 0x179aa058 1 > $DCC_PATH/config + echo 0x179ab058 1 > $DCC_PATH/config + #FAR LOW + echo 0x179a8060 1 > $DCC_PATH/config + echo 0x179a9060 1 > $DCC_PATH/config + echo 0x179aa060 1 > $DCC_PATH/config + echo 0x179ab060 1 > $DCC_PATH/config + #FAR HIGH + echo 0x179a8064 1 > $DCC_PATH/config + echo 0x179a9064 1 > $DCC_PATH/config + echo 0x179aa064 1 > $DCC_PATH/config + echo 0x179ab064 1 > $DCC_PATH/config + + #mibu + echo 0x1740003C 1 > $DCC_PATH/config + echo 0x17600238 1 > $DCC_PATH/config + echo 0x1760043C 1 > $DCC_PATH/config + echo 0x17600440 1 > $DCC_PATH/config + echo 0x17600240 1 > $DCC_PATH/config + echo 0x17600244 1 > $DCC_PATH/config + echo 0x17600248 1 > $DCC_PATH/config + echo 0x1760024c 1 > $DCC_PATH/config + echo 0x17600250 1 > $DCC_PATH/config + echo 0x17600254 1 > $DCC_PATH/config + echo 0x17600258 1 > $DCC_PATH/config + echo 0x1760025C 1 > $DCC_PATH/config + echo 0x17600260 1 > $DCC_PATH/config + echo 0x17600264 1 > $DCC_PATH/config + echo 0x17600268 1 > $DCC_PATH/config + echo 0x17600270 1 > $DCC_PATH/config + echo 0x17600274 1 > $DCC_PATH/config + echo 0x17600518 1 > $DCC_PATH/config + echo 0x1760051C 1 > $DCC_PATH/config + echo 0x17600520 1 > $DCC_PATH/config + echo 0x17600524 1 > $DCC_PATH/config + echo 0x17600528 1 > $DCC_PATH/config + echo 0x1760052C 1 > $DCC_PATH/config + echo 0x17600530 1 > $DCC_PATH/config + echo 0x17600534 1 > $DCC_PATH/config + echo 0x17600538 1 > $DCC_PATH/config + echo 0x1760053C 1 > $DCC_PATH/config +} + +apss_noc_dump() +{ + echo 0x17610010 1 > $DCC_PATH/config + echo 0x17610020 8 > $DCC_PATH/config + echo 0x17610248 1 > $DCC_PATH/config + echo 0x17612018 1 > $DCC_PATH/config + echo 0x17612008 1 > $DCC_PATH/config + echo 0x6 > $DCC_PATH/loop + echo 0x17612010 2 > $DCC_PATH/config + echo 0x1 > $DCC_PATH/loop +} + +config_gpu() +{ + echo 0x221C0148 1 > $DCC_PATH/config + echo 0x221C8118 1 > $DCC_PATH/config + echo 0x221C8A18 1 > $DCC_PATH/config + echo 0x221C2148 1 > $DCC_PATH/config + echo 0x03D02000 1 > $DCC_PATH/config + echo 0x03D02004 1 > $DCC_PATH/config + echo 0x03D02008 1 > $DCC_PATH/config + echo 0x03D0200C 1 > $DCC_PATH/config + echo 0x03D02010 1 > $DCC_PATH/config + echo 0x03D02014 1 > $DCC_PATH/config + echo 0x03D02018 1 > $DCC_PATH/config + echo 0x03D0201C 1 > $DCC_PATH/config + echo 0x03D02020 1 > $DCC_PATH/config + echo 0x03D02040 1 > $DCC_PATH/config + echo 0x03D02044 1 > $DCC_PATH/config + echo 0x03D02048 1 > $DCC_PATH/config + echo 0x03D0204C 1 > $DCC_PATH/config + echo 0x03D02080 1 > $DCC_PATH/config + echo 0x03D02084 1 > $DCC_PATH/config + echo 0x03D0208C 1 > $DCC_PATH/config + echo 0x03D02090 1 > $DCC_PATH/config + echo 0x03D02094 1 > $DCC_PATH/config + echo 0x03D02098 1 > $DCC_PATH/config + echo 0x03D0209C 1 > $DCC_PATH/config + echo 0x03D020C0 1 > $DCC_PATH/config + echo 0x03D020C4 1 > $DCC_PATH/config + echo 0x03D020C8 1 > $DCC_PATH/config + echo 0x03D020CC 1 > $DCC_PATH/config + echo 0x03D020D0 1 > $DCC_PATH/config + echo 0x03D020FC 1 > $DCC_PATH/config + echo 0x03D02100 1 > $DCC_PATH/config + echo 0x03D02104 1 > $DCC_PATH/config + echo 0x03D0210C 1 > $DCC_PATH/config + echo 0x03D02110 1 > $DCC_PATH/config + echo 0x03D02114 1 > $DCC_PATH/config + echo 0x03D02118 1 > $DCC_PATH/config + echo 0x03D0211C 1 > $DCC_PATH/config + echo 0x03D0213C 1 > $DCC_PATH/config + echo 0x03D02200 1 > $DCC_PATH/config + echo 0x03D02204 1 > $DCC_PATH/config + echo 0x03D02208 1 > $DCC_PATH/config + echo 0x03D0220C 1 > $DCC_PATH/config + echo 0x03D02210 1 > $DCC_PATH/config + echo 0x03D02214 1 > $DCC_PATH/config + echo 0x03D02218 1 > $DCC_PATH/config + echo 0x03D0221C 1 > $DCC_PATH/config + echo 0x03D02220 1 > $DCC_PATH/config + echo 0x03D02224 1 > $DCC_PATH/config + echo 0x03D02228 1 > $DCC_PATH/config + echo 0x03D0222C 1 > $DCC_PATH/config + echo 0x03D02230 1 > $DCC_PATH/config + echo 0x03D02280 1 > $DCC_PATH/config + echo 0x03D02284 1 > $DCC_PATH/config + echo 0x03D02288 1 > $DCC_PATH/config + echo 0x03D0228C 1 > $DCC_PATH/config + echo 0x03D02290 1 > $DCC_PATH/config + echo 0x03D02294 1 > $DCC_PATH/config + echo 0x03D02298 1 > $DCC_PATH/config + echo 0x03D0229C 1 > $DCC_PATH/config + echo 0x03D022A0 1 > $DCC_PATH/config + echo 0x03D022A4 1 > $DCC_PATH/config + echo 0x03D022A8 1 > $DCC_PATH/config + echo 0x03D022AC 1 > $DCC_PATH/config + echo 0x03D02300 1 > $DCC_PATH/config + echo 0x03D023C0 1 > $DCC_PATH/config + echo 0x03D023C4 1 > $DCC_PATH/config + echo 0x03D023C8 1 > $DCC_PATH/config + echo 0x03D023CC 1 > $DCC_PATH/config + echo 0x03D02400 1 > $DCC_PATH/config + echo 0x03D02404 1 > $DCC_PATH/config + echo 0x03D02408 1 > $DCC_PATH/config + echo 0x03D0240C 1 > $DCC_PATH/config + echo 0x03D02420 1 > $DCC_PATH/config + echo 0x03D02424 1 > $DCC_PATH/config + echo 0x03D02428 1 > $DCC_PATH/config + echo 0x03D0242C 1 > $DCC_PATH/config + echo 0x03D02430 1 > $DCC_PATH/config + echo 0x03D02434 1 > $DCC_PATH/config + echo 0x03D02438 1 > $DCC_PATH/config + echo 0x03D0243C 1 > $DCC_PATH/config + echo 0x03D02440 1 > $DCC_PATH/config + echo 0x03D02444 1 > $DCC_PATH/config + echo 0x03D024A0 1 > $DCC_PATH/config + echo 0x03D024A4 1 > $DCC_PATH/config + echo 0x03D024A8 1 > $DCC_PATH/config + echo 0x03D024AC 1 > $DCC_PATH/config + echo 0x03D024B0 1 > $DCC_PATH/config + echo 0x03D024B4 1 > $DCC_PATH/config + echo 0x03D024B8 1 > $DCC_PATH/config + echo 0x03D024BC 1 > $DCC_PATH/config + echo 0x03D024C0 1 > $DCC_PATH/config + echo 0x03D024C4 1 > $DCC_PATH/config + echo 0x03D024C8 1 > $DCC_PATH/config + echo 0x03D024CC 1 > $DCC_PATH/config + echo 0x03D024D0 1 > $DCC_PATH/config + echo 0x03D024D4 1 > $DCC_PATH/config + echo 0x03D024D8 1 > $DCC_PATH/config + echo 0x03D024DC 1 > $DCC_PATH/config + echo 0x03D024E0 1 > $DCC_PATH/config + echo 0x03D024E4 1 > $DCC_PATH/config + echo 0x03D024E8 1 > $DCC_PATH/config + echo 0x03D024EC 1 > $DCC_PATH/config + echo 0x03D024F0 1 > $DCC_PATH/config + echo 0x03D024F4 1 > $DCC_PATH/config + echo 0x03D024F8 1 > $DCC_PATH/config + echo 0x03D02508 1 > $DCC_PATH/config + echo 0x03D0250C 1 > $DCC_PATH/config + echo 0x03D02510 1 > $DCC_PATH/config + echo 0x03D02514 1 > $DCC_PATH/config + echo 0x03D02518 1 > $DCC_PATH/config + echo 0x03D0251C 1 > $DCC_PATH/config + echo 0x03D02520 1 > $DCC_PATH/config + echo 0x03D02524 1 > $DCC_PATH/config + echo 0x03D02528 1 > $DCC_PATH/config + echo 0x03D0252C 1 > $DCC_PATH/config + echo 0x03D02530 1 > $DCC_PATH/config + echo 0x03D02534 1 > $DCC_PATH/config + echo 0x03D02600 1 > $DCC_PATH/config + echo 0x03D02604 1 > $DCC_PATH/config + echo 0x03D02608 1 > $DCC_PATH/config + echo 0x03D0260C 1 > $DCC_PATH/config + echo 0x03D02610 1 > $DCC_PATH/config + echo 0x03D02634 1 > $DCC_PATH/config + echo 0x03D02638 1 > $DCC_PATH/config + echo 0x03D0263C 1 > $DCC_PATH/config + echo 0x03D026C0 1 > $DCC_PATH/config + echo 0x03D026C4 1 > $DCC_PATH/config + echo 0x03D026C8 1 > $DCC_PATH/config + echo 0x03D026CC 1 > $DCC_PATH/config + echo 0x03D026D0 1 > $DCC_PATH/config + echo 0x03D02708 1 > $DCC_PATH/config + echo 0x03D0270C 1 > $DCC_PATH/config + echo 0x03D02710 1 > $DCC_PATH/config + echo 0x03D02714 1 > $DCC_PATH/config + echo 0x03D02718 1 > $DCC_PATH/config + echo 0x03D0271C 1 > $DCC_PATH/config + echo 0x03D02720 1 > $DCC_PATH/config + echo 0x03D02724 1 > $DCC_PATH/config + echo 0x03D02738 1 > $DCC_PATH/config + echo 0x03D0273C 1 > $DCC_PATH/config + echo 0x03D02800 1 > $DCC_PATH/config + echo 0x03D02808 1 > $DCC_PATH/config + echo 0x03D0280C 1 > $DCC_PATH/config + echo 0x03D02984 1 > $DCC_PATH/config + echo 0x03D02988 1 > $DCC_PATH/config + echo 0x03D0298C 1 > $DCC_PATH/config + echo 0x03D02990 1 > $DCC_PATH/config + echo 0x03D02994 1 > $DCC_PATH/config + echo 0x03D02998 1 > $DCC_PATH/config + echo 0x03D0299C 1 > $DCC_PATH/config + echo 0x03D029A0 1 > $DCC_PATH/config + echo 0x03D029A4 1 > $DCC_PATH/config + echo 0x03D029A8 1 > $DCC_PATH/config + echo 0x03D029AC 1 > $DCC_PATH/config + echo 0x03D029B0 1 > $DCC_PATH/config + echo 0x03D029B4 1 > $DCC_PATH/config + echo 0x03D029B8 1 > $DCC_PATH/config + echo 0x03D029BC 1 > $DCC_PATH/config + echo 0x03D029C0 1 > $DCC_PATH/config + echo 0x03D029C4 1 > $DCC_PATH/config + echo 0x03D029C8 1 > $DCC_PATH/config + echo 0x03D029CC 1 > $DCC_PATH/config + echo 0x03D029D0 1 > $DCC_PATH/config + echo 0x03D029D4 1 > $DCC_PATH/config + echo 0x03D029D8 1 > $DCC_PATH/config + echo 0x03D029DC 1 > $DCC_PATH/config + echo 0x03D029E0 1 > $DCC_PATH/config + echo 0x03D029E4 1 > $DCC_PATH/config + echo 0x03D029E8 1 > $DCC_PATH/config + echo 0x03D029EC 1 > $DCC_PATH/config + echo 0x03D029F0 1 > $DCC_PATH/config + echo 0x03D029F4 1 > $DCC_PATH/config + echo 0x03D029F8 1 > $DCC_PATH/config + echo 0x03D029FC 1 > $DCC_PATH/config + echo 0x03D02A00 1 > $DCC_PATH/config + echo 0x03D02A04 1 > $DCC_PATH/config + echo 0x03D02A08 1 > $DCC_PATH/config + echo 0x03D02A0C 1 > $DCC_PATH/config + echo 0x03D02A10 1 > $DCC_PATH/config + echo 0x03D02A14 1 > $DCC_PATH/config + echo 0x03D02A18 1 > $DCC_PATH/config + echo 0x03D02A1C 1 > $DCC_PATH/config + echo 0x03D02A20 1 > $DCC_PATH/config + echo 0x03D02A24 1 > $DCC_PATH/config + echo 0x03D02A28 1 > $DCC_PATH/config + echo 0x03D02A2C 1 > $DCC_PATH/config + echo 0x03D02A30 1 > $DCC_PATH/config + echo 0x03D02A34 1 > $DCC_PATH/config + echo 0x03D02A38 1 > $DCC_PATH/config + echo 0x03D02A3C 1 > $DCC_PATH/config + echo 0x03D02A40 1 > $DCC_PATH/config + echo 0x03D02A44 1 > $DCC_PATH/config + echo 0x03D02A48 1 > $DCC_PATH/config + echo 0x03D02A4C 1 > $DCC_PATH/config + echo 0x03D02A50 1 > $DCC_PATH/config + echo 0x03D02A54 1 > $DCC_PATH/config + echo 0x03D02A58 1 > $DCC_PATH/config + echo 0x03D02A5C 1 > $DCC_PATH/config + echo 0x03D02A60 1 > $DCC_PATH/config + echo 0x03D02A64 1 > $DCC_PATH/config + echo 0x03D02A68 1 > $DCC_PATH/config + echo 0x03D02A6C 1 > $DCC_PATH/config + echo 0x03D02A70 1 > $DCC_PATH/config + echo 0x03D02A74 1 > $DCC_PATH/config + echo 0x03D02A78 1 > $DCC_PATH/config + echo 0x03D02A7C 1 > $DCC_PATH/config + echo 0x03D02B40 1 > $DCC_PATH/config + echo 0x03D02B44 1 > $DCC_PATH/config + echo 0x03D02B48 1 > $DCC_PATH/config + echo 0x03D02B4C 1 > $DCC_PATH/config + echo 0x03D02B50 1 > $DCC_PATH/config + echo 0x03D02B54 1 > $DCC_PATH/config + echo 0x03D02B58 1 > $DCC_PATH/config + echo 0x03D02B5C 1 > $DCC_PATH/config + echo 0x03D02B60 1 > $DCC_PATH/config + echo 0x03D02B64 1 > $DCC_PATH/config + echo 0x03D02B68 1 > $DCC_PATH/config + echo 0x03D02B6C 1 > $DCC_PATH/config + echo 0x03D02C00 1 > $DCC_PATH/config + echo 0x03D02C04 1 > $DCC_PATH/config + echo 0x03D02C08 1 > $DCC_PATH/config + echo 0x03D02C0C 1 > $DCC_PATH/config + echo 0x03D02C10 1 > $DCC_PATH/config + echo 0x03D02C14 1 > $DCC_PATH/config + echo 0x03D02C18 1 > $DCC_PATH/config + echo 0x03D02C1C 1 > $DCC_PATH/config + echo 0x03D02C20 1 > $DCC_PATH/config + echo 0x03D02C24 1 > $DCC_PATH/config + echo 0x03D02C28 1 > $DCC_PATH/config + echo 0x03D02C2C 1 > $DCC_PATH/config + echo 0x03D02C30 1 > $DCC_PATH/config + echo 0x03D02C34 1 > $DCC_PATH/config + echo 0x03D02C38 1 > $DCC_PATH/config + echo 0x03D02C3C 1 > $DCC_PATH/config + echo 0x03D02C40 1 > $DCC_PATH/config + echo 0x03D02C44 1 > $DCC_PATH/config + echo 0x03D02C48 1 > $DCC_PATH/config + echo 0x03D02C4C 1 > $DCC_PATH/config + echo 0x03D02C50 1 > $DCC_PATH/config + echo 0x03D02C54 1 > $DCC_PATH/config + echo 0x03D02C58 1 > $DCC_PATH/config + echo 0x03D02C5C 1 > $DCC_PATH/config + echo 0x03D02C60 1 > $DCC_PATH/config + echo 0x03D02C64 1 > $DCC_PATH/config + echo 0x03D02C68 1 > $DCC_PATH/config + echo 0x03D02C6C 1 > $DCC_PATH/config + echo 0x03D02C70 1 > $DCC_PATH/config + echo 0x03D02C74 1 > $DCC_PATH/config + echo 0x03D02C78 1 > $DCC_PATH/config + echo 0x03D02C7C 1 > $DCC_PATH/config + echo 0x03D02C80 1 > $DCC_PATH/config + echo 0x03D02C84 1 > $DCC_PATH/config + echo 0x03D02C88 1 > $DCC_PATH/config + echo 0x03D02C8C 1 > $DCC_PATH/config + echo 0x03D02C90 1 > $DCC_PATH/config + echo 0x03D02C94 1 > $DCC_PATH/config + echo 0x03D02C98 1 > $DCC_PATH/config + echo 0x03D02C9C 1 > $DCC_PATH/config + echo 0x03D02CA0 1 > $DCC_PATH/config + echo 0x03D02CA4 1 > $DCC_PATH/config + echo 0x03D02CA8 1 > $DCC_PATH/config + echo 0x03D02CAC 1 > $DCC_PATH/config + echo 0x03D02CB0 1 > $DCC_PATH/config + echo 0x03D02CB4 1 > $DCC_PATH/config + echo 0x03D02CB8 1 > $DCC_PATH/config + echo 0x03D02CBC 1 > $DCC_PATH/config + echo 0x03D02CC0 1 > $DCC_PATH/config + echo 0x03D02CC4 1 > $DCC_PATH/config + echo 0x03D02CD4 1 > $DCC_PATH/config + echo 0x03D02CD8 1 > $DCC_PATH/config + echo 0x03D02CDC 1 > $DCC_PATH/config + echo 0x03D02CE0 1 > $DCC_PATH/config + echo 0x03D02CE4 1 > $DCC_PATH/config + echo 0x03D02CE8 1 > $DCC_PATH/config + echo 0x03D02CEC 1 > $DCC_PATH/config + echo 0x03D02CF0 1 > $DCC_PATH/config + echo 0x03D02D00 1 > $DCC_PATH/config + echo 0x03D02DC0 1 > $DCC_PATH/config + echo 0x03D02DC4 1 > $DCC_PATH/config + echo 0x03D02DC8 1 > $DCC_PATH/config + echo 0x03D02DCC 1 > $DCC_PATH/config + echo 0x03D02DE0 1 > $DCC_PATH/config + echo 0x03D02DE4 1 > $DCC_PATH/config + echo 0x03D02DF0 1 > $DCC_PATH/config + echo 0x03D02DF4 1 > $DCC_PATH/config + echo 0x03D02E00 1 > $DCC_PATH/config + echo 0x03D02E04 1 > $DCC_PATH/config + echo 0x03D02E10 1 > $DCC_PATH/config + echo 0x03D02E14 1 > $DCC_PATH/config + echo 0x03D02E20 1 > $DCC_PATH/config + echo 0x03D02E24 1 > $DCC_PATH/config + echo 0x03D02E30 1 > $DCC_PATH/config + echo 0x03D02E34 1 > $DCC_PATH/config + echo 0x03D02E40 1 > $DCC_PATH/config + echo 0x03D02E44 1 > $DCC_PATH/config + echo 0x03D02E48 1 > $DCC_PATH/config + echo 0x03D02E4C 1 > $DCC_PATH/config + echo 0x03D02E60 1 > $DCC_PATH/config + echo 0x03D02E64 1 > $DCC_PATH/config + echo 0x03D02E70 1 > $DCC_PATH/config + echo 0x03D02E74 1 > $DCC_PATH/config + echo 0x03D02E80 1 > $DCC_PATH/config + echo 0x03D02E84 1 > $DCC_PATH/config + echo 0x03D02E90 1 > $DCC_PATH/config + echo 0x03D02E94 1 > $DCC_PATH/config + echo 0x03D02EA0 1 > $DCC_PATH/config + echo 0x03D02EA4 1 > $DCC_PATH/config + echo 0x03D02EB0 1 > $DCC_PATH/config + echo 0x03D02EB4 1 > $DCC_PATH/config + echo 0x03D02EC0 1 > $DCC_PATH/config + echo 0x03D02EC4 1 > $DCC_PATH/config + echo 0x03D02ED0 1 > $DCC_PATH/config + echo 0x03D02ED4 1 > $DCC_PATH/config + echo 0x03D02EE0 1 > $DCC_PATH/config + echo 0x03D02EE4 1 > $DCC_PATH/config + echo 0x03D02EF0 1 > $DCC_PATH/config + echo 0x03D02EF4 1 > $DCC_PATH/config + echo 0x03D02F00 1 > $DCC_PATH/config + echo 0x03D02F04 1 > $DCC_PATH/config + echo 0x03D3C000 1 > $DCC_PATH/config + echo 0x03D3C004 1 > $DCC_PATH/config + echo 0x03D3C008 1 > $DCC_PATH/config + echo 0x03D00000 1 > $DCC_PATH/config + echo 0x03D00008 1 > $DCC_PATH/config + echo 0x03D00044 1 > $DCC_PATH/config + echo 0x03D00048 1 > $DCC_PATH/config + echo 0x03D00058 1 > $DCC_PATH/config + echo 0x03D0005C 1 > $DCC_PATH/config + echo 0x03D00060 1 > $DCC_PATH/config + echo 0x03D00064 1 > $DCC_PATH/config + echo 0x03D00068 1 > $DCC_PATH/config + echo 0x03D0006C 1 > $DCC_PATH/config + echo 0x03D0007C 1 > $DCC_PATH/config + echo 0x03D00080 1 > $DCC_PATH/config + echo 0x03D00084 1 > $DCC_PATH/config + echo 0x03D00088 1 > $DCC_PATH/config + echo 0x03D0008C 1 > $DCC_PATH/config + echo 0x03D00090 1 > $DCC_PATH/config + echo 0x03D00094 1 > $DCC_PATH/config + echo 0x03D00098 1 > $DCC_PATH/config + echo 0x03D0009C 1 > $DCC_PATH/config + echo 0x03D000A0 1 > $DCC_PATH/config + echo 0x03D000A4 1 > $DCC_PATH/config + echo 0x03D000A8 1 > $DCC_PATH/config + echo 0x03D000AC 1 > $DCC_PATH/config + echo 0x03D000B0 1 > $DCC_PATH/config + echo 0x03D000B4 1 > $DCC_PATH/config + echo 0x03D000B8 1 > $DCC_PATH/config + echo 0x03D000BC 1 > $DCC_PATH/config + echo 0x03D000C0 1 > $DCC_PATH/config + echo 0x03D000C4 1 > $DCC_PATH/config + echo 0x03D000C8 1 > $DCC_PATH/config + echo 0x03D000D8 1 > $DCC_PATH/config + echo 0x03D000DC 1 > $DCC_PATH/config + echo 0x03D000E0 1 > $DCC_PATH/config + echo 0x03D000E4 1 > $DCC_PATH/config + echo 0x03D000E8 1 > $DCC_PATH/config + echo 0x03D000EC 1 > $DCC_PATH/config + echo 0x03D000F0 1 > $DCC_PATH/config + echo 0x03D0010C 1 > $DCC_PATH/config + echo 0x03D00110 1 > $DCC_PATH/config + echo 0x03D0011C 1 > $DCC_PATH/config + echo 0x03D00120 1 > $DCC_PATH/config + echo 0x03D00124 1 > $DCC_PATH/config + echo 0x03D00128 1 > $DCC_PATH/config + echo 0x03D00130 1 > $DCC_PATH/config + echo 0x03D00158 1 > $DCC_PATH/config + echo 0x03D001CC 1 > $DCC_PATH/config + echo 0x03D001D0 1 > $DCC_PATH/config + echo 0x03D001D4 1 > $DCC_PATH/config + echo 0x03D001D8 1 > $DCC_PATH/config + echo 0x03D001DC 1 > $DCC_PATH/config + echo 0x03D001E0 1 > $DCC_PATH/config + echo 0x03D001E4 1 > $DCC_PATH/config + echo 0x03D001E8 1 > $DCC_PATH/config + echo 0x03D001EC 1 > $DCC_PATH/config + echo 0x03D001F0 1 > $DCC_PATH/config + echo 0x03D001F4 1 > $DCC_PATH/config + echo 0x03D00240 1 > $DCC_PATH/config + echo 0x03D00244 1 > $DCC_PATH/config + echo 0x03D00248 1 > $DCC_PATH/config + echo 0x03D0024C 1 > $DCC_PATH/config + echo 0x03D00250 1 > $DCC_PATH/config + echo 0x03D00254 1 > $DCC_PATH/config + echo 0x03D00258 1 > $DCC_PATH/config + echo 0x03D0025C 1 > $DCC_PATH/config + echo 0x03D00260 1 > $DCC_PATH/config + echo 0x03D00264 1 > $DCC_PATH/config + echo 0x03D00268 1 > $DCC_PATH/config + echo 0x03D0026C 1 > $DCC_PATH/config + echo 0x03D00270 1 > $DCC_PATH/config + echo 0x03D00274 1 > $DCC_PATH/config + echo 0x03D00278 1 > $DCC_PATH/config + echo 0x03D0027C 1 > $DCC_PATH/config + echo 0x03D00280 1 > $DCC_PATH/config + echo 0x03D00284 1 > $DCC_PATH/config + echo 0x03D00288 1 > $DCC_PATH/config + echo 0x03D0028C 1 > $DCC_PATH/config + echo 0x03D00290 1 > $DCC_PATH/config + echo 0x03D00294 1 > $DCC_PATH/config + echo 0x03D00298 1 > $DCC_PATH/config + echo 0x03D0029C 1 > $DCC_PATH/config + echo 0x03D002A0 1 > $DCC_PATH/config + echo 0x03D002B4 1 > $DCC_PATH/config + echo 0x03D0045C 1 > $DCC_PATH/config + echo 0x03D00478 1 > $DCC_PATH/config + echo 0x03D0047C 1 > $DCC_PATH/config + echo 0x03D00480 1 > $DCC_PATH/config + echo 0x03D00484 1 > $DCC_PATH/config + echo 0x03D00488 1 > $DCC_PATH/config + echo 0x03D004C0 1 > $DCC_PATH/config + echo 0x03D004C4 1 > $DCC_PATH/config + echo 0x03D004C8 1 > $DCC_PATH/config + echo 0x03D004CC 1 > $DCC_PATH/config + echo 0x03D004D0 1 > $DCC_PATH/config + echo 0x03D004D4 1 > $DCC_PATH/config + echo 0x03D004D8 1 > $DCC_PATH/config + echo 0x03D004DC 1 > $DCC_PATH/config + echo 0x03D004E0 1 > $DCC_PATH/config + echo 0x03D004E4 1 > $DCC_PATH/config + echo 0x03D004E8 1 > $DCC_PATH/config + echo 0x03D004EC 1 > $DCC_PATH/config + echo 0x03D004F0 1 > $DCC_PATH/config + echo 0x03D004F4 1 > $DCC_PATH/config + echo 0x03D004F8 1 > $DCC_PATH/config + echo 0x03D004FC 1 > $DCC_PATH/config + echo 0x03D00508 1 > $DCC_PATH/config + echo 0x03D0050C 1 > $DCC_PATH/config + echo 0x03D00510 1 > $DCC_PATH/config + echo 0x03D00514 1 > $DCC_PATH/config + echo 0x03D00518 1 > $DCC_PATH/config + echo 0x03D0051C 1 > $DCC_PATH/config + echo 0x03D00520 1 > $DCC_PATH/config + echo 0x03D00524 1 > $DCC_PATH/config + echo 0x03D00528 1 > $DCC_PATH/config + echo 0x03D0052C 1 > $DCC_PATH/config + echo 0x03D00530 1 > $DCC_PATH/config + echo 0x03D00534 1 > $DCC_PATH/config + echo 0x03D00538 1 > $DCC_PATH/config + echo 0x03D0053C 1 > $DCC_PATH/config + echo 0x03D00540 1 > $DCC_PATH/config + echo 0x03D00544 1 > $DCC_PATH/config + echo 0x03D00548 1 > $DCC_PATH/config + echo 0x03D0054C 1 > $DCC_PATH/config + echo 0x03D00550 1 > $DCC_PATH/config + echo 0x03D00554 1 > $DCC_PATH/config + echo 0x03D00558 1 > $DCC_PATH/config + echo 0x03D0055C 1 > $DCC_PATH/config + echo 0x03D00560 1 > $DCC_PATH/config + echo 0x03D00564 1 > $DCC_PATH/config + echo 0x03D00568 1 > $DCC_PATH/config + echo 0x03D0056C 1 > $DCC_PATH/config + echo 0x03D00570 1 > $DCC_PATH/config + echo 0x03D00574 1 > $DCC_PATH/config + echo 0x03D00578 1 > $DCC_PATH/config + echo 0x03D0057C 1 > $DCC_PATH/config + echo 0x03D00588 1 > $DCC_PATH/config + echo 0x03D0058C 1 > $DCC_PATH/config + echo 0x03D00590 1 > $DCC_PATH/config + echo 0x03D00598 1 > $DCC_PATH/config + echo 0x03D0059C 1 > $DCC_PATH/config + echo 0x03D005A0 1 > $DCC_PATH/config + echo 0x03D005A4 1 > $DCC_PATH/config + echo 0x03D005A8 1 > $DCC_PATH/config + echo 0x03D005AC 1 > $DCC_PATH/config + echo 0x03D005B0 1 > $DCC_PATH/config + echo 0x03D005B4 1 > $DCC_PATH/config + echo 0x03D005B8 1 > $DCC_PATH/config + echo 0x03D005BC 1 > $DCC_PATH/config + echo 0x03D005C0 1 > $DCC_PATH/config + echo 0x03D005C4 1 > $DCC_PATH/config + echo 0x03D005CC 1 > $DCC_PATH/config + echo 0x03D005D0 1 > $DCC_PATH/config + echo 0x03D005D8 1 > $DCC_PATH/config + echo 0x03D005DC 1 > $DCC_PATH/config + echo 0x03D005E0 1 > $DCC_PATH/config + echo 0x03D005E4 1 > $DCC_PATH/config + echo 0x03D005E8 1 > $DCC_PATH/config + echo 0x03D005EC 1 > $DCC_PATH/config + echo 0x03D005F8 1 > $DCC_PATH/config + echo 0x03D005FC 1 > $DCC_PATH/config + echo 0x03D00600 1 > $DCC_PATH/config + echo 0x03D0060C 1 > $DCC_PATH/config + echo 0x03D00610 1 > $DCC_PATH/config + echo 0x03D00614 1 > $DCC_PATH/config + echo 0x03D00618 1 > $DCC_PATH/config + echo 0x03D0061C 1 > $DCC_PATH/config + echo 0x03D00620 1 > $DCC_PATH/config + echo 0x03D00624 1 > $DCC_PATH/config + echo 0x03D00628 1 > $DCC_PATH/config + echo 0x03D0062C 1 > $DCC_PATH/config + echo 0x03D00630 1 > $DCC_PATH/config + echo 0x03D00634 1 > $DCC_PATH/config + echo 0x03D00638 1 > $DCC_PATH/config + echo 0x03D0063C 1 > $DCC_PATH/config + echo 0x03D00640 1 > $DCC_PATH/config + echo 0x03D00644 1 > $DCC_PATH/config + echo 0x03D00648 1 > $DCC_PATH/config + echo 0x03D00654 1 > $DCC_PATH/config + echo 0x03D00658 1 > $DCC_PATH/config + echo 0x03D00664 1 > $DCC_PATH/config + echo 0x03D00668 1 > $DCC_PATH/config + echo 0x03D00674 1 > $DCC_PATH/config + echo 0x03D00678 1 > $DCC_PATH/config + echo 0x03D0067C 1 > $DCC_PATH/config + echo 0x03D00680 1 > $DCC_PATH/config + echo 0x03D00684 1 > $DCC_PATH/config + echo 0x03D00688 1 > $DCC_PATH/config + echo 0x03D006A8 1 > $DCC_PATH/config + echo 0x03D006AC 1 > $DCC_PATH/config + echo 0x03D006B0 1 > $DCC_PATH/config + echo 0x03D006B4 1 > $DCC_PATH/config + echo 0x03D006B8 1 > $DCC_PATH/config + echo 0x03D006E4 1 > $DCC_PATH/config + echo 0x03D006EC 1 > $DCC_PATH/config + echo 0x03D006F8 1 > $DCC_PATH/config + echo 0x03D00704 1 > $DCC_PATH/config + echo 0x03D00708 1 > $DCC_PATH/config + echo 0x03D00714 1 > $DCC_PATH/config + echo 0x03D0071C 1 > $DCC_PATH/config + echo 0x03D00724 1 > $DCC_PATH/config + echo 0x03D0072C 1 > $DCC_PATH/config + echo 0x03D00730 1 > $DCC_PATH/config + echo 0x03D00734 1 > $DCC_PATH/config + echo 0x03D00738 1 > $DCC_PATH/config + echo 0x03D00744 1 > $DCC_PATH/config + echo 0x03D00748 1 > $DCC_PATH/config + echo 0x03D0074C 1 > $DCC_PATH/config + echo 0x03D00750 1 > $DCC_PATH/config + echo 0x03D00754 1 > $DCC_PATH/config + echo 0x03D00758 1 > $DCC_PATH/config + echo 0x03D0075C 1 > $DCC_PATH/config + echo 0x03D00760 1 > $DCC_PATH/config + echo 0x03D00764 1 > $DCC_PATH/config + echo 0x03D00768 1 > $DCC_PATH/config + echo 0x03D0076C 1 > $DCC_PATH/config + echo 0x03D00770 1 > $DCC_PATH/config + echo 0x03D00774 1 > $DCC_PATH/config + echo 0x03D00778 1 > $DCC_PATH/config + echo 0x03D0077C 1 > $DCC_PATH/config + echo 0x03D00784 1 > $DCC_PATH/config + echo 0x03D00788 1 > $DCC_PATH/config + echo 0x03D0078C 1 > $DCC_PATH/config + echo 0x03D00794 1 > $DCC_PATH/config + echo 0x03D0079C 1 > $DCC_PATH/config + echo 0x03D007A0 1 > $DCC_PATH/config + echo 0x03D007A4 1 > $DCC_PATH/config + echo 0x03D00800 1 > $DCC_PATH/config + echo 0x03D00804 1 > $DCC_PATH/config + echo 0x03D00808 1 > $DCC_PATH/config + echo 0x03D0080C 1 > $DCC_PATH/config + echo 0x03D00810 1 > $DCC_PATH/config + echo 0x03D00814 1 > $DCC_PATH/config + echo 0x03D00818 1 > $DCC_PATH/config + echo 0x03D0081C 1 > $DCC_PATH/config + echo 0x03D00820 1 > $DCC_PATH/config + echo 0x03D00824 1 > $DCC_PATH/config + echo 0x03D00828 1 > $DCC_PATH/config + echo 0x03D0082C 1 > $DCC_PATH/config + echo 0x03D00830 1 > $DCC_PATH/config + echo 0x03D00834 1 > $DCC_PATH/config + echo 0x03D00840 1 > $DCC_PATH/config + echo 0x03D00844 1 > $DCC_PATH/config + echo 0x03D00848 1 > $DCC_PATH/config + echo 0x03D0084C 1 > $DCC_PATH/config + echo 0x03D00854 1 > $DCC_PATH/config + echo 0x03D00858 1 > $DCC_PATH/config + echo 0x03D0085C 1 > $DCC_PATH/config + echo 0x03D00860 1 > $DCC_PATH/config + echo 0x03D00864 1 > $DCC_PATH/config + echo 0x03D00868 1 > $DCC_PATH/config + echo 0x03D0086C 1 > $DCC_PATH/config + echo 0x03D00870 1 > $DCC_PATH/config + echo 0x03D00874 1 > $DCC_PATH/config + echo 0x03D00878 1 > $DCC_PATH/config + echo 0x03D0087C 1 > $DCC_PATH/config + echo 0x03D00880 1 > $DCC_PATH/config + echo 0x03D00884 1 > $DCC_PATH/config + echo 0x03D00888 1 > $DCC_PATH/config + echo 0x03D0088C 1 > $DCC_PATH/config + echo 0x03D00890 1 > $DCC_PATH/config + echo 0x03D00894 1 > $DCC_PATH/config + echo 0x03D00898 1 > $DCC_PATH/config + echo 0x03D0089C 1 > $DCC_PATH/config + echo 0x03D008A0 1 > $DCC_PATH/config + echo 0x03D008A4 1 > $DCC_PATH/config + echo 0x03D008A8 1 > $DCC_PATH/config + echo 0x03D008AC 1 > $DCC_PATH/config + echo 0x03D008B0 1 > $DCC_PATH/config + echo 0x03D008B4 1 > $DCC_PATH/config + echo 0x03D008B8 1 > $DCC_PATH/config + echo 0x03D008BC 1 > $DCC_PATH/config + echo 0x03D008C0 1 > $DCC_PATH/config + echo 0x03D008C4 1 > $DCC_PATH/config + echo 0x03D008C8 1 > $DCC_PATH/config + echo 0x03D008CC 1 > $DCC_PATH/config + echo 0x03D008D0 1 > $DCC_PATH/config + echo 0x03D008D4 1 > $DCC_PATH/config + echo 0x03D008D8 1 > $DCC_PATH/config + echo 0x03D008DC 1 > $DCC_PATH/config + echo 0x03D008E0 1 > $DCC_PATH/config + echo 0x03D008E4 1 > $DCC_PATH/config + echo 0x03D008E8 1 > $DCC_PATH/config + echo 0x03D008EC 1 > $DCC_PATH/config + echo 0x03D008F0 1 > $DCC_PATH/config + echo 0x03D008F4 1 > $DCC_PATH/config + echo 0x03D008F8 1 > $DCC_PATH/config + echo 0x03D008FC 1 > $DCC_PATH/config + echo 0x03D00900 1 > $DCC_PATH/config + echo 0x03D00904 1 > $DCC_PATH/config + echo 0x03D00908 1 > $DCC_PATH/config + echo 0x03D0090C 1 > $DCC_PATH/config + echo 0x03D00910 1 > $DCC_PATH/config + echo 0x03D00914 1 > $DCC_PATH/config + echo 0x03D00918 1 > $DCC_PATH/config + echo 0x03D0091C 1 > $DCC_PATH/config + echo 0x03D00920 1 > $DCC_PATH/config + echo 0x03D00924 1 > $DCC_PATH/config + echo 0x03D00928 1 > $DCC_PATH/config + echo 0x03D0092C 1 > $DCC_PATH/config + echo 0x03D00930 1 > $DCC_PATH/config + echo 0x03D00934 1 > $DCC_PATH/config + echo 0x03D00938 1 > $DCC_PATH/config + echo 0x03D0093C 1 > $DCC_PATH/config + echo 0x03D00940 1 > $DCC_PATH/config + echo 0x03D00944 1 > $DCC_PATH/config + echo 0x03D00948 1 > $DCC_PATH/config + echo 0x03D0094C 1 > $DCC_PATH/config + echo 0x03D00980 1 > $DCC_PATH/config + echo 0x03D00990 1 > $DCC_PATH/config + echo 0x03D00994 1 > $DCC_PATH/config + echo 0x03D00998 1 > $DCC_PATH/config + echo 0x03D0099C 1 > $DCC_PATH/config + echo 0x03D009A0 1 > $DCC_PATH/config + echo 0x03D009A4 1 > $DCC_PATH/config + echo 0x03D009A8 1 > $DCC_PATH/config + echo 0x03D009AC 1 > $DCC_PATH/config + echo 0x03D009B0 1 > $DCC_PATH/config + echo 0x03D009B4 1 > $DCC_PATH/config + echo 0x03D009B8 1 > $DCC_PATH/config + echo 0x03D009BC 1 > $DCC_PATH/config + echo 0x03D009C0 1 > $DCC_PATH/config + echo 0x03D009C8 1 > $DCC_PATH/config + echo 0x03D009CC 1 > $DCC_PATH/config + echo 0x03D009D0 1 > $DCC_PATH/config + echo 0x03D00A04 1 > $DCC_PATH/config + echo 0x03D00A0C 1 > $DCC_PATH/config + echo 0x03D00A24 1 > $DCC_PATH/config + echo 0x03D00A28 1 > $DCC_PATH/config + echo 0x03D00A2C 1 > $DCC_PATH/config + echo 0x03D00A30 1 > $DCC_PATH/config + echo 0x03D00A34 1 > $DCC_PATH/config + echo 0x03D00A40 1 > $DCC_PATH/config + echo 0x03D00A44 1 > $DCC_PATH/config + echo 0x03D00A48 1 > $DCC_PATH/config + echo 0x03D00A4C 1 > $DCC_PATH/config + echo 0x03D00A50 1 > $DCC_PATH/config + echo 0x03D00A54 1 > $DCC_PATH/config + echo 0x03D00A58 1 > $DCC_PATH/config + echo 0x03D00A5C 1 > $DCC_PATH/config + echo 0x03D00A60 1 > $DCC_PATH/config + echo 0x03D00A64 1 > $DCC_PATH/config + echo 0x03D00A68 1 > $DCC_PATH/config + echo 0x03D00A6C 1 > $DCC_PATH/config + echo 0x03D00A70 1 > $DCC_PATH/config + echo 0x03D00A74 1 > $DCC_PATH/config + echo 0x03D00A78 1 > $DCC_PATH/config + echo 0x03D00A7C 1 > $DCC_PATH/config + echo 0x03D00A80 1 > $DCC_PATH/config + echo 0x03D00A84 1 > $DCC_PATH/config + echo 0x03D00A88 1 > $DCC_PATH/config + echo 0x03D00B00 1 > $DCC_PATH/config + echo 0x03D00B04 1 > $DCC_PATH/config + echo 0x03D01440 1 > $DCC_PATH/config + echo 0x03D01444 1 > $DCC_PATH/config + echo 0x03D014CC 1 > $DCC_PATH/config + echo 0x03D014D0 1 > $DCC_PATH/config + echo 0x03D014D4 1 > $DCC_PATH/config + echo 0x03D014D8 1 > $DCC_PATH/config + echo 0x03D017EC 1 > $DCC_PATH/config + echo 0x03D017F8 1 > $DCC_PATH/config + echo 0x03D017FC 1 > $DCC_PATH/config + echo 0x03D3D000 1 > $DCC_PATH/config + echo 0x03D3E000 1 > $DCC_PATH/config + echo 0x03D3E004 1 > $DCC_PATH/config + echo 0x03D3E008 1 > $DCC_PATH/config + echo 0x03D3E00C 1 > $DCC_PATH/config + echo 0x03D3F000 1 > $DCC_PATH/config + echo 0x03D3F004 1 > $DCC_PATH/config + echo 0x03D90000 1 > $DCC_PATH/config + echo 0x03D90004 1 > $DCC_PATH/config + echo 0x03D90008 1 > $DCC_PATH/config + echo 0x03D9000C 1 > $DCC_PATH/config + echo 0x03D90010 1 > $DCC_PATH/config + echo 0x03D90014 1 > $DCC_PATH/config + echo 0x03D90018 1 > $DCC_PATH/config + echo 0x03D9001C 1 > $DCC_PATH/config + echo 0x03D90020 1 > $DCC_PATH/config + echo 0x03D90024 1 > $DCC_PATH/config + echo 0x03D90028 1 > $DCC_PATH/config + echo 0x03D9002C 1 > $DCC_PATH/config + echo 0x03D90030 1 > $DCC_PATH/config + echo 0x03D90034 1 > $DCC_PATH/config + echo 0x03D90038 1 > $DCC_PATH/config + echo 0x03D9003C 1 > $DCC_PATH/config + echo 0x03D91000 1 > $DCC_PATH/config + echo 0x03D91004 1 > $DCC_PATH/config + echo 0x03D91008 1 > $DCC_PATH/config + echo 0x03D9100C 1 > $DCC_PATH/config + echo 0x03D91010 1 > $DCC_PATH/config + echo 0x03D91014 1 > $DCC_PATH/config + echo 0x03D91018 1 > $DCC_PATH/config + echo 0x03D9101C 1 > $DCC_PATH/config + echo 0x03D91020 1 > $DCC_PATH/config + echo 0x03D91024 1 > $DCC_PATH/config + echo 0x03D91028 1 > $DCC_PATH/config + echo 0x03D9102C 1 > $DCC_PATH/config + echo 0x03D91030 1 > $DCC_PATH/config + echo 0x03D91034 1 > $DCC_PATH/config + echo 0x03D91038 1 > $DCC_PATH/config + echo 0x03D9103C 1 > $DCC_PATH/config + echo 0x03D92000 1 > $DCC_PATH/config + echo 0x03D92004 1 > $DCC_PATH/config + echo 0x03D92008 1 > $DCC_PATH/config + echo 0x03D9200C 1 > $DCC_PATH/config + echo 0x03D92010 1 > $DCC_PATH/config + echo 0x03D92014 1 > $DCC_PATH/config + echo 0x03D93000 1 > $DCC_PATH/config + echo 0x03D94000 1 > $DCC_PATH/config + echo 0x03D94004 1 > $DCC_PATH/config + echo 0x03D94008 1 > $DCC_PATH/config + echo 0x03D95000 1 > $DCC_PATH/config + echo 0x03D95004 1 > $DCC_PATH/config + echo 0x03D95008 1 > $DCC_PATH/config + echo 0x03D9500C 1 > $DCC_PATH/config + echo 0x03D95010 1 > $DCC_PATH/config + echo 0x03D96000 1 > $DCC_PATH/config + echo 0x03D96004 1 > $DCC_PATH/config + echo 0x03D96008 1 > $DCC_PATH/config + echo 0x03D9600C 1 > $DCC_PATH/config + echo 0x03D96010 1 > $DCC_PATH/config + echo 0x03D97000 1 > $DCC_PATH/config + echo 0x03D97004 1 > $DCC_PATH/config + echo 0x03D97008 1 > $DCC_PATH/config + echo 0x03D9700C 1 > $DCC_PATH/config + echo 0x03D97010 1 > $DCC_PATH/config + echo 0x03D98000 1 > $DCC_PATH/config + echo 0x03D98004 1 > $DCC_PATH/config + echo 0x03D98008 1 > $DCC_PATH/config + echo 0x03D9800C 1 > $DCC_PATH/config + echo 0x03D98010 1 > $DCC_PATH/config + echo 0x03D99000 1 > $DCC_PATH/config + echo 0x03D99004 1 > $DCC_PATH/config + echo 0x03D99008 1 > $DCC_PATH/config + echo 0x03D9900C 1 > $DCC_PATH/config + echo 0x03D99010 1 > $DCC_PATH/config + echo 0x03D99014 1 > $DCC_PATH/config + echo 0x03D99050 1 > $DCC_PATH/config + echo 0x03D99054 1 > $DCC_PATH/config + echo 0x03D99060 1 > $DCC_PATH/config + echo 0x03D99064 1 > $DCC_PATH/config + echo 0x03D99068 1 > $DCC_PATH/config + echo 0x03D9906C 1 > $DCC_PATH/config + echo 0x03D99070 1 > $DCC_PATH/config + echo 0x03D99074 1 > $DCC_PATH/config + echo 0x03D990A8 1 > $DCC_PATH/config + echo 0x03D990AC 1 > $DCC_PATH/config + echo 0x03D990B0 1 > $DCC_PATH/config + echo 0x03D990B4 1 > $DCC_PATH/config + echo 0x03D990B8 1 > $DCC_PATH/config + echo 0x03D990BC 1 > $DCC_PATH/config + echo 0x03D990C0 1 > $DCC_PATH/config + echo 0x03D990C8 1 > $DCC_PATH/config + echo 0x03D990CC 1 > $DCC_PATH/config + echo 0x03D990D0 1 > $DCC_PATH/config + echo 0x03D99104 1 > $DCC_PATH/config + echo 0x03D9910C 1 > $DCC_PATH/config + echo 0x03D99110 1 > $DCC_PATH/config + echo 0x03D99114 1 > $DCC_PATH/config + echo 0x03D99118 1 > $DCC_PATH/config + echo 0x03D9911C 1 > $DCC_PATH/config + echo 0x03D99120 1 > $DCC_PATH/config + echo 0x03D99124 1 > $DCC_PATH/config + echo 0x03D99128 1 > $DCC_PATH/config + echo 0x03D9912C 1 > $DCC_PATH/config + echo 0x03D99134 1 > $DCC_PATH/config + echo 0x03D99138 1 > $DCC_PATH/config + echo 0x03D9913C 1 > $DCC_PATH/config + echo 0x03D99140 1 > $DCC_PATH/config + echo 0x03D99144 1 > $DCC_PATH/config + echo 0x03D99148 1 > $DCC_PATH/config + echo 0x03D9914C 1 > $DCC_PATH/config + echo 0x03D99150 1 > $DCC_PATH/config + echo 0x03D99154 1 > $DCC_PATH/config + echo 0x03D99158 1 > $DCC_PATH/config + echo 0x03D9915C 1 > $DCC_PATH/config + echo 0x03D99160 1 > $DCC_PATH/config + echo 0x03D99164 1 > $DCC_PATH/config + echo 0x03D9916C 1 > $DCC_PATH/config + echo 0x03D99170 1 > $DCC_PATH/config + echo 0x03D99174 1 > $DCC_PATH/config + echo 0x03D99178 1 > $DCC_PATH/config + echo 0x03D9917C 1 > $DCC_PATH/config + echo 0x03D99180 1 > $DCC_PATH/config + echo 0x03D99184 1 > $DCC_PATH/config + echo 0x03D99188 1 > $DCC_PATH/config + echo 0x03D9918C 1 > $DCC_PATH/config + echo 0x03D99198 1 > $DCC_PATH/config + echo 0x03D9919C 1 > $DCC_PATH/config + echo 0x03D991A0 1 > $DCC_PATH/config + echo 0x03D991E0 1 > $DCC_PATH/config + echo 0x03D991E4 1 > $DCC_PATH/config + echo 0x03D991E8 1 > $DCC_PATH/config + echo 0x03D99224 1 > $DCC_PATH/config + echo 0x03D99228 1 > $DCC_PATH/config + echo 0x03D99270 1 > $DCC_PATH/config + echo 0x03D99274 1 > $DCC_PATH/config + echo 0x03D99278 1 > $DCC_PATH/config + echo 0x03D99280 1 > $DCC_PATH/config + echo 0x03D99284 1 > $DCC_PATH/config + echo 0x03D99288 1 > $DCC_PATH/config + echo 0x03D9928C 1 > $DCC_PATH/config + echo 0x03D99290 1 > $DCC_PATH/config + echo 0x03D99294 1 > $DCC_PATH/config + echo 0x03D99298 1 > $DCC_PATH/config + echo 0x03D99314 1 > $DCC_PATH/config + echo 0x03D99318 1 > $DCC_PATH/config + echo 0x03D9931C 1 > $DCC_PATH/config + echo 0x03D9935C 1 > $DCC_PATH/config + echo 0x03D99360 1 > $DCC_PATH/config + echo 0x03D993A0 1 > $DCC_PATH/config + echo 0x03D993A4 1 > $DCC_PATH/config + echo 0x03D993E4 1 > $DCC_PATH/config + echo 0x03D993E8 1 > $DCC_PATH/config + echo 0x03D993EC 1 > $DCC_PATH/config + echo 0x03D993F0 1 > $DCC_PATH/config + echo 0x03D9942C 1 > $DCC_PATH/config + echo 0x03D99470 1 > $DCC_PATH/config + echo 0x03D99474 1 > $DCC_PATH/config + echo 0x03D99478 1 > $DCC_PATH/config + echo 0x03D99500 1 > $DCC_PATH/config + echo 0x03D99508 1 > $DCC_PATH/config + echo 0x03D9950C 1 > $DCC_PATH/config + echo 0x03D99510 1 > $DCC_PATH/config + echo 0x03D99514 1 > $DCC_PATH/config + echo 0x03D99518 1 > $DCC_PATH/config + echo 0x03D9951C 1 > $DCC_PATH/config + echo 0x03D99520 1 > $DCC_PATH/config + echo 0x03D99524 1 > $DCC_PATH/config + echo 0x03D99528 1 > $DCC_PATH/config + echo 0x03D9952C 1 > $DCC_PATH/config + echo 0x03D99530 1 > $DCC_PATH/config + echo 0x03D99534 1 > $DCC_PATH/config + echo 0x03D99538 1 > $DCC_PATH/config + echo 0x03D99550 1 > $DCC_PATH/config + echo 0x03D99554 1 > $DCC_PATH/config + echo 0x03D99558 1 > $DCC_PATH/config + echo 0x03D9955C 1 > $DCC_PATH/config + echo 0x03D99560 1 > $DCC_PATH/config + echo 0x03D99564 1 > $DCC_PATH/config + echo 0x03D99568 1 > $DCC_PATH/config + echo 0x03D9956C 1 > $DCC_PATH/config + echo 0x03D99570 1 > $DCC_PATH/config + echo 0x03D99574 1 > $DCC_PATH/config + echo 0x03D99578 1 > $DCC_PATH/config + echo 0x03D9957C 1 > $DCC_PATH/config + echo 0x03D99580 1 > $DCC_PATH/config + echo 0x03D99584 1 > $DCC_PATH/config + echo 0x03D99588 1 > $DCC_PATH/config + echo 0x03D99590 1 > $DCC_PATH/config + echo 0x03D99594 1 > $DCC_PATH/config + echo 0x03D99598 1 > $DCC_PATH/config + echo 0x03D9959C 1 > $DCC_PATH/config + echo 0x03D995A0 1 > $DCC_PATH/config + echo 0x03D995A4 1 > $DCC_PATH/config + echo 0x03D995A8 1 > $DCC_PATH/config + echo 0x03D995AC 1 > $DCC_PATH/config + echo 0x03D995B0 1 > $DCC_PATH/config + echo 0x03D995B4 1 > $DCC_PATH/config + echo 0x03D995B8 1 > $DCC_PATH/config + echo 0x03D995BC 1 > $DCC_PATH/config + echo 0x03D995C0 1 > $DCC_PATH/config + echo 0x03D995C4 1 > $DCC_PATH/config + echo 0x03D995C8 1 > $DCC_PATH/config + echo 0x03D995CC 1 > $DCC_PATH/config + echo 0x03D995D8 1 > $DCC_PATH/config + echo 0x03D995DC 1 > $DCC_PATH/config + echo 0x03D995E0 1 > $DCC_PATH/config + echo 0x03D995E4 1 > $DCC_PATH/config + echo 0x03D995E8 1 > $DCC_PATH/config + echo 0x03D40000 1 > $DCC_PATH/config + echo 0x03D40004 1 > $DCC_PATH/config + echo 0x03D40008 1 > $DCC_PATH/config + echo 0x03D4000C 1 > $DCC_PATH/config + echo 0x03D41000 1 > $DCC_PATH/config + echo 0x03D41004 1 > $DCC_PATH/config + echo 0x03D41008 1 > $DCC_PATH/config + echo 0x03D4100C 1 > $DCC_PATH/config + echo 0x03D42000 1 > $DCC_PATH/config + echo 0x03D42004 1 > $DCC_PATH/config + echo 0x03D42008 1 > $DCC_PATH/config + echo 0x03D4200C 1 > $DCC_PATH/config + echo 0x03D43000 1 > $DCC_PATH/config + echo 0x03D43004 1 > $DCC_PATH/config + echo 0x03D43008 1 > $DCC_PATH/config + echo 0x03D4300C 1 > $DCC_PATH/config + echo 0x03D44000 1 > $DCC_PATH/config + echo 0x03D44004 1 > $DCC_PATH/config + echo 0x03D44008 1 > $DCC_PATH/config + echo 0x03D4400C 1 > $DCC_PATH/config + echo 0x03D45000 1 > $DCC_PATH/config + echo 0x03D45004 1 > $DCC_PATH/config + echo 0x03D45008 1 > $DCC_PATH/config + echo 0x03D4500C 1 > $DCC_PATH/config + echo 0x03D46000 1 > $DCC_PATH/config + echo 0x03D46004 1 > $DCC_PATH/config + echo 0x03D46008 1 > $DCC_PATH/config + echo 0x03D4600C 1 > $DCC_PATH/config + echo 0x03D47000 1 > $DCC_PATH/config + echo 0x03D47004 1 > $DCC_PATH/config + echo 0x03D47008 1 > $DCC_PATH/config + echo 0x03D4700C 1 > $DCC_PATH/config + echo 0x03D48000 1 > $DCC_PATH/config + echo 0x03D49000 1 > $DCC_PATH/config + echo 0x03D4A000 1 > $DCC_PATH/config + echo 0x03D4B000 1 > $DCC_PATH/config + echo 0x03D4C000 1 > $DCC_PATH/config + echo 0x03D4D000 1 > $DCC_PATH/config + echo 0x03D4E000 1 > $DCC_PATH/config + echo 0x03D4F000 1 > $DCC_PATH/config + echo 0x03D8E000 1 > $DCC_PATH/config + echo 0x03D8E004 1 > $DCC_PATH/config + echo 0x03D8E008 1 > $DCC_PATH/config + echo 0x03D8E00C 1 > $DCC_PATH/config + echo 0x03D8E010 1 > $DCC_PATH/config + echo 0x03D8E014 1 > $DCC_PATH/config + echo 0x03D8E018 1 > $DCC_PATH/config + echo 0x03D8E01C 1 > $DCC_PATH/config + echo 0x03D8E020 1 > $DCC_PATH/config + echo 0x03D8E024 1 > $DCC_PATH/config + echo 0x03D8E028 1 > $DCC_PATH/config + echo 0x03D8E02C 1 > $DCC_PATH/config + echo 0x03D8E030 1 > $DCC_PATH/config + echo 0x03D8E034 1 > $DCC_PATH/config + echo 0x03D8E038 1 > $DCC_PATH/config + echo 0x03D8E03C 1 > $DCC_PATH/config + echo 0x03D8E040 1 > $DCC_PATH/config + echo 0x03D8E044 1 > $DCC_PATH/config + echo 0x03D8E048 1 > $DCC_PATH/config + echo 0x03D8E04C 1 > $DCC_PATH/config + echo 0x03D8E050 1 > $DCC_PATH/config + echo 0x03D8E054 1 > $DCC_PATH/config + echo 0x03D8E058 1 > $DCC_PATH/config + echo 0x03D8E05C 1 > $DCC_PATH/config + echo 0x03D8E060 1 > $DCC_PATH/config + echo 0x03D8E064 1 > $DCC_PATH/config + echo 0x03D8E068 1 > $DCC_PATH/config + echo 0x03D8E06C 1 > $DCC_PATH/config + echo 0x03D8E070 1 > $DCC_PATH/config + echo 0x03D8E074 1 > $DCC_PATH/config + echo 0x03D8E078 1 > $DCC_PATH/config + echo 0x03D8E07C 1 > $DCC_PATH/config + echo 0x03D8E080 1 > $DCC_PATH/config + echo 0x03D8E084 1 > $DCC_PATH/config + echo 0x03D8E088 1 > $DCC_PATH/config + echo 0x03D8E090 1 > $DCC_PATH/config + echo 0x03D8E094 1 > $DCC_PATH/config + echo 0x03D8E098 1 > $DCC_PATH/config + echo 0x03D8E0A0 1 > $DCC_PATH/config + echo 0x03D8E0A4 1 > $DCC_PATH/config + echo 0x03D8E0A8 1 > $DCC_PATH/config + echo 0x03D8E0B0 1 > $DCC_PATH/config + echo 0x03D8E0B4 1 > $DCC_PATH/config + echo 0x03D8E0B8 1 > $DCC_PATH/config + echo 0x03D8E0C0 1 > $DCC_PATH/config + echo 0x03D8E0C4 1 > $DCC_PATH/config + echo 0x03D8E0C8 1 > $DCC_PATH/config + echo 0x03D8E0D0 1 > $DCC_PATH/config + echo 0x03D8E0D4 1 > $DCC_PATH/config + echo 0x03D8E0D8 1 > $DCC_PATH/config + echo 0x03D8E0E0 1 > $DCC_PATH/config + echo 0x03D8E0E4 1 > $DCC_PATH/config + echo 0x03D8E0E8 1 > $DCC_PATH/config + echo 0x03D8E0F0 1 > $DCC_PATH/config + echo 0x03D8E0F4 1 > $DCC_PATH/config + echo 0x03D8E0F8 1 > $DCC_PATH/config + echo 0x03D8E100 1 > $DCC_PATH/config + echo 0x03D8E104 1 > $DCC_PATH/config + echo 0x03D8E108 1 > $DCC_PATH/config + echo 0x03D8E10C 1 > $DCC_PATH/config + echo 0x03D8E110 1 > $DCC_PATH/config + echo 0x03D8E114 1 > $DCC_PATH/config + echo 0x03D8E118 1 > $DCC_PATH/config + echo 0x03D8E11C 1 > $DCC_PATH/config + echo 0x03D8EC00 1 > $DCC_PATH/config + echo 0x03D8EC04 1 > $DCC_PATH/config + echo 0x03D8EC08 1 > $DCC_PATH/config + echo 0x03D8EC0C 1 > $DCC_PATH/config + echo 0x03D8EC10 1 > $DCC_PATH/config + echo 0x03D8EC14 1 > $DCC_PATH/config + echo 0x03D8EC18 1 > $DCC_PATH/config + echo 0x03D8EC1C 1 > $DCC_PATH/config + echo 0x03D8EC20 1 > $DCC_PATH/config + echo 0x03D8EC24 1 > $DCC_PATH/config + echo 0x03D8EC28 1 > $DCC_PATH/config + echo 0x03D8EC2C 1 > $DCC_PATH/config + echo 0x03D8EC30 1 > $DCC_PATH/config + echo 0x03D8EC34 1 > $DCC_PATH/config + echo 0x03D8EC38 1 > $DCC_PATH/config + echo 0x03D8EC40 1 > $DCC_PATH/config + echo 0x03D8EC44 1 > $DCC_PATH/config + echo 0x03D8EC48 1 > $DCC_PATH/config + echo 0x03D8EC4C 1 > $DCC_PATH/config + echo 0x03D8EC50 1 > $DCC_PATH/config + echo 0x03D8EC54 1 > $DCC_PATH/config + echo 0x03D8EC58 1 > $DCC_PATH/config + echo 0x03D8ECA0 1 > $DCC_PATH/config + echo 0x03D8ECC0 1 > $DCC_PATH/config + echo 0x03D8EFF0 1 > $DCC_PATH/config + echo 0x03D8EFF4 1 > $DCC_PATH/config + echo 0x03D8F000 1 > $DCC_PATH/config + echo 0x03D7D000 1 > $DCC_PATH/config + echo 0x03D7D004 1 > $DCC_PATH/config + echo 0x03D7D008 1 > $DCC_PATH/config + echo 0x03D7D00C 1 > $DCC_PATH/config + echo 0x03D7D010 1 > $DCC_PATH/config + echo 0x03D7D014 1 > $DCC_PATH/config + echo 0x03D7D018 1 > $DCC_PATH/config + echo 0x03D7D01C 1 > $DCC_PATH/config + echo 0x03D7D020 1 > $DCC_PATH/config + echo 0x03D7D024 1 > $DCC_PATH/config + echo 0x03D7D028 1 > $DCC_PATH/config + echo 0x03D7D02C 1 > $DCC_PATH/config + echo 0x03D7D03C 1 > $DCC_PATH/config + echo 0x03D7D040 1 > $DCC_PATH/config + echo 0x03D7D044 1 > $DCC_PATH/config + echo 0x03D7D048 1 > $DCC_PATH/config + echo 0x03D7D400 1 > $DCC_PATH/config + echo 0x03D7D41C 1 > $DCC_PATH/config + echo 0x03D7D420 1 > $DCC_PATH/config + echo 0x03D7D424 1 > $DCC_PATH/config + echo 0x03D7D428 1 > $DCC_PATH/config + echo 0x03D7D42C 1 > $DCC_PATH/config + echo 0x03D7DC00 1 > $DCC_PATH/config + echo 0x03D7DC04 1 > $DCC_PATH/config + echo 0x03D7DC14 1 > $DCC_PATH/config + echo 0x03D7DC20 1 > $DCC_PATH/config + echo 0x03D7DC24 1 > $DCC_PATH/config + echo 0x03D7DC30 1 > $DCC_PATH/config + echo 0x03D7DC34 1 > $DCC_PATH/config + echo 0x03D7DC40 1 > $DCC_PATH/config + echo 0x03D7DC44 1 > $DCC_PATH/config + echo 0x03D7DC4C 1 > $DCC_PATH/config + echo 0x03D7DC50 1 > $DCC_PATH/config + echo 0x03D7DC54 1 > $DCC_PATH/config + echo 0x03D7DC58 1 > $DCC_PATH/config + echo 0x03D7DC60 1 > $DCC_PATH/config + echo 0x03D7DC64 1 > $DCC_PATH/config + echo 0x03D7DC68 1 > $DCC_PATH/config + echo 0x03D7DC6C 1 > $DCC_PATH/config + echo 0x03D7DC70 1 > $DCC_PATH/config + echo 0x03D7DC74 1 > $DCC_PATH/config + echo 0x03D7DC80 1 > $DCC_PATH/config + echo 0x03D7DC84 1 > $DCC_PATH/config + echo 0x03D7DC88 1 > $DCC_PATH/config + echo 0x03D7DC8C 1 > $DCC_PATH/config + echo 0x03D7DC90 1 > $DCC_PATH/config + echo 0x03D7DCA4 1 > $DCC_PATH/config + echo 0x03D7DD40 1 > $DCC_PATH/config + echo 0x03D7DD44 1 > $DCC_PATH/config + echo 0x03D7DD48 1 > $DCC_PATH/config + echo 0x03D7DD4C 1 > $DCC_PATH/config + echo 0x03D7DD50 1 > $DCC_PATH/config + echo 0x03D7DD54 1 > $DCC_PATH/config + echo 0x03D7DD58 1 > $DCC_PATH/config + echo 0x03D7DD60 1 > $DCC_PATH/config + echo 0x03D7DD64 1 > $DCC_PATH/config + echo 0x03D7DD70 1 > $DCC_PATH/config + echo 0x03D7E000 1 > $DCC_PATH/config + echo 0x03D7E004 1 > $DCC_PATH/config + echo 0x03D7E008 1 > $DCC_PATH/config + echo 0x03D7E00C 1 > $DCC_PATH/config + echo 0x03D7E010 1 > $DCC_PATH/config + echo 0x03D7E01C 1 > $DCC_PATH/config + echo 0x03D7E020 1 > $DCC_PATH/config + echo 0x03D7E02C 1 > $DCC_PATH/config + echo 0x03D7E030 1 > $DCC_PATH/config + echo 0x03D7E03C 1 > $DCC_PATH/config + echo 0x03D7E040 1 > $DCC_PATH/config + echo 0x03D7E044 1 > $DCC_PATH/config + echo 0x03D7E048 1 > $DCC_PATH/config + echo 0x03D7E04C 1 > $DCC_PATH/config + echo 0x03D7E050 1 > $DCC_PATH/config + echo 0x03D7E054 1 > $DCC_PATH/config + echo 0x03D7E058 1 > $DCC_PATH/config + echo 0x03D7E05C 1 > $DCC_PATH/config + echo 0x03D7E060 1 > $DCC_PATH/config + echo 0x03D7E064 1 > $DCC_PATH/config + echo 0x03D7E068 1 > $DCC_PATH/config + echo 0x03D7E06C 1 > $DCC_PATH/config + echo 0x03D7E070 1 > $DCC_PATH/config + echo 0x03D7E090 1 > $DCC_PATH/config + echo 0x03D7E094 1 > $DCC_PATH/config + echo 0x03D7E098 1 > $DCC_PATH/config + echo 0x03D7E09C 1 > $DCC_PATH/config + echo 0x03D7E0A0 1 > $DCC_PATH/config + echo 0x03D7E0A4 1 > $DCC_PATH/config + echo 0x03D7E0A8 1 > $DCC_PATH/config + echo 0x03D7E0B4 1 > $DCC_PATH/config + echo 0x03D7E0B8 1 > $DCC_PATH/config + echo 0x03D7E0BC 1 > $DCC_PATH/config + echo 0x03D7E0C0 1 > $DCC_PATH/config + echo 0x03D7E200 1 > $DCC_PATH/config + echo 0x03D7E204 1 > $DCC_PATH/config + echo 0x03D7E240 1 > $DCC_PATH/config + echo 0x03D7E244 1 > $DCC_PATH/config + echo 0x03D7E248 1 > $DCC_PATH/config + echo 0x03D7E24C 1 > $DCC_PATH/config + echo 0x03D7E250 1 > $DCC_PATH/config + echo 0x03D7E254 1 > $DCC_PATH/config + echo 0x03D7E258 1 > $DCC_PATH/config + echo 0x03D7E280 1 > $DCC_PATH/config + echo 0x03D7E284 1 > $DCC_PATH/config + echo 0x03D7E288 1 > $DCC_PATH/config + echo 0x03D7E290 1 > $DCC_PATH/config + echo 0x03D7E294 1 > $DCC_PATH/config + echo 0x03D7E298 1 > $DCC_PATH/config + echo 0x03D7E29C 1 > $DCC_PATH/config + echo 0x03D7E2A0 1 > $DCC_PATH/config + echo 0x03D7E2A4 1 > $DCC_PATH/config + echo 0x03D7E2A8 1 > $DCC_PATH/config + echo 0x03D7E2AC 1 > $DCC_PATH/config + echo 0x03D7E2B0 1 > $DCC_PATH/config + echo 0x03D7E2B4 1 > $DCC_PATH/config + echo 0x03D7E2B8 1 > $DCC_PATH/config + echo 0x03D7E2BC 1 > $DCC_PATH/config + echo 0x03D7E2E0 1 > $DCC_PATH/config + echo 0x03D7E2E4 1 > $DCC_PATH/config + echo 0x03D7E300 1 > $DCC_PATH/config + echo 0x03D7E304 1 > $DCC_PATH/config + echo 0x03D7E30C 1 > $DCC_PATH/config + echo 0x03D7E310 1 > $DCC_PATH/config + echo 0x03D7E340 1 > $DCC_PATH/config + echo 0x03D7E3B0 1 > $DCC_PATH/config + echo 0x03D7E3C0 1 > $DCC_PATH/config + echo 0x03D7E3C4 1 > $DCC_PATH/config + echo 0x03D7E508 1 > $DCC_PATH/config + echo 0x03D7E50C 1 > $DCC_PATH/config + echo 0x03D7E510 1 > $DCC_PATH/config + echo 0x03D7E520 1 > $DCC_PATH/config + echo 0x03D7E524 1 > $DCC_PATH/config + echo 0x03D7E528 1 > $DCC_PATH/config + echo 0x03D7E53C 1 > $DCC_PATH/config + echo 0x03D7E540 1 > $DCC_PATH/config + echo 0x03D7E544 1 > $DCC_PATH/config + echo 0x03D7E550 1 > $DCC_PATH/config + echo 0x03D7E554 1 > $DCC_PATH/config + echo 0x03D7E574 1 > $DCC_PATH/config + echo 0x03D7E588 1 > $DCC_PATH/config + echo 0x03D7E58C 1 > $DCC_PATH/config + echo 0x03D7E598 1 > $DCC_PATH/config + echo 0x03D7E59C 1 > $DCC_PATH/config + echo 0x03D7E5A0 1 > $DCC_PATH/config + echo 0x03D7E5A4 1 > $DCC_PATH/config + echo 0x03D7E5A8 1 > $DCC_PATH/config + echo 0x03D7E5AC 1 > $DCC_PATH/config + echo 0x03D7E5C0 1 > $DCC_PATH/config + echo 0x03D7E5C4 1 > $DCC_PATH/config + echo 0x03D7E5CC 1 > $DCC_PATH/config + echo 0x03D7E5D0 1 > $DCC_PATH/config + echo 0x03D7E5D4 1 > $DCC_PATH/config + echo 0x03D7E5D8 1 > $DCC_PATH/config + echo 0x03D7E5DC 1 > $DCC_PATH/config + echo 0x03D7E5F0 1 > $DCC_PATH/config + echo 0x03D7E600 1 > $DCC_PATH/config + echo 0x03D7E604 1 > $DCC_PATH/config + echo 0x03D7E610 1 > $DCC_PATH/config + echo 0x03D7E614 1 > $DCC_PATH/config + echo 0x03D7E618 1 > $DCC_PATH/config + echo 0x03D7E640 1 > $DCC_PATH/config + echo 0x03D7E644 1 > $DCC_PATH/config + echo 0x03D7E648 1 > $DCC_PATH/config + echo 0x03D7E64C 1 > $DCC_PATH/config + echo 0x03D7E650 1 > $DCC_PATH/config + echo 0x03D7E654 1 > $DCC_PATH/config + echo 0x03D7E658 1 > $DCC_PATH/config + echo 0x03D7E65C 1 > $DCC_PATH/config + echo 0x03D7E660 1 > $DCC_PATH/config + echo 0x03D7E664 1 > $DCC_PATH/config + echo 0x03D7E668 1 > $DCC_PATH/config + echo 0x03D7E66C 1 > $DCC_PATH/config + echo 0x03D7E670 1 > $DCC_PATH/config + echo 0x03D7E674 1 > $DCC_PATH/config + echo 0x03D7E678 1 > $DCC_PATH/config + echo 0x03D7E714 1 > $DCC_PATH/config + echo 0x03D7E718 1 > $DCC_PATH/config + echo 0x03D7E71C 1 > $DCC_PATH/config + echo 0x03D7E720 1 > $DCC_PATH/config + echo 0x03D7E724 1 > $DCC_PATH/config + echo 0x03D7E728 1 > $DCC_PATH/config + echo 0x03D7E72C 1 > $DCC_PATH/config + echo 0x03D7E730 1 > $DCC_PATH/config + echo 0x03D7E734 1 > $DCC_PATH/config + echo 0x03D7E738 1 > $DCC_PATH/config + echo 0x03D7E73C 1 > $DCC_PATH/config + echo 0x03D7E740 1 > $DCC_PATH/config + echo 0x03D7E744 1 > $DCC_PATH/config + echo 0x03D7E748 1 > $DCC_PATH/config + echo 0x03D7E74C 1 > $DCC_PATH/config + echo 0x03D7E750 1 > $DCC_PATH/config + echo 0x03D7E7C0 1 > $DCC_PATH/config + echo 0x03D7E7C4 1 > $DCC_PATH/config + echo 0x03D7E7E0 1 > $DCC_PATH/config + echo 0x03D7E7E4 1 > $DCC_PATH/config + echo 0x03D7E7E8 1 > $DCC_PATH/config + echo 0x03D7E7F0 1 > $DCC_PATH/config + echo 0x03D7E800 1 > $DCC_PATH/config + echo 0x03D7E804 1 > $DCC_PATH/config + echo 0x03D7E808 1 > $DCC_PATH/config + echo 0x03D7E80C 1 > $DCC_PATH/config + echo 0x03D80000 1 > $DCC_PATH/config + echo 0x03D80004 1 > $DCC_PATH/config + echo 0x03D80008 1 > $DCC_PATH/config + echo 0x03D8000C 1 > $DCC_PATH/config + echo 0x03D80010 1 > $DCC_PATH/config + echo 0x03D80014 1 > $DCC_PATH/config + echo 0x03D80018 1 > $DCC_PATH/config + echo 0x03D8001C 1 > $DCC_PATH/config + echo 0x03D80020 1 > $DCC_PATH/config + echo 0x03D80024 1 > $DCC_PATH/config + echo 0x03D80028 1 > $DCC_PATH/config + echo 0x03D8002C 1 > $DCC_PATH/config + echo 0x03D80030 1 > $DCC_PATH/config + echo 0x03D80034 1 > $DCC_PATH/config + echo 0x03D80038 1 > $DCC_PATH/config + echo 0x03D8003C 1 > $DCC_PATH/config + echo 0x03D80040 1 > $DCC_PATH/config + echo 0x03D80044 1 > $DCC_PATH/config + echo 0x03D80048 1 > $DCC_PATH/config + echo 0x03D8004C 1 > $DCC_PATH/config + echo 0x03D80060 1 > $DCC_PATH/config + echo 0x03D80064 1 > $DCC_PATH/config + echo 0x03D80068 1 > $DCC_PATH/config + echo 0x03D80080 1 > $DCC_PATH/config + echo 0x03D80084 1 > $DCC_PATH/config + echo 0x03D80090 1 > $DCC_PATH/config + echo 0x03D80094 1 > $DCC_PATH/config + echo 0x03D800A8 1 > $DCC_PATH/config + echo 0x03D800AC 1 > $DCC_PATH/config + echo 0x03D800B0 1 > $DCC_PATH/config + echo 0x03D800C0 1 > $DCC_PATH/config + echo 0x03D800C4 1 > $DCC_PATH/config + echo 0x03D800D0 1 > $DCC_PATH/config + echo 0x03D800D4 1 > $DCC_PATH/config + echo 0x03D800D8 1 > $DCC_PATH/config + echo 0x03D81000 1 > $DCC_PATH/config + echo 0x03D81010 1 > $DCC_PATH/config + echo 0x03D81020 1 > $DCC_PATH/config + echo 0x03D81024 1 > $DCC_PATH/config + echo 0x03D81028 1 > $DCC_PATH/config + echo 0x03D8102C 1 > $DCC_PATH/config + echo 0x03D81030 1 > $DCC_PATH/config + echo 0x03D81034 1 > $DCC_PATH/config + echo 0x03D81038 1 > $DCC_PATH/config + echo 0x03D8103C 1 > $DCC_PATH/config + echo 0x03D81040 1 > $DCC_PATH/config + echo 0x03D81044 1 > $DCC_PATH/config + echo 0x03D81048 1 > $DCC_PATH/config + echo 0x03D8104C 1 > $DCC_PATH/config + echo 0x03D69FF0 1 > $DCC_PATH/config + echo 0x03D69FF4 1 > $DCC_PATH/config + echo 0x03D6A000 1 > $DCC_PATH/config + echo 0x03D6A004 1 > $DCC_PATH/config + echo 0x03D6A008 1 > $DCC_PATH/config + echo 0x03D6A00C 1 > $DCC_PATH/config + echo 0x03D6A014 1 > $DCC_PATH/config + echo 0x03D6A018 1 > $DCC_PATH/config + echo 0x03D6A01C 1 > $DCC_PATH/config + echo 0x03D6A020 1 > $DCC_PATH/config + echo 0x03D6A058 1 > $DCC_PATH/config + echo 0x03D6A078 1 > $DCC_PATH/config + echo 0x03D6A098 1 > $DCC_PATH/config + echo 0x03D6A0B8 1 > $DCC_PATH/config + echo 0x03D6A0D8 1 > $DCC_PATH/config + echo 0x03D6A0F8 1 > $DCC_PATH/config + echo 0x03D6A118 1 > $DCC_PATH/config + echo 0x03D6A138 1 > $DCC_PATH/config + echo 0x03D6A158 1 > $DCC_PATH/config + echo 0x03D6A20C 1 > $DCC_PATH/config + echo 0x03D6A210 1 > $DCC_PATH/config + echo 0x03D0F000 1 > $DCC_PATH/config + echo 0x03D0F004 1 > $DCC_PATH/config + echo 0x03D0F008 1 > $DCC_PATH/config + echo 0x03D0F00C 1 > $DCC_PATH/config + echo 0x03D0F010 1 > $DCC_PATH/config + echo 0x03D0F014 1 > $DCC_PATH/config + echo 0x03D0F018 1 > $DCC_PATH/config + echo 0x03D0F01C 1 > $DCC_PATH/config + echo 0x03D0F020 1 > $DCC_PATH/config + echo 0x03D0F024 1 > $DCC_PATH/config + echo 0x03D0F028 1 > $DCC_PATH/config + echo 0x03D0F02C 1 > $DCC_PATH/config + echo 0x03D0F100 1 > $DCC_PATH/config + echo 0x03D0F104 1 > $DCC_PATH/config + echo 0x03D0F108 1 > $DCC_PATH/config + echo 0x03D0F114 1 > $DCC_PATH/config + echo 0x03D0F118 1 > $DCC_PATH/config + echo 0x03D0F11C 1 > $DCC_PATH/config + echo 0x03D0F124 1 > $DCC_PATH/config + echo 0x03D0F128 1 > $DCC_PATH/config + echo 0x03D0F300 1 > $DCC_PATH/config + echo 0x03D0F304 1 > $DCC_PATH/config + echo 0x03D0F30C 1 > $DCC_PATH/config + echo 0x03D0F330 1 > $DCC_PATH/config + echo 0x03D0F334 1 > $DCC_PATH/config + echo 0x03D0F338 1 > $DCC_PATH/config + echo 0x03D0F33C 1 > $DCC_PATH/config + echo 0x03D0F340 1 > $DCC_PATH/config + echo 0x03D0F344 1 > $DCC_PATH/config + echo 0x03D9E000 1 > $DCC_PATH/config + echo 0x03D9E040 1 > $DCC_PATH/config + echo 0x03D9E044 1 > $DCC_PATH/config + echo 0x03D9E048 1 > $DCC_PATH/config + echo 0x03D9E04C 1 > $DCC_PATH/config + echo 0x03D9E050 1 > $DCC_PATH/config + echo 0x03D9E080 1 > $DCC_PATH/config + echo 0x03D9E084 1 > $DCC_PATH/config + echo 0x03D9E088 1 > $DCC_PATH/config + echo 0x03D9E08C 1 > $DCC_PATH/config + echo 0x03D9E090 1 > $DCC_PATH/config + echo 0x03D9E0A0 1 > $DCC_PATH/config + echo 0x03D9E0A4 1 > $DCC_PATH/config + echo 0x03D9E0A8 1 > $DCC_PATH/config + echo 0x03D9E0AC 1 > $DCC_PATH/config + echo 0x03D9E0C0 1 > $DCC_PATH/config + echo 0x03D9E0C4 1 > $DCC_PATH/config + echo 0x03D9E0C8 1 > $DCC_PATH/config + echo 0x03D9E0CC 1 > $DCC_PATH/config + echo 0x03D9E0D0 1 > $DCC_PATH/config + echo 0x03D9E0D4 1 > $DCC_PATH/config + echo 0x03D9E0D8 1 > $DCC_PATH/config + echo 0x03D9E0DC 1 > $DCC_PATH/config + echo 0x03D9E0E0 1 > $DCC_PATH/config + echo 0x03D9E0E4 1 > $DCC_PATH/config + echo 0x03D9E0E8 1 > $DCC_PATH/config + echo 0x03D9E0EC 1 > $DCC_PATH/config + echo 0x03D9E0F0 1 > $DCC_PATH/config + echo 0x03D9E0F4 1 > $DCC_PATH/config + echo 0x03D9E0F8 1 > $DCC_PATH/config + echo 0x03D9E0FC 1 > $DCC_PATH/config + echo 0x03D9E100 1 > $DCC_PATH/config + echo 0x03D9E104 1 > $DCC_PATH/config + echo 0x03D9E108 1 > $DCC_PATH/config + echo 0x03D9E10C 1 > $DCC_PATH/config + echo 0x03D9E110 1 > $DCC_PATH/config + echo 0x03D9E114 1 > $DCC_PATH/config + echo 0x03D9E118 1 > $DCC_PATH/config + echo 0x03D9E11C 1 > $DCC_PATH/config + echo 0x03D9E120 1 > $DCC_PATH/config + echo 0x03D9E124 1 > $DCC_PATH/config + echo 0x03D9E128 1 > $DCC_PATH/config + echo 0x03D9E12C 1 > $DCC_PATH/config + echo 0x03D9E130 1 > $DCC_PATH/config + echo 0x03D9E134 1 > $DCC_PATH/config + echo 0x03D9E138 1 > $DCC_PATH/config + echo 0x03D9E13C 1 > $DCC_PATH/config + echo 0x03D9E140 1 > $DCC_PATH/config + echo 0x03D9E144 1 > $DCC_PATH/config + echo 0x03D9E148 1 > $DCC_PATH/config + echo 0x03D9E14C 1 > $DCC_PATH/config + echo 0x03D9E150 1 > $DCC_PATH/config + echo 0x03D9E154 1 > $DCC_PATH/config + echo 0x03D9E158 1 > $DCC_PATH/config + echo 0x03D9E15C 1 > $DCC_PATH/config + echo 0x03D9E200 1 > $DCC_PATH/config + echo 0x03D9E204 1 > $DCC_PATH/config + echo 0x03D9F000 1 > $DCC_PATH/config + echo 0x03D9F004 1 > $DCC_PATH/config + echo 0x03D50D40 1 > $DCC_PATH/config + echo 0x03D50D58 1 > $DCC_PATH/config + echo 0x03D50D70 1 > $DCC_PATH/config + echo 0x03D50D88 1 > $DCC_PATH/config + echo 0x03D50DA0 1 > $DCC_PATH/config + echo 0x03D50DB8 1 > $DCC_PATH/config + echo 0x03D50DD0 1 > $DCC_PATH/config + echo 0x03D50DE8 1 > $DCC_PATH/config + echo 0x03D50FE0 1 > $DCC_PATH/config + echo 0x03D50FF8 1 > $DCC_PATH/config + echo 0x03D51010 1 > $DCC_PATH/config + echo 0x03D51028 1 > $DCC_PATH/config + echo 0x03D51040 1 > $DCC_PATH/config + echo 0x03D51058 1 > $DCC_PATH/config + echo 0x03D51070 1 > $DCC_PATH/config + echo 0x03D51088 1 > $DCC_PATH/config + echo 0x03D51280 1 > $DCC_PATH/config + echo 0x03D51298 1 > $DCC_PATH/config + echo 0x03D512B0 1 > $DCC_PATH/config + echo 0x03D512C8 1 > $DCC_PATH/config + echo 0x03D512E0 1 > $DCC_PATH/config + echo 0x03D512F8 1 > $DCC_PATH/config + echo 0x03D51310 1 > $DCC_PATH/config + echo 0x03D51328 1 > $DCC_PATH/config + echo 0x03D51520 1 > $DCC_PATH/config + echo 0x03D51538 1 > $DCC_PATH/config + echo 0x03D51550 1 > $DCC_PATH/config + echo 0x03D51568 1 > $DCC_PATH/config + echo 0x03D51580 1 > $DCC_PATH/config + echo 0x03D51598 1 > $DCC_PATH/config + echo 0x03D515B0 1 > $DCC_PATH/config + echo 0x03D515C8 1 > $DCC_PATH/config + echo 0x03D517C0 1 > $DCC_PATH/config + echo 0x03D517D8 1 > $DCC_PATH/config + echo 0x03D517F0 1 > $DCC_PATH/config + echo 0x03D51808 1 > $DCC_PATH/config + echo 0x03D51820 1 > $DCC_PATH/config + echo 0x03D51838 1 > $DCC_PATH/config + echo 0x03D51850 1 > $DCC_PATH/config + echo 0x03D51868 1 > $DCC_PATH/config + echo 0x03D51A60 1 > $DCC_PATH/config + echo 0x03D51A78 1 > $DCC_PATH/config + echo 0x03D51A90 1 > $DCC_PATH/config + echo 0x03D51AA8 1 > $DCC_PATH/config + echo 0x03D51AC0 1 > $DCC_PATH/config + echo 0x03D51AD8 1 > $DCC_PATH/config + echo 0x03D51AF0 1 > $DCC_PATH/config + echo 0x03D51B08 1 > $DCC_PATH/config + echo 0x03D51D00 1 > $DCC_PATH/config + echo 0x03D51D18 1 > $DCC_PATH/config + echo 0x03D51D30 1 > $DCC_PATH/config + echo 0x03D51D48 1 > $DCC_PATH/config + echo 0x03D51D60 1 > $DCC_PATH/config + echo 0x03D51D78 1 > $DCC_PATH/config + echo 0x03D51D90 1 > $DCC_PATH/config + echo 0x03D51DA8 1 > $DCC_PATH/config + echo 0x03D51FA0 1 > $DCC_PATH/config + echo 0x03D51FB8 1 > $DCC_PATH/config + echo 0x03D51FD0 1 > $DCC_PATH/config + echo 0x03D51FE8 1 > $DCC_PATH/config + echo 0x03D52000 1 > $DCC_PATH/config + echo 0x03D52018 1 > $DCC_PATH/config + echo 0x03D52030 1 > $DCC_PATH/config + echo 0x03D52048 1 > $DCC_PATH/config + echo 0x03D52240 1 > $DCC_PATH/config + echo 0x03D52258 1 > $DCC_PATH/config + echo 0x03D52270 1 > $DCC_PATH/config + echo 0x03D52288 1 > $DCC_PATH/config + echo 0x03D522A0 1 > $DCC_PATH/config + echo 0x03D522B8 1 > $DCC_PATH/config + echo 0x03D522D0 1 > $DCC_PATH/config + echo 0x03D522E8 1 > $DCC_PATH/config + echo 0x03D524E0 1 > $DCC_PATH/config + echo 0x03D524F8 1 > $DCC_PATH/config + echo 0x03D52510 1 > $DCC_PATH/config + echo 0x03D52528 1 > $DCC_PATH/config + echo 0x03D52540 1 > $DCC_PATH/config + echo 0x03D52558 1 > $DCC_PATH/config + echo 0x03D52570 1 > $DCC_PATH/config + echo 0x03D52588 1 > $DCC_PATH/config +} + +config_clk_gdsc() +{ + echo 0x0ADF0004 1 > $DCC_PATH/config + echo 0x0ADF1004 1 > $DCC_PATH/config + echo 0x0ADF2004 1 > $DCC_PATH/config + echo 0x0ADF2054 1 > $DCC_PATH/config + echo 0x0ADF0080 1 > $DCC_PATH/config + echo 0x0ADF00E4 1 > $DCC_PATH/config + echo 0x0ADF3058 1 > $DCC_PATH/config + echo 0x0ADF30A8 1 > $DCC_PATH/config + echo 0x0ADF30F8 1 > $DCC_PATH/config + echo 0x0ADF32BC 1 > $DCC_PATH/config + echo 0x0AF09000 1 > $DCC_PATH/config + echo 0x0AF0B000 1 > $DCC_PATH/config + echo 0x015214C 1 > $DCC_PATH/config + echo 0x0178910 1 > $DCC_PATH/config + echo 0x016B004 1 > $DCC_PATH/config + echo 0x016C000 1 > $DCC_PATH/config + echo 0x018D004 1 > $DCC_PATH/config + echo 0x018E000 1 > $DCC_PATH/config + echo 0x0177004 1 > $DCC_PATH/config + echo 0x0139004 1 > $DCC_PATH/config + echo 0x0150018 1 > $DCC_PATH/config + echo 0x03D99168 1 > $DCC_PATH/config + echo 0x03D99108 1 > $DCC_PATH/config + echo 0x03D99504 1 > $DCC_PATH/config + echo 0x03D99058 1 > $DCC_PATH/config + echo 0x03D99358 1 > $DCC_PATH/config + echo 0x03D9958C 1 > $DCC_PATH/config + echo 0x03D9905C 1 > $DCC_PATH/config + echo 0xAAF804C 1 > $DCC_PATH/config + echo 0xAAF8078 1 > $DCC_PATH/config + echo 0xAAF80A4 1 > $DCC_PATH/config + echo 0xAAF80CC 1 > $DCC_PATH/config + echo 0x0126004 1 > $DCC_PATH/config + echo 0x0126028 1 > $DCC_PATH/config + echo 0x0163020 1 > $DCC_PATH/config + echo 0x0127004 1 > $DCC_PATH/config + echo 0x0127018 1 > $DCC_PATH/config + echo 0x0171004 1 > $DCC_PATH/config + echo 0x0132004 1 > $DCC_PATH/config + echo 0x0132030 1 > $DCC_PATH/config + echo 0x3D99004 1 > $DCC_PATH/config + echo 0x3D9900C 1 > $DCC_PATH/config + echo 0xAF0E054 1 > $DCC_PATH/config + echo 0xADF32EC 1 > $DCC_PATH/config + echo 0xAAF80F4 1 > $DCC_PATH/config + echo 0xAAF8150 1 > $DCC_PATH/config + echo 0xAAF8124 1 > $DCC_PATH/config +} + +config_vidc_eva() +{ + echo 0xABE0028 1 > $DCC_PATH/config + echo 0xAAE0028 1 > $DCC_PATH/config +} + +config_dcc_timer() +{ + echo 0x17421000 2 > $DCC_PATH/config +} + +config_pcie_cesta() +{ + echo 0x1D00408 1 > $DCC_PATH/config + echo 0x1D08088 1 > $DCC_PATH/config + echo 0x1D0B088 1 > $DCC_PATH/config + echo 0x1D04000 3 > $DCC_PATH/config + echo 0x1D04080 3 > $DCC_PATH/config + echo 0x1D04100 3 > $DCC_PATH/config + echo 0x1D04180 3 > $DCC_PATH/config + echo 0x1D04200 3 > $DCC_PATH/config + echo 0x1D04280 3 > $DCC_PATH/config + echo 0x1D04300 3 > $DCC_PATH/config + echo 0x1D04380 3 > $DCC_PATH/config + echo 0x1D04014 1 > $DCC_PATH/config + echo 0x1D04094 1 > $DCC_PATH/config + echo 0x1D04114 1 > $DCC_PATH/config + echo 0x1D04194 1 > $DCC_PATH/config + echo 0x1D04214 1 > $DCC_PATH/config + echo 0x1D04294 1 > $DCC_PATH/config + echo 0x1D04314 1 > $DCC_PATH/config + echo 0x1D04394 1 > $DCC_PATH/config + echo 0x1D04038 1 > $DCC_PATH/config + echo 0x1D040B8 1 > $DCC_PATH/config + echo 0x1D04138 1 > $DCC_PATH/config + echo 0x1D041B8 1 > $DCC_PATH/config + echo 0x1D04238 1 > $DCC_PATH/config + echo 0x1D042B8 1 > $DCC_PATH/config + echo 0x1D04338 1 > $DCC_PATH/config + echo 0x1D043B8 1 > $DCC_PATH/config + echo 0x1D04920 2 > $DCC_PATH/config + echo 0x1D05004 1 > $DCC_PATH/config + echo 0x1D05204 1 > $DCC_PATH/config + echo 0x1D0500C 1 > $DCC_PATH/config + echo 0x1D0520C 1 > $DCC_PATH/config + echo 0x1D0540C 1 > $DCC_PATH/config + echo 0x1D051A0 1 > $DCC_PATH/config + echo 0x1D053A0 1 > $DCC_PATH/config + echo 0x1D055A0 1 > $DCC_PATH/config +} + +enable_dcc() +{ + #TODO: Add DCC configuration + DCC_PATH="/sys/bus/platform/devices/100ff000.dcc_v2" + soc_version=`cat /sys/devices/soc0/revision` + soc_version=${soc_version/./} + + if [ ! -d $DCC_PATH ]; then + echo "DCC does not exist on this build." + return + fi + + echo 0 > $DCC_PATH/enable + echo 1 > $DCC_PATH/config_reset + echo 6 > $DCC_PATH/curr_list + echo cap > $DCC_PATH/func_type + echo sram > $DCC_PATH/data_sink + echo 1 > $DCC_PATH/ap_ns_qad_override_en + config_dcc_timer + config_qdsp_lpm + config_dcc_core + + gemnoc_dump + gemnoc_dump_full_cxt + config_dcc_lpm_pcu + config_dcc_lpm + config_dcc_ddr + config_turing + config_dcc_timer + config_pcie_cesta + + echo 4 > $DCC_PATH/curr_list + echo cap > $DCC_PATH/func_type + echo sram > $DCC_PATH/data_sink + echo 1 > $DCC_PATH/ap_ns_qad_override_en + config_dcc_timer + dc_noc_dump + config_lpass + mmss_noc_dump + system_noc_dump + aggre_noc_dump + config_noc_dump + apss_noc_dump + + config_dcc_gic + config_dcc_rpmh + config_dcc_apss_rscc + config_dcc_misc + config_dcc_epss + config_dcc_gict + config_dcc_anoc_pcie + config_dcc_ubwcp + config_dcc_rng + config_clk_gdsc + config_gpu + config_dcc_timer + config_vidc_eva + enable_dcc_pll_status + + echo 2 > $DCC_PATH/curr_list + echo cap > $DCC_PATH/func_type + echo sram > $DCC_PATH/data_sink + echo 1 > $DCC_PATH/ap_ns_qad_override_en + source dcc_extension.sh + extension + + echo 1 > $DCC_PATH/enable +} + +qdss_trace_configure() +{ + echo "configure trace sink settings" + echo 1 > /sys/bus/coresight/reset_source_sink + echo mem > /sys/bus/coresight/devices/coresight-tmc-etr/out_mode + echo 1 > /sys/bus/coresight/devices/coresight-tmc-etr/enable_sink + echo 0x8000000 > /sys/bus/coresight/devices/coresight-tmc-etr/buffer_size + ### echo sg > /sys/bus/coresight/devices/coresight-tmc-etr/mem_type +} + +stm_traces_configure() +{ + echo ++++++++++++++++++++++++++++++++++++++ + echo stm_traces_configure + echo ++++++++++++++++++++++++++++++++++++++ + echo 0 > /sys/bus/coresight/devices/coresight-stm/hwevent_enable +} + +stm_traces_start() +{ + echo ++++++++++++++++++++++++++++++++++++++ + echo stm_traces_start + echo ++++++++++++++++++++++++++++++++++++++ + echo 1 > /sys/bus/coresight/devices/coresight-stm/enable_source +} + +ipm_traces_configure() +{ + echo ++++++++++++++++++++++++++++++++++++++ + echo ipm_traces_configure + echo ++++++++++++++++++++++++++++++++++++++ + + echo 1 > /sys/bus/coresight/devices/coresight-tpdm-apss2/reset + echo 0x0 0x3f 0x1 > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_edge_ctrl_mask + echo 0x0 0x3f 0 > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_edge_ctrl + # gic HW events + echo 0xfb 0xfc 0x1 > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_edge_ctrl_mask + echo 0xfb 0xfc 0 > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_edge_ctrl + echo 0 0x00000000 > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_msr + echo 1 0x00000000 > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_msr + echo 2 0x00000000 > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_msr + echo 3 0x00000000 > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_msr + echo 4 0x00000000 > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_msr + echo 5 0x00000000 > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_msr + echo 6 0x00000000 > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_msr + echo 7 0x00000000 > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_msr + echo 31 0x00000000 > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_msr + echo 1 > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_patt_ts + echo 1 > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_patt_type + echo 0 > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_trig_ts + echo 0 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_patt_mask + echo 1 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_patt_mask + echo 2 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_patt_mask + echo 3 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_patt_mask + echo 4 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_patt_mask + echo 5 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_patt_mask + echo 6 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_patt_mask + echo 7 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-apss2/dsb_patt_mask + + echo 1 > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/reset + echo 0x0 0x2 0x1 > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_edge_ctrl_mask + echo 0x0 0x2 0 > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_edge_ctrl + echo 0x8a 0x8b 0x1 > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_edge_ctrl_mask + echo 0x8a 0x8b 0 > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_edge_ctrl + echo 0xb8 0xca 0x1 > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_edge_ctrl_mask + echo 0xb8 0xca 0 > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_edge_ctrl + echo 0xf2 0xf5 0x1 > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_edge_ctrl_mask + echo 0xf2 0xf5 0 > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_edge_ctrl + echo 30 0x00666600 > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_msr + echo 1 > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_patt_ts + echo 1 > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_patt_type + echo 0 > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_trig_ts + echo 0 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_patt_mask + echo 1 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_patt_mask + echo 2 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_patt_mask + echo 3 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_patt_mask + echo 4 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_patt_mask + echo 5 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_patt_mask + echo 6 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_patt_mask + echo 7 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/dsb_patt_mask + + echo 1 > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/reset + echo 0x80 0x81 0x1 > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_edge_ctrl_mask + echo 0x80 0x81 0 > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_edge_ctrl + # echo 0 0x00000000 > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_msr + # echo 1 0x00000000 > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_msr + # echo 2 0x00000000 > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_msr + # echo 3 0x00000000 > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_msr + # echo 4 0x00000000 > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_msr + # echo 5 0x00000000 > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_msr + # echo 6 0x00000000 > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_msr + # echo 7 0x00000000 > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_msr + echo 16 0x00000000 > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_msr + echo 1 > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_patt_ts + echo 1 > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_patt_type + echo 0 > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_trig_ts + echo 0 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_patt_mask + echo 1 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_patt_mask + echo 2 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_patt_mask + echo 3 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_patt_mask + echo 4 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_patt_mask + echo 5 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_patt_mask + echo 6 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_patt_mask + echo 7 0xFFFFFFFF > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/dsb_patt_mask +} + +ipm_traces_start() +{ + echo ++++++++++++++++++++++++++++++++++++++ + echo ipm_traces_start + echo ++++++++++++++++++++++++++++++++++++++ + # "Start ipm Trace collection " + echo 2 > /sys/bus/coresight/devices/coresight-tpdm-apss2/enable_datasets + echo 1 > /sys/bus/coresight/devices/coresight-tpdm-apss2/enable_source + echo 2 > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/enable_datasets + echo 1 > /sys/bus/coresight/devices/coresight-tpdm-llm-ext/enable_source + echo 2 > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/enable_datasets + echo 1 > /sys/bus/coresight/devices/coresight-tpdm-apss-apc2/enable_source +} +actpm_traces_configure() +{ + echo ++++++++++++++++++++++++++++++++++++++ + echo actpm_traces_configure + echo ++++++++++++++++++++++++++++++++++++++ + + echo 1 > /sys/bus/coresight/devices/coresight-tpdm-actpm/reset + echo 0 0x420 > /sys/bus/coresight/devices/coresight-tpdm-actpm/cmb_msr + echo 0 > /sys/bus/coresight/devices/coresight-tpdm-actpm/mcmb_lanes_select + echo 1 0 > /sys/bus/coresight/devices/coresight-tpdm-actpm/cmb_mode + #echo 1 > /sys/bus/coresight/devices/coresight-tpda-actpm/cmbchan_mode + echo 1 > /sys/bus/coresight/devices/coresight-tpdm-actpm/cmb_ts_all + echo 1 > /sys/bus/coresight/devices/coresight-tpdm-actpm/cmb_patt_ts + echo 0 0x20000000 > /sys/bus/coresight/devices/coresight-tpdm-actpm/cmb_patt_mask + echo 0 0x20000000 > /sys/bus/coresight/devices/coresight-tpdm-actpm/cmb_patt_val +} + +actpm_traces_start() +{ + echo ++++++++++++++++++++++++++++++++++++++ + echo actpm_traces_start + echo ++++++++++++++++++++++++++++++++++++++ + # "Start actpm Trace collection " + echo 0x4 > /sys/bus/coresight/devices/coresight-tpdm-actpm/enable_datasets + echo 1 > /sys/bus/coresight/devices/coresight-tpdm-actpm/enable_source +} + +ftrace_start() +{ + echo ++++++++++++++++++++++++++++++++++++++ + echo ftrace_start + echo ++++++++++++++++++++++++++++++++++++++ + + # bail out if ftrace events aren't present + if [ ! -d /sys/kernel/tracing/events ] + then + return + fi + + echo coresight-stm > /sys/class/stm_source/ftrace/stm_source_link + echo 1 > /sys/kernel/tracing/tracing_on +} + +enable_cpuss_hw_events() +{ + # bail out if its perf config + if [ "$debug_build" = false ] + then + return + fi + + actpm_traces_configure + ipm_traces_configure + #stm_traces_configure + qdss_trace_configure + + ipm_traces_start + #stm_traces_start + #ftrace_start + actpm_traces_start +} + +adjust_permission() +{ + #add permission for block_size, mem_type, mem_size nodes to collect diag over QDSS by ODL + #application by "oem_2902" group + chown -h root.oem_2902 /sys/devices/platform/soc/10048000.tmc/coresight-tmc-etr/block_size + chmod 660 /sys/devices/platform/soc/10048000.tmc/coresight-tmc-etr/block_size + chown -h root.oem_2902 /sys/devices/platform/soc/10048000.tmc/coresight-tmc-etr/buffer_size + chmod 660 /sys/devices/platform/soc/10048000.tmc/coresight-tmc-etr/buffer_size + chmod 660 /sys/devices/platform/soc/10048000.tmc/coresight-tmc-etr/out_mode + chown -h root.oem_2902 /sys/devices/platform/soc/1004f000.tmc/coresight-tmc-etr1/block_size + chmod 660 /sys/devices/platform/soc/1004f000.tmc/coresight-tmc-etr1/block_size + chown -h root.oem_2902 /sys/devices/platform/soc/1004f000.tmc/coresight-tmc-etr1/buffer_size + chmod 660 /sys/devices/platform/soc/1004f000.tmc/coresight-tmc-etr1/buffer_size + chmod 660 /sys/devices/platform/soc/1004f000.tmc/coresight-tmc-etr1/out_mode + chmod 660 /sys/devices/platform/soc/1004f000.tmc/coresight-tmc-etr1/enable_sink + chmod 660 /sys/devices/platform/soc/soc:modem_diag/coresight-modem-diag/enable_source + chown -h root.oem_2902 /sys/bus/coresight/reset_source_sink + chmod 660 /sys/bus/coresight/reset_source_sink +} + +enable_schedstats() +{ + # bail out if its perf config + if [ "$debug_build" = false ] + then + return + fi + + if [ -f /proc/sys/kernel/sched_schedstats ] + then + echo 1 > /proc/sys/kernel/sched_schedstats + fi +} + +enable_cpuss_register() +{ + echo 1 > /sys/bus/platform/devices/soc:mem_dump/register_reset + + echo 0x17000000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17000008 0x48 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17000054 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x170000f0 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17000100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17008000 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17100000 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17100020 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17100030 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17100084 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17100104 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17100184 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17100204 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17100284 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17100304 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17100384 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17100420 0x3a0 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17100c08 0xe8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17100d04 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17100e08 0xe8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106110 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106118 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106120 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106128 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106130 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106138 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106140 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106148 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106150 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106158 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106160 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106168 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106170 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106178 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106180 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106188 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106190 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106198 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171061a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171061a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171061b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171061b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171061c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171061c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171061d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171061d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171061e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171061e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171061f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171061f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106200 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106208 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106210 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106218 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106220 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106228 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106230 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106238 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106240 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106248 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106250 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106258 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106260 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106268 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106270 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106278 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106280 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106288 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106290 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106298 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171062a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171062a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171062b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171062b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171062c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171062c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171062d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171062d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171062e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171062e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171062f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171062f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106300 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106308 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106310 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106318 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106320 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106328 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106330 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106338 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106340 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106348 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106350 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106358 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106360 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106368 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106370 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106378 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106380 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106388 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106390 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106398 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171063a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171063a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171063b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171063b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171063c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171063c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171063d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171063d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171063e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171063e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171063f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171063f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106400 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106408 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106410 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106418 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106420 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106428 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106430 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106438 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106440 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106448 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106450 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106458 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106460 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106468 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106470 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106478 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106480 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106488 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106490 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106498 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171064a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171064a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171064b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171064b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171064c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171064c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171064d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171064d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171064e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171064e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171064f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171064f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106500 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106508 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106510 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106518 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106520 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106528 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106530 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106538 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106540 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106548 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106550 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106558 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106560 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106568 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106570 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106578 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106580 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106588 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106590 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106598 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171065a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171065a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171065b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171065b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171065c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171065c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171065d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171065d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171065e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171065e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171065f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171065f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106600 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106608 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106610 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106618 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106620 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106628 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106630 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106638 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106640 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106648 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106650 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106658 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106660 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106668 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106670 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106678 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106680 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106688 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106690 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106698 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171066a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171066a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171066b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171066b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171066c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171066c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171066d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171066d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171066e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171066e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171066f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171066f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106700 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106708 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106710 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106718 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106720 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106728 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106730 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106738 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106740 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106748 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106750 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106758 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106760 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106768 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106770 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106778 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106780 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106788 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106790 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106798 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171067a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171067a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171067b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171067b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171067c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171067c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171067d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171067d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171067e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171067e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171067f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171067f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106800 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106808 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106810 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106818 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106820 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106828 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106830 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106838 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106840 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106848 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106850 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106858 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106860 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106868 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106870 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106878 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106880 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106888 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106890 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106898 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171068a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171068a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171068b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171068b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171068c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171068c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171068d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171068d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171068e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171068e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171068f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171068f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106900 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106908 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106910 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106918 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106920 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106928 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106930 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106938 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106940 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106948 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106950 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106958 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106960 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106968 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106970 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106978 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106980 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106988 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106990 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106998 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171069a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171069a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171069b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171069b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171069c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171069c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171069d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171069d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171069e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171069e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171069f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171069f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106a98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106aa0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106aa8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ab0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ab8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ac0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ac8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ad0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ad8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ae0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ae8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106af0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106af8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106b98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ba0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ba8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106bb0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106bb8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106bc0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106bc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106bd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106bd8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106be0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106be8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106bf0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106bf8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106c98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ca0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ca8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106cb0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106cb8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106cc0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106cc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106cd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106cd8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ce0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ce8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106cf0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106cf8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106d98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106da0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106da8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106db0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106db8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106dc0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106dc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106dd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106dd8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106de0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106de8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106df0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106df8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106e98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ea0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ea8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106eb0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106eb8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ec0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ec8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ed0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ed8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ee0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ee8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ef0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ef8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106f98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106fa0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106fa8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106fb0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106fb8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106fc0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106fc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106fd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106fd8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106fe0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106fe8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ff0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17106ff8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107020 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107028 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107030 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107038 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107040 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107048 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107050 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107058 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107060 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107068 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107080 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107088 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107090 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107098 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171070a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171070a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171070b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171070b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171070c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171070c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171070d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171070d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171070e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171070e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171070f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171070f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107110 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107118 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107120 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107128 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107130 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107138 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107140 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107148 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107150 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107158 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107160 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107168 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107170 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107178 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107180 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107188 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107190 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107198 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171071a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171071a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171071b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171071b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171071c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171071c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171071d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171071d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171071e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171071e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171071f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171071f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107200 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107208 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107210 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107218 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107220 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107228 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107230 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107238 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107240 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107248 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107250 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107258 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107260 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107268 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107270 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107278 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107280 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107288 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107290 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107298 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171072a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171072a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171072b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171072b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171072c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171072c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171072d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171072d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171072e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171072e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171072f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171072f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107300 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107308 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107310 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107318 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107320 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107328 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107330 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107338 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107340 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107348 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107350 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107358 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107360 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107368 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107370 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107378 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107380 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107388 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107390 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107398 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171073a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171073a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171073b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171073b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171073c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171073c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171073d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171073d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171073e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171073e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171073f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171073f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107400 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107408 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107410 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107418 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107420 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107428 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107430 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107438 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107440 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107448 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107450 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107458 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107460 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107468 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107470 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107478 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107480 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107488 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107490 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107498 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171074a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171074a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171074b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171074b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171074c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171074c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171074d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171074d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171074e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171074e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171074f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171074f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107500 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107508 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107510 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107518 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107520 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107528 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107530 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107538 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107540 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107548 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107550 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107558 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107560 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107568 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107570 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107578 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107580 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107588 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107590 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107598 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171075a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171075a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171075b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171075b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171075c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171075c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171075d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171075d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171075e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171075e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171075f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171075f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107600 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107608 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107610 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107618 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107620 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107628 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107630 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107638 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107640 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107648 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107650 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107658 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107660 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107668 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107670 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107678 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107680 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107688 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107690 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107698 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171076a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171076a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171076b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171076b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171076c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171076c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171076d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171076d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171076e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171076e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171076f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171076f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107700 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107708 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107710 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107718 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107720 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107728 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107730 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107738 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107740 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107748 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107750 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107758 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107760 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107768 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107770 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107778 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107780 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107788 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107790 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107798 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171077a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171077a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171077b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171077b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171077c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171077c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171077d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171077d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171077e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171077e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171077f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171077f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107800 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107808 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107810 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107818 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107820 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107828 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107830 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107838 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107840 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107848 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107850 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107858 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107860 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107868 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107870 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107878 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107880 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107888 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107890 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107898 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171078a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171078a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171078b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171078b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171078c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171078c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171078d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171078d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171078e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171078e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171078f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171078f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107900 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107908 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107910 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107918 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107920 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107928 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107930 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107938 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107940 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107948 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107950 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107958 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107960 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107968 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107970 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107978 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107980 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107988 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107990 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107998 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171079a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171079a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171079b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171079b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171079c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171079c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171079d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171079d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171079e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171079e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171079f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171079f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107a98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107aa0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107aa8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107ab0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107ab8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107ac0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107ac8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107ad0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107ad8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107ae0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107ae8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107af0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107af8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107b98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107ba0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107ba8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107bb0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107bb8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107bc0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107bc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107bd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107bd8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107be0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107be8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107bf0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107bf8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107c98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107ca0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107ca8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107cb0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107cb8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107cc0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107cc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107cd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107cd8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107ce0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107ce8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107cf0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107cf8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107d98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107da0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107da8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107db0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107db8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107dc0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107dc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107dd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107dd8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107de0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107de8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107df0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17107df8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710e008 0xe8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710e104 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710e184 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710e204 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710ea00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710ea08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710ea10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710ea18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710ea20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710ea28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710ea30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710ea38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710ea40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710ea48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710ea50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710ea58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710ea60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710ea68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710ea70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710f000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1710ffd0 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17110008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17110fcc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1711ffd0 0x34 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120020 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120028 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120040 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120048 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120050 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120058 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120060 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120068 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120080 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120088 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120090 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120098 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171200a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171200a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171200c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171200c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171200d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171200d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171200e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171200e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120110 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120118 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120120 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120128 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120140 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120148 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120150 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120158 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120160 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120168 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120180 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120188 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120190 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120198 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171201a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171201a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171201c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171201c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171201d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171201d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171201e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171201e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120200 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120208 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120210 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120218 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120220 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120228 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120240 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120248 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120250 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120258 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120260 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120268 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120280 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120288 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120290 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120298 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171202a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171202a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171202c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171202c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171202d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171202d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171202e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171202e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120300 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120308 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120310 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120318 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120320 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120328 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120340 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120348 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120350 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120358 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120360 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120368 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120380 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120388 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120390 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120398 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171203a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171203a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171203c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171203c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171203d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171203d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171203e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171203e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120400 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120408 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120410 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120418 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120420 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120428 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120440 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120448 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120450 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120458 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120460 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120468 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120480 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120488 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120490 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120498 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171204a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171204a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171204c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171204c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171204d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171204d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171204e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171204e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120500 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120508 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120510 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120518 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120520 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120528 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120540 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120548 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120550 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120558 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120560 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120568 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120580 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120588 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120590 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120598 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171205a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171205a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171205c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171205c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171205d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171205d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171205e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171205e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120600 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120608 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120610 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120618 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120620 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120628 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120640 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120648 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120650 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120658 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120660 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120668 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120680 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120688 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120690 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17120698 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171206a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171206a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171206c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171206c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171206d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171206d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171206e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171206e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1712e000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1712e100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1712e800 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1712e808 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1712ffbc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1712ffc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1712ffd0 0x44 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17130400 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17130600 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17130a00 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17130c00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17130c20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17130c40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17130c60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17130c80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17130cc0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17130e00 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17130e50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17130fb8 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17130fcc 0x34 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17140000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17140010 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17140020 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17140028 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17140030 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17140080 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17140088 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17140090 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17140100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17140108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17140110 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1714c000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1714c008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1714c010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1714f000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1714ffd0 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17180000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17180014 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17180070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17180078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171800c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1718ffd0 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17190080 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17190100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17190180 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17190200 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17190280 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17190300 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17190380 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17190400 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17190c00 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17190d00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17190e00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1719c000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1719c008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1719c010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1719c018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1719c100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1719c180 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1719f000 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1719f010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171a0070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171a0078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171a0088 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171a0120 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171ac000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171ac100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171ae100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171c0000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171c0014 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171c0070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171c0078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171c00c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171cffd0 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171d0080 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171d0100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171d0180 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171d0200 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171d0280 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171d0300 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171d0380 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171d0400 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171d0c00 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171d0d00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171d0e00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171dc000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171dc008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171dc010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171dc018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171dc100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171dc180 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171df000 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171df010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171e0070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171e0078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171e0088 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171e0120 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171ec000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171ec100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x171ee100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17200000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17200014 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17200070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17200078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172000c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1720ffd0 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17210080 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17210100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17210180 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17210200 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17210280 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17210300 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17210380 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17210400 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17210c00 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17210d00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17210e00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1721c000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1721c008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1721c010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1721c018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1721c100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1721c180 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1721f000 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1721f010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17220070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17220078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17220088 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17220120 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1722c000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1722c100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1722e100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17240000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17240014 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17240070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17240078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172400c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1724ffd0 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17250080 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17250100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17250180 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17250200 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17250280 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17250300 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17250380 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17250400 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17250c00 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17250d00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17250e00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1725c000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1725c008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1725c010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1725c018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1725c100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1725c180 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1725f000 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1725f010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17260070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17260078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17260088 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17260120 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1726c000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1726c100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1726e100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17280000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17280014 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17280070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17280078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172800c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1728ffd0 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17290080 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17290100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17290180 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17290200 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17290280 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17290300 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17290380 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17290400 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17290c00 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17290d00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17290e00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1729c000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1729c008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1729c010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1729c018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1729c100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1729c180 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1729f000 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1729f010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172a0070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172a0078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172a0088 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172a0120 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172ac000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172ac100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172ae100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172c0000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172c0014 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172c0070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172c0078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172c00c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172cffd0 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172d0080 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172d0100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172d0180 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172d0200 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172d0280 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172d0300 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172d0380 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172d0400 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172d0c00 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172d0d00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172d0e00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172dc000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172dc008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172dc010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172dc018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172dc100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172dc180 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172df000 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172df010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172e0070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172e0078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172e0088 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172e0120 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172ec000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172ec100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x172ee100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17300000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17300014 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17300070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17300078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173000c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1730ffd0 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17310080 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17310100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17310180 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17310200 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17310280 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17310300 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17310380 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17310400 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17310c00 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17310d00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17310e00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1731c000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1731c008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1731c010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1731c018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1731c100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1731c180 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1731f000 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1731f010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17320070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17320078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17320088 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17320120 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1732c000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1732c100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1732e100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17340000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17340014 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17340070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17340078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173400c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1734ffd0 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17350080 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17350100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17350180 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17350200 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17350280 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17350300 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17350380 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17350400 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17350c00 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17350d00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17350e00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1735c000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1735c008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1735c010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1735c018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1735c100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1735c180 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1735f000 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1735f010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17360070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17360078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17360088 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17360120 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1736c000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1736c100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1736e100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17380000 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17380020 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17380030 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17380084 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17380104 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17380184 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17380204 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17380284 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17380304 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17380384 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17380420 0x3a0 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17380c08 0xe8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17380d04 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17380e08 0xe8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386110 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386118 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386120 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386128 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386130 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386138 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386140 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386148 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386150 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386158 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386160 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386168 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386170 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386178 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386180 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386188 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386190 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386198 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173861a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173861a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173861b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173861b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173861c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173861c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173861d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173861d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173861e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173861e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173861f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173861f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386200 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386208 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386210 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386218 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386220 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386228 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386230 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386238 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386240 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386248 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386250 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386258 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386260 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386268 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386270 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386278 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386280 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386288 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386290 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386298 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173862a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173862a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173862b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173862b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173862c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173862c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173862d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173862d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173862e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173862e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173862f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173862f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386300 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386308 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386310 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386318 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386320 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386328 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386330 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386338 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386340 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386348 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386350 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386358 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386360 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386368 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386370 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386378 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386380 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386388 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386390 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386398 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173863a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173863a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173863b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173863b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173863c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173863c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173863d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173863d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173863e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173863e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173863f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173863f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386400 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386408 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386410 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386418 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386420 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386428 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386430 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386438 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386440 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386448 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386450 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386458 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386460 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386468 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386470 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386478 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386480 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386488 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386490 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386498 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173864a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173864a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173864b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173864b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173864c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173864c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173864d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173864d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173864e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173864e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173864f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173864f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386500 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386508 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386510 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386518 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386520 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386528 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386530 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386538 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386540 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386548 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386550 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386558 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386560 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386568 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386570 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386578 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386580 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386588 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386590 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386598 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173865a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173865a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173865b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173865b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173865c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173865c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173865d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173865d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173865e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173865e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173865f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173865f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386600 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386608 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386610 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386618 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386620 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386628 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386630 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386638 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386640 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386648 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386650 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386658 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386660 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386668 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386670 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386678 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386680 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386688 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386690 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386698 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173866a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173866a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173866b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173866b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173866c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173866c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173866d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173866d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173866e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173866e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173866f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173866f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386700 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386708 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386710 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386718 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386720 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386728 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386730 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386738 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386740 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386748 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386750 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386758 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386760 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386768 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386770 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386778 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386780 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386788 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386790 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386798 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173867a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173867a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173867b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173867b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173867c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173867c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173867d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173867d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173867e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173867e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173867f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173867f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386800 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386808 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386810 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386818 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386820 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386828 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386830 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386838 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386840 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386848 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386850 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386858 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386860 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386868 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386870 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386878 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386880 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386888 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386890 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386898 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173868a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173868a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173868b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173868b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173868c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173868c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173868d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173868d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173868e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173868e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173868f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173868f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386900 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386908 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386910 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386918 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386920 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386928 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386930 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386938 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386940 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386948 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386950 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386958 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386960 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386968 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386970 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386978 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386980 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386988 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386990 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386998 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173869a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173869a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173869b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173869b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173869c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173869c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173869d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173869d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173869e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173869e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173869f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173869f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386a98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386aa0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386aa8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ab0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ab8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ac0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ac8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ad0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ad8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ae0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ae8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386af0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386af8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386b98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ba0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ba8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386bb0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386bb8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386bc0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386bc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386bd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386bd8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386be0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386be8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386bf0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386bf8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386c98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ca0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ca8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386cb0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386cb8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386cc0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386cc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386cd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386cd8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ce0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ce8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386cf0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386cf8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386d98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386da0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386da8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386db0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386db8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386dc0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386dc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386dd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386dd8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386de0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386de8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386df0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386df8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386e98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ea0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ea8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386eb0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386eb8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ec0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ec8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ed0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ed8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ee0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ee8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ef0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ef8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386f98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386fa0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386fa8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386fb0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386fb8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386fc0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386fc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386fd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386fd8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386fe0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386fe8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ff0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17386ff8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387020 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387028 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387030 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387038 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387040 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387048 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387050 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387058 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387060 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387068 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387080 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387088 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387090 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387098 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173870a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173870a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173870b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173870b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173870c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173870c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173870d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173870d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173870e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173870e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173870f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173870f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387110 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387118 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387120 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387128 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387130 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387138 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387140 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387148 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387150 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387158 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387160 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387168 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387170 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387178 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387180 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387188 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387190 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387198 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173871a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173871a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173871b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173871b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173871c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173871c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173871d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173871d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173871e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173871e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173871f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173871f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387200 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387208 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387210 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387218 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387220 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387228 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387230 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387238 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387240 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387248 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387250 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387258 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387260 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387268 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387270 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387278 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387280 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387288 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387290 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387298 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173872a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173872a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173872b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173872b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173872c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173872c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173872d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173872d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173872e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173872e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173872f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173872f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387300 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387308 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387310 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387318 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387320 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387328 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387330 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387338 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387340 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387348 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387350 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387358 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387360 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387368 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387370 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387378 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387380 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387388 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387390 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387398 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173873a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173873a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173873b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173873b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173873c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173873c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173873d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173873d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173873e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173873e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173873f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173873f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387400 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387408 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387410 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387418 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387420 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387428 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387430 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387438 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387440 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387448 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387450 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387458 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387460 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387468 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387470 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387478 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387480 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387488 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387490 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387498 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173874a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173874a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173874b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173874b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173874c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173874c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173874d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173874d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173874e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173874e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173874f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173874f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387500 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387508 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387510 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387518 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387520 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387528 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387530 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387538 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387540 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387548 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387550 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387558 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387560 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387568 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387570 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387578 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387580 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387588 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387590 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387598 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173875a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173875a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173875b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173875b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173875c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173875c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173875d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173875d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173875e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173875e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173875f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173875f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387600 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387608 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387610 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387618 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387620 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387628 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387630 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387638 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387640 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387648 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387650 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387658 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387660 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387668 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387670 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387678 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387680 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387688 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387690 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387698 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173876a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173876a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173876b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173876b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173876c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173876c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173876d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173876d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173876e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173876e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173876f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173876f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387700 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387708 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387710 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387718 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387720 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387728 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387730 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387738 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387740 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387748 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387750 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387758 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387760 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387768 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387770 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387778 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387780 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387788 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387790 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387798 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173877a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173877a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173877b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173877b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173877c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173877c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173877d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173877d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173877e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173877e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173877f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173877f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387800 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387808 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387810 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387818 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387820 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387828 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387830 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387838 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387840 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387848 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387850 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387858 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387860 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387868 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387870 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387878 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387880 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387888 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387890 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387898 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173878a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173878a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173878b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173878b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173878c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173878c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173878d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173878d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173878e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173878e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173878f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173878f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387900 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387908 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387910 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387918 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387920 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387928 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387930 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387938 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387940 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387948 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387950 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387958 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387960 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387968 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387970 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387978 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387980 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387988 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387990 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387998 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173879a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173879a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173879b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173879b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173879c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173879c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173879d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173879d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173879e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173879e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173879f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x173879f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387a98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387aa0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387aa8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387ab0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387ab8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387ac0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387ac8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387ad0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387ad8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387ae0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387ae8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387af0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387af8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387b98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387ba0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387ba8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387bb0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387bb8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387bc0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387bc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387bd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387bd8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387be0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387be8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387bf0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387bf8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387c98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387ca0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387ca8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387cb0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387cb8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387cc0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387cc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387cd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387cd8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387ce0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387ce8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387cf0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387cf8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d78 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d80 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d88 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387d98 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387da0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387da8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387db0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387db8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387dc0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387dc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387dd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387dd8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387de0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387de8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387df0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17387df8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738e008 0xe8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738e104 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738e184 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738e204 0x74 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738ea00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738ea08 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738ea10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738ea18 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738ea20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738ea28 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738ea30 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738ea38 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738ea40 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738ea48 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738ea50 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738ea58 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738ea60 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738ea68 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738ea70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738f000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1738ffd0 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17400004 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17400038 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17400044 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x174000f0 0x84 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17400200 0x84 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17400438 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17400444 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17410000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1741000c 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17410020 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17411000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1741100c 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17411020 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17420000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17420040 0x1c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17420080 0x38 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17420fc0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17420fd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17420fe0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17420ff0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17421000 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17421fd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17422000 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17422020 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17422fd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17423000 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17423fd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17425000 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17425fd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17426000 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17426020 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17426fd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17427000 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17427fd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17429000 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17429fd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1742b000 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1742bfd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1742d000 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1742dfd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600004 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600010 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600024 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600040 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600050 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600080 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600094 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176000d8 0x54 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600134 0x28 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600160 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600170 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600180 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600210 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600234 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600240 0x38 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176002b4 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600404 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1760041c 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600434 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1760043c 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600460 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600470 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600480 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600490 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176004a0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176004b0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176004c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176004d0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176004e0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176004f0 0x44 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17600600 0x28 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176009fc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17601000 0x34 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17602000 0x104 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17603000 0x34 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17604000 0x104 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17605000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17606000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17607000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17608004 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17608020 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17609000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17609008 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17609030 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17609100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17609108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1760e014 0x68 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1760f000 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17610000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17610010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17610020 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17610200 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17610240 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17610248 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17611000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17611040 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17611048 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17611050 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17611058 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17611060 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17611068 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17612000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17612010 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17613000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17613010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17613018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17613200 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17613210 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17613218 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17613240 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17614000 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17614100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17614208 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17614304 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17614500 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615000 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761500c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615014 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615030 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615040 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761504c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615054 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615080 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761508c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615094 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176150b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176150c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176150cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176150d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176150f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761510c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615114 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615130 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615140 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761514c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615154 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615170 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615180 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761518c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615194 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176151b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176151c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176151cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176151d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176151f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615200 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761520c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615214 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615230 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615240 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761524c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615254 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615270 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615280 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761528c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615294 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176152b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176152c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176152cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176152d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176152f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615300 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761530c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615314 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615330 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615340 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761534c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615354 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615370 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615380 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761538c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615394 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176153b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176153c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176153cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176153d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176153f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615400 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761540c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615414 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615430 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615440 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761544c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615454 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615470 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615480 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761548c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615494 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176154b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176154c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176154cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176154d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176154f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615500 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761550c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615514 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615530 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615540 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761554c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615554 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615570 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615580 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761558c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615594 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176155b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176155c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176155cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176155d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176155f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615600 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761560c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615614 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615630 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615640 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761564c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615654 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615670 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615680 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761568c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615694 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176156b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176156c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176156cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176156d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176156f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615700 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761570c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615714 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615730 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615740 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761574c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615754 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615770 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615780 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761578c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615794 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176157b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176157c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176157cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176157d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176157f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615800 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761580c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615814 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615830 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615840 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761584c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615854 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615870 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615880 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761588c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615894 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176158b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176158c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176158cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176158d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176158f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615900 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761590c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615914 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615930 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615940 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761594c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615954 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615970 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615980 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761598c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17615994 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176159b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176159c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176159cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176159d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176159f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17618000 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17618100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17618208 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17618304 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17618500 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619000 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761900c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619014 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619030 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619040 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761904c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619054 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619080 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761908c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619094 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176190b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176190c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176190cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176190d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176190f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761910c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619114 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619130 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619140 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761914c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619154 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619170 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619180 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761918c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619194 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176191b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176191c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176191cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176191d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176191f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619200 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761920c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619214 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619230 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619240 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761924c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619254 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619270 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619280 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761928c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619294 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176192b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176192c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176192cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176192d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176192f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619300 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761930c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619314 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619330 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619340 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761934c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619354 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619370 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619380 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761938c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619394 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176193b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176193c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176193cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176193d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176193f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619400 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761940c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619414 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619430 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619440 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761944c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619454 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619470 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619480 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761948c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619494 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176194b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176194c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176194cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176194d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176194f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619500 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761950c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619514 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619530 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619540 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761954c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619554 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619570 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619580 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761958c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619594 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176195b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176195c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176195cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176195d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176195f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619600 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761960c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619614 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619630 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619640 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761964c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619654 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619670 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619680 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761968c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619694 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176196b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176196c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176196cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176196d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176196f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619700 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761970c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619714 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619730 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619740 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761974c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619754 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619770 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619780 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761978c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17619794 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176197b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176197c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176197cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176197d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x176197f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761c000 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761c100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761c208 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761c304 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761c500 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761d000 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761d00c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761d014 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761d030 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761d040 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761d04c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761d054 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761d070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761d080 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761d08c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761d094 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761d0b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761d0c0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761d0cc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761d0d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1761d0f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17800000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17800008 0x48 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17800054 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178000f0 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17800100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17810000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17810008 0x48 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17810054 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178100f0 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17810100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17820000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17820008 0x48 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17820054 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178200f0 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17820100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17828000 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17830000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17830008 0x48 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17830054 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178300f0 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17830100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17838000 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17840000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17840008 0x48 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17840054 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178400f0 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17840100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17848000 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17850000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17850008 0x48 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17850054 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178500f0 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17850100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17858000 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17860000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17860008 0x48 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17860054 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178600f0 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17860100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17868000 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17870000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17870008 0x48 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17870054 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178700f0 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17870100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17878000 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17880000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17880008 0x48 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17880068 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178800f0 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17888000 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17890000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17890008 0x48 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17890068 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178900f0 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17891000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17892000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17893000 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17898000 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178a0000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178a0008 0x48 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178a0054 0x34 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178a0090 0x220 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c0000 0x320 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8020 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8028 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8030 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8038 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8040 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8048 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8050 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8058 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8060 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8068 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8078 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8080 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8088 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8090 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8098 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c80a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c80a8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c80b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c80b8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c80c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c80c8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c80d0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c80d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c80e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c80e8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c80f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c80f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8110 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178c8118 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178cc000 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178cc030 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178cc040 0x48 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x178cc090 0x88 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17900000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1790000c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17900040 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17900900 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17900c00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17900c0c 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17900c40 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17900fd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17901000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1790100c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17901040 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17901900 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17901c00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17901c0c 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17901c40 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17901fd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17902000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x1790200c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17902040 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17902900 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17902c00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17902c0c 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17902c40 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17902fd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a00000 0xd4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a000d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a00100 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a00110 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a0011c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a00200 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a00224 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a00244 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a00264 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a00284 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a002a4 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a002c4 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a002e4 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a00400 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a00450 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a00490 0x3c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a00550 0x200 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a00d00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a00d10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a00d18 0x19c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a00fc0 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a00fe8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01000 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01018 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01030 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01048 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01060 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01078 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01090 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a010a8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a010c0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a010d8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a010f0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01108 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01120 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01138 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01150 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01260 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01288 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a012a0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a012b8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a012d0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a012e8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01300 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01318 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01330 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01348 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01360 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01378 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01390 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a013a8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a013c0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a013d8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a013f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01500 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01528 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01540 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01558 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01570 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01588 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a015a0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a015b8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a015d0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a015e8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01600 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01618 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01630 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01648 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01660 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01678 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a01690 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a10000 0x4c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a10050 0x84 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a100d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a10100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a10108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a10204 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a10224 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a10244 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a10264 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a10284 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a102a4 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a102c4 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a102e4 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a10400 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a10450 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a104a0 0x2c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a10550 0x200 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a10d00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a10d10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a10d18 0x19c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a10fc0 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a10fe8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11000 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11018 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11030 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11048 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11060 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11078 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11090 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a110a8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a110c0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a110d8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a110f0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11108 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11120 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11138 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11150 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11260 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11288 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a112a0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a112b8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a112d0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a112e8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11300 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11318 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11330 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11348 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11360 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11378 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11390 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a113a8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a113c0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a113d8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a113f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11500 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11528 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11540 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11558 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11570 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11588 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a115a0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a115b8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a115d0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a115e8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11600 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11618 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11630 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11648 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11660 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11678 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a11690 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a20000 0x4c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a20050 0x84 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a200d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a20100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a20108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a20204 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a20224 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a20244 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a20264 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a20284 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a202a4 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a202c4 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a202e4 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a20400 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a20450 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a204a0 0x2c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a20550 0x200 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a20d00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a20d10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a20d18 0x19c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a20fc0 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a20fe8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21000 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21018 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21030 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21048 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21060 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21078 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21090 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a210a8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a210c0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a210d8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a210f0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21108 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21120 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21138 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21150 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21260 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21288 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a212a0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a212b8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a212d0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a212e8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21300 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21318 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21330 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21348 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21360 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21378 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21390 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a213a8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a213c0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a213d8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a213f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21500 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21528 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21540 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21558 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21570 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21588 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a215a0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a215b8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a215d0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a215e8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21600 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21618 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21630 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21648 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21660 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21678 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21690 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a217a0 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a217c8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a217e0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a217f8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21810 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21828 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21840 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21858 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21870 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21888 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a218a0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a218b8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a218d0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a218e8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21900 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21918 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21930 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21a40 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21a68 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21a80 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21a98 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21ab0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21ac8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21ae0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21af8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21b10 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21b28 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21b40 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21b58 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21b70 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21b88 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21ba0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21bb8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21bd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21ce0 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21d08 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21d20 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21d38 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21d50 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21d68 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21d80 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21d98 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21db0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21dc8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21de0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21df8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21e10 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21e28 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21e40 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21e58 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21e70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21f80 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21fa8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21fc0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21fd8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a21ff0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a22008 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a22020 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a22038 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a22050 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a22068 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a22080 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a22098 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a220b0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a220c8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a220e0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a220f8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a22110 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a30000 0x4c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a30050 0x84 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a300d8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a30100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a30108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a30204 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a30224 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a30244 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a30264 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a30284 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a302a4 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a302c4 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a302e4 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a30400 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a30450 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a304a0 0x2c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a30550 0x200 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a30d00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a30d10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a30d18 0x19c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a30fc0 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a30fe8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31000 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31018 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31030 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31048 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31060 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31078 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31090 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a310a8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a310c0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a310d8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a310f0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31108 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31120 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31138 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31150 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31260 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31288 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a312a0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a312b8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a312d0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a312e8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31300 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31318 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31330 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31348 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31360 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31378 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a31390 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a313a8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a313c0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a313d8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a313f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a80000 0x44 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a82000 0x44 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a84000 0x44 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a86000 0x44 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a88000 0x44 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a8c000 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a8e000 0x400 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a90000 0x64 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a90080 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a900cc 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a900e4 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a900f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a900f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a90118 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a92000 0x64 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a92080 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a920cc 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a920e4 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a920f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a920f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a92118 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a94000 0x64 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a94080 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a940cc 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a940e4 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a940f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a940f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a94118 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a96000 0x64 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a96080 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a960cc 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a960e4 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a960f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a960f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a96118 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a98000 0x64 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a98080 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a980cc 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a980e4 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a980f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a980f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17a98118 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17aa0000 0xb0 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17aa00b4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17aa00fc 0x68 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17aa0200 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17aa0300 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17aa0400 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17aa0500 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17aa0600 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17aa0700 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17aa0800 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b00000 0x120 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b02000 0x120 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70010 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70090 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b700a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b700c0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70110 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70190 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b701a0 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70220 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b702a0 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70320 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70380 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70390 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70410 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70420 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b704a0 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70520 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70580 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70600 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70610 0x38 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70680 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70700 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70710 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70790 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70810 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70890 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70910 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70990 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70a10 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70a90 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70b10 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70b90 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70c00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70c10 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70c90 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70d10 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70d90 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70e10 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70e90 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70f10 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b70f90 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71010 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71080 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71090 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71110 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71190 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71210 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71290 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71310 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71390 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71400 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71410 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71490 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71510 0x200 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71d10 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71d90 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71e10 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71e90 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71f10 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b71f90 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b72010 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b72090 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b72100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b72110 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b72190 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b721a0 0x1c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b721c0 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b72240 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b72250 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b722e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b722f0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b72380 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b723a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b723c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b723e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b723f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b72410 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b72430 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b72450 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b72470 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b72490 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74010 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74090 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b740a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b740c0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74110 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74190 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b741a0 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74220 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b742a0 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74320 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74380 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74390 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74410 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74420 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b744a0 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74520 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74580 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74600 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74610 0x38 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74680 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74700 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74710 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74790 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74810 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74890 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74910 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74990 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74a10 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74a90 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74b10 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74b90 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74c00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74c10 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74c90 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74d10 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74d90 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74e10 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74e90 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74f10 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b74f90 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75010 0x60 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75080 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75090 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75110 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75190 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75210 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75290 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75310 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75390 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75400 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75410 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75490 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75510 0x200 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75d10 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75d90 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75e10 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75e90 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75f10 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b75f90 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b76010 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b76090 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b76100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b76110 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b76190 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b761a0 0x1c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b761c0 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b76240 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b76250 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b762e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b762f0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b76380 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b763a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b763c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b763e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b763f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b76410 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b76430 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b76450 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b76470 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b76490 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78010 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78090 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b780a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b780c0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78110 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78190 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b781a0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78220 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b782a0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78320 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78380 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78390 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78410 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78420 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b784a0 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78520 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78580 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78600 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78610 0x38 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78680 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78700 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78710 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78790 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78810 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78890 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78910 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78990 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78a10 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78a90 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78b10 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78b90 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78c00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78c10 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78c90 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78d10 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78d90 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78e10 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78e90 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78f10 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b78f90 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79010 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79080 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79090 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79110 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79190 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79210 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79290 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79310 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79390 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79400 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79410 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79490 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79510 0x100 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79d10 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79d90 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79e10 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79e90 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79f10 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b79f90 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a010 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a090 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a100 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a110 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a190 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a1a0 0x1c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a1c0 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a240 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a250 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a2e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a2f0 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a380 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a3a0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a3c0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a3e0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a3f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a410 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a430 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a450 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a470 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b7a490 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b90000 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b90020 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b90050 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b90070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b90080 0x64 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b90100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b90120 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b90140 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b90200 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b90700 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b9070c 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b90780 0x80 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b90808 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b90824 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b90840 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b90c48 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b90c64 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b90c80 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b92000 0x148 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b93000 0x140 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b93500 0x140 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b93a00 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b93a24 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b93a2c 0xc4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b93b00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b93b20 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b93b30 0x2c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b93b64 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b93b70 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b93b90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b93c00 0x98 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b94000 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b94020 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b94050 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b94070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b94080 0x64 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b94100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b94120 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b94140 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b94200 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b94700 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b9470c 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b94780 0x80 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b94808 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b94824 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b94840 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b96000 0xa8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b97000 0xa0 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b97500 0xa0 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b97a00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b97a24 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b97a2c 0xc4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b97b00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b97b20 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b97b30 0x2c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b97b64 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b97b70 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b97b90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17b97c00 0x98 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba0000 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba0020 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba0050 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba0070 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba0080 0x64 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba0100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba0120 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba0140 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba0200 0x1c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba0700 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba070c 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba0780 0x80 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba0808 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba0824 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba0840 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba0c48 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba0c64 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba0c80 0x40 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba2000 0x148 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba3000 0x140 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba3500 0x140 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba3a00 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba3a24 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba3a2c 0xc4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba3b00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba3b20 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba3b30 0x2c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba3b64 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba3b70 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba3b90 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ba3c00 0x98 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c000e8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c00104 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c00118 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c00130 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c00144 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c00158 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c0016c 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c00180 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c00194 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c001a8 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c001d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c001e8 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c001fc 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c00210 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c00228 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c0023c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c01000 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c01038 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c0104c 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c01060 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c01074 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c01088 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c0109c 0x38 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c010dc 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c010f0 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c01104 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c01118 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c0112c 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c01140 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c01154 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c01168 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c0117c 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c01190 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c011a4 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c011bc 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c011d0 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c011e8 0x1c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c0120c 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c01220 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c01234 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c01248 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c01388 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c020e8 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c02104 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c02118 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c02130 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c02144 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c02158 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c0216c 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c02180 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c02194 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c021a8 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c021d4 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c021e8 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c021fc 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c02210 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c02228 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c0223c 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c03000 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c03038 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c0304c 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c03060 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c03074 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c03088 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c0309c 0x38 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c030dc 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c030f0 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c03104 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c03118 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c0312c 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c03140 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c03154 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c03168 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c0317c 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c03190 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c031a4 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c031bc 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c031d0 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c031e8 0x1c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c0320c 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c03220 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c03234 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c03248 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c03388 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c20000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c21000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17c22000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d10000 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d10200 0x59c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d10800 0x11c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d10920 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d10a00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d30000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d34000 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d3bff8 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d40000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d40008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d40010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d40018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d40020 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d40028 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d50000 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d50040 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d50050 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d50100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d50138 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d50178 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d50e00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d90000 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d90014 0x68 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d90080 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d900b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d900b8 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d900d0 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d90100 0xa0 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d90200 0xa0 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d90300 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d90320 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d9034c 0x7c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d903e0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d90404 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d90420 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d90430 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d90450 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d90470 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d91000 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d91014 0x68 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d91080 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d910b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d910b8 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d910d0 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d91100 0xa0 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d91200 0xa0 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d91300 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d91320 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d9134c 0x84 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d913e0 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d91404 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d91420 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d91430 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d91450 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d91470 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d92000 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d92014 0x68 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d92080 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d920b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d920b8 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d920d0 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d92100 0xa0 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d92200 0xa0 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d92300 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d92320 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d9234c 0x84 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d923e0 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d92404 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d92420 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d92430 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d92450 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d92470 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d93000 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d93014 0x68 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d93080 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d930b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d930b8 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d930d0 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d93100 0xa0 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d93200 0xa0 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d93300 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d93320 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d9334c 0x80 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d933e0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d93404 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d93420 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d93430 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d93450 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d93470 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d94000 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d94014 0x68 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d94080 0x1c > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d940b0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d940b8 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d940d0 0x24 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d94100 0xa0 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d94200 0xa0 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d94300 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d94320 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d9434c 0x88 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d943e0 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d94404 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d94420 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d94430 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d94450 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d94470 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17d98000 0x64 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e00000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e00008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e00010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e00028 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e00030 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e00038 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e00040 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e00048 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e00050 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e00060 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e00068 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e00080 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e00088 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e10000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e10008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e10018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e10020 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e10030 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e10040 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e100f0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e100f8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e10100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e10500 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e11000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e20000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e20008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e20010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e20018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e20020 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e20028 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e20030 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e20038 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e20800 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e20808 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e20810 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e20e00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e20e10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e20fa8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e20fbc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e20fc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e20fd0 0x30 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e30000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e30010 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e30030 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e30050 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e30170 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e30fb0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e30fc8 0x38 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e40000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e40008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e40010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e40018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e40020 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e40400 0x14 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e40c00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e40c20 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e40e00 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e40fa8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e40fbc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e40fc8 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e40fe0 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e80000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e80010 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e80030 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e80050 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e80170 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e80fb0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e80fc8 0x38 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e90000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e90008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e90010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e90018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e90100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e90108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e90110 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e90400 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e90480 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e90c00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e90c20 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e90ce0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e90e00 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e90fa8 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e90fbc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e90fcc 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17e90fe0 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ea0000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ea0008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ea0010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ea0020 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ea0028 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ea0030 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ea0038 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ea0800 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ea0808 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ea0810 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ea0e00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ea0e10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ea0fa8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ea0fbc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ea0fc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ea0fd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ea0fe0 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17eb0000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17eb0010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ed0000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ed0008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ed0010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ed0020 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ed0028 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ed0030 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ed0038 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ed0800 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ed0808 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ed0810 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ed0e00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ed0e10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ed0fa8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ed0fbc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ed0fc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ed0fd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17ed0fe0 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f80000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f80010 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f80030 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f80050 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f80170 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f80fb0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f80fc8 0x38 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f90000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f90008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f90010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f90018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f90100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f90108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f90110 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f90400 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f90480 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f90c00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f90c20 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f90ce0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f90e00 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f90fa8 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f90fbc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f90fcc 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17f90fe0 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fa0000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fa0008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fa0010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fa0020 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fa0028 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fa0030 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fa0038 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fa0800 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fa0808 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fa0810 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fa0e00 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fa0e10 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fa0fa8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fa0fbc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fa0fc8 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fa0fd0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fa0fe0 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fb0000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17fb0010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18080000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18080010 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18080030 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18080050 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18080170 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18080fb0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18080fc8 0x38 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18090000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18090008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18090010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18090018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18090100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18090108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18090110 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18090400 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18090480 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18090c00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18090c20 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18090ce0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18090e00 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18090fa8 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18090fbc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18090fcc 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18090fe0 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x180b0000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x180b0010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18180000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18180010 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18180030 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18180050 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18180170 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18180fb0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18180fc8 0x38 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18190000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18190008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18190010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18190018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18190100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18190108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18190110 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18190400 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18190480 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18190c00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18190c20 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18190ce0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18190e00 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18190fa8 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18190fbc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18190fcc 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18190fe0 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x181b0000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x181b0010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18280000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18280010 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18280030 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18280050 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18280170 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18280fb0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18280fc8 0x38 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18290000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18290008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18290010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18290018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18290100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18290108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18290110 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18290400 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18290480 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18290c00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18290c20 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18290ce0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18290e00 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18290fa8 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18290fbc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18290fcc 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18290fe0 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x182b0000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x182b0010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18380000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18380010 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18380030 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18380050 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18380170 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18380fb0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18380fc8 0x38 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18390000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18390008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18390010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18390018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18390100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18390108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18390110 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18390400 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18390480 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18390c00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18390c20 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18390ce0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18390e00 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18390fa8 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18390fbc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18390fcc 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18390fe0 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x183b0000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x183b0010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18480000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18480010 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18480030 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18480050 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18480170 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18480fb0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18480fc8 0x38 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18490000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18490008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18490010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18490018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18490100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18490108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18490110 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18490400 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18490480 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18490c00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18490c20 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18490ce0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18490e00 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18490fa8 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18490fbc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18490fcc 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18490fe0 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x184b0000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x184b0010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18580000 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18580010 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18580030 0x18 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18580050 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18580170 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18580fb0 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18580fc8 0x38 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18590000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18590008 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18590010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18590018 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18590100 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18590108 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18590110 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18590400 0x10 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18590480 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18590c00 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18590c20 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18590ce0 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18590e00 0xc > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18590fa8 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18590fbc 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18590fcc 0x8 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x18590fe0 0x20 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x185b0000 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x185b0010 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x185b0020 0x4 > /sys/bus/platform/devices/soc:mem_dump/register_config + echo 0x17D00000 0x10000 > /sys/bus/platform/devices/soc:mem_dump/register_config + #echo 0x17D20000 0x10000 > /sys/bus/platform/devices/soc:mem_dump/register_config +} + +cpuss_spr_setup() +{ + echo 1 > /sys/bus/platform/devices/soc:mem_dump/sprs_register_reset + + echo 1 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 2 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 3 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 4 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 5 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 6 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 7 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 8 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 9 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 11 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 13 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 14 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 15 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 16 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 17 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 18 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 19 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 21 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 22 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 23 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 24 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 25 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 26 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 27 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 28 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 29 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 30 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 31 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 32 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 33 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 34 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 35 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 36 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 37 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 38 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 43 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 44 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 45 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 46 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 47 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 48 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 49 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 51 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 52 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 53 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 54 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 55 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 56 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 57 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 58 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 59 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 60 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 61 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 62 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 67 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 68 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 69 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 70 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 72 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 73 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 74 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 75 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 76 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 77 0 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 1 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 2 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 3 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 4 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 5 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 6 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 7 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 8 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 9 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 11 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 13 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 14 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 15 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 16 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 17 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 18 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 19 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 21 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 22 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 23 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 24 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 25 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 26 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 27 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 28 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 29 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 30 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 31 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 32 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 33 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 34 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 35 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 36 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 37 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 38 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 43 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 44 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 45 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 46 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 47 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 48 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 49 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 51 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 52 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 53 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 54 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 55 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 56 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 57 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 58 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 59 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 60 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 61 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 62 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 67 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 68 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 69 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 70 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 72 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 73 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 74 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 75 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 76 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 77 1 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 1 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 2 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 3 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 4 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 5 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 6 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 7 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 8 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 9 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 10 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 13 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 14 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 15 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 16 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 17 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 18 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 19 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 21 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 22 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 23 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 24 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 25 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 26 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 27 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 28 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 29 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 30 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 31 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 32 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 33 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 34 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 35 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 36 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 37 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 38 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 43 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 44 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 45 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 46 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 47 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 48 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 49 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 51 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 52 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 53 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 54 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 55 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 56 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 57 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 58 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 59 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 60 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 61 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 62 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 63 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 64 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 65 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 66 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 67 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 68 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 69 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 70 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 72 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 73 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 74 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 75 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 76 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 77 2 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 1 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 2 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 3 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 4 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 5 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 6 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 7 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 8 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 9 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 10 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 13 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 14 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 15 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 16 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 17 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 18 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 19 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 21 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 22 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 23 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 24 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 25 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 26 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 27 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 28 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 29 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 30 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 31 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 32 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 33 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 34 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 35 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 36 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 37 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 38 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 43 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 44 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 45 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 46 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 47 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 48 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 49 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 51 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 52 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 53 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 54 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 55 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 56 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 57 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 58 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 59 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 60 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 61 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 62 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 63 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 64 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 65 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 66 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 67 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 68 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 69 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 70 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 72 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 73 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 74 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 75 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 76 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 77 3 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 1 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 2 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 3 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 4 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 5 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 6 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 7 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 8 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 9 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 10 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 13 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 14 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 15 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 16 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 17 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 18 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 19 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 21 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 22 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 23 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 24 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 25 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 26 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 27 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 28 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 29 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 30 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 31 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 32 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 33 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 34 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 35 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 36 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 37 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 38 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 43 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 44 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 45 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 46 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 47 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 48 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 49 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 51 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 52 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 53 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 54 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 55 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 56 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 57 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 58 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 59 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 60 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 61 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 62 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 63 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 64 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 65 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 66 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 67 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 68 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 69 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 70 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 72 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 73 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 74 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 75 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 76 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 77 4 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 1 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 2 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 3 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 4 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 5 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 6 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 7 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 8 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 9 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 10 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 13 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 14 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 15 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 16 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 17 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 18 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 19 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 21 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 22 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 23 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 24 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 25 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 26 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 27 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 28 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 29 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 30 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 31 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 32 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 33 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 34 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 35 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 36 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 37 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 38 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 43 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 44 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 45 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 46 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 47 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 48 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 49 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 51 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 52 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 53 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 54 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 55 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 56 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 57 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 58 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 59 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 60 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 61 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 62 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 63 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 64 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 65 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 66 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 67 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 68 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 69 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 70 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 72 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 73 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 74 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 75 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 76 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 77 5 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 1 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 2 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 3 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 4 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 5 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 6 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 7 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 8 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 9 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 10 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 13 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 14 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 15 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 16 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 17 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 18 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 19 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 21 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 22 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 23 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 24 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 25 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 26 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 27 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 28 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 29 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 30 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 31 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 32 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 33 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 34 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 35 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 36 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 37 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 38 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 43 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 44 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 45 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 46 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 47 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 48 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 49 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 51 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 52 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 53 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 54 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 55 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 56 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 57 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 58 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 59 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 60 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 61 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 62 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 63 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 64 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 65 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 66 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 67 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 68 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 69 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 70 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 72 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 73 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 74 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 75 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 76 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 77 6 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 1 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 2 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 3 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 4 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 5 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 6 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 7 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 8 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 9 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 10 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 13 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 14 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 15 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 16 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 17 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 18 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 19 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 20 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 21 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 22 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 23 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 24 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 25 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 26 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 27 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 28 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 29 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 30 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 31 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 32 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 33 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 34 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 35 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 36 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 37 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 38 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 43 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 44 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 45 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 46 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 47 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 48 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 49 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 51 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 52 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 53 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 54 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 55 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 56 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 57 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 58 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 59 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 60 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 61 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 62 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 63 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 64 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 65 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 66 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 67 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 68 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 69 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 70 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 72 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 73 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 74 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 75 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 76 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config + echo 77 7 > /sys/bus/platform/devices/soc:mem_dump/spr_config +} + +enable_buses_and_interconnect_tracefs_debug() +{ + tracefs=/sys/kernel/tracing + + # enable tracing for consolidate/debug builds, where debug_build is set true + if [ "$debug_build" = true ] + then + setprop persist.vendor.tracing.enabled 1 + fi + + if [ -d $tracefs ] && [ "$(getprop persist.vendor.tracing.enabled)" -eq "1" ]; then + mkdir $tracefs/instances/hsuart + #UART + echo 800 > $tracefs/instances/hsuart/buffer_size_kb + echo 1 > $tracefs/instances/hsuart/events/serial/enable + echo 1 > $tracefs/instances/hsuart/tracing_on + + #SPI + mkdir $tracefs/instances/spi_qup + echo 20 > $tracefs/instances/spi_qup/buffer_size_kb + echo 1 > $tracefs/instances/spi_qup/events/qup_spi_trace/enable + echo 1 > $tracefs/instances/spi_qup/tracing_on + + #I2C + mkdir $tracefs/instances/i2c_qup + echo 20 > $tracefs/instances/i2c_qup/buffer_size_kb + echo 1 > $tracefs/instances/i2c_qup/events/qup_i2c_trace/enable + echo 1 > $tracefs/instances/i2c_qup/tracing_on + + #SLIMBUS + mkdir $tracefs/instances/slimbus + echo 1 > $tracefs/instances/slimbus/events/slimbus/slimbus_dbg/enable + echo 1 > $tracefs/instances/slimbus/tracing_on + + #CLOCK, REGULATOR, INTERCONNECT, RPMH + mkdir $tracefs/instances/clock_reg + echo 1 > $tracefs/instances/clock_reg/events/clk/enable + echo 1 > $tracefs/instances/clock_reg/events/regulator/enable + echo 1 > $tracefs/instances/clock_reg/events/interconnect/enable + echo 1 > $tracefs/instances/clock_reg/events/rpmh/enable + echo 1 > $tracefs/instances/clock_reg/tracing_on + fi +} + +create_stp_policy() +{ + mkdir /config/stp-policy/coresight-stm:p_ost.policy + chmod 660 /config/stp-policy/coresight-stm:p_ost.policy + mkdir /config/stp-policy/coresight-stm:p_ost.policy/default + chmod 660 /config/stp-policy/coresight-stm:p_ost.policy/default + echo 0x10 > /sys/bus/coresight/devices/coresight-stm/traceid +} + +#function to enable cti flush for etf +enable_cti_flush_for_etf() +{ + # bail out if its perf config + if [ "$debug_build" = false ] + then + return + fi + + echo 1 >/sys/bus/coresight/devices/coresight-cti-swao_cti/enable + echo 0 24 >/sys/bus/coresight/devices/coresight-cti-swao_cti/channels/trigin_attach + echo 0 1 >/sys/bus/coresight/devices/coresight-cti-swao_cti/channels/trigout_attach +} + +find_build_type() +{ + linux_banner=`cat /proc/version` + if [[ "$linux_banner" == *"-consolidate"* ]] + then + debug_build=true + fi +} + +ftrace_disable=`getprop persist.debug.ftrace_events_disable` +debug_build=false +enable_debug() +{ + echo "pineapple debug" + find_build_type + create_stp_policy + adjust_permission + enable_cti_flush_for_etf + if [ "$ftrace_disable" != "Yes" ]; then + enable_ftrace_event_tracing + enable_buses_and_interconnect_tracefs_debug + fi + enable_dcc + enable_cpuss_hw_events + enable_schedstats + enable_cpuss_register + cpuss_spr_setup + sf_tracing_disablement +} + +enable_debug diff --git a/rootdir/bin/init.qti.kernel.debug.sh b/rootdir/bin/init.qti.kernel.debug.sh new file mode 100644 index 0000000..289d2cb --- /dev/null +++ b/rootdir/bin/init.qti.kernel.debug.sh @@ -0,0 +1,47 @@ +#============================================================================= +# Copyright (c) 2020-2023 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +# +# Copyright (c) 2014-2017, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +#============================================================================= + +if [ -f /sys/devices/soc0/soc_id ]; then + platformid=`cat /sys/devices/soc0/soc_id` +fi + +case "$platformid" in + "557"|"577") + /vendor/bin/sh /vendor/bin/init.qti.kernel.debug-pineapple.sh + ;; + "614"|"632") + /vendor/bin/sh /vendor/bin/init.qti.kernel.debug-cliffs.sh + ;; + *) + echo "***WARNING***: Invalid chip family\n\t skipping debug script!!\n" + ;; +esac diff --git a/rootdir/bin/init.qti.kernel.early_debug-pineapple.sh b/rootdir/bin/init.qti.kernel.early_debug-pineapple.sh new file mode 100644 index 0000000..176701d --- /dev/null +++ b/rootdir/bin/init.qti.kernel.early_debug-pineapple.sh @@ -0,0 +1,206 @@ +#============================================================================= +# Copyright (c) 2022-2023 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +# +# Copyright (c) 2014-2017, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +#============================================================================= + +enable_sched_events() +{ + local instance=/sys/kernel/tracing + + echo > $instance/trace + echo > $instance/set_event + + # timer + echo 1 > $instance/events/timer/timer_expire_entry/enable + echo 1 > $instance/events/timer/timer_expire_exit/enable + echo 1 > $instance/events/timer/hrtimer_cancel/enable + echo 1 > $instance/events/timer/hrtimer_expire_entry/enable + echo 1 > $instance/events/timer/hrtimer_expire_exit/enable + echo 1 > $instance/events/timer/hrtimer_init/enable + echo 1 > $instance/events/timer/hrtimer_start/enable + #enble FTRACE for softirq events + echo 1 > $instance/events/irq/enable + #enble FTRACE for Workqueue events + echo 1 > $instance/events/workqueue/enable + # sched + #echo 1 > $instance/events/sched/sched_cpu_hotplug/enable + echo 1 > $instance/events/sched/sched_migrate_task/enable + echo 1 > $instance/events/sched/sched_pi_setprio/enable + echo 1 > $instance/events/sched/sched_switch/enable + echo 1 > $instance/events/sched/sched_wakeup/enable + echo 1 > $instance/events/sched/sched_wakeup_new/enable + echo 1 > $instance/events/schedwalt/halt_cpus/enable + echo 1 > $instance/events/schedwalt/halt_cpus_start/enable + # hot-plug + echo 1 > $instance/events/cpuhp/enable + + echo 1 > $instance/events/power/cpu_frequency/enable + + echo 1 > $instance/tracing_on +} + +enable_rproc_events() +{ + local instance=/sys/kernel/tracing/instances/rproc_qcom + + mkdir $instance + echo > $instance/trace + echo > $instance/set_event + + # enable rproc events as soon as available + /vendor/bin/init.qti.write.sh $instance/events/rproc_qcom/enable 1 + + echo 1 > $instance/tracing_on +} + +# Suspend events are also noisy when going into suspend/resume +enable_suspend_events() +{ + local instance=/sys/kernel/tracing/instances/suspend + + mkdir $instance + echo > $instance/trace + echo > $instance/set_event + + echo 1 > $instance/events/power/suspend_resume/enable + echo 1 > $instance/events/power/device_pm_callback_start/enable + echo 1 > $instance/events/power/device_pm_callback_end/enable + + echo 1 > $instance/tracing_on +} + +enable_clock_reg_events() +{ + local instance=/sys/kernel/tracing/instances/clock_reg + + mkdir $instance + echo > $instance/trace + echo > $instance/set_event + + # clock + echo 1 > $instance/events/clk/enable + echo 1 > $instance/events/clk_qcom/enable + + # interconnect + echo 1 > $instance/events/interconnect/enable + + # regulator + echo 1 > $instance/events/regulator/enable + + # rpmh + echo 1 > $instance/events/rpmh/enable + + echo 1 > $instance/tracing_on +} + +enable_memory_events() +{ + local instance=/sys/kernel/tracing/instances/memory + + mkdir $instance + echo > $instance/trace + echo > $instance/set_event + + #memory pressure events/oom + #echo 1 > $instance/events/psi/psi_event/enable + #echo 1 > $instance/events/psi/psi_window_vmstat/enable + + echo 1 > $instance/events/arm_smmu/enable + + echo 1 > $instance/tracing_on +} + +# binder tracing can be noisy +enable_binder_events() +{ + local instance=/sys/kernel/tracing/instances/binder + + mkdir $instance + echo > $instance/trace + echo > $instance/set_event + + echo 1 > $instance/events/binder/enable + + echo 1 > $instance/tracing_on +} + +enable_rwmmio_events() +{ + if [ ! -d /sys/kernel/tracing/events/rwmmio ] + then + return + fi + + local instance=/sys/kernel/tracing/instances/rwmmio + + mkdir $instance + echo > $instance/trace + echo > $instance/set_event + + echo 1 > $instance/events/rwmmio/rwmmio_read/enable + echo 1 > $instance/events/rwmmio/rwmmio_write/enable + + echo 1 > $instance/tracing_on +} + +find_build_type() +{ + linux_banner=`cat /proc/version` + if [[ "$linux_banner" == *"-consolidate"* ]] + then + debug_build=true + fi +} + +debug_build=false +enable_tracing_events() +{ + # bail out if its perf config + find_build_type + if [ "$debug_build" = false ] + then + return + fi + + # bail out if ftrace events aren't present + if [ ! -d /sys/kernel/tracing/events ] ; then + return + fi + + enable_sched_events + enable_rproc_events + enable_suspend_events + enable_binder_events + enable_clock_reg_events + enable_memory_events + enable_rwmmio_events +} + +enable_tracing_events diff --git a/rootdir/bin/init.qti.kernel.early_debug.sh b/rootdir/bin/init.qti.kernel.early_debug.sh new file mode 100644 index 0000000..a09d544 --- /dev/null +++ b/rootdir/bin/init.qti.kernel.early_debug.sh @@ -0,0 +1,45 @@ +#============================================================================= +# Copyright (c) 2022-2023 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +# +# Copyright (c) 2014-2017, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +#============================================================================= + +if [ -f /sys/devices/soc0/soc_id ]; then + platformid=`cat /sys/devices/soc0/soc_id` +fi + +case "$platformid" in + "557"|"577"|"614"|"632") + /vendor/bin/sh /vendor/bin/init.qti.kernel.early_debug-pineapple.sh + ;; + + *) + echo "***WARNING***: Invalid SoC ID\n\t Not running early debug scripts!!\n" + ;; +esac diff --git a/rootdir/bin/init.qti.kernel.sh b/rootdir/bin/init.qti.kernel.sh new file mode 100644 index 0000000..93d2488 --- /dev/null +++ b/rootdir/bin/init.qti.kernel.sh @@ -0,0 +1,40 @@ +#! /vendor/bin/sh +#============================================================================= +# Copyright (c) 2019-2020 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +# +# Copyright (c) 2009-2012, 2014-2019, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +#============================================================================= + +start_msm_irqbalance() +{ + if [ -f /vendor/bin/msm_irqbalance ]; then + start vendor.msm_irqbalance + fi +} +start_msm_irqbalance diff --git a/rootdir/bin/init.qti.media.sh b/rootdir/bin/init.qti.media.sh new file mode 100644 index 0000000..bb5103f --- /dev/null +++ b/rootdir/bin/init.qti.media.sh @@ -0,0 +1,108 @@ +#! /vendor/bin/sh +#============================================================================== +# init.qti.media.sh +# +# Copyright (c) 2020-2022, Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +# +# Copyright (c) 2020, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# * Neither the name of The Linux Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +#=============================================================================== + +build_codename=`getprop vendor.media.system.build_codename` + +if [ -f /sys/devices/soc0/soc_id ]; then + soc_hwid=`cat /sys/devices/soc0/soc_id` 2> /dev/null +else + soc_hwid=`cat /sys/devices/system/soc/soc0/id` 2> /dev/null +fi + +target=`getprop ro.board.platform` +case "$target" in + "anorak") + setprop vendor.mm.target.enable.qcom_parser 0 + setprop vendor.media.target_variant "_anorak" + ;; + "kalama") + setprop vendor.mm.target.enable.qcom_parser 0 + setprop vendor.media.target_variant "_kalama" + ;; + "pineapple") + setprop vendor.mm.target.enable.qcom_parser 0 + case "$soc_hwid" in + 614|632) + setprop vendor.media.target_variant "_cliffs_v0" + sku_ver=`cat /sys/devices/platform/soc/aa00000.qcom,vidc/sku_version` 2> /dev/null + if [ $sku_ver -eq 1 ]; then + setprop vendor.media.target_variant "_cliffs_v1" + fi + ;; + *) + setprop vendor.media.target_variant "_pineapple" + if [ $build_codename -le "14" ]; then + setprop vendor.netflix.bsp_rev "Q8650-37577-1" + fi + ;; + esac + ;; + "taro") + setprop vendor.mm.target.enable.qcom_parser 1040479 + case "$soc_hwid" in + 530|531|540) + setprop vendor.media.target_variant "_cape" + ;; + *) + setprop vendor.media.target_variant "_taro" + ;; + esac + ;; + "lahaina") + case "$soc_hwid" in + 450) + setprop vendor.media.target_variant "_shima_v3" + setprop vendor.netflix.bsp_rev "" + sku_ver=`cat /sys/devices/platform/soc/aa00000.qcom,vidc/sku_version` 2> /dev/null + if [ $sku_ver -eq 1 ]; then + setprop vendor.media.target_variant "_shima_v1" + elif [ $sku_ver -eq 2 ]; then + setprop vendor.media.target_variant "_shima_v2" + fi + ;; + *) + setprop vendor.media.target_variant "_lahaina" + setprop vendor.netflix.bsp_rev "Q875-32408-1" + ;; + esac + ;; + "holi") + setprop vendor.media.target_variant "_holi" + ;; + "msmnile") + setprop vendor.media.target_variant "_msmnile" + ;; +esac diff --git a/rootdir/bin/init.qti.qcv.sh b/rootdir/bin/init.qti.qcv.sh new file mode 100644 index 0000000..8bf28d3 --- /dev/null +++ b/rootdir/bin/init.qti.qcv.sh @@ -0,0 +1,88 @@ +#! /vendor/bin/sh +#============================================================================= +# Copyright (c) 2020, 2021 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +#============================================================================= + +soc_id=`cat /sys/devices/soc0/soc_id` 2> /dev/null + +# Store soc_id in ro.vendor.qti.soc_id +setprop ro.vendor.qti.soc_id $soc_id + +# For chipsets in QCV family, convert soc_id to soc_name +# and store it in ro.vendor.qti.soc_name. +if [ "$soc_id" -eq 618 ]; then + setprop ro.vendor.qti.soc_name sun + setprop ro.vendor.qti.soc_model SM8750 + setprop ro.vendor.media_performance_class 34 +elif [ "$soc_id" -eq 507 ] || [ "$soc_id" -eq 565 ]; then + setprop ro.vendor.qti.soc_name blair + setprop ro.vendor.qti.soc_model SM6375 +elif [ "$soc_id" -eq 578 ]; then + setprop ro.vendor.qti.soc_name blair + setprop ro.vendor.qti.soc_model SM4375 +elif [ "$soc_id" -eq 454 ]; then + setprop ro.vendor.qti.soc_name holi + setprop ro.vendor.qti.soc_model SM4350 +elif [ "$soc_id" -eq 472 ]; then + setprop ro.vendor.qti.soc_name holi + setprop ro.vendor.qti.soc_model SM6325 +elif [ "$soc_id" -eq 557 ] || [ "$soc_id" -eq 577 ]; then + setprop ro.vendor.qti.soc_name pineapple + setprop ro.vendor.qti.soc_model SM8650 +# setprop ro.vendor.media_performance_class 34 +elif [ "$soc_id" -eq 632 ]; then + setprop ro.vendor.qti.soc_name cliffs + setprop ro.vendor.qti.soc_model SM7675 +elif [ "$soc_id" -eq 614 ]; then + setprop ro.vendor.qti.soc_name cliffs + setprop ro.vendor.qti.soc_model SM8635 +elif [ "$soc_id" -eq 519 ] || [ "$soc_id" -eq 536 ] || [ "$soc_id" -eq 600 ] || [ "$soc_id" -eq 601 ]; then + setprop ro.vendor.qti.soc_name kalama + setprop ro.vendor.qti.soc_model SM8550 + setprop ro.vendor.media_performance_class 33 +elif [ "$soc_id" -eq 608 ]; then + setprop ro.vendor.qti.soc_name crow + setprop ro.vendor.qti.soc_model SM7550 +elif [ "$soc_id" -eq 457 ] || [ "$soc_id" -eq 482 ] || [ "$soc_id" -eq 552 ]; then + setprop ro.vendor.qti.soc_name taro + setprop ro.vendor.qti.soc_model SM8450 + setprop ro.vendor.media_performance_class 31 +elif [ "$soc_id" -eq 537 ] || [ "$soc_id" -eq 583 ]; then + setprop ro.vendor.qti.soc_name parrot + setprop ro.vendor.qti.soc_model SM6450 +elif [ "$soc_id" -eq 613 ]; then + setprop ro.vendor.qti.soc_name parrot + setprop ro.vendor.qti.soc_model SM7435 +elif [ "$soc_id" -eq 568 ] || [ "$soc_id" -eq 602 ]; then + setprop ro.vendor.qti.soc_name ravelin + setprop ro.vendor.qti.soc_model SM4450 +elif [ "$soc_id" -eq 581 ]; then + setprop ro.vendor.qti.soc_name ravelin + setprop ro.vendor.qti.soc_model QCM4490 +elif [ "$soc_id" -eq 582 ]; then + setprop ro.vendor.qti.soc_name ravelin + setprop ro.vendor.qti.soc_model QCS4490 +elif [ "$soc_id" -eq 506 ] || [ "$soc_id" -eq 547 ] || [ "$soc_id" -eq 564 ]; then + setprop ro.vendor.qti.soc_name diwali + setprop ro.vendor.qti.soc_model SM7450 +elif [ "$soc_id" -eq 591 ]; then + setprop ro.vendor.qti.soc_name ukee + setprop ro.vendor.qti.soc_model SM7475 +elif [ "$soc_id" -eq 530 ] || [ "$soc_id" -eq 531 ] || [ "$soc_id" -eq 540 ]; then + setprop ro.vendor.qti.soc_name cape + setprop ro.vendor.qti.soc_model SM8475 + setprop ro.vendor.media_performance_class 31 +elif [ "$soc_id" -eq 415 ] || [ "$soc_id" -eq 439 ] || [ "$soc_id" -eq 456 ] || + [ "$soc_id" -eq 501 ] || [ "$soc_id" -eq 502 ]; then + setprop ro.vendor.qti.soc_name lahaina + setprop ro.vendor.qti.soc_model SM8350 +elif [ "$soc_id" -eq 450 ]; then + setprop ro.vendor.qti.soc_name shima + setprop ro.vendor.qti.soc_model SM7350 +elif [ "$soc_id" -eq 475 ] || [ "$soc_id" -eq 499 ] || [ "$soc_id" -eq 497 ] || + [ "$soc_id" -eq 498 ] || [ "$soc_id" -eq 515 ]; then + setprop ro.vendor.qti.soc_name yupik + setprop ro.vendor.qti.soc_model SM7325 +fi diff --git a/rootdir/bin/init.qti.time.daemon.sh b/rootdir/bin/init.qti.time.daemon.sh new file mode 100644 index 0000000..a6048ea --- /dev/null +++ b/rootdir/bin/init.qti.time.daemon.sh @@ -0,0 +1,23 @@ +#! /vendor/bin/sh +LOG_HEAD="[time-services]" + +current_time=$(date +%s) +echo "${LOG_HEAD} current time : ${current_time}" > /dev/kmsg + +# if time-service initialization is required +if [ "$1" != "1" ]; then + #FIXME : date cmd could return 0 without broadcasting SET_TIME intent, the time diff b/w old & new must be enough + new_time=$((current_time+5)) + date -s @${new_time} + ret=$? + # echo "${LOG_HEAD} date return code : ${ret} " > /dev/kmsg + if [ "$ret" -ne 0 ]; then + echo "${LOG_HEAD} failed to exec date cmd : ${current_time} to ${new_time} with ${ret}" > /dev/kmsg + echo c > /proc/sysrq-trigger #it's not working due to selinux + exit 1 + else + echo "${LOG_HEAD} initialized : ${current_time} to ${new_time}" > /dev/kmsg + fi + + setprop persist.vendor.time_services.init 1 +fi diff --git a/rootdir/bin/init.qti.write.sh b/rootdir/bin/init.qti.write.sh new file mode 100644 index 0000000..a243551 --- /dev/null +++ b/rootdir/bin/init.qti.write.sh @@ -0,0 +1,27 @@ +#!/vendor/bin/sh +#============================================================================= +# Copyright (c) 2021 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +#============================================================================= + +write_with_check() { + local i=60 + while [ $i -gt 0 ] + do + if [ -f "$1" ]; then + break + fi + + sleep 1 + i=$(($i-1)) + done + + if [ ! -f "$1" ]; then + exit 1 + fi + + echo $2 > $1 +} + +write_with_check "$1" "$2" diff --git a/rootdir/bin/init.vendor.sensordebug.sh b/rootdir/bin/init.vendor.sensordebug.sh new file mode 100644 index 0000000..79d6b40 --- /dev/null +++ b/rootdir/bin/init.vendor.sensordebug.sh @@ -0,0 +1,54 @@ +#!/vendor/bin/sh +# Copyright (c) 2020 The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +# +# Function to start sensors for SSC enabled platforms +# +echo "SensorDebug" +if [ ! -d /data/vendor/log/sensordebug ] ; then + mkdir /data/vendor/log/sensordebug + touch /data/vendor/log/sensordebug/.nomedia + chown system.system /data/vendor/log/sensordebug +fi + +if [ ! -d /data/vendor/log/sensordebug/persist ] ; then + mkdir /data/vendor/log/sensordebug/persist + chown system.system /data/vendor/log/sensordebug/persist +else + rm -rf /data/vendor/log/sensordebug/persist/* +fi + +cp -rf /mnt/vendor/persist/sensors/ /data/vendor/log/sensordebug/persist +chown -R system.system /data/vendor/log/sensordebug/persist + +if [ -f /data/vendor/log/sensordebug/qrtr_5 ] ; then + rm -rf /data/vendor/log/sensordebug/qrtr_5 +fi + +cat /dev/ipc_logging/qrtr_5 >> /data/vendor/log/sensordebug/qrtr_5 +chown -R system.system /data/vendor/log/sensordebug/qrtr_5 diff --git a/rootdir/bin/init.vendor.sensordebug.ssr_dump.sh b/rootdir/bin/init.vendor.sensordebug.ssr_dump.sh new file mode 100644 index 0000000..bd83447 --- /dev/null +++ b/rootdir/bin/init.vendor.sensordebug.ssr_dump.sh @@ -0,0 +1,117 @@ +#!/vendor/bin/sh +# Copyright (c) 2020 The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +# +# Function to start sensors for SSC enabled platforms +# +echo "Sensor SSR Dump" +param=$1 +echo "param: $param" +index=0 +adsp_path="none" +adsp_str="adsp" + +if [[ "$param" == "start" || "$param" == "stop" ]]; then + COUNT_CMD='ls -l /sys/class/remoteproc | grep ^l | wc -l' + count=$(eval $COUNT_CMD) + echo "count: $count" + for file in /sys/class/remoteproc/* + do + local_path=$file"/name" + echo "$local_path:$local_path" + name=$(eval cat $local_path) + echo "name:$name" + if [[ "$name" == *"$adsp_str"* ]]; then + echo "found~!! index: $index" + adsp_path=$file + break + fi + ((index++)) + done + + if [ "$param" == "start" ]; then + echo "start" + if [ "$adsp_path" != "none" ]; then + echo "adsp_path:$adsp_path" + SSR_DUMP_CMD="" + ENABLE_RAMDUMPS_CMD='getprop persist.vendor.ssr.enable_ramdumps' + enable_ramdumps=$(eval $ENABLE_RAMDUMPS_CMD) + echo "enable_ramdumps:$enable_ramdumps" + if [ "$enable_ramdumps" == "0" ]; then + SSR_DUMP_CMD+="setprop persist.vendor.ssr.enable_ramdumps 1 &" + fi + + RESTART_LEVEL_CMD='getprop persist.vendor.ssr.restart_level' + restart_level=$(eval $RESTART_LEVEL_CMD) + echo "restart_level:$restart_level" + if [ "$restart_level" == "ALL_ENABLE" ]; then + set_val="$restart_level" + elif [ "$restart_level" == "ALL_DISABLE" ]; then + set_val="adsp" + elif [ -n "$restart_level" ];then + if [[ "$restart_level" == *adsp* ]]; then + set_val="$restart_level" + else + set_val="$restart_level adsp" + fi + else + set_val="adsp" + fi + + SSR_DUMP_CMD+="echo enabled > $adsp_path/recovery &" + SSR_DUMP_CMD+="echo enabled > $adsp_path/coredump &" + SSR_DUMP_CMD+="setprop persist.vendor.ssr.restart_level '$set_val'" + echo "SSR_DUMP_CMD:$SSR_DUMP_CMD" + eval $SSR_DUMP_CMD + fi + fi + + if [ "$param" == "stop" ]; then + echo "stop" + if [ "$adsp_path" != "none" ]; then + echo "adsp_path:$adsp_path" + SSR_DUMP_CMD="setprop persist.vendor.ssr.enable_ramdumps 0 &" + SSR_DUMP_CMD+="echo 0 > /sys/module/qcom_ramdump/parameters/enable_dump_collection &" + SSR_DUMP_CMD+="echo disabled > $adsp_path/recovery &" + SSR_DUMP_CMD+="echo disabled > $adsp_path/coredump &" + SSR_DUMP_CMD+="setprop persist.vendor.ssr.restart_level ALL_DISABLE" + eval $SSR_DUMP_CMD + fi + fi +fi + +if [ "$param" == "complete" ]; then + chown root:system /data/vendor/ramdump/remoteproc-adsp.elf + INTENT_CMD="am broadcast -a com.sec.android.ISSUE_TRACKER_ACTION " + INTENT_CMD+="--ei ERRCODE -126 " + INTENT_CMD+="--es ERRNAME \"Sensor Silent dump\" " + INTENT_CMD+="--es ERRPKG \"Sensor ADSP\" " + INTENT_CMD+="--es ERRMSG \"Sensor SSR Dump after SSR\" " + INTENT_CMD+="--es EXTLOG \"/data/vendor/ramdump/remoteproc-adsp.elf\"" + echo "$INTENT_CMD" && eval "$INTENT_CMD" +fi diff --git a/rootdir/bin/install-recovery.sh b/rootdir/bin/install-recovery.sh new file mode 100644 index 0000000..80ab37f --- /dev/null +++ b/rootdir/bin/install-recovery.sh @@ -0,0 +1,12 @@ +#!/vendor/bin/sh +if ! applypatch --check EMMC:/dev/block/bootdevice/by-name/recovery$(getprop ro.boot.slot_suffix):110034944:fb67367b173f54e3bc51d601d18084bca70ad952; then + applypatch \ + --patch /vendor/recovery-from-boot.p \ + --source EMMC:/dev/block/bootdevice/by-name/boot$(getprop ro.boot.slot_suffix):100663296:6bae827ab03d5a9c73d764a2bed3c454358ebd45 \ + --target EMMC:/dev/block/bootdevice/by-name/recovery$(getprop ro.boot.slot_suffix):110034944:fb67367b173f54e3bc51d601d18084bca70ad952 && \ + (log -t install_recovery "Installing new recovery image: succeeded" && setprop vendor.ota.recovery.status 200) || \ + (log -t install_recovery "Installing new recovery image: failed" && setprop vendor.ota.recovery.status 454) +else + log -t install_recovery "Recovery image already installed" && setprop vendor.ota.recovery.status 200 +fi + diff --git a/rootdir/bin/qca6234-service.sh b/rootdir/bin/qca6234-service.sh new file mode 100644 index 0000000..0d9923c --- /dev/null +++ b/rootdir/bin/qca6234-service.sh @@ -0,0 +1,87 @@ +#! /vendor/bin/sh + +# Copyright (c) 2010-2014, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# * Neither the name of The Linux Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +# Check whether device is plugged on the HSIC bus +# Currently HSIC bus will be the first index + +PATH=/sbin:/system/sbin:/system/bin:/system/xbin +export PATH + +deviceprop=`getprop ro.baseband` +boardprop=`getprop ro.board.platform` + +if [ -e /sys/bus/platform/drivers/msm_hsic_host ]; then + if [ ! -L /sys/bus/usb/devices/1-1 ]; then + echo msm_hsic_host > /sys/bus/platform/drivers/msm_hsic_host/unbind + fi + + chown -h system.system /sys/bus/platform/drivers/msm_hsic_host/bind + chown -h system.system /sys/bus/platform/drivers/msm_hsic_host/unbind + chmod -h 0200 /sys/bus/platform/drivers/msm_hsic_host/bind + chmod -h 0200 /sys/bus/platform/drivers/msm_hsic_host/unbind +fi + +wlanchip="" + +if [ "$deviceprop" == "apq" ] && [ "$boardprop" == "msm8974" ]; then + wlanchip="AR6004-USB" +fi + +# force ar6004 is ar6004_wlan.conf existed. +if [ -f /system/etc/firmware/ath6k/AR6004/ar6004_wlan.conf ]; then + wlanchip=`cat /system/etc/firmware/ath6k/AR6004/ar6004_wlan.conf` +fi + +echo "The WLAN Chip ID is $wlanchip" +if [ "$wlanchip" == "AR6004-USB" ]; then + echo msm_hsic_host > /sys/bus/platform/drivers/msm_hsic_host/unbind + setprop wlan.driver.ath 2 + setprop vendor.bluetooth.soc ath3k + setprop wlan.driver.name /system/lib/modules/ath6kl-3.5/ath6kl_usb.ko + setprop wlan.supp.template /system/etc/wifi/wpa_supplicant_ath6kl.conf + btsoc="ath3k" +elif [ "$wlanchip" == "AR6004-SDIO" ]; then + setprop wlan.driver.ath 2 + setprop vendor.bluetooth.soc ath3k + setprop wlan.driver.name /system/lib/modules/ath6kl-3.5/ath6kl_sdio.ko + setprop wlan.supp.template /system/etc/wifi/wpa_supplicant_ath6kl.conf + btsoc="ath3k" + + # Chown polling nodes as needed from UI running on system server + chmod -h 0200 /sys/devices/msm_sdcc.1/polling + chmod -h 0200 /sys/devices/msm_sdcc.2/polling + chmod -h 0200 /sys/devices/msm_sdcc.3/polling + chmod -h 0200 /sys/devices/msm_sdcc.4/polling + + chown -h system.system /sys/devices/msm_sdcc.1/polling + chown -h system.system /sys/devices/msm_sdcc.2/polling + chown -h system.system /sys/devices/msm_sdcc.3/polling + chown -h system.system /sys/devices/msm_sdcc.4/polling +fi + diff --git a/rootdir/bin/system_dlkm_modprobe.sh b/rootdir/bin/system_dlkm_modprobe.sh new file mode 100644 index 0000000..fb0e619 --- /dev/null +++ b/rootdir/bin/system_dlkm_modprobe.sh @@ -0,0 +1,42 @@ +#! /vendor/bin/sh +#============================================================================= +# Copyright (c) 2022 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +#============================================================================= + +SYSTEM_DLKM_DIR="/system_dlkm/lib/modules" +VENDOR_DLKM_DIR="/vendor_dlkm/lib/modules" + +MODPROBE="/vendor/bin/modprobe" + +for dir in ${SYSTEM_DLKM_DIR} ; +do + if [ ! -e ${dir}/*/modules.load ]; then + continue + fi + if [ -e ${VENDOR_DLKM_DIR}/system_dlkm.modules.blocklist ] && grep -q blocklist ${VENDOR_DLKM_DIR}/system_dlkm.modules.blocklist; then + blocklist_expr="$(sed -n -e 's/blocklist \(.*\)/\1/p' ${VENDOR_DLKM_DIR}/system_dlkm.modules.blocklist | sed -e 's/-/_/g' -e 's/^/-e /')" + else + # Use pattern that won't be found in modules list so that all modules pass through grep below + blocklist_expr="-e %" + fi + # Filter out modules in blocklist - we would see unnecessary errors otherwise + load_modules=$(cat ${dir}/*/modules.load | grep -w -v ${blocklist_expr}) + first_module=$(echo ${load_modules} | cut -d " " -f1) + other_modules=$(echo ${load_modules} | cut -d " " -f2-) + if ! ${MODPROBE} -b -s -d ${dir}/*/ -a ${first_module} > /dev/null ; then + continue + fi + # load modules individually in case one of them fails to init + for module in ${other_modules}; do + ( ${MODPROBE} -b -s -d ${dir}/*/ -a ${module} > /dev/null ) & + done + + wait + + setprop odm.system.all.modules.ready 1 + exit 0 +done + +exit 1 diff --git a/rootdir/bin/vendor_modprobe.sh b/rootdir/bin/vendor_modprobe.sh new file mode 100644 index 0000000..9fddb5d --- /dev/null +++ b/rootdir/bin/vendor_modprobe.sh @@ -0,0 +1,61 @@ +#! /vendor/bin/sh +#============================================================================= +# Copyright (c) 2019-2022 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +#============================================================================= + +VENDOR_DIR="/vendor/lib/modules" +VENDOR_DLKM_DIR="/vendor_dlkm/lib/modules" + +MODPROBE="/vendor/bin/modprobe" + +# vendor modules partition could be /vendor/lib/modules or /vendor_dlkm/lib/modules +POSSIBLE_DIRS="${VENDOR_DLKM_DIR} ${VENDOR_DIR}" +audio_arch=`getprop ro.boot.audio` + +for dir in ${POSSIBLE_DIRS} ; +do + if [ ! -e ${dir}/modules.load ]; then + continue + fi + + if [ "$audio_arch" == "audioreach" ]; then + if [ -e ${dir}/modules.audio.ar.blocklist ]; then + audio_blocklist_expr="$(sed -n -e 's/blocklist \(.*\)/\1/p' ${dir}/modules.audio.ar.blocklist | sed -e 's/-/_/g' -e 's/^/-e /')" + else + audio_blocklist_expr="-e %" + fi + else + if [ -e ${dir}/modules.audio.legacy.blocklist ]; then + audio_blocklist_expr="$(sed -n -e 's/blocklist \(.*\)/\1/p' ${dir}/modules.audio.legacy.blocklist | sed -e 's/-/_/g' -e 's/^/-e /')" + else + audio_blocklist_expr="-e %" + fi + fi + + if [ -e ${dir}/modules.blocklist ]; then + blocklist_expr="$(sed -n -e 's/blocklist \(.*\)/\1/p' ${dir}/modules.blocklist | sed -e 's/-/_/g' -e 's/^/-e /')" + else + # Use pattern that won't be found in modules list so that all modules pass through grep below + blocklist_expr="-e %" + fi + # Filter out modules in blocklist - we would see unnecessary errors otherwise + load_modules=$(sed = ${dir}/modules.load | sed 'N;s/\n/\t/' | sort -uk2 | sort -nk1 | cut -f2- | grep -w -v ${blocklist_expr} | grep -w -v ${audio_blocklist_expr}) + first_module=$(echo ${load_modules} | cut -d " " -f1) + other_modules=$(echo ${load_modules} | cut -d " " -f2-) + if ! ${MODPROBE} -b -s -d ${dir} -a ${first_module} > /dev/null ; then + continue + fi + # load modules individually in case one of them fails to init + for module in ${other_modules}; do + ( ${MODPROBE} -b -d ${dir} -a ${module} > /dev/null ) & + done + + wait + + setprop vendor.all.modules.ready 1 + exit 0 +done + +exit 1 diff --git a/rootdir/etc/fstab.qcom b/rootdir/etc/fstab.qcom new file mode 100644 index 0000000..e91f948 --- /dev/null +++ b/rootdir/etc/fstab.qcom @@ -0,0 +1,28 @@ +system /system erofs ro avb=vbmeta_system,wait,logical,first_stage_mount,avb_keys=/avb/r-gsi.avbpubkey:/avb/s-gsi.avbpubkey:/avb/t-gsi.avbpubkey:/avb/u-gsi.avbpubkey +system /system f2fs ro avb=vbmeta_system,wait,logical,first_stage_mount,avb_keys=/avb/r-gsi.avbpubkey:/avb/s-gsi.avbpubkey:/avb/t-gsi.avbpubkey:/avb/u-gsi.avbpubkey +system /system ext4 ro avb=vbmeta_system,wait,logical,first_stage_mount,avb_keys=/avb/r-gsi.avbpubkey:/avb/s-gsi.avbpubkey:/avb/t-gsi.avbpubkey:/avb/u-gsi.avbpubkey +system_ext /system_ext erofs ro avb=vbmeta_system,wait,logical,first_stage_mount,avb_keys=/avb/r-gsi.avbpubkey:/avb/s-gsi.avbpubkey:/avb/t-gsi.avbpubkey:/avb/u-gsi.avbpubkey +product /product erofs ro avb,wait,logical,first_stage_mount +vendor /vendor erofs ro avb,wait,logical,first_stage_mount +vendor_dlkm /vendor_dlkm erofs ro avb,wait,logical,first_stage_mount +system_dlkm /system_dlkm erofs ro avb,wait,logical,first_stage_mount +system_dlkm /system_dlkm f2fs ro avb,wait,logical,first_stage_mount +system_dlkm /system_dlkm ext4 ro avb,wait,logical,first_stage_mount +odm /odm erofs ro avb,wait,logical,first_stage_mount +/dev/block/by-name/metadata /metadata f2fs noatime,nosuid,nodev,discard,sync,fsync_mode=strict,data_flush wait,check,formattable,wrappedkey,first_stage_mount +/dev/block/bootdevice/by-name/userdata /data f2fs noatime,nosuid,nodev,discard,usrquota,grpquota,fsync_mode=nobarrier,reserve_root=32768,resgid=5678,inlinecrypt latemount,wait,check,,quota,reservedsize=128M,sysfs_path=/sys/devices/platform/soc/1d84000.ufshc,checkpoint=fs,fscompress,fileencryption=aes-256-xts:aes-256-cts:v2+inlinecrypt_optimized+wrappedkey_v0,metadata_encryption=aes-256-xts:wrappedkey_v0,keydirectory=/metadata/vold/metadata_encryption +/dev/block/bootdevice/by-name/cache /cache ext4 noatime,nosuid,nodev,noauto_da_alloc,discard,journal_checksum,data=ordered,errors=panic wait,check +/dev/block/bootdevice/by-name/persist /mnt/vendor/persist ext4 noatime,nosuid,nodev,noauto_da_alloc,discard,journal_checksum,data=ordered,errors=panic wait,check +/dev/block/bootdevice/by-name/misc /misc emmc defaults defaults,first_stage_mount +/dev/block/bootdevice/by-name/apnhlos /vendor/firmware_mnt vfat ro,context=u:object_r:firmware_file:s0,shortname=lower,uid=0,gid=1000,dmask=227,fmask=337 wait +/dev/block/bootdevice/by-name/modem /vendor/firmware-modem vfat ro,shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337,context=u:object_r:firmware_file:s0 wait +/dev/block/bootdevice/by-name/efs /mnt/vendor/efs ext4 noatime,nosuid,nodev,noauto_da_alloc,discard,journal_checksum,data=ordered,errors=panic wait,check +/dev/block/bootdevice/by-name/sec_efs /efs ext4 noatime,nosuid,nodev,noauto_da_alloc,discard,journal_checksum,data=ordered,errors=panic wait,check +/dev/block/bootdevice/by-name/dsp /vendor/dsp ext4 ro,nosuid,nodev,barrier=1 wait +/dev/block/bootdevice/by-name/vendor_boot /vendor_boot emmc defaults defaults,first_stage_mount +/dev/block/bootdevice/by-name/init_boot /init_boot emmc defaults defaults,first_stage_mount +/dev/block/bootdevice/by-name/vm-bootsys /product/vm-system ext4 ro,nosuid,nodev,barrier=1 defaults +/dev/block/platform/soc/1d84000.ufshc/by-name/prism /prism ext4 ro,barrier=1 avb,nofail,first_stage_mount +/dev/block/platform/soc/1d84000.ufshc/by-name/optics /optics ext4 ro,barrier=1 avb,nofail,first_stage_mount +/devices/platform/soc/*.ssusb/*.dwc3/xhci-hcd.*.auto* auto vfat default voldmanaged=usb:auto +/devices/platform/soc/8804000.sdhci/mmc_host* auto auto default voldmanaged=sdcard:auto diff --git a/rootdir/etc/init.e3q.rc b/rootdir/etc/init.e3q.rc new file mode 100644 index 0000000..bcefbe2 --- /dev/null +++ b/rootdir/etc/init.e3q.rc @@ -0,0 +1,181 @@ +# Copyright (c) 2019-2023, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# * Neither the name of The Linux Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# + +on early-init + +on init + +on late-init + +on post-fs + +on late-fs + +on post-fs-data +# Samsung Pay + mkdir /efs/pfw_data 0760 vendor_spay vendor_spay + +# MST/NFC Switch + chown vendor_spay system /dev/mst_ctrl + chmod 0660 /dev/mst_ctrl + +#mAFPC + mkdir /efs/afc 0760 system system + exec - system system -- /system/bin/mafpc_write + +on boot + write /proc/sys/vm/swappiness 100 + +# SDHMS Slowdown : Cpuset + write /dev/cpuset/abnormal/cpus 0-1,5-6 + write /dev/cpuset/moderate/cpus 0-1,5-6 + +# [ Permissions for Range Sensor Sensor +# Range Sensor + chown system radio /sys/class/sensors/range_sensor/ambient + chown system radio /sys/class/sensors/range_sensor/cal01 + chown system radio /sys/class/sensors/range_sensor/cal02 + chown system radio /sys/class/sensors/range_sensor/cal_uid + chown system radio /sys/class/sensors/range_sensor/open_calibration + chown system radio /sys/class/sensors/range_sensor/calibration + chown system radio /sys/class/sensors/range_sensor/enable + chown system radio /sys/class/sensors/range_sensor/error + chown system radio /sys/class/sensors/range_sensor/frame_rate + chown system radio /sys/class/sensors/range_sensor/fw_version + chown system radio /sys/class/sensors/range_sensor/interrupt + chown system radio /sys/class/sensors/range_sensor/mode + chown system radio /sys/class/sensors/range_sensor/name + chown system radio /sys/class/sensors/range_sensor/range_sigma + chown system radio /sys/class/sensors/range_sensor/status + chown system radio /sys/class/sensors/range_sensor/target_status + chown system radio /sys/class/sensors/range_sensor/temp + chown system radio /sys/class/sensors/range_sensor/test01 + chown system radio /sys/class/sensors/range_sensor/test02 + chown system radio /sys/class/sensors/range_sensor/test03 + chown system radio /sys/class/sensors/range_sensor/test_mode + chown system radio /sys/class/sensors/range_sensor/uid + chown system radio /sys/class/sensors/range_sensor/vendor + chown system radio /sys/class/sensors/range_sensor/zone + chown system radio /sys/class/sensors/range_sensor/file_cal + chown system radio /sys/class/sensors/range_sensor/file_p2p + chown system radio /sys/class/sensors/range_sensor/file_shape +# ] Permissions for Range Sensor +on shutdown + +# service definition + +# on property triggers + +# Create carrier folder for HiddenMenu +on post-fs + mkdir /efs/carrier 0755 radio system + chown radio system /efs/carrier + chown radio system /efs/carrier/HiddenMenu +# For Range Sensor + chmod 0660 /dev/range_sensor + chown system system /dev/range_sensor + mkdir /efs/range_sensor 0770 system system + chown system system /efs/range_sensor/cal_data.bin + chmod 0660 /efs/range_sensor/cal_data.bin + chown system system /efs/range_sensor/vl53l5_cal_shape.bin + chmod 0660 /efs/range_sensor/vl53l5_cal_shape.bin + chown system system /efs/range_sensor/vl53l5_cal_p2p.bin + chmod 0660 /efs/range_sensor/vl53l5_cal_p2p.bin + +# Range Sensor +on property:sys.boot_completed=1 + write /sys/class/sensors/range_sensor/calibration 0 + +# some priv-apps of DSH bind mount to DSA priv-apps +on post-fs-data && property:ro.csc.sales_code=DSA + umount /system/carrier + mkdir /mnt/temp + mount none /system/carrier/DSH /mnt/temp bind + mount none /system/carrier/DSA /system/carrier bind + mount none /mnt/temp/priv-app/VisualVoicemailDsh_Stub /system/carrier/priv-app/VisualVoicemailDsh_Stub bind + umount /mnt/temp + rmdir /mnt/temp + +# some priv-apps of DSH & DSA bind mount to DSG priv-apps +on post-fs-data && property:ro.csc.sales_code=DSG + umount /system/carrier + mkdir /mnt/temp1 + mkdir /mnt/temp2 + mount none /system/carrier/DSH /mnt/temp1 bind + mount none /system/carrier/DSA /mnt/temp2 bind + mount none /system/carrier/DSG /system/carrier bind + mount none /mnt/temp1/priv-app/NetworkCompanion /system/carrier/priv-app/NetworkCompanion bind + mount none /mnt/temp1/priv-app/VisualVoicemailDsh_Stub /system/carrier/priv-app/VisualVoicemailDsh_Stub bind + mount none /mnt/temp2/priv-app/Opportunistic /system/carrier/priv-app/Opportunistic bind + umount /mnt/temp1 + umount /mnt/temp2 + rmdir /mnt/temp1 + rmdir /mnt/temp2 + +# some priv-apps of DSA bind mount to DSH priv-apps +on post-fs-data && property:ro.csc.sales_code=DSH + umount /system/carrier + mkdir /mnt/temp + mount none /system/carrier/DSA /mnt/temp bind + mount none /system/carrier/DSH /system/carrier bind + mount none /mnt/temp/priv-app/Opportunistic /system/carrier/priv-app/Opportunistic bind + umount /mnt/temp + rmdir /mnt/temp + +# some priv-apps of TMB bind mount to ASR priv-apps +on post-fs-data && property:ro.csc.sales_code=ASR + umount /system/carrier + mkdir /mnt/temp + mount none /system/carrier/TMB /mnt/temp bind + mount none /system/carrier/ASR /system/carrier bind + mount none /mnt/temp/priv-app/SprintAndroidExtension2_TMB /system/carrier/priv-app/SprintAndroidExtension2_TMB bind + umount /mnt/temp + rmdir /mnt/temp + + +# some priv-apps of TMB bind mount to TMK priv-apps +on post-fs-data && property:ro.csc.sales_code=TMK + umount /system/carrier + mkdir /mnt/temp + mount none /system/carrier/TMB /mnt/temp bind + mount none /system/carrier/TMK /system/carrier bind + mount none /mnt/temp/priv-app/SprintAndroidExtension2_TMB /system/carrier/priv-app/SprintAndroidExtension2_TMB bind + umount /mnt/temp + rmdir /mnt/temp + +# Pageboostd +on property:sys.boot_completed=1 + start pageboostd + +service pageboostd /system/bin/pageboostd + class main + user system + group system mount radio net_bt sdcard_rw shell media media_rw + socket pageboostd seqpacket 0660 system system + disabled diff --git a/rootdir/etc/init.qcom.factory.rc b/rootdir/etc/init.qcom.factory.rc new file mode 100644 index 0000000..138ff93 --- /dev/null +++ b/rootdir/etc/init.qcom.factory.rc @@ -0,0 +1,386 @@ +# +# Copyright (c) 2009-2016, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +# Define fastmmi +service fastmmi /system_ext/bin/mmi + user root + group root + disabled + +service vendor.mmid /vendor/bin/mmid + user root + group root + disabled + +service mmi_diag /system_ext/bin/mmi_diag + class main + user root + group root oem_2901 + disabled + +on property:vendor.sys.boot_mode=ffbm && property:ro.build.type=userdebug + write ${persist.vendor.mmi.misc_dev_path} "ffbm-01" + +on property:vendor.sys.boot_mode=ffbm && property:ro.build.type=eng + write ${persist.vendor.mmi.misc_dev_path} "ffbm-01" + +on property:vendor.sys.boot_mode=qmmi && property:ro.build.type=userdebug + write ${persist.vendor.mmi.misc_dev_path} "qmmi" + +on property:vendor.sys.boot_mode=qmmi && property:ro.build.type=eng + write ${persist.vendor.mmi.misc_dev_path} "qmmi" + +on property:vendor.sys.boot_mode=normal && property:ro.build.type=userdebug + write ${persist.vendor.mmi.misc_dev_path} "normal" + +on property:vendor.sys.boot_mode=normal && property:ro.build.type=eng + write ${persist.vendor.mmi.misc_dev_path} "normal" + +# Creating a scratch storage on /data for factory testing. +on factory-fs && property:ro.bootmode=ffbm-00 && property:ro.build.type=userdebug + mount tmpfs tmpfs /data + +on factory-fs && property:ro.bootmode=ffbm-00 && property:ro.build.type=eng + mount tmpfs tmpfs /data + +on factory-fs && property:ro.bootmode=ffbm-01 && property:ro.build.type=userdebug + mount tmpfs tmpfs /data + +on factory-fs && property:ro.bootmode=ffbm-01 && property:ro.build.type=eng + mount tmpfs tmpfs /data + +# aligned the usb port with system standard, otherwise if only diag be added +# Then in QMMI mode, the whole Andoid be booted, but due to the ro.bootmode is +# not normal/unknow, then when it apply the default funcs, it will turn to MTP +# which cause the diag/Wwan/modem port all be lost in qmmi mode. Details: +# UsbDeviceManager.java---->getDefaultFunctions and trySetEnabledFunctions +on property:persist.vendor.usb.config=* + setprop persist.sys.usb.qmmi.func ${persist.vendor.usb.config} + +on mmi && property:ro.bootmode=ffbm-00 + # ======================================================== + # This is FFBM only settings. + # ======================================================== + #mkdir for factory data files. + mkdir /mnt/vendor/persist/FTM_AP 0750 system system + + start fastmmi + # start qcom-post-boot to set the misc partition path property value + start qcom-post-boot + start mmi_diag + +on mmi && property:ro.bootmode=ffbm-01 + # ======================================================== + # This is FFBM only settings. + # ======================================================== + #mkdir for factory data files. + mkdir /mnt/vendor/persist/FTM_AP 0750 system system + + start fastmmi + ## start qcom-post-boot to set the misc partition path property value + start qcom-post-boot + start mmi_diag + +on property:persist.vendor.usb.config=* && property:ro.bootmode=ffbm-00 && property:ro.build.type=userdebug + setprop sys.usb.config ${persist.vendor.usb.config} + +on property:persist.vendor.usb.config=* && property:ro.bootmode=ffbm-00 && property:ro.build.type=eng + setprop sys.usb.config ${persist.vendor.usb.config} + +on property:persist.vendor.usb.config=* && property:ro.bootmode=ffbm-01 && property:ro.build.type=userdebug + setprop sys.usb.config ${persist.vendor.usb.config} + +on property:persist.vendor.usb.config=* && property:ro.bootmode=ffbm-01 && property:ro.build.type=eng + setprop sys.usb.config ${persist.vendor.usb.config} + +on property:persist.vendor.usb.config=* && property:ro.bootmode=ffbm-02 && property:ro.build.type=userdebug + setprop sys.usb.config ${persist.vendor.usb.config} + +on property:persist.vendor.usb.config=* && property:ro.bootmode=ffbm-02 && property:ro.build.type=eng + setprop sys.usb.config ${persist.vendor.usb.config} + +on property:persist.vendor.usb.config=* && property:ro.bootmode=qmmi && property:ro.build.type=userdebug + setprop sys.usb.config ${persist.vendor.usb.config} + +on property:persist.vendor.usb.config=* && property:ro.bootmode=qmmi && property:ro.build.type=eng + setprop sys.usb.config ${persist.vendor.usb.config} + +on ffbm + trigger early-fs + trigger factory-fs + trigger fs + trigger post-fs + + # Mount fstab in init.{$device}.rc by mount_all with '--late' parameter + # to only mount entries with 'latemount'. This is needed if '--early' is + # specified in the previous mount_all command on the fs stage. + # With /system mounted and properties form /system + /factory available, + # some services can be started. + trigger late-fs + + # Now we can mount /data. File encryption requires keymaster to decrypt + # /data, which in turn can only be loaded when system properties are present. + trigger post-fs-data + + # Now we can start zygote for devices with file based encryption + trigger zygote-start + + # Load persist properties and override properties (if enabled) from /data. + trigger load_persist_props_action + + # Remove a file to wake up anything waiting for firmware. + trigger firmware_mounts_complete + + trigger early-boot + trigger boot + trigger mmi + + +# ======================================================== +# Start for audio TC +# ======================================================== + +service vendor.audio_tc53 /vendor/bin/mm-audio-ftm -tc 53 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc1 /vendor/bin/mm-audio-ftm -tc 1 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc2 /vendor/bin/mm-audio-ftm -tc 2 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc3 /vendor/bin/mm-audio-ftm -tc 3 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc4 /vendor/bin/mm-audio-ftm -tc 4 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc5 /vendor/bin/mm-audio-ftm -tc 5 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc51 /vendor/bin/mm-audio-ftm -tc 51 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc56 /vendor/bin/mm-audio-ftm -tc 56 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc222 /vendor/bin/mm-audio-ftm -tc 222 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc225 /vendor/bin/mm-audio-ftm -tc 225 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc228 /vendor/bin/mm-audio-ftm -tc 228 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc229 /vendor/bin/mm-audio-ftm -tc 229 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc230 /vendor/bin/mm-audio-ftm -tc 230 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc246 /vendor/bin/mm-audio-ftm -tc 246 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc247 /vendor/bin/mm-audio-ftm -tc 247 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc250 /vendor/bin/mm-audio-ftm -tc 250 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc251 /vendor/bin/mm-audio-ftm -tc 251 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc252 /vendor/bin/mm-audio-ftm -tc 252 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc253 /vendor/bin/mm-audio-ftm -tc 253 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc333 /vendor/bin/mm-audio-ftm -tc 333 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc334 /vendor/bin/mm-audio-ftm -tc 334 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc335 /vendor/bin/mm-audio-ftm -tc 335 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc336 /vendor/bin/mm-audio-ftm -tc 336 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc337 /vendor/bin/mm-audio-ftm -tc 337 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc338 /vendor/bin/mm-audio-ftm -tc 338 + user audio + group audio + disabled + oneshot + +service vendor.audio_tc11 /vendor/bin/mm-audio-ftm -tc 11 -file /data/vendor/audio/ftm_headset_mic_record.wav + user audio + group audio + disabled + oneshot + +service vendor.audio_tc16 /vendor/bin/mm-audio-ftm -tc 16 -file /data/vendor/audio/ftm_mic1_record.wav + user audio + group audio + disabled + oneshot + +service vendor.audio_tc17 /vendor/bin/mm-audio-ftm -tc 17 -file /data/vendor/audio/ftm_mic2_record.wav + user audio + group audio + disabled + oneshot + +service vendor.audio_tc18 /vendor/bin/mm-audio-ftm -tc 18 -file /data/vendor/audio/ftm_mic3_record.wav + user audio + group audio + disabled + oneshot + +service vendor.audio_tc19 /vendor/bin/mm-audio-ftm -tc 19 -file /data/vendor/audio/ftm_mic4_record.wav + user audio + group audio + disabled + oneshot + +service vendor.audio_tc20 /vendor/bin/mm-audio-ftm -tc 20 -file /data/vendor/audio/ftm_mic5_record.wav + user audio + group audio + disabled + oneshot + +service vendor.audio_tc21 /vendor/bin/mm-audio-ftm -tc 21 -file /data/vendor/audio/ftm_mic6_record.wav + user audio + group audio + disabled + oneshot + +service vendor.audio_tc101 /vendor/bin/mm-audio-ftm -tc 101 -file /data/vendor/audio/ftm_mic1_record.wav + user audio + group audio + disabled + oneshot + +service vendor.audio_tc102 /vendor/bin/mm-audio-ftm -tc 102 -file /data/vendor/audio/ftm_mic2_record.wav + user audio + group audio + disabled + oneshot + +service vendor.audio_tc103 /vendor/bin/mm-audio-ftm -tc 103 -file /data/vendor/audio/ftm_mic3_record.wav + user audio + group audio + disabled + oneshot + +service vendor.audio_tc104 /vendor/bin/mm-audio-ftm -tc 104 -file /data/vendor/audio/ftm_mic4_record.wav + user audio + group audio + disabled + oneshot + +# ======================================================== +# End for audio TC +# ======================================================== diff --git a/rootdir/etc/init.qcom.rc b/rootdir/etc/init.qcom.rc new file mode 100644 index 0000000..7a078de --- /dev/null +++ b/rootdir/etc/init.qcom.rc @@ -0,0 +1,989 @@ +# Copyright (c) 2009-2012, 2014-2021, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# Changes from Qualcomm Innovation Center are provided under the following +# license: +# +# Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted (subject to the limitations in the +# disclaimer below) provided that the following conditions are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# +# * Neither the name of Qualcomm Innovation Center, Inc. nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE +# GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT +# HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +# IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE +# GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER +# IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +import /vendor/etc/init/hw/init.qti.ufs.rc +import /vendor/etc/init/hw/init.qcom.usb.rc +import /vendor/etc/init/hw/init.qcom.test.rc +import /vendor/etc/init/hw/init.target.rc +import /vendor/etc/init/hw/init.qcom.factory.rc + +on early-init + mount tracefs tracefs /sys/kernel/tracing + chmod 0755 /sys/kernel/tracing + + # create symlink for vendor mount points + symlink /vendor/firmware_mnt /firmware + symlink /vendor/bt_firmware /bt_firmware + symlink /vendor/dsp /dsp + + # Change ownership of sysfs power control node + chown system graphics /sys/class/drm/card0/device/power/control + + #Disable UFS clock scaling + write /sys/bus/platform/devices/1d84000.ufshc/clkscale_enable 0 + #Disable UFS auto_hibern8 + write /sys/bus/platform/devices/1d84000.ufshc/auto_hibern8 0 + #Disable UFS clock gating + write /sys/bus/platform/devices/1d84000.ufshc/clkgate_enable 0 + + chown root system /dev/kmsg + chmod 0620 /dev/kmsg + # Load WIGIG platform driver + exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules msm_11ad_proxy + +on init + + # Support legacy paths + symlink /sdcard /mnt/sdcard + symlink /sdcard /storage/sdcard0 + + # Create cgroup mount point for memory + mkdir /sys/fs/cgroup/memory/bg 0750 root system + write /sys/fs/cgroup/memory/bg/memory.swappiness 140 + write /sys/fs/cgroup/memory/bg/memory.move_charge_at_immigrate 1 + chown root system /sys/fs/cgroup/memory/bg/tasks + chmod 0660 /sys/fs/cgroup/memory/bg/tasks + +on post-fs + +on early-boot + # set RLIMIT_MEMLOCK to 64KB + setrlimit 8 65536 65536 + exec u:r:vendor_qti_init_shell:s0 -- /vendor/bin/init.qcom.early_boot.sh + exec u:r:vendor_qti_init_shell:s0 -- /vendor/bin/init.qti.can.sh + setprop ro.sf.lcd_density ${vendor.display.lcd_density} + + chown system system /mnt/vendor/persist/data/pfm/licenses + chmod 0775 /mnt/vendor/persist/data/pfm/licenses + chown system system /mnt/vendor/persist/data/pfm/licenses/store_0 + chmod 0664 /mnt/vendor/persist/data/pfm/licenses/store_0 + chown system system /mnt/vendor/persist/data/pfm/licenses/store_1 + chmod 0664 /mnt/vendor/persist/data/pfm/licenses/store_1 + chown system system /mnt/vendor/persist/data/pfm/licenses/store_2 + chmod 0664 /mnt/vendor/persist/data/pfm/licenses/store_2 + chown system system /mnt/vendor/persist/data/pfm/licenses/store_3 + chmod 0664 /mnt/vendor/persist/data/pfm/licenses/store_3 + chown system system /mnt/vendor/persist/data/pfm/licenses/store_4 + chmod 0664 /mnt/vendor/persist/data/pfm/licenses/store_4 + +on boot + chown bluetooth bluetooth /sys/module/bluetooth_power/parameters/power + chown bluetooth net_bt /sys/class/rfkill/rfkill0/type + chown bluetooth net_bt /sys/class/rfkill/rfkill0/state + chown bluetooth bluetooth /proc/bluetooth/sleep/proto + chown bluetooth bluetooth /sys/module/hci_uart/parameters/ath_lpm + chown bluetooth bluetooth /sys/module/hci_uart/parameters/ath_btwrite + chown system system /sys/module/sco/parameters/disable_esco + chown bluetooth bluetooth /sys/module/hci_smd/parameters/hcismd_set + chown system system /sys/module/msm_core/parameters/polling_interval + chown system system /sys/module/msm_core/parameters/disabled + chown system system /sys/kernel/boot_slpi/ssr + chown system system /sys/module/radio_iris_transport/parameters/fmsmd_set + chmod 0660 /sys/module/bluetooth_power/parameters/power + chmod 0660 /sys/module/hci_smd/parameters/hcismd_set + chmod 0660 /sys/module/radio_iris_transport/parameters/fmsmd_set + chmod 0660 /sys/class/rfkill/rfkill0/state + chmod 0660 /proc/bluetooth/sleep/proto + chown bluetooth net_bt /dev/ttyHS0 + chmod 0660 /sys/module/hci_uart/parameters/ath_lpm + chmod 0660 /sys/module/hci_uart/parameters/ath_btwrite + chmod 0660 /dev/ttyHS0 + chown bluetooth bluetooth /sys/devices/platform/msm_serial_hs.0/clock + chmod 0660 /sys/devices/platform/msm_serial_hs.0/clock + + chmod 0660 /dev/ttyHS2 + chown bluetooth bluetooth /dev/ttyHS2 + + chown bluetooth net_bt /sys/class/rfkill/rfkill0/device/extldo + chmod 0660 /sys/class/rfkill/rfkill0/device/extldo + chown media audio /sys/kernel/snd_card/card_state + + # for BT MAC address + mkdir /mnt/vendor/efs/bluetooth 0770 system bluetooth + # if already exist + chown system bluetooth /mnt/vendor/efs/bluetooth + chown system bluetooth /mnt/vendor/efs/bluetooth/bt_addr + chmod 0770 /mnt/vendor/efs/bluetooth + chmod 0660 /mnt/vendor/efs/bluetooth/bt_addr + + # permissions for bluetooth. + setprop ro.bt.bdaddr_path "/mnt/vendor/efs/bluetooth/bt_addr" + chown bluetooth bluetooth ro.bt.bdaddr_path + + # This location is used by QCRIL to host UNIX domain + # socket files used for internal IPC within QCRIL + # modules + mkdir /dev/socket/qmux_radio 0770 radio radio + chmod 2770 /dev/socket/qmux_radio + + mkdir /persist/drm 0770 system system + mkdir /persist/bluetooth 0770 bluetooth bluetooth + mkdir /persist/misc 0770 system system + mkdir /persist/alarm 0770 system system + mkdir /mnt/vendor/persist/time 0770 system system + mkdir /mnt/vendor/persist/iar_db 0770 system system + mkdir /mnt/vendor/spunvm 0770 system system + + #Create WIGIG socket area + mkdir /dev/socket/wigig 0770 wifi wifi + + setprop wifi.interface wlan0 + + setprop ro.telephony.call_ring.multiple false + + #Remove SUID bit for iproute2 ip tool + chmod 0755 /system/bin/ip + + + chmod 0444 /sys/devices/platform/msm_hsusb/gadget/usb_state + + setprop net.tcp.2g_init_rwnd 10 + + # To prevent out of order acknowledgements from making + # connection tracking to treat them as not belonging to + # the connection they belong to. + # Otherwise, a weird issue happens in which some long + # connections on high-throughput links get dropped when + # an ack packet comes out of order + write /proc/sys/net/netfilter/nf_conntrack_tcp_be_liberal 1 + + # Allow access for CCID command/response timeout configuration + chown system system /sys/module/ccid_bridge/parameters/bulk_msg_timeout + + # bond0 used by FST Manager + chown wifi wifi /sys/class/net/bond0/bonding/queue_id + + # Allow access to emmc rawdump block partition and dload sysfs node + chown root system /dev/block/bootdevice/by-name/rawdump + chmod 0660 /dev/block/bootdevice/by-name/rawdump + chown root system /sys/kernel/dload/emmc_dload + chmod 0660 /sys/kernel/dload/emmc_dload + chown root system /dev/block/bootdevice/by-name/ramdump + chmod 0660 /dev/block/bootdevice/by-name/ramdump + chown root system /sys/kernel/dload/dload_mode + chmod 0660 /sys/kernel/dload/dload_mode + + chown root graphics /sys/module/msm_drm/parameters/dsi_display0 + chmod 0640 /sys/module/msm_drm/parameters/dsi_display0 + chown root graphics /sys/module/msm_drm/parameters/dsi_display1 + chmod 0640 /sys/module/msm_drm/parameters/dsi_display1 + + chown root system /sys/kernel/qts/primary/trusted_touch_enable + chown root system /sys/kernel/qts/primary/trusted_touch_event + chown root system /sys/kernel/qts/primary/trusted_touch_type + chown root system /sys/kernel/qts/primary/trusted_touch_device_path + + chown root system /sys/kernel/qts/secondary/trusted_touch_enable + chown root system /sys/kernel/qts/secondary/trusted_touch_event + chown root system /sys/kernel/qts/secondary/trusted_touch_type + chown root system /sys/kernel/qts/secondary/trusted_touch_device_path + + chown system system /sys/class/backlight/panel0-backlight/brightness + chown system system /sys/class/backlight/panel0-backlight/max_brightness + chown system system /sys/class/backlight/panel1-backlight/brightness + chown system system /sys/class/backlight/panel1-backlight/max_brightness + + # Allow access to sensors device attributes + # SS_SLPI_PROJECT + #chown system system /sys/class/sensors/MPU6050-accel/enable + #chown system system /sys/class/sensors/MPU6050-accel/poll_delay + #chown system system /sys/class/sensors/MPU6050-gyro/enable + #chown system system /sys/class/sensors/MPU6050-gyro/poll_delay + #chown system system /sys/class/sensors/apds9930-light/enable + #chown system system /sys/class/sensors/apds9930-light/poll_delay + #chown system system /sys/class/sensors/apds9930-proximity/enable + #chown system system /sys/class/sensors/apds9930-proximity/poll_delay + + # Create directory used for display + # for backward compatibility + mkdir /persist/display 0770 system graphics + mkdir /mnt/vendor/persist/display 0770 system graphics + + # Create vpp directory + mkdir /mnt/vendor/persist/vpp 0770 media media + + + # Create hvdcp_opti directory + mkdir /mnt/vendor/persist/hvdcp_opti 0770 root system + + # limit discard size to 128MB in order to avoid long IO latency + write /sys/block/sda/queue/discard_max_bytes 134217728 + +# msm specific files that need to be created on /data +on post-fs-data + mkdir /data/vendor/misc 01771 system system + + # Create directory used for dump collection + mkdir /data/vendor/ssrdump 0770 root system + + # Create directory used by display clients + mkdir /data/vendor/display 0770 system graphics + + # Change lm related dirs + mkdir /data/vendor/lm 0700 root root + + # Create directory used by powermodule + mkdir /data/vendor/pwr 0700 root root + + # Create directory used by media clients + mkdir /data/vendor/media 0770 mediacodec media + + # Create /data/vendor/tzstorage directory for SFS listener + mkdir /data/vendor/tzstorage 0770 system system + + # Create directory for apps access via QTEEConnector + mkdir /data/vendor/qtee 0770 system system + + #Create folder of camera + mkdir /data/vendor/camera 0770 camera system + mkdir /data/vendor/camera/logdump 0770 camera system + chmod 0664 /data/vendor/camera/camxoverridesettings.txt + + #Create directory for tftp + mkdir /data/vendor/tombstones 0771 system system + mkdir /data/vendor/tombstones/rfs 0771 system system + + mkdir /data/vendor/ramdump 0771 root system + mkdir /data/vendor/bluetooth 0770 bluetooth bluetooth + mkdir /data/vendor/ramdump/bluetooth 0770 bluetooth bluetooth + + # Create the directories used by the Wireless subsystem + mkdir /data/vendor/wifi 0770 wifi wifi + mkdir /data/vendor/wifi/sockets 0770 wifi wifi + mkdir /data/vendor/wifi/hostapd 0770 wifi wifi + mkdir /data/vendor/wifi/hostapd/ctrl 0770 wifi wifi + mkdir /data/vendor/wifi/wpa_supplicant 0770 wifi wifi + mkdir /data/vendor/wifi/wigig_hostapd 0770 wifi wifi + mkdir /data/vendor/wifi/wpa 0770 wifi wifi + mkdir /data/vendor/wifi/wpa/sockets 0770 wifi wifi + + # Create the directories used by WiGig Sensing + mkdir /data/vendor/sensing 0770 system wifi + + # Create the directories used by CnE subsystem + mkdir /data/vendor/connectivity 0771 radio radio + chown radio radio /data/vendor/connectivity + + # Create directory used by audio subsystem + mkdir /data/vendor/audio 0770 audio audio + mkdir /data/vendor/audio_dsp 0770 media media + mkdir /data/vendor/audio/audio_collector 0770 audio audio + + # Create directory for audio delta files + mkdir /data/vendor/audio/acdbdata 0770 media audio + mkdir /data/vendor/audio/acdbdata/delta 0770 media audio + + # Create directory for radio + mkdir /data/vendor/radio 0770 system radio + rm /data/vendor/radio/shmbus + + # Create directory for modem_config + mkdir /data/vendor/modem_config 0570 radio root + + # Mounting of persist is moved to 'on emmc-fs' and 'on fs' sections + # We chown/chmod /persist again so because mount is run as root + defaults + chown root system /persist + chmod 0771 /persist + chown system system /persist/WCNSS_qcom_wlan_nv.bin + chmod 0664 /sys/devices/platform/msm_sdcc.1/polling + chmod 0664 /sys/devices/platform/msm_sdcc.2/polling + chmod 0664 /sys/devices/platform/msm_sdcc.3/polling + chmod 0664 /sys/devices/platform/msm_sdcc.4/polling + + # Chown polling nodes as needed from UI running on system server + chown system system /sys/devices/platform/msm_sdcc.1/polling + chown system system /sys/devices/platform/msm_sdcc.2/polling + chown system system /sys/devices/platform/msm_sdcc.3/polling + chown system system /sys/devices/platform/msm_sdcc.4/polling + + #Create the symlink to qcn wpa_supplicant folder for ar6000 wpa_supplicant + #symlink /data/misc/wifi/wpa_supplicant /data/system/wpa_supplicant + + #Create directories for Location services + mkdir /data/vendor/location 0770 gps gps + mkdir /data/vendor/location/mq 0770 gps gps + mkdir /data/vendor/location/xtwifi 0770 gps gps + mkdir /dev/socket/location 0770 gps gps + mkdir /dev/socket/location/mq 0770 gps gps + mkdir /dev/socket/location/xtra 0770 gps gps + mkdir /dev/socket/location/ehub 0770 gps gps + mkdir /dev/socket/location/dgnss 0770 gps gps + + #Create directories for wifihal services + mkdir /dev/socket/wifihal 0770 wifi wifi + chmod 2770 /dev/socket/wifihal + + # Create /data/time folder for time-services + mkdir /data/vendor/time/ 0700 system system + + setprop vold.post_fs_data_done 1 + + #Create a folder for SRS to be able to create a usercfg file + #mkdir /data/data/media 0770 media media + + #Create FM dir for patchdownloader + mkdir /data/vendor/fm 0770 system system + chmod 0770 /data/vendor/fm + + #Create PERFD deamon related dirs + mkdir /data/vendor/perfd 0770 root system + chmod 2770 /data/vendor/perfd + rm /data/vendor/perfd/default_values + + mkdir /data/vendor/secure_element 0777 system system + + mkdir /data/vendor/nfc 0770 nfc nfc + + #Create IOP deamon related dirs + mkdir /data/vendor/iop 0700 root system + + # Mark the copy complete flag to not completed + write /data/vendor/radio/copy_complete 0 + chown radio radio /data/vendor/radio/copy_complete + chmod 0660 /data/vendor/radio/copy_complete + + # copy prebuilt qcril.db files always + copy /vendor/radio/qcril_database/qcril.db /data/vendor/radio/qcril_prebuilt.db + chown radio radio /data/vendor/radio/qcril_prebuilt.db + chmod 0660 /data/vendor/radio/qcril_prebuilt.db + copy /vendor/radio/qcril_database/qcrilNr.db /data/vendor/radio/qcrilNr_prebuilt.db + copy /vendor/etc/qcril_database/qcrilNr.db /data/vendor/radio/qcrilNr_prebuilt.db + chown radio radio /data/vendor/radio/qcrilNr_prebuilt.db + chmod 0660 /data/vendor/radio/qcrilNr_prebuilt.db + + # File flags for prebuilt ril db file + write /data/vendor/radio/prebuilt_db_support 1 + chown radio radio /data/vendor/radio/prebuilt_db_support + chmod 0400 /data/vendor/radio/prebuilt_db_support + write /data/vendor/radio/db_check_done 0 + chown radio radio /data/vendor/radio/db_check_done + chmod 0660 /data/vendor/radio/db_check_done + + # qti-logkit data + mkdir /data/vendor/qti-logkit/ 0771 system system + mkdir /data/vendor/qti-logkit/shared-privileged/ 2770 system system + mkdir /data/vendor/qti-logkit/shared-public/ 2770 system diag + mkdir /data/vendor/qti-logkit/socket-privileged/ 2770 system system + mkdir /data/vendor/qti-logkit/socket-public/ 2750 system diag + mkdir /data/vendor/qti-logkit/logdata/ 2750 system shell + + #Create SWAP related dirs + mkdir /data/vendor/swap 0770 root system + chmod 2770 /data/vendor/swap + + # set aggressive read ahead for dm-0 and dm-1 during boot up + write /sys/block/dm-0/queue/read_ahead_kb 2048 + write /sys/block/dm-1/queue/read_ahead_kb 2048 + write /sys/block/dm-2/queue/read_ahead_kb 2048 + + # Create vpp directory + mkdir /data/vendor/vpp 0770 media media + + #Create dir for TUI + mkdir /data/vendor/tui 0700 system drmrpc + +service nqnfcinfo /system/vendor/bin/nqnfcinfo + class late_start + group nfc + user system + oneshot + +service iop /system/vendor/bin/iop + class main + user root + group root + disabled + socket iop seqpacket 0666 root system + +service qcomsysd /system/vendor/bin/qcom-system-daemon + class main + user root + group root diag oem_2901 + disabled + +on property:persist.vendor.qcomsysd.enabled=1 + enable qcomsysd + +on property:persist.vendor.qcomsysd.enabled=0 + stop qcomsysd + +service vendor.ssr_setup /system/vendor/bin/ssr_setup + oneshot + disabled + +service vendor.ss_ramdump /system/vendor/bin/subsystem_ramdump + class main + user system + group system + ioprio rt 4 + disabled + +service qti-ss-ramdump /vendor/bin/sh /vendor/etc/init/hw/init.qti.ss-ramdump.sh ${persist.vendor.ssr.enable_ramdumps} + class core + user root + oneshot + #seclabel u:r:vendor-qti-testscripts:s0 + +on property:ro.vendor.iocgrp.config=1 + mkdir /dev/blkio + mount cgroup none /dev/blkio blkio + chown system system /dev/blkio + chown system system /dev/blkio/tasks + chmod 0664 /dev/blkio/tasks + mkdir /dev/blkio/bg 0755 system system + chown system system /dev/blkio/bg/tasks + chmod 0664 /dev/blkio/bg/tasks + write /dev/blkio/blkio.weight 1000 + write /dev/blkio/bg/blkio.weight 100 + +on property:persist.sys.ssr.enable_debug=* + write /sys/module/subsystem_restart/parameters/enable_debug ${persist.sys.ssr.enable_debug} + +on property:persist.sys.mba_boot_timeout=* + write /sys/module/pil_msa/parameters/pbl_mba_boot_timeout_ms ${persist.sys.mba_boot_timeout} + +on property:persist.sys.modem_auth_timeout=* + write /sys/module/pil_msa/parameters/modem_auth_timeout_ms ${persist.sys.modem_auth_timeout} + +on property:persist.sys.pil_proxy_timeout=* + write /sys/module/peripheral_loader/parameters/proxy_timeout_ms ${persist.sys.pil_proxy_timeout} + +on property:persist.vendor.ssr.restart_level=* + start vendor.ssr_setup + +on property:persist.vendor.ssr.enable_ramdumps=1 + write /sys/module/subsystem_restart/parameters/enable_ramdumps 1 + write /sys/module/qcom_ramdump/parameters/enable_dump_collection 1 + start qti-ss-ramdump + mkdir /data/vendor/ramdump_ssr 770 system system + start vendor.ss_ramdump + +on property:persist.vendor.ssr.enable_ramdumps=0 + write /sys/module/subsystem_restart/parameters/enable_ramdumps 0 + write /sys/module/qcom_ramdump/parameters/enable_dump_collection 0 + start qti-ss-ramdump + +on property:persist.vendor.sys.rawdump_copy=1 + write /sys/kernel/dload/emmc_dload 1 + +on property:persist.vendor.sys.rawdump_copy=0 + write /sys/kernel/dload/emmc_dload 0 + +on property:sys.boot_completed=1 + write /dev/kmsg "Boot completed " + #Enable UFS clock scaling back + write /sys/bus/platform/devices/1d84000.ufshc/clkscale_enable 1 + #Enable UFS auto_hibern8 back + write /sys/bus/platform/devices/1d84000.ufshc/auto_hibern8 2000 + #Enable UFS clock gating back + write /sys/bus/platform/devices/1d84000.ufshc/clkgate_enable 1 + #Reset read ahead for dm-0 and dm-1 to 512kb + write /sys/block/dm-0/queue/read_ahead_kb 512 + write /sys/block/dm-1/queue/read_ahead_kb 512 + #WDSP FW boot sysfs node used by STHAL + chown media audio /sys/kernel/wdsp0/boot + chown media audio /sys/kernel/wcd_cpe0/fw_name + #Reinit lmkd to reconfigure lmkd properties + setprop lmkd.reinit 1 + chown media audio /sys/kernel/aud_dev/state + write /sys/devices/virtual/cvp/cvp/boot 1 + +on property:persist.vendor.radio.atfwd.start=false + stop vendor.atfwd + +on property:vendor.radio.atfwd.start=false + stop vendor.atfwd + +# corefile limit +on property:persist.debug.trace=1 + mkdir /data/core 0777 root root + write /proc/sys/kernel/core_pattern "/data/core/%E.%p.%e" + +on property:vendor.media.target.version=* + setprop vendor.sys.media.target.version ${vendor.media.target.version} + +on property:vendor.media.target_variant=* + setprop ro.media.xml_variant.codecs ${vendor.media.target_variant} + setprop ro.media.xml_variant.codecs_performance ${vendor.media.target_variant} + +service qcom-c_core-sh /vendor/bin/init.qcom.class_core.sh + class core + user root + oneshot + +service qcom-c_main-sh /vendor/bin/init.class_main.sh + class main + user root + group root system + oneshot + +on property:vold.decrypt=trigger_restart_framework + start qcom-c_main-sh + start wcnss-service + +service irsc_util /vendor/bin/irsc_util "/vendor/etc/sec_config" + class core + user root + oneshot + +service qmiproxy /system/bin/qmiproxy + class main + user radio + group radio diag + disabled + +service vendor.wigig_supplicant /vendor/bin/hw/wpa_supplicant \ + -iwigig0 -Dnl80211 -c/data/vendor/wifi/wigig_supplicant.conf \ + -m/data/vendor/wifi/wigig_p2p_supplicant.conf \ + -O/data/vendor/wifi/wigig_sockets -dd \ + -e/data/vendor/wifi/wigig_entropy.bin -g@android:wigig/wpa_wigig0 \ + -S wigigsvc + # we will start as root and wpa_supplicant will switch to user wifi + # after setting up the capabilities required for WEXT + # user wifi + # group wifi inet keystore + class main + socket wigig/wpa_wigig0 dgram 660 wifi wifi + disabled + oneshot + +# Data Migration +service vendor.move_wifi_data /system/bin/move_wifi_data.sh + class main + user wifi + group wifi + disabled + oneshot + +service wigignpt /vendor/bin/wigignpt + interface vendor.qti.hardware.wigig.netperftuner@1.0::INetPerfTuner default + class hal + socket wigig/wigignpt stream 660 system wifi + user system + group wifi + capabilities NET_ADMIN + disabled + +on property:persist.vendor.wigig.npt.enable=1 + start wigignpt + +service vendor.sensingdaemon /vendor/bin/sensingdaemon + class hal + socket wigig/sensingdaemon stream 660 system wifi + user system + group wifi + disabled + +service dhcpcd_wlan0 /system/bin/dhcpcd -ABKLG + class late_start + disabled + oneshot + +service dhcpcd_bond0 /system/bin/dhcpcd -ABKLG + class late_start + disabled + oneshot + +service dhcpcd_p2p /system/bin/dhcpcd -ABKLG + class late_start + disabled + oneshot + +service dhcpcd_wigig0 /system/bin/dhcpcd -ABKLG + class late_start + disabled + oneshot + +service iprenew_wlan0 /system/bin/dhcpcd -n + class late_start + disabled + oneshot + +service iprenew_bond0 /system/bin/dhcpcd -n + class late_start + disabled + oneshot + +service iprenew_p2p /system/bin/dhcpcd -n + class late_start + disabled + oneshot + +service iprenew_wigig0 /system/bin/dhcpcd -n + class late_start + disabled + oneshot + +service ptt_socket_app /system/vendor/bin/ptt_socket_app -d + class main + user wifi + group wifi system inet net_admin + capabilities NET_ADMIN + oneshot + +service ptt_ffbm /system/vendor/bin/ptt_socket_app -f -d + user root + group root + disabled + oneshot + +service wifi_ftmd /system/vendor/bin/wifi_ftmd + user system + group system inet net_admin + socket wififtmd_server dgram 0660 system system + disabled + oneshot + +on property:vendor.wifi.ftmd.load=true + insmod /system/lib/modules/pronto/pronto_wlan.ko con_mode=5 + +service cnss-daemon /system/vendor/bin/cnss-daemon -n -l + class late_start + user system + group system inet net_admin wifi + capabilities NET_ADMIN + +on property:sys.shutdown.requested=* + write /sys/kernel/shutdown_wlan/shutdown 1 + stop cnss-daemon + +service dhcpcd_bt-pan /system/bin/dhcpcd -BKLG + class late_start + disabled + oneshot + +service iprenew_bt-pan /system/bin/dhcpcd -n + class late_start + disabled + oneshot + +service ssgqmigd /vendor/bin/ssgqmigd + class late_start + user radio + group radio gps system + socket ssgqmig seqpacket 0660 radio inet + +service mlid /vendor/bin/mlid + class late_start + user gps + group gps + socket mlid stream 0666 gps gps + +service loc_launcher /system/vendor/bin/loc_launcher + class late_start + user gps + group gps + +service qcom-sh /vendor/bin/init.qcom.sh + class late_start + user root + group root system radio + oneshot +# Remove since is deprecated but throws AVC denial. +# service crashdata-sh /vendor/bin/init.qcom.crashdata.sh +# class late_start +# user root +# oneshot + +service qcom-post-boot /vendor/bin/init.qcom.post_boot.sh + class late_start + user root + group root system wakelock graphics + disabled + oneshot + +service qti-testscripts /system/bin/sh /product/etc/init.qcom.testscripts.sh + class late_start + user root + disabled + oneshot + seclabel u:r:qti-testscripts:s0 + +service wifi-sdio-on /vendor/bin/init.qcom.sdio.sh + class late_start + group wifi inet + disabled + oneshot + +service wifi-crda /vendor/bin/init.crda.sh + class late_start + user root + disabled + oneshot + +on property:sys.boot_completed=1 + start qcom-post-boot + start qti-testscripts + start init_time_daemon + +on property:ro.vendor.ril.mbn_copy_completed=1 + write /data/vendor/radio/copy_complete 1 + +service qvop-daemon /vendor/bin/qvop-daemon + class late_start + user system + group system drmrpc + +service vendor.atfwd /vendor/bin/ATFWD-daemon + class late_start + user system + group system radio + +service hostapd_fst /vendor/bin/hw/hostapd -dd -g /data/vendor/wifi/hostapd/global + class main + capabilities NET_ADMIN NET_RAW + user wifi + group wifi + disabled + oneshot + +service battery_monitor /system/bin/battery_monitor + user system + group system + disabled + +service vendor.ril-daemon2 /vendor/bin/hw/rild -c 2 + class main + user radio + disabled + group radio cache inet misc audio sdcard_r sdcard_rw diag oem_2901 log + capabilities BLOCK_SUSPEND NET_ADMIN NET_RAW + +service vendor.ril-daemon3 /vendor/bin/hw/rild -c 3 + class main + user radio + disabled + group radio cache inet misc audio sdcard_r sdcard_rw diag oem_2901 log + capabilities BLOCK_SUSPEND NET_ADMIN NET_RAW + +service profiler_daemon /system/bin/profiler_daemon + class late_start + user root + group root + disabled + +service vendor.ssr_diag /system/vendor/bin/ssr_diag + class late_start + user system + group system + disabled + +service diag_mdlog_start /system/vendor/bin/diag_mdlog + class late_start + user shell + group system oem_2901 sdcard_rw sdcard_r media_rw + disabled + oneshot + +service diag_mdlog_stop /system/vendor/bin/diag_mdlog -k + class late_start + user shell + group system oem_2901 sdcard_rw sdcard_r media_rw + disabled + oneshot + +service qlogd /system/xbin/qlogd + socket qlogd stream 0662 system system + class main + disabled +on property:persist.sys.qlogd=1 + start qlogd +on property:persist.sys.qlogd=0 + stop qlogd + +service vm_bms /vendor/bin/vm_bms + user root + group root + disabled + +service vendor.msm_irqbalance /vendor/bin/msm_irqbalance -f /system/vendor/etc/msm_irqbalance.conf + class core + user root + group root + disabled + +service vendor.msm_irqbal_lb /vendor/bin/msm_irqbalance -f /system/vendor/etc/msm_irqbalance_little_big.conf + class core + user root + group root + disabled + +service vendor.msm_irqbl_sdm630 /vendor/bin/msm_irqbalance -f /system/vendor/etc/msm_irqbalance_sdm630.conf + class core + user root + group root + disabled + +# service for USERDEBUG +service vendor.LKCore-dbg /vendor/bin/LKCore + class late_start + oneshot + disabled + user root + group root system log diag net_raw + +# service for USER +service vendor.LKCore-rel /vendor/bin/LKCore + class late_start + oneshot + disabled + user system + group system log diag + +service qseeproxydaemon /system/vendor/bin/qseeproxydaemon + class late_start + user system + group system + +service esepmdaemon /system/vendor/bin/esepmdaemon + class core + user system + group nfc + +on charger + #Enable UFS clock scaling back + write /sys/bus/platform/devices/1d84000.ufshc/clkscale_enable 1 + #Enable UFS auto_hibern8 back + write /sys/bus/platform/devices/1d84000.ufshc/auto_hibern8 2000 + #Enable UFS clock gating back + write /sys/bus/platform/devices/1d84000.ufshc/clkgate_enable 1 + setprop persist.sys.usb.config mass_storage + start qcom-post-boot + +#add poweroffhandler +service poweroffhandler /system/vendor/bin/poweroffhandler + class core + user media + group graphics audio + disabled + oneshot + +service time_daemon /vendor/bin/time_daemon + class main + user system + group system + capabilities SYS_TIME + +#Mixed HWC versions among targets +on property:init.svc.surfaceflinger=restarting + stop vendor.qti.hardware.display.composer + start vendor.qti.hardware.display.composer + +service init_time_daemon /vendor/bin/sh /vendor/bin/init.qti.time.daemon.sh ${persist.vendor.time_services.init} + class late_start + user system + group system + disabled + oneshot + capabilities SYS_TIME + seclabel u:r:vendor_init-qti-time-daemon-sh:s0 + +# Set vendor-ril lib path based on Meta version +on property:vendor.rild.libpath=* + setprop rild.libpath ${vendor.rild.libpath} + +on property:ro.vendor.radio.noril=* + setprop ro.radio.noril ${ro.vendor.radio.noril} + +service vendor.power_off_alarm /vendor/bin/power_off_alarm + class core + group system + disabled + oneshot + +service vendor.hbtp /vendor/bin/hbtp_daemon + class main + user system + group system + capabilities SYS_NICE + disabled + +#service chre /vendor/bin/chre +# class late_start +# user system +# group system +# socket chre seqpacket 0660 root system +# shutdown critical + +#on property:vendor.chre.enabled=0 +# stop chre + +on property:sys.factory.running_pretest=true + write /sys/class/sensors/accelerometer_sensor/lowpassfilter 2 + write /sys/class/sensors/sub_accelerometer_sensor/lowpassfilter 2 + +on property:sys.factory.running_pretest=false + write /sys/class/sensors/accelerometer_sensor/lowpassfilter 1 + write /sys/class/sensors/sub_accelerometer_sensor/lowpassfilter 1 + +service bugreport /system/bin/dumpstate -d -p -B -z -o /data/user_de/0/com.android.shell/files/bugreports/bugreport + class main + disabled + oneshot + keycodes 114 115 116 + +#Set GPU Opengles version +on property:vendor.opengles.version=* + setprop ro.opengles.version ${vendor.opengles.version} + +#Set gpu available frequencies property +on property:vendor.gpu.available_frequencies=* + setprop ro.vendor.gpu.available_frequencies ${vendor.gpu.available_frequencies} diff --git a/rootdir/etc/init.qcom.usb.rc b/rootdir/etc/init.qcom.usb.rc new file mode 100644 index 0000000..842abd2 --- /dev/null +++ b/rootdir/etc/init.qcom.usb.rc @@ -0,0 +1,2791 @@ +# Copyright (c) 2011-2016, 2018-2021 The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# * Neither the name of The Linux Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +# Changes from Qualcomm Innovation Center are provided under the following license: +# Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved. +# SPDX-License-Identifier: BSD-3-Clause-Clear +# + +on init + chown system radio /sys/class/host_notify/usb_otg/booster + chmod 0660 /sys/class/host_notify/usb_otg/booster + chown system radio /sys/class/usb_notify/usb_control/disable + chmod 0660 /sys/class/usb_notify/usb_control/disable + chown root system /sys/class/usb_notify/usb_control/usb_data_enabled + chmod 0664 /sys/class/usb_notify/usb_control/usb_data_enabled + chown system usb /sys/class/usb_notify/usb_control/usb_maximum_speed + chmod 0664 /sys/class/usb_notify/usb_control/usb_maximum_speed + + exec u:r:vendor-qti-testscripts:s0 -- /vendor/bin/sh /vendor/bin/init.qti.usb.debug.sh + +# usb hw param + chown system usb /sys/class/usb_notify/usb_control/usb_hw_param + chmod 0664 /sys/class/usb_notify/usb_control/usb_hw_param + chown system usb /sys/class/usb_notify/usb_control/hw_param + chmod 0664 /sys/class/usb_notify/usb_control/hw_param + +# usb whitelist + chown system usb /sys/class/usb_notify/usb_control/whitelist_for_mdm + chmod 0664 /sys/class/usb_notify/usb_control/whitelist_for_mdm + +on boot + setprop sys.usb.certification 0 + +on property:sys.usb.certification=1 + mount debugfs /sys/kernel/debug /sys/kernel/debug + chown system system /sys/bus/platform/devices/a600000.ssusb/orientation + chmod 0666 /sys/bus/platform/devices/a600000.ssusb/orientation + chown system system /sys/class/host_notify/usb_otg/mode + chmod 0666 /sys/class/host_notify/usb_otg/mode + chown system system /sys/bus/usb/drivers/hub/unbind + chmod 0666 /sys/bus/usb/drivers/hub/unbind + chown system system /sys/bus/usb/drivers/lvs/new_id + chmod 0666 /sys/bus/usb/drivers/lvs/new_id + chown system system /sys/bus/usb/drivers/lvs/bind + chmod 0666 /sys/bus/usb/drivers/lvs/bind + chown system system /sys/kernel/debug + chmod 0755 /sys/kernel/debug + +on property:sys.usb.certification=2 + chown system system /sys/bus/usb/devices/usb3/power/control + chmod 0666 /sys/bus/usb/devices/usb3/power/control + chown system system /sys/bus/usb/devices/usb2/power/control + chmod 0666 /sys/bus/usb/devices/usb2/power/control + chown system system /sys/bus/usb/drivers/lvs/1-0:1.0/test_mode + chmod 0666 /sys/bus/usb/drivers/lvs/1-0:1.0/test_mode + chown system system /sys/bus/usb/drivers/lvs/1-0:1.0/get_dev_desc + chmod 0666 /sys/bus/usb/drivers/lvs/1-0:1.0/get_dev_desc + chown system system /sys/bus/usb/drivers/lvs/2-0:1.0/test_mode + chmod 0666 /sys/bus/usb/drivers/lvs/2-0:1.0/test_mode + chown system system /sys/bus/usb/drivers/lvs/2-0:1.0/get_dev_desc + chmod 0666 /sys/bus/usb/drivers/lvs/2-0:1.0/get_dev_desc + chown system system /sys/bus/usb/drivers/lvs/3-0:1.0/test_mode + chmod 0666 /sys/bus/usb/drivers/lvs/3-0:1.0/test_mode + chown system system /sys/bus/usb/drivers/lvs/3-0:1.0/get_dev_desc + chmod 0666 /sys/bus/usb/drivers/lvs/3-0:1.0/get_dev_desc + chown system system /d/usb/xhci/xhci-hcd.2.auto/ports/port02/portsc + chmod 0666 /d/usb/xhci/xhci-hcd.2.auto/ports/port02/portsc + +on charger && property:ro.debuggable=1 + mkdir /dev/usb-ffs 0770 shell shell + mkdir /dev/usb-ffs/adb 0770 shell shell + mount configfs none /config + mkdir /config/usb_gadget/g1 0771 shell shell + mkdir /config/usb_gadget/g1/strings/0x409 0770 + write /config/usb_gadget/g1/bcdUSB 0x0200 + write /config/usb_gadget/g1/os_desc/use 1 + write /config/usb_gadget/g1/strings/0x409/serialnumber ${ro.serialno} + write /config/usb_gadget/g1/strings/0x409/manufacturer ${ro.product.manufacturer} + mkdir /config/usb_gadget/g1/functions/ffs.adb + mkdir /config/usb_gadget/g1/configs/b.1 0770 shell shell + mkdir /config/usb_gadget/g1/configs/b.1/strings/0x409 0770 shell shell + write /config/usb_gadget/g1/configs/b.1/MaxPower 900 + mount functionfs adb /dev/usb-ffs/adb uid=2000,gid=2000 + #exec u:r:vendor_qti_init_shell:s0 -- /vendor/bin/init.qcom.usb.sh + write /config/usb_gadget/g1/strings/0x409/product ${vendor.usb.product_string} + write /sys/class/android_usb/android0/f_ffs/aliases adb + setprop sys.usb.config adb + setprop sys.usb.configfs 1 + +on post-fs-data + mount configfs none /config + chown system usb /config/usb_gadget/ + mkdir /config/usb_gadget/g1 0771 system usb + chown system usb /config/usb_gadget/g1/UDC + chown system usb /config/usb_gadget/g1/bDeviceClass + chown system usb /config/usb_gadget/g1/bDeviceProtocol + chown system usb /config/usb_gadget/g1/bDeviceSubClass + chown system usb /config/usb_gadget/g1/bMaxPacketSize0 + chown system usb /config/usb_gadget/g1/bcdDevice + chown system usb /config/usb_gadget/g1/bcdUSB + chown system usb /config/usb_gadget/g1/configs + chown system usb /config/usb_gadget/g1/functions + chown system usb /config/usb_gadget/g1/idProduct + chown system usb /config/usb_gadget/g1/idVendor + chown system usb /config/usb_gadget/g1/max_speed + chown system usb /config/usb_gadget/g1/os_desc + chown system usb /config/usb_gadget/g1/strings + mkdir /config/usb_gadget/g1/strings/0x409 0770 system usb + chown system usb /config/usb_gadget/g1/strings/0x409/manufacturer + chown system usb /config/usb_gadget/g1/strings/0x409/product + chown system usb /config/usb_gadget/g1/strings/0x409/serialnumber + mkdir /config/usb_gadget/g1/functions/mass_storage.0 0770 system usb + mkdir /config/usb_gadget/g1/functions/accessory.gs2 0770 system usb + mkdir /config/usb_gadget/g1/functions/audio_source.gs3 0770 system usb + mkdir /config/usb_gadget/g1/functions/midi.gs5 0770 system usb + chown system usb /config/usb_gadget/g1/functions/midi.gs5/buflen + chown system usb /config/usb_gadget/g1/functions/midi.gs5/id + chown system usb /config/usb_gadget/g1/functions/midi.gs5/in_ports + chown system usb /config/usb_gadget/g1/functions/midi.gs5/index + chown system usb /config/usb_gadget/g1/functions/midi.gs5/out_ports + chown system usb /config/usb_gadget/g1/functions/midi.gs5/qlen + mkdir /config/usb_gadget/g1/functions/ffs.adb 0770 system usb + mkdir /config/usb_gadget/g1/functions/ffs.diag 0770 system usb + mkdir /config/usb_gadget/g1/functions/ffs.diag_mdm 0770 system usb + mkdir /config/usb_gadget/g1/functions/ffs.diag_mdm2 0770 system usb + mkdir /config/usb_gadget/g1/functions/diag.diag 0770 system usb + mkdir /config/usb_gadget/g1/functions/diag.diag_mdm 0770 system usb + mkdir /config/usb_gadget/g1/functions/diag.diag_mdm2 0770 system usb + mkdir /config/usb_gadget/g1/functions/cser.dun.0 0770 system usb + mkdir /config/usb_gadget/g1/functions/cser.nmea.1 0770 system usb + mkdir /config/usb_gadget/g1/functions/cser.dun.2 0770 system usb + mkdir /config/usb_gadget/g1/functions/gsi.rmnet 0770 system usb + mkdir /config/usb_gadget/g1/functions/gsi.rndis 0770 system usb + mkdir /config/usb_gadget/g1/functions/gsi.dpl 0770 system usb + mkdir /config/usb_gadget/g1/functions/qdss.qdss 0770 system usb + mkdir /config/usb_gadget/g1/functions/qdss.qdss_mdm 0770 system usb + mkdir /config/usb_gadget/g1/functions/qdss.qdss_sw 0770 system usb + mkdir /config/usb_gadget/g1/functions/rndis_bam.rndis 0770 system usb + mkdir /config/usb_gadget/g1/functions/rndis.rndis 0770 system usb + mkdir /config/usb_gadget/g1/functions/rmnet_bam.rmnet 0770 system usb + mkdir /config/usb_gadget/g1/functions/rmnet_bam.dpl 0770 system usb + mkdir /config/usb_gadget/g1/functions/rmnet_bam.rmnet_bam_dmux 0770 system usb + mkdir /config/usb_gadget/g1/functions/rmnet_bam.dpl_bam_dmux 0770 system usb + mkdir /config/usb_gadget/g1/functions/ncm.0 0770 system usb + chown system usb /config/usb_gadget/g1/functions/ncm.0/host_addr + chown system usb /config/usb_gadget/g1/functions/ncm.0/ifname + chown system usb /config/usb_gadget/g1/functions/ncm.0/os_desc + chown system usb /config/usb_gadget/g1/functions/ncm.0/dev_addr + chown system usb /config/usb_gadget/g1/functions/ncm.0/os_desc/interface.ncm + chown system usb /config/usb_gadget/g1/functions/ncm.0/os_desc/interface.ncm/compatible_id + chown system usb /config/usb_gadget/g1/functions/ncm.0/os_desc/interface.ncm/sub_compatible_id + chown system usb /config/usb_gadget/g1/functions/ncm.0/qmult + mkdir /config/usb_gadget/g1/functions/ccid.ccid 0770 system usb + mkdir /config/usb_gadget/g1/functions/uac2.0 0770 system usb + mkdir /config/usb_gadget/g1/functions/uvc.0 0770 system usb + mkdir /config/usb_gadget/g1/functions/ss_acm.0 + mkdir /config/usb_gadget/g1/functions/conn_gadget.0 + mkdir /config/usb_gadget/g1/functions/ss_mon.mtp + mkdir /config/usb_gadget/g1/functions/ss_mon.ptp + mkdir /config/usb_gadget/g1/functions/ss_mon.diag1 + mkdir /config/usb_gadget/g1/functions/ss_mon.diag2 + mkdir /config/usb_gadget/g1/functions/ss_mon.etc + mkdir /config/usb_gadget/g1/configs/b.1 0770 system usb + chown system usb /config/usb_gadget/g1/configs/b.1/MaxPower + chown system usb /config/usb_gadget/g1/configs/b.1/bmAttributes + chown system usb /config/usb_gadget/g1/configs/b.1/strings + chown system usb /config/usb_gadget/g1/os_desc/b.1 + chown system usb /config/usb_gadget/g1/os_desc/b_vendor_code + chown system usb /config/usb_gadget/g1/os_desc/qw_sign + chown system usb /config/usb_gadget/g1/os_desc/use + mkdir /config/usb_gadget/g1/configs/b.1/strings/0x409 0770 system usb + chown system usb /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration + + # Create second ConfigFS gadget instance for dual-device configuration + mkdir /config/usb_gadget/g2 0770 system usb + mkdir /config/usb_gadget/g2/strings/0x409 0770 system usb + mkdir /config/usb_gadget/g2/configs/b.1 0770 system usb + mkdir /config/usb_gadget/g2/configs/b.1/strings/0x409 0770 system usb + chown system usb /config/usb_gadget/g2/configs/b.1/strings/0x409/configuration + chown system usb /config/usb_gadget/g2/UDC + chown system usb /config/usb_gadget/g2/bDeviceClass + chown system usb /config/usb_gadget/g2/bDeviceProtocol + chown system usb /config/usb_gadget/g2/bDeviceSubClass + chown system usb /config/usb_gadget/g2/bMaxPacketSize0 + chown system usb /config/usb_gadget/g2/bcdDevice + chown system usb /config/usb_gadget/g2/bcdUSB + chown system usb /config/usb_gadget/g2/configs + chown system usb /config/usb_gadget/g2/functions + chown system usb /config/usb_gadget/g2/idProduct + chown system usb /config/usb_gadget/g2/idVendor + chown system usb /config/usb_gadget/g2/max_speed + chown system usb /config/usb_gadget/g2/os_desc + chown system usb /config/usb_gadget/g2/strings + + write /config/usb_gadget/g1/bcdUSB 0x0200 + write /config/usb_gadget/g2/bcdUSB 0x0200 + write /config/usb_gadget/g1/strings/0x409/serialnumber ${ro.serialno} + write /config/usb_gadget/g2/strings/0x409/serialnumber ${ro.serialno} + write /config/usb_gadget/g1/strings/0x409/manufacturer "SAMSUNG" + write /config/usb_gadget/g2/strings/0x409/manufacturer "SAMSUNG" + write /config/usb_gadget/g1/strings/0x409/product "SAMSUNG_Android" + write /config/usb_gadget/g2/strings/0x409/product "SAMSUNG_Android" + write /config/usb_gadget/g1/configs/b.1/MaxPower 900 + write /config/usb_gadget/g1/bcdDevice 0x504 + write /config/usb_gadget/g1/os_desc/use 1 + write /config/usb_gadget/g1/os_desc/b_vendor_code 0x1 + write /config/usb_gadget/g1/os_desc/qw_sign "MSFT100" + write /config/usb_gadget/g1/functions/diag.diag/serial ${ro.serialno} + mkdir /dev/usb-ffs 0775 shell system + mkdir /dev/usb-ffs/adb 0770 shell system + mount functionfs adb /dev/usb-ffs/adb uid=2000,gid=1000,rmode=0770,fmode=0660 + mkdir /dev/ffs-diag 0770 shell system + mount functionfs diag /dev/ffs-diag uid=2000,gid=1000,rmode=0770,fmode=0660,no_disconnect=1 + mkdir /dev/ffs-diag-1 0770 shell system + mount functionfs diag_mdm /dev/ffs-diag-1 uid=2000,gid=1000,rmode=0770,fmode=0660,no_disconnect=1 + mkdir /dev/ffs-diag-2 0770 shell system + mount functionfs diag_mdm2 /dev/ffs-diag-2 uid=2000,gid=1000,rmode=0770,fmode=0660,no_disconnect=1 + setprop sys.usb.mtp.device_type 3 + exec u:r:vendor_qti_init_shell:s0 - system usb -- /vendor/bin/init.qcom.usb.sh + + +# configfs attributes permission + chmod 0660 /config/usb_gadget/g1/configs/b.1/MaxPower + chown system system /config/usb_gadget/g1/configs/b.1/MaxPower + + chmod 0660 /config/usb_gadget/g1/configs/b.1/bmAttributes + chown system system /config/usb_gadget/g1/configs/b.1/bmAttributes + +# MTP permission + chmod 0660 /dev/usb_mtp_gadget + chown system mtp /dev/usb_mtp_gadget + mkdir /dev/socket/mtp 0770 system mtp + +# CDFS permission + chown system system /config/usb_gadget/g1/functions/mass_storage.0/lun.0/file + chmod 0660 /config/usb_gadget/g1/functions/mass_storage.0/lun.0/file + +# NCM permission + chown system system /sys/class/android_usb/android0/terminal_version + chmod 0660 /sys/class/android_usb/android0/terminal_version + +# Ethernet Address permission + chown system system /sys/class/android_usb/android0/f_rndis/ethaddr + chmod 0660 /sys/class/android_usb/android0/f_rndis/ethaddr + +# Set rndis_class_id = 1 for Samsung RNDIS driver + write /config/usb_gadget/g1/functions/gsi.rndis/rndis_class_id 1 + +# MTP function + mkdir /config/usb_gadget/g1/functions/ffs.mtp 0770 system usb + mkdir /config/usb_gadget/g1/functions/ffs.ptp 0770 system usb + mkdir /dev/usb-ffs/mtp 0770 mtp mtp + mount functionfs mtp /dev/usb-ffs/mtp rmode=0770,fmode=0660,uid=1024,gid=1024,no_disconnect=1 + mkdir /dev/usb-ffs/ptp 0770 mtp mtp + mount functionfs ptp /dev/usb-ffs/ptp rmode=0770,fmode=0660,uid=1024,gid=1024,no_disconnect=1 + +on boot && property:vendor.usb.use_ffs_mtp=1 + setprop sys.usb.mtp.batchcancel 1 + +on boot && property:vendor.usb.use_gadget_hal=1 + setprop sys.usb.configfs 2 + +on property:sys.usb.config=* && property:sys.usb.configfs=2 + setprop vendor.usb.config ${sys.usb.config} + +on property:vendor.usb.config=* && property:sys.usb.configfs=2 + start usbd + +on property:vendor.usb.controller=* && property:vendor.usb.use_gadget_hal=0 + setprop sys.usb.controller ${vendor.usb.controller} + setprop sys.usb.configfs 1 + +#on property:persist.vendor.usb.config=* && property:vendor.usb.use_gadget_hal=0 +# setprop persist.sys.usb.config ${persist.vendor.usb.config} + +on boot && property:ro.boot.usbconfigfs=true + setprop sys.usb.configfs 1 + +# +# USB compositions +# +# Following are the triggers to configure various combinations of functions into a USB +# composition. Each correspond to a unique VID/PID. +# +on property:sys.usb.config=* && property:sys.usb.configfs=1 + rm /config/usb_gadget/g1/os_desc/b.1 + +on property:sys.usb.config=none && property:sys.usb.configfs=1 + write /sys/class/usb_notify/usb_control/usb_maximum_speed "super-speed" + write /config/usb_gadget/g1/UDC "none" + stop adbd + setprop sys.usb.ffs.ready 0 + write /config/usb_gadget/g1/bDeviceClass 0 + write /config/usb_gadget/g1/bDeviceSubClass 0 + write /config/usb_gadget/g1/bDeviceProtocol 0 + setprop sys.usb.state ${sys.usb.config} + +# adb only USB configuration +# This is the fallback configuration if the +# USB manager fails to set a standard configuration +on property:sys.usb.config=adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x6860 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_mon.etc /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +# USB Accessory, Audio Accessory configuraion for Google USB Driver +on property:sys.boot_completed=1 && property:sys.usb.config=accessory && property:sys.usb.configfs=1 && property:persist.sys.usb.speed_limit=1 + write /sys/class/usb_notify/usb_control/usb_maximum_speed "full-speed" + +on property:sys.boot_completed=1 && property:sys.usb.config=accessory && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "acc" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x18d1 + write /config/usb_gadget/g1/idProduct 0x2d00 + symlink /config/usb_gadget/g1/functions/accessory.gs2 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_mon.etc /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=accessory,adb && property:sys.usb.configfs=1 && property:persist.sys.usb.speed_limit=1 + write /sys/class/usb_notify/usb_control/usb_maximum_speed "full-speed" + +on property:sys.boot_completed=1 && property:sys.usb.config=accessory,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.boot_completed=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=accessory,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "acc_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x18d1 + write /config/usb_gadget/g1/idProduct 0x2d01 + symlink /config/usb_gadget/g1/functions/accessory.gs2 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ss_mon.etc /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=audio_source && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "audio" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x18d1 + write /config/usb_gadget/g1/idProduct 0x2d02 + symlink /config/usb_gadget/g1/functions/audio_source.gs3 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_mon.etc /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=audio_source,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.boot_completed=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=audio_source,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "audio_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x18d1 + write /config/usb_gadget/g1/idProduct 0x2d03 + symlink /config/usb_gadget/g1/functions/audio_source.gs3 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ss_mon.etc /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=accessory,audio_source && property:sys.usb.configfs=1 && property:persist.sys.usb.speed_limit=1 + write /sys/class/usb_notify/usb_control/usb_maximum_speed "full-speed" + +on property:sys.boot_completed=1 && property:sys.usb.config=accessory,audio_source && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "acc_audio" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x18d1 + write /config/usb_gadget/g1/idProduct 0x2d04 + symlink /config/usb_gadget/g1/functions/accessory.gs2 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/audio_source.gs3 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ss_mon.etc /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=accessory,audio_source,adb && property:sys.usb.configfs=1 && property:persist.sys.usb.speed_limit=1 + write /sys/class/usb_notify/usb_control/usb_maximum_speed "full-speed" + +on property:sys.boot_completed=1 && property:sys.usb.config=accessory,audio_source,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.boot_completed=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=accessory,audio_source,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "acc_audio_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x18d1 + write /config/usb_gadget/g1/idProduct 0x2d05 + symlink /config/usb_gadget/g1/functions/accessory.gs2 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/audio_source.gs3 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/ss_mon.etc /config/usb_gadget/g1/configs/b.1/f4 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +# USB Composite for Samsung USB Driver + +on property:sys.boot_completed=1 && property:sys.usb.config=sec_charging && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "charging" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x6860 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_mon.mtp /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=sec_charging,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.boot_completed=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=sec_charging,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "charging_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x6860 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ss_mon.mtp /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=mtp && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mtp" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x6860 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_acm.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ss_mon.mtp /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=mtp,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.boot_completed=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=mtp,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mtp_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x6860 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_acm.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/ss_mon.mtp /config/usb_gadget/g1/configs/b.1/f4 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=mtp,conn_gadget && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mtp_conn" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x6860 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_acm.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/conn_gadget.0 /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/ss_mon.mtp /config/usb_gadget/g1/configs/b.1/f4 + write /sys/class/android_usb/f_conn_gadget/bInterfaceProtocol ${vendor.usb.conn_gadget_protocol} + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=mtp,conn_gadget,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.boot_completed=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=mtp,conn_gadget,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mtp_conn_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x6860 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_acm.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/conn_gadget.0 /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/ss_mon.mtp /config/usb_gadget/g1/configs/b.1/f5 + write /sys/class/android_usb/f_conn_gadget/bInterfaceProtocol ${vendor.usb.conn_gadget_protocol} + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +#[For Smart MTP CHN +on property:sys.boot_completed=1 && property:sys.usb.config=mtp,categories && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mtp_cat" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x6860 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_acm.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ss_mon.mtp /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=mtp,categories,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.boot_completed=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=mtp,categories,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mtp_cat_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x6860 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_acm.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/ss_mon.mtp /config/usb_gadget/g1/configs/b.1/f4 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=mtp,categories,conn_gadget && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mtp_cat_conn" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x6860 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_acm.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/conn_gadget.0 /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/ss_mon.mtp /config/usb_gadget/g1/configs/b.1/f4 + write /sys/class/android_usb/f_conn_gadget/bInterfaceProtocol ${vendor.usb.conn_gadget_protocol} + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=mtp,categories,conn_gadget,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.boot_completed=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=mtp,categories,conn_gadget,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mtp_cat_conn_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x6860 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_acm.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/conn_gadget.0 /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/ss_mon.mtp /config/usb_gadget/g1/configs/b.1/f5 + write /sys/class/android_usb/f_conn_gadget/bInterfaceProtocol ${vendor.usb.conn_gadget_protocol} + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} +#] + +on property:sys.boot_completed=1 && property:sys.usb.config=ptp && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "ptp" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x6865 + symlink /config/usb_gadget/g1/functions/ffs.ptp /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_mon.ptp /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=ptp,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.boot_completed=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=ptp,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "ptp_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x6866 + symlink /config/usb_gadget/g1/functions/ffs.ptp /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ss_mon.ptp /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=rndis && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x6863 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_mon.etc /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=rndis,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.boot_completed=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x6864 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ss_mon.etc /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=midi && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "midi" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x686C + symlink /config/usb_gadget/g1/functions/midi.gs5 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_mon.etc /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=midi,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.boot_completed=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=midi,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "midi_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x686C + symlink /config/usb_gadget/g1/functions/midi.gs5 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ss_mon.etc /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=ncm && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "ncm" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x685d + write /config/usb_gadget/g1/bDeviceClass 2 + symlink /config/usb_gadget/g1/functions/ncm.0 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_mon.etc /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=ncm,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.boot_completed=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=ncm,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "ncm_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x685d + write /config/usb_gadget/g1/bDeviceClass 2 + symlink /config/usb_gadget/g1/functions/ncm.0 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ss_mon.etc /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +# rndis,acm,diag and rmnet,acm,diag are used for IOT Hidden Menu +on property:sys.boot_completed=1 && property:sys.usb.config=rndis,acm,diag && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_acm_diag" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x6864 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_acm.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/ss_mon.diag2 /config/usb_gadget/g1/configs/b.1/f5 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=rndis,acm,diag,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.boot_completed=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,acm,diag,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_acm_diag_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x6864 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_acm.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/ss_mon.diag2 /config/usb_gadget/g1/configs/b.1/f6 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=acm,diag,rmnet && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rmnet_acm_diag" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x685D + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ss_acm.0 /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/gsi.rmnet /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/ss_mon.diag2 /config/usb_gadget/g1/configs/b.1/f5 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=acm,diag,rmnet,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.boot_completed=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=acm,diag,rmnet,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rmnet_acm_diag_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x685D + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ss_acm.0 /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/gsi.rmnet /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/ss_mon.diag2 /config/usb_gadget/g1/configs/b.1/f6 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=acm,diag && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "acm_diag" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x685D + symlink /config/usb_gadget/g1/functions/ss_acm.0 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/ss_mon.diag2 /config/usb_gadget/g1/configs/b.1/f4 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=acm,diag,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.boot_completed=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=acm,diag,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "acm_diag_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x685D + symlink /config/usb_gadget/g1/functions/ss_acm.0 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/ss_mon.diag2 /config/usb_gadget/g1/configs/b.1/f5 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=diag,diag_mdm,qdss,qdss_mdm,serial_cdev,rmnet,dpl && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_diag_mdm_qdss_qdss_mdm_dun_rmnet_dpl" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0xF000 + symlink /config/usb_gadget/g1/functions/mass_storage.0 /config/usb_gadget/g1/configs/b.1/f1 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=diag,diag_mdm,qdss,qdss_mdm,serial_cdev,rmnet,dpl,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.boot_completed=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,diag_mdm,qdss,qdss_mdm,serial_cdev,rmnet,dpl,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_diag_mdm_qdss_qdss_mdm_dun_rmnet_dpl_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90E5 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/qdss.qdss /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/qdss.qdss_mdm /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f6 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f7 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f8 + symlink /config/usb_gadget/g1/functions/ss_mon.diag2 /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=diag,qdss,serial_cdev,rmnet,dpl && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_dun_rmnet_dpl_qdss" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90DC + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90dc + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/ss_mon.diag1 /config/usb_gadget/g1/configs/b.1/f6 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=diag,qdss,serial_cdev,rmnet,dpl,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.boot_completed=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,qdss,serial_cdev,rmnet,dpl,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_dun_rmnet_dpl_qdss_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90DB + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90db + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f6 + symlink /config/usb_gadget/g1/functions/ss_mon.diag1 /config/usb_gadget/g1/configs/b.1/f7 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +# For CDFS composite +on property:sys.boot_completed=1 && property:sys.usb.config=mass_storage && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mass" + chown system system /config/usb_gadget/g1/functions/mass_storage.0/lun.0/file + chmod 0660 /config/usb_gadget/g1/functions/mass_storage.0/lun.0/file + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x685B + write /config/usb_gadget/g1/functions/mass_storage.0/lun.0/removable 1 + write /config/usb_gadget/g1/functions/mass_storage.0/lun.0/cdrom 1 + write /config/usb_gadget/g1/functions/mass_storage.0/lun.0/ro 0 + symlink /config/usb_gadget/g1/functions/mass_storage.0 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ss_mon.etc /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.boot_completed=1 && property:sys.usb.config=mass_storage,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.boot_completed=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=mass_storage,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mass_adb" + chown system system /config/usb_gadget/g1/functions/mass_storage.0/lun.0/file + chmod 0660 /config/usb_gadget/g1/functions/mass_storage.0/lun.0/file + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x04E8 + write /config/usb_gadget/g1/idProduct 0x685E + write /config/usb_gadget/g1/functions/mass_storage.0/lun.0/removable 1 + write /config/usb_gadget/g1/functions/mass_storage.0/lun.0/cdrom 1 + write /config/usb_gadget/g1/functions/mass_storage.0/lun.0/ro 0 + symlink /config/usb_gadget/g1/functions/mass_storage.0 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ss_mon.etc /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x901D + write /config/usb_gadget/g1/functions/diag.diag/pid 0x901d + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x900E + write /config/usb_gadget/g1/functions/diag.diag/pid 0x900e + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,serial_cdev,rmnet,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,serial_cdev,rmnet,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "Default composition" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x9091 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x9091 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f4 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,serial_cdev,rmnet && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "Default comp without ADB" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x9092 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x9092 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,serial_cdev,serial_cdev_nmea,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,serial_cdev,serial_cdev_nmea,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_dun_nmea_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x9020 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x9020 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/cser.nmea.1 /config/usb_gadget/g1/configs/b.1/f4 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:vendor.usb.tethering=true + write /sys/class/net/rndis0/queues/rx-0/rps_cpus ${vendor.usb.rps_mask} + +#on property:sys.usb.config=rndis && property:vendor.usb.rndis.func.name=* +# setprop sys.usb.config rndis,${persist.vendor.usb.config.extra} + +on property:sys.usb.config=rndis,none && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0xF00E + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis + +on property:sys.usb.config=rndis,sec && property:sys.usb.configfs=1 + write /config/usb_gadget/g2/configs/b.1/strings/0x409/configuration "rndis" + rm /config/usb_gadget/g2/configs/b.1/f1 + write /config/usb_gadget/g2/idVendor 0x05C6 + write /config/usb_gadget/g2/idProduct 0xF00E + symlink /config/usb_gadget/g2/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g2/configs/b.1/f1 + write /config/usb_gadget/g2/UDC ${persist.vendor.usb.controller.secondary} + setprop sys.usb.state rndis + +#on property:sys.usb.config=rndis,adb && property:vendor.usb.rndis.func.name=* +# setprop sys.usb.config rndis,${persist.vendor.usb.config.extra},adb + +on property:sys.usb.config=rndis,none,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,none,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x9024 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis,adb + +on property:sys.usb.config=rndis,diag && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_diag" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x902C + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis + +on property:sys.usb.config=rndis,diag,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,diag,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_diag_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x902D + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis,adb + +on property:sys.usb.config=rndis,serial_cdev && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_dun" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90B3 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis + +on property:sys.usb.config=rndis,serial_cdev,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,serial_cdev,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_dun_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90B4 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis,adb + +on property:sys.usb.config=rndis,serial_cdev,diag && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_dun_diag" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90B5 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis + +on property:sys.usb.config=rndis,serial_cdev,diag,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,serial_cdev,diag,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_dun_diag" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90B6 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f4 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis,adb + +on property:sys.usb.config=mtp,diag && property:vendor.usb.use_ffs_mtp=0 && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mtp_diag" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x901B + symlink /config/usb_gadget/g1/functions/mtp.gs0 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=mtp,diag && property:vendor.usb.use_ffs_mtp=1 && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "ffs-mtp_diag" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x901B + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=mtp,diag,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=mtp,diag,adb && property:vendor.usb.use_ffs_mtp=0 && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mtp_diag_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x903A + symlink /config/usb_gadget/g1/functions/mtp.gs0 /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=mtp,diag,adb && property:vendor.usb.use_ffs_mtp=1 && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "ffs-mtp_diag_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x903A + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,qdss && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_qdss" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x904A + write /config/usb_gadget/g1/functions/diag.diag/pid 0x904a + write /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name}/enable_debug_inface 1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,qdss,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,qdss,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_qdss_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x9060 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x9060 + write /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name}/enable_debug_inface 1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,qdss,rmnet && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_qdss_rmnet" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x9083 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x9083 + write /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name}/enable_debug_inface 1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,qdss,rmnet,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,qdss,rmnet,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_qdss_rmnet_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x9084 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x9084 + write /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name}/enable_debug_inface 1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f4 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=rndis,diag,qdss && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_diag_qdss" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x9081 + write /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name}/enable_debug_inface 1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis + +on property:sys.usb.config=rndis,diag,qdss,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,diag,qdss,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_diag_qdss_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x9082 + write /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name}/enable_debug_inface 1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f4 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis,adb + +#on property:sys.usb.config=ncm && property:sys.usb.configfs=1 +# write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "ncm" +# rm /config/usb_gadget/g1/configs/b.1/f1 +# rm /config/usb_gadget/g1/configs/b.1/f2 +# rm /config/usb_gadget/g1/configs/b.1/f3 +# rm /config/usb_gadget/g1/configs/b.1/f4 +# rm /config/usb_gadget/g1/configs/b.1/f5 +# rm /config/usb_gadget/g1/configs/b.1/f6 +# rm /config/usb_gadget/g1/configs/b.1/f7 +# rm /config/usb_gadget/g1/configs/b.1/f8 +# rm /config/usb_gadget/g1/configs/b.1/f9 +# write /config/usb_gadget/g1/idVendor 0x05C6 +# write /config/usb_gadget/g1/idProduct 0xA4A1 +# symlink /config/usb_gadget/g1/functions/ncm.0 /config/usb_gadget/g1/configs/b.1/f1 +# write /config/usb_gadget/g1/UDC ${sys.usb.controller} +# setprop sys.usb.state ${sys.usb.config} + +#on property:sys.usb.config=ncm,adb && property:sys.usb.configfs=1 +# start adbd + +#on property:sys.usb.ffs.ready=1 && property:sys.usb.config=ncm,adb && property:sys.usb.configfs=1 +# write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "ncm_adb" +# rm /config/usb_gadget/g1/configs/b.1/f1 +# rm /config/usb_gadget/g1/configs/b.1/f2 +# rm /config/usb_gadget/g1/configs/b.1/f3 +# rm /config/usb_gadget/g1/configs/b.1/f4 +# rm /config/usb_gadget/g1/configs/b.1/f5 +# rm /config/usb_gadget/g1/configs/b.1/f6 +# rm /config/usb_gadget/g1/configs/b.1/f7 +# rm /config/usb_gadget/g1/configs/b.1/f8 +# rm /config/usb_gadget/g1/configs/b.1/f9 +# symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 +# write /config/usb_gadget/g1/idVendor 0x05C6 +# write /config/usb_gadget/g1/idProduct 0x908C +# symlink /config/usb_gadget/g1/functions/ncm.0 /config/usb_gadget/g1/configs/b.1/f1 +# symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 +# write /config/usb_gadget/g1/UDC ${sys.usb.controller} +# setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,serial_cdev && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_dun" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x9004 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x9004 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,adb,serial_cdev && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,adb,serial_cdev && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_adb_dun" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x901f + write /config/usb_gadget/g1/functions/diag.diag/pid 0x901f + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,serial_cdev,rmnet,dpl && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_dun_rmnet_dpl" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90b7 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90b7 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f4 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,serial_cdev,rmnet,dpl,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,serial_cdev,rmnet,dpl,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_dun_rmnet_dpl_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90b8 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90b8 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f5 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=rndis,diag,dpl && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_diag_dpl" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90bf + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis + +on property:sys.usb.config=rndis,diag,dpl,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,diag,dpl,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_diag_dpl_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90c0 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f4 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis,adb + +on property:sys.usb.config=ccid && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "ccid" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90CE + symlink /config/usb_gadget/g1/functions/ccid.ccid /config/usb_gadget/g1/configs/b.1/f1 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=ccid,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=ccid,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "ccid_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90CF + symlink /config/usb_gadget/g1/functions/ccid.ccid /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=ccid,diag && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "ccid_diag" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90D0 + symlink /config/usb_gadget/g1/functions/ccid.ccid /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=ccid,diag,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=ccid,diag,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "ccid_diag_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90D1 + symlink /config/usb_gadget/g1/functions/ccid.ccid /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,serial_cdev,rmnet,ccid && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_dun_rmnet_ccid" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90D2 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90d2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/ccid.ccid /config/usb_gadget/g1/configs/b.1/f4 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,serial_cdev,rmnet,ccid,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,serial_cdev,rmnet,ccid,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_dun_rmnet_ccid_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90D3 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90d3 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/ccid.ccid /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f5 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,diag_mdm,qdss,qdss_mdm,serial_cdev,serial_cdev_mdm,rmnet && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_diag_mdm,qdss_qdss_mdm_dun_dun_mdm_rmnet" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90D7 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90d7 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/qdss.qdss_mdm /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/cser.dun.2 /config/usb_gadget/g1/configs/b.1/f6 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f7 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,diag_mdm,qdss,qdss_mdm,serial_cdev,serial_cdev_mdm,rmnet,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,diag_mdm,qdss,qdss_mdm,serial_cdev,serial_cdev_mdm,rmnet,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_diag_mdm,qdss_qdss_mdm_dun_dun_mdm_rmnet_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90D8 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90d8 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/qdss.qdss_mdm /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/cser.dun.2 /config/usb_gadget/g1/configs/b.1/f6 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f7 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f8 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,diag_mdm,qdss,qdss_mdm,serial_cdev,serial_cdev_mdm,dpl,rmnet && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_diag_mdm,qdss_qdss_mdm_dun_dun_mdm_dpl_rmnet" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90DD + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90dd + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/qdss.qdss_mdm /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/cser.dun.2 /config/usb_gadget/g1/configs/b.1/f6 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f7 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f8 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,diag_mdm,qdss,qdss_mdm,serial_cdev,serial_cdev_mdm,dpl,rmnet,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,diag_mdm,qdss,qdss_mdm,serial_cdev,serial_cdev_mdm,dpl,rmnet,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_diag_mdm,qdss_qdss_mdm_dun_dun_mdm_dpl_rmnet_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90DE + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90de + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/qdss.qdss_mdm /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/cser.dun.2 /config/usb_gadget/g1/configs/b.1/f6 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f7 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f8 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,serial_cdev,rmnet,dpl,qdss && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_dun_rmnet_dpl_qdss" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90DC + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90dc + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f5 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,serial_cdev,rmnet,dpl,qdss,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,serial_cdev,rmnet,dpl,qdss,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_dun_rmnet_dpl_qdss_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90DB + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90db + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f6 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,uac2,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,uac2,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_uac2_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90CA + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90ca + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/uac2.0 /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,uac2 && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_uac2" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x901C + write /config/usb_gadget/g1/functions/diag.diag/pid 0x901c + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/uac2.0 /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,uvc,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,uvc,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_uvc_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90CB + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90cb + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/uvc.0 /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,uvc && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_uvc" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90DF + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90df + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/uvc.0 /config/usb_gadget/g1/configs/b.1/f2 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,uac2,uvc,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,uac2,uvc,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_uac2_uvc_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90CC + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90cc + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/uac2.0 /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/uvc.0 /config/usb_gadget/g1/configs/b.1/f4 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,uac2,uvc && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_uac2_uvc" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90E0 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90e0 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/uac2.0 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/uvc.0 /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,diag_mdm,qdss,qdss_mdm,serial_cdev,dpl,rmnet && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_diag_mdm_qdss_qdss_mdm_dun_dpl_rmnet" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90E4 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90e4 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/qdss.qdss_mdm /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f6 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f7 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,diag_mdm,qdss,qdss_mdm,serial_cdev,dpl,rmnet,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,diag_mdm,qdss,qdss_mdm,serial_cdev,dpl,rmnet,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_diag_mdm_qdss_qdss_mdm_dun_dpl_rmnet_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90E5 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90e5 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/qdss.qdss_mdm /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f6 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f7 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f8 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,diag,diag_mdm,qdss,qdss_mdm,serial_cdev,dpl && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_diag_diag_mdm_qdss_qdss_mdm_dun_dpl" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90E6 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/qdss.qdss_mdm /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f6 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f7 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis + +on property:sys.usb.config=rndis,diag,diag_mdm,qdss,qdss_mdm,serial_cdev,dpl,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,diag,diag_mdm,qdss,qdss_mdm,serial_cdev,dpl,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_diag_diag_mdm_qdss_qdss_mdm_dun_dpl_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90E7 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/qdss.qdss_mdm /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f6 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f7 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f8 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis,adb + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,diag,qdss,serial_cdev,dpl && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_diag_qdss_dun_dpl" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90E8 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f5 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis + +on property:sys.usb.config=rndis,diag,qdss,serial_cdev,dpl,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,diag,qdss,serial_cdev,dpl,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_diag_qdss_dun_dpl_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90E9 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f6 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis,adb + +on property:sys.usb.config=diag,diag_mdm,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,diag_mdm,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_diag_mdm_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90D9 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90d9 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,diag_mdm,diag_mdm2,qdss,qdss_mdm,serial_cdev,dpl,rmnet && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_diag_mdm_diag_mdm2_qdss_qdss_mdm_dun_dpl_rmnet" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90F6 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90f6 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm2 /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/qdss.qdss_mdm /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f6 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f7 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f8 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,diag_mdm,diag_mdm2,qdss,qdss_mdm,serial_cdev,dpl,rmnet,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,diag_mdm,diag_mdm2,qdss,qdss_mdm,serial_cdev,dpl,rmnet,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_diag_mdm_diag_mdm2_qdss_qdss_mdm_dun_dpl_rmnet_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90F7 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x90f7 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm2 /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/qdss.qdss_mdm /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f6 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f7 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f8 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,diag,diag_mdm,diag_mdm2,qdss,qdss_mdm,serial_cdev,dpl && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_diag_diag_mdm_diag_mdm2_qdss_qdss_mdm_dun_dpl" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90F8 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm2 /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/qdss.qdss_mdm /config/usb_gadget/g1/configs/b.1/f6 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f7 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f8 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis + +on property:sys.usb.config=rndis,diag,diag_mdm,diag_mdm2,qdss,qdss_mdm,serial_cdev,dpl,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,diag,diag_mdm,diag_mdm2,qdss,qdss_mdm,serial_cdev,dpl,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_diag_diag_mdm_diag_mdm2_qdss_qdss_mdm_dun_dpl_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x90F9 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rndis.func.name}.rndis /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm2 /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/qdss.qdss_mdm /config/usb_gadget/g1/configs/b.1/f6 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f7 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f8 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state rndis,adb + +on property:sys.usb.config=diag,diag_mdm,ccid && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_diag_mdm_ccid" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x9045 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x9045 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ccid.ccid /config/usb_gadget/g1/configs/b.1/f3 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,diag_mdm,adb,ccid && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,diag_mdm,adb,ccid && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_diag_mdm_adb_ccid" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x9044 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x9044 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/ccid.ccid /config/usb_gadget/g1/configs/b.1/f4 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,diag_cnss,serial_cdev,rmnet,dpl,qdss,adb && property:sys.usb.configfs=1 + start adbd + +on property:sys.usb.ffs.ready=1 && property:sys.usb.config=diag,diag_cnss,serial_cdev,rmnet,dpl,qdss,adb && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_diag_cnss_dun_rmnet_dpl_qdss_adb" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x9110 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x9110 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm2 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f6 + symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f7 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=diag,diag_cnss,serial_cdev,rmnet,dpl,qdss && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_diag_cnss_dun_rmnet_dpl_qdss" + rm /config/usb_gadget/g1/configs/b.1/f1 + rm /config/usb_gadget/g1/configs/b.1/f2 + rm /config/usb_gadget/g1/configs/b.1/f3 + rm /config/usb_gadget/g1/configs/b.1/f4 + rm /config/usb_gadget/g1/configs/b.1/f5 + rm /config/usb_gadget/g1/configs/b.1/f6 + rm /config/usb_gadget/g1/configs/b.1/f7 + rm /config/usb_gadget/g1/configs/b.1/f8 + rm /config/usb_gadget/g1/configs/b.1/f9 + write /config/usb_gadget/g1/idVendor 0x05C6 + write /config/usb_gadget/g1/idProduct 0x9111 + write /config/usb_gadget/g1/functions/diag.diag/pid 0x9111 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag /config/usb_gadget/g1/configs/b.1/f1 + symlink /config/usb_gadget/g1/functions/${vendor.usb.diag.func.name}.diag_mdm2 /config/usb_gadget/g1/configs/b.1/f2 + symlink /config/usb_gadget/g1/functions/cser.dun.0 /config/usb_gadget/g1/configs/b.1/f3 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.rmnet.inst.name} /config/usb_gadget/g1/configs/b.1/f4 + symlink /config/usb_gadget/g1/functions/${vendor.usb.rmnet.func.name}.${vendor.usb.dpl.inst.name} /config/usb_gadget/g1/configs/b.1/f5 + symlink /config/usb_gadget/g1/functions/qdss.${vendor.usb.qdss.inst.name} /config/usb_gadget/g1/configs/b.1/f6 + write /config/usb_gadget/g1/UDC ${sys.usb.controller} + setprop sys.usb.state ${sys.usb.config} + +#on property:sys.usb.config=adb && property:sys.usb.configfs=1 +# write /config/usb_gadget/g1/idVendor 0x18d1 +# write /config/usb_gadget/g1/idProduct 0x4ee7 +# symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + +#on property:sys.usb.config=mtp && property:sys.usb.configfs=1 +# write /config/usb_gadget/g1/idVendor 0x18d1 +# write /config/usb_gadget/g1/idProduct 0x4ee1 +# symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + +#on property:sys.usb.config=mtp && property:vendor.usb.use_ffs_mtp=1 && property:sys.usb.configfs=1 +# symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 +# symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + +#on property:sys.usb.config=mtp,adb && property:sys.usb.configfs=1 +# write /config/usb_gadget/g1/idVendor 0x18d1 +# write /config/usb_gadget/g1/idProduct 0x4ee2 + +#on property:sys.usb.config=mtp,adb && property:vendor.usb.use_ffs_mtp=1 && property:sys.usb.configfs=1 +# symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 +# symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 +# symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + +#on property:sys.usb.config=ptp && property:sys.usb.configfs=1 +# write /config/usb_gadget/g1/idVendor 0x18d1 +# write /config/usb_gadget/g1/idProduct 0x4ee5 +# symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + +#on property:sys.usb.config=ptp && property:vendor.usb.use_ffs_mtp=1 && property:sys.usb.configfs=1 +# symlink /config/usb_gadget/g1/functions/ffs.ptp /config/usb_gadget/g1/configs/b.1/f1 +# symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + +#on property:sys.usb.config=ptp,adb && property:sys.usb.configfs=1 +# write /config/usb_gadget/g1/idVendor 0x18d1 +# write /config/usb_gadget/g1/idProduct 0x4ee6 +# symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + +#on property:sys.usb.config=ptp,adb && property:vendor.usb.use_ffs_mtp=1 && property:sys.usb.configfs=1 +# symlink /config/usb_gadget/g1/functions/ffs.ptp /config/usb_gadget/g1/configs/b.1/f1 +# symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2 +# symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + +#on property:sys.usb.config=accessory && property:sys.usb.configfs=1 +# write /config/usb_gadget/g1/idVendor 0x18d1 +# write /config/usb_gadget/g1/idProduct 0x2d00 + +#on property:sys.usb.config=accessory,adb && property:sys.usb.configfs=1 +# write /config/usb_gadget/g1/idVendor 0x18d1 +# write /config/usb_gadget/g1/idProduct 0x2d01 +# symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + +#on property:sys.usb.config=audio_source && property:sys.usb.configfs=1 +# write /config/usb_gadget/g1/idVendor 0x18d1 +# write /config/usb_gadget/g1/idProduct 0x2d02 + +#on property:sys.usb.config=audio_source,adb && property:sys.usb.configfs=1 +# write /config/usb_gadget/g1/idVendor 0x18d1 +# write /config/usb_gadget/g1/idProduct 0x2d03 +# symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + +#on property:sys.usb.config=accessory,audio_source && property:sys.usb.configfs=1 +# write /config/usb_gadget/g1/idVendor 0x18d1 +# write /config/usb_gadget/g1/idProduct 0x2d04 + +#on property:sys.usb.config=accessory,audio_source,adb && property:sys.usb.configfs=1 +# write /config/usb_gadget/g1/idVendor 0x18d1 +# write /config/usb_gadget/g1/idProduct 0x2d05 +# symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + +#on property:sys.usb.config=midi && property:sys.usb.configfs=1 +# write /config/usb_gadget/g1/idVendor 0x18d1 +# write /config/usb_gadget/g1/idProduct 0x4ee8 + +#on property:sys.usb.config=midi,adb && property:sys.usb.configfs=1 +# write /config/usb_gadget/g1/idVendor 0x18d1 +# write /config/usb_gadget/g1/idProduct 0x4ee9 +# symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + +#on property:sys.usb.config=rndis && property:sys.usb.configfs=1 +# write /config/usb_gadget/g1/idVendor 0x05C6 +# write /config/usb_gadget/g1/idProduct 0xF00E + +#on property:sys.usb.config=rndis,adb && property:sys.usb.configfs=1 +# write /config/usb_gadget/g1/idVendor 0x05C6 +# write /config/usb_gadget/g1/idProduct 0x9024 +# symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 + +on property:vendor.usb.eud=1 + write /config/usb_gadget/g1/configs/b.1/MaxPower 1 + write /sys/module/eud/parameters/enable 1 + write /sys/kernel/debug/pmic-votable/USB_ICL/force_active 1 + write /sys/kernel/debug/pmic-votable/USB_ICL/force_val 500 + +on property:vendor.usb.eud=0 + write /sys/kernel/debug/pmic-votable/USB_ICL/force_active 0 + write /sys/kernel/debug/pmic-votable/USB_ICL/force_val 0 + write /config/usb_gadget/g1/configs/b.1/MaxPower 0 + write /sys/module/eud/parameters/enable 0 + +on property:vendor.usb.uvc.function.init=1 + write /config/usb_gadget/g1/functions/uvc.0/streaming_maxpacket 3072 + write /config/usb_gadget/g1/functions/uvc.0/streaming_maxburst 1 + mkdir /config/usb_gadget/g1/functions/uvc.0/control/header/h + symlink /config/usb_gadget/g1/functions/uvc.0/control/header/h /config/usb_gadget/g1/functions/uvc.0/control/class/fs/h + symlink /config/usb_gadget/g1/functions/uvc.0/control/header/h /config/usb_gadget/g1/functions/uvc.0/control/class/ss/h + mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u + mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/360p + write /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/360p/dwFrameInterval "666666\n1000000\n5000000\n" + mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/720p + write /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/720p/wWidth 1280 + write /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/720p/wHeight 720 + write /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/720p/dwMinBitRate 29491200 + write /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/720p/dwMaxBitRate 29491200 + write /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/720p/dwMaxVideoFrameBufferSize 1843200 + write /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/720p/dwDefaultFrameInterval 5000000 + write /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u/720p/dwFrameInterval "5000000\n" + mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m + mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p + write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/360p/dwFrameInterval "666666\n1000000\n5000000\n" + mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p + write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/wWidth 1280 + write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/wHeight 720 + write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwMinBitRate 29491200 + write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwMaxBitRate 29491200 + write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwMaxVideoFrameBufferSize 1843200 + write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwDefaultFrameInterval 5000000 + write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/720p/dwFrameInterval "5000000\n" + write /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/bmaControls 0x04 + mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/h264/h + mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/h264/h/960p + write /config/usb_gadget/g1/functions/uvc.0/streaming/h264/h/960p/wWidth 1920 + write /config/usb_gadget/g1/functions/uvc.0/streaming/h264/h/960p/wHeight 960 + write /config/usb_gadget/g1/functions/uvc.0/streaming/h264/h/960p/bLevelIDC 40 + write /config/usb_gadget/g1/functions/uvc.0/streaming/h264/h/960p/dwFrameInterval "333667\n" + mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/h264/h/1920p + write /config/usb_gadget/g1/functions/uvc.0/streaming/h264/h/1920p/dwFrameInterval "333667\n" + mkdir /config/usb_gadget/g1/functions/uvc.0/streaming/header/h + symlink /config/usb_gadget/g1/functions/uvc.0/streaming/uncompressed/u /config/usb_gadget/g1/functions/uvc.0/streaming/header/h/u + symlink /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m /config/usb_gadget/g1/functions/uvc.0/streaming/header/h/m + symlink /config/usb_gadget/g1/functions/uvc.0/streaming/h264/h /config/usb_gadget/g1/functions/uvc.0/streaming/header/h + symlink /config/usb_gadget/g1/functions/uvc.0/streaming/header/h /config/usb_gadget/g1/functions/uvc.0/streaming/class/fs/h + symlink /config/usb_gadget/g1/functions/uvc.0/streaming/header/h /config/usb_gadget/g1/functions/uvc.0/streaming/class/hs/h + symlink /config/usb_gadget/g1/functions/uvc.0/streaming/header/h /config/usb_gadget/g1/functions/uvc.0/streaming/class/ss/h diff --git a/rootdir/etc/init.qti.kernel.rc b/rootdir/etc/init.qti.kernel.rc new file mode 100644 index 0000000..0a74221 --- /dev/null +++ b/rootdir/etc/init.qti.kernel.rc @@ -0,0 +1,181 @@ +#============================================================================= +# Copyright (c) 2019-2023 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +# +# Copyright (c) 2009-2012, 2014-2019, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +#============================================================================= +import /vendor/etc/init/hw/init.qti.kernel.test.rc + +on early-init + # Set the console loglevel to < KERN_WARN + # Set the default message loglevel to KERN_INFO + write /proc/sys/kernel/printk "4 6 1 7" + + exec_start gki.modprobe + # wait for system modules to be loaded first before loading vendor modules + wait_for_prop odm.system.all.modules.ready 1 + start vendor.modprobe + + # Mount tracefs in /sys/kernel/tracing as CONFIG_DEBUG_FS might be + # disabled and /sys/kernel/debug/tracing might not be available + mount tracefs tracefs /sys/kernel/tracing + chmod 0755 /sys/kernel/tracing + + chown root system /dev/kmsg + chmod 0620 /dev/kmsg + + write /proc/sys/kernel/sched_boost 1 + + write /proc/sys/kernel/firmware_config/force_sysfs_fallback 1 + +on post-fs + wait_for_prop vendor.all.modules.ready 1 + + # Create cgroup mount point for memory + mkdir /sys/fs/cgroup/memory/bg 0750 root system + write /sys/fs/cgroup/memory/bg/memory.swappiness 140 + write /sys/fs/cgroup/memory/bg/memory.move_charge_at_immigrate 1 + chown root system /sys/fs/cgroup/memory/bg/tasks + chmod 0660 /sys/fs/cgroup/memory/bg/tasks + + # update scheduler tunables + write /dev/cpuctl/foreground/cpu.uclamp.sched_boost_no_override 1 + write /dev/cpuctl/top-app/cpu.uclamp.sched_boost_no_override 1 + write /dev/cpuctl/background/cpu.uclamp.colocate 0 + write /dev/cpuctl/foreground/cpu.uclamp.colocate 0 + write /dev/cpuctl/top-app/cpu.uclamp.colocate 1 + + # set aggressive read ahead for dm-0 and dm-1 during boot up + write /sys/block/dm-0/queue/read_ahead_kb 2048 + write /sys/block/dm-1/queue/read_ahead_kb 2048 + write /sys/block/dm-2/queue/read_ahead_kb 2048 + +on early-boot + # Allow subsystem (modem etc) debugging + exec_background u:r:vendor_qti_init_shell_bg:s0 -- /vendor/bin/init.qti.write.sh /sys/kernel/boot_adsp/boot 1 + exec_background u:r:vendor_qti_init_shell_bg:s0 -- /vendor/bin/init.qti.write.sh /sys/kernel/boot_cdsp/boot 1 + exec_background u:r:vendor_qti_init_shell_bg:s0 -- /vendor/bin/init.qti.write.sh /sys/devices/virtual/cvp/cvp/boot 1 + +on boot + # Allow access to dload sysfs node + chown root system /sys/kernel/dload/emmc_dload + chmod 0660 /sys/kernel/dload/emmc_dload + chown root system /dev/block/bootdevice/by-name/ramdump + chmod 0660 /dev/block/bootdevice/by-name/ramdump + chown root system /sys/kernel/dload/dload_mode + chmod 0660 /sys/kernel/dload/dload_mode + + # set the io-scheduler to bfq on all eMMC and SD devices + write /sys/class/block/mmcblk0/queue/scheduler bfq + write /sys/class/block/mmcblk1/queue/scheduler bfq + + # update io-scheduler tunables + write /sys/class/block/mmcblk0/queue/iosched/slice_idle 0 + write /sys/class/block/mmcblk1/queue/iosched/slice_idle 0 + + # Allow access to memory hotplug device attributes + chown system system /sys/kernel/mem-offline/anon_migrate + +on post-fs-data + # Create directory used for dump collection + mkdir /data/vendor/ssrdump 0770 root system + +on property:persist.sys.ssr.enable_debug=* + write /sys/module/subsys_pil_tz/parameters/enable_debug ${persist.sys.ssr.enable_debug} + +on property:persist.sys.mba_boot_timeout=* + write /sys/module/pil_msa/parameters/pbl_mba_boot_timeout_ms ${persist.sys.mba_boot_timeout} + +on property:persist.sys.modem_auth_timeout=* + write /sys/module/pil_msa/parameters/modem_auth_timeout_ms ${persist.sys.modem_auth_timeout} + +on property:persist.sys.pil_proxy_timeout=* + write /sys/module/peripheral_loader/parameters/proxy_timeout_ms ${persist.sys.pil_proxy_timeout} + +on property:persist.vendor.ssr.enable_ramdumps=1 + write /sys/module/subsystem_restart/parameters/enable_ramdumps 1 + +on property:persist.vendor.ssr.enable_ramdumps=0 + write /sys/module/subsystem_restart/parameters/enable_ramdumps 0 + +on property:persist.vendor.sys.rawdump_copy=1 + write /sys/kernel/dload/emmc_dload 1 + +on property:persist.vendor.sys.rawdump_copy=0 + write /sys/kernel/dload/emmc_dload 0 + +service kernel-boot /vendor/bin/sh /vendor/bin/init.qti.kernel.sh + class core + user root + group root + disabled + oneshot + +service kernel-post-boot /vendor/bin/sh /vendor/bin/init.kernel.post_boot.sh + class core + user root + group root system wakelock graphics + disabled + oneshot + +on property:sys.boot_completed=1 + write /dev/kmsg "Boot completed " + #Reset read ahead for dm-0, dm-1 and dm-2 to 512kb + write /sys/block/dm-0/queue/read_ahead_kb 512 + write /sys/block/dm-1/queue/read_ahead_kb 512 + write /sys/block/dm-2/queue/read_ahead_kb 512 + write /proc/sys/vm/page-cluster 0 + start kernel-boot + start kernel-post-boot + +on charger + start kernel-post-boot + +service vendor.msm_irqbalance /vendor/bin/msm_irqbalance -f /system/vendor/etc/msm_irqbalance.conf + class core + user root + group root + disabled + +service gki.modprobe /vendor/bin/system_dlkm_modprobe.sh + class main + user root + group root system + disabled + stdio_to_kmsg + seclabel u:r:vendor_modprobe:s0 + oneshot + +service vendor.modprobe /vendor/bin/vendor_modprobe.sh + class main + user root + group root system + disabled + stdio_to_kmsg + seclabel u:r:vendor_modprobe:s0 + oneshot diff --git a/rootdir/etc/init.qti.ss-ramdump.sh b/rootdir/etc/init.qti.ss-ramdump.sh new file mode 100644 index 0000000..a48cfd8 --- /dev/null +++ b/rootdir/etc/init.qti.ss-ramdump.sh @@ -0,0 +1,39 @@ +#! /vendor/bin/sh + +# Copyright (c) 2023, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +value="disabled" + +if [ "$1" == "1" ]; then + value="enabled" +fi + +coredump_path=`ls /sys/devices/platform/soc/4080000.remoteproc-mss/remoteproc/remoteproc*/coredump` +if [ "${coredump_path}" != "" ]; then + echo ${value} > ${coredump_path} +fi diff --git a/rootdir/etc/init.qti.ufs.rc b/rootdir/etc/init.qti.ufs.rc new file mode 100644 index 0000000..a9cc089 --- /dev/null +++ b/rootdir/etc/init.qti.ufs.rc @@ -0,0 +1,30 @@ +# Copyright (c) 2011-2016, 2018-2020 The Linux Foundation. All rights reserved. +# # +# # Redistribution and use in source and binary forms, with or without +# # modification, are permitted provided that the following conditions are +# # met: +# # * Redistributions of source code must retain the above copyright +# # notice, this list of conditions and the following disclaimer. +# # * Redistributions in binary form must reproduce the above +# # copyright notice, this list of conditions and the following +# # disclaimer in the documentation and/or other materials provided +# # with the distribution. +# # * Neither the name of The Linux Foundation nor the names of its +# # contributors may be used to endorse or promote products derived +# # from this software without specific prior written permission. +# # +# # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED +# # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT +# # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +# # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +# # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +# # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +# on init +# exec u:r:vendor-qti-testscripts:s0 -- /vendor/bin/sh /vendor/bin/init.qti.ufs.debug.sh diff --git a/rootdir/etc/init.recovery.qcom.rc b/rootdir/etc/init.recovery.qcom.rc new file mode 100644 index 0000000..2587de1 --- /dev/null +++ b/rootdir/etc/init.recovery.qcom.rc @@ -0,0 +1,40 @@ +# Copyright (c) 2017-2018,2020-2021 The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +on init + write /sys/class/backlight/panel0-backlight/brightness 200 + setprop sys.usb.configfs 1 + +on property:ro.boot.usbcontroller=* + setprop sys.usb.controller ${ro.boot.usbcontroller} + wait /sys/bus/platform/devices/${ro.boot.usb.dwc3_msm:-a600000.ssusb}/mode + write /sys/bus/platform/devices/${ro.boot.usb.dwc3_msm:-a600000.ssusb}/mode peripheral + wait /sys/class/udc/${ro.boot.usbcontroller} 1 + +on fs + wait /dev/block/platform/soc/${ro.boot.bootdevice} + symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice diff --git a/rootdir/etc/init.recovery.samsung.rc b/rootdir/etc/init.recovery.samsung.rc new file mode 100644 index 0000000..704faa8 --- /dev/null +++ b/rootdir/etc/init.recovery.samsung.rc @@ -0,0 +1,8 @@ +on init + # unlink /efs > /mnt/vendor/efs + rm /efs + mkdir /efs + mkdir /sec_efs + + #to cut charging battery path + write /sys/class/power_supply/battery/siop_level 0 diff --git a/rootdir/etc/init.samsung.bsp.rc b/rootdir/etc/init.samsung.bsp.rc new file mode 100644 index 0000000..1312a13 --- /dev/null +++ b/rootdir/etc/init.samsung.bsp.rc @@ -0,0 +1,110 @@ +# Copyright (c) 2019-2023, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# * Neither the name of The Linux Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# + +on early-init + # sec_debug.ko - 1st stage + chown system system /sys/module/sec_debug/parameters/dump_sink + chmod 0640 /sys/module/sec_debug/parameters/dump_sink + chown system system /sys/module/sec_debug/parameters/reboot_multicmd + chmod 0400 /sys/module/sec_debug/parameters/reboot_multicmd + +on init + symlink /dev/block/bootdevice/by-name/param /dev/block/param + +on late-init + +on post-fs + +on late-fs + +on post-fs-data + +on boot + # sec_qc_user_reset.ko + chown system system /proc/auto_comment + chmod 0400 /proc/auto_comment + chown system system /proc/reset_history + chmod 0400 /proc/reset_history + chown system system /proc/reset_klog + chmod 0400 /proc/reset_klog + chown system system /proc/reset_reason + chmod 0440 /proc/reset_reason + chown system system /proc/reset_rwc + chmod 0440 /proc/reset_rwc + chown system system /proc/reset_summary + chmod 0400 /proc/reset_summary + chown system system /proc/reset_tzlog + chmod 0400 /proc/reset_tzlog + chown system system /proc/store_lastkmsg + chmod 0440 /proc/store_lastkmsg + chown system system /sys/class/sec/sec_debug/recovery_cause + chmod 0660 /sys/class/sec/sec_debug/recovery_cause + chown system system /sys/class/sec/sec_debug/FMM_lock + chmod 0660 /sys/class/sec/sec_debug/FMM_lock + + # sec_qc_hw_param.ko + chown system system /proc/extra + chmod 0440 /proc/extra + chown system system /sys/class/sec/sec_hw_param/ap_health + chmod 0600 /sys/class/sec/sec_hw_param/ap_health + chown system system /sys/class/sec/sec_hw_param/ap_info + chmod 0400 /sys/class/sec/sec_hw_param/ap_info + chown system system /sys/class/sec/sec_hw_param/ddr_info + chmod 0400 /sys/class/sec/sec_hw_param/ddr_info + chown system system /sys/class/sec/sec_hw_param/extra_info + chmod 0400 /sys/class/sec/sec_hw_param/extra_info + chown system system /sys/class/sec/sec_hw_param/extrb_info + chmod 0400 /sys/class/sec/sec_hw_param/extrb_info + chown system system /sys/class/sec/sec_hw_param/extrc_info + chmod 0400 /sys/class/sec/sec_hw_param/extrc_info + chown system system /sys/class/sec/sec_hw_param/extrm_info + chmod 0400 /sys/class/sec/sec_hw_param/extrm_info + chown system system /sys/class/sec/sec_hw_param/extrt_info + chmod 0400 /sys/class/sec/sec_hw_param/extrt_info + chown system system /sys/class/sec/sec_hw_param/eye_rd_info + chmod 0400 /sys/class/sec/sec_hw_param/eye_rd_info + chown system system /sys/class/sec/sec_hw_param/last_dcvs + chmod 0400 /sys/class/sec/sec_hw_param/last_dcvs + + # sec_qc_rdx_bootdev.ko + chown system system /proc/rdx_bootdev + chmod 0220 /proc/rdx_bootdev + + # PCIe + chown radio system /sys/class/sec/pcie-wifi/pcie_l1ss_ctrl + + # sec_reloc_gpio.ko - factory mode only + chown root system /sys/class/sec/gpio/check_requested_gpio + chmod 0664 /sys/class/sec/gpio/check_requested_gpio + +on shutdown + +# service definition + +# on property triggers diff --git a/rootdir/etc/init.samsung.display.rc b/rootdir/etc/init.samsung.display.rc new file mode 100644 index 0000000..d07e101 --- /dev/null +++ b/rootdir/etc/init.samsung.display.rc @@ -0,0 +1,634 @@ +# Copyright (C) 2018 The Android Open Source Project +# +# Display configuration common for all android devices +# + + +on post-fs-data +# Permissions for Display +# Brightness Permission + wait /sys/class/lcd/panel/alpm + chown system system /sys/class/backlight/panel0-backlight/brightness + chmod 0664 /sys/class/backlight/panel0-backlight/brightness + + chown system system /sys/class/backlight/panel1-backlight/brightness + chmod 0664 /sys/class/backlight/panel1-backlight/brightness + + chown system system /sys/class/leds/lcd-backlight/brightness + chmod 0664 /sys/class/leds/lcd-backlight/brightness + +# SSR + chown system system /sys/class/lcd/panel/ssr + chmod 0660 /sys/class/lcd/panel/ssr + + chown system system /sys/class/lcd/panel1/ssr + chmod 0660 /sys/class/lcd/panel1/ssr + +# ECC + chown system system /sys/class/lcd/panel/ecc + chmod 0660 /sys/class/lcd/panel/ecc + + chown system system /sys/class/lcd/panel1/ecc + chmod 0660 /sys/class/lcd/panel1/ecc + +# UDC data + chown system system /sys/class/lcd/panel/udc_data + chmod 0660 /sys/class/lcd/panel/udc_data + + chown system system /sys/class/lcd/panel1/udc_data + chmod 0660 /sys/class/lcd/panel1/udc_data + +# UDC factory data + chown system system /sys/class/lcd/panel/udc_fac + chmod 0660 /sys/class/lcd/panel/udc_fac + + chown system system /sys/class/lcd/panel1/udc_fac + chmod 0660 /sys/class/lcd/panel1/udc_fac + +# HMT + chown system system /sys/class/lcd/panel/hmt_on + chmod 0660 /sys/class/lcd/panel/hmt_on + chown system system /sys/class/lcd/panel/hmt_bright + chmod 0660 /sys/class/lcd/panel/hmt_bright + chown system system /sys/class/mdnie/mdnie/hmt_color_temperature + chmod 0660 /sys/class/mdnie/mdnie/hmt_color_temperature + + chown system system /sys/class/lcd/panel1/hmt_on + chmod 0660 /sys/class/lcd/panel1/hmt_on + chown system system /sys/class/lcd/panel1/hmt_bright + chmod 0660 /sys/class/lcd/panel1/hmt_bright + chown system system /sys/class/mdnie/mdnie1/hmt_color_temperature + chmod 0660 /sys/class/mdnie/mdnie1/hmt_color_temperature + +# mDNIe + chown system system /sys/class/mdnie/mdnie/lcdtype + chown system system /sys/class/mdnie/mdnie/lcd_power + chown system media_rw /sys/class/mdnie/mdnie/scenario + chmod 0660 /sys/class/mdnie/mdnie/scenario + chown system system /sys/class/mdnie/mdnie/tuning + chown system media_rw /sys/class/mdnie/mdnie/outdoor + chown system system /sys/class/mdnie/mdnie/mdnie_temp + chown system media_rw /sys/class/mdnie/mdnie/mode + chown system system /sys/class/mdnie/mdnie/negative + chown system media_rw /sys/class/mdnie/mdnie/playspeed + chown system media_rw /sys/class/mdnie/mdnie/accessibility + chown system system /sys/class/mdnie/mdnie/cabc + chown system system /sys/class/mdnie/mdnie/bypass + chmod 0660 /sys/class/mdnie/mdnie/bypass + chown system media_rw /sys/class/mdnie/mdnie/sensorRGB + chmod 0660 /sys/class/mdnie/mdnie/sensorRGB + chown system media_rw /sys/class/mdnie/mdnie/mdnie_ldu + chmod 0660 /sys/class/mdnie/mdnie/mdnie_ldu + chown system media_rw /sys/class/mdnie/mdnie/night_mode + chmod 0660 /sys/class/mdnie/mdnie/night_mode + chown system media_rw /sys/class/mdnie/mdnie/adaptive_mode + chmod 0660 /sys/class/mdnie/mdnie/adaptive_mode + chown system system /sys/class/mdnie/mdnie/color_lens + chmod 0660 /sys/class/mdnie/mdnie/color_lens + chown system media_rw /sys/class/mdnie/mdnie/hdr + chmod 0660 /sys/class/mdnie/mdnie/hdr + chown system media_rw /sys/class/mdnie/mdnie/whiteRGB + chmod 0660 /sys/class/mdnie/mdnie/whiteRGB + chown system system /sys/class/mdnie/mdnie/light_notification + chmod 0660 /sys/class/mdnie/mdnie/light_notification + chown system system /sys/class/mdnie/mdnie/afc + chmod 0660 /sys/class/mdnie/mdnie/afc + chown system system /sys/class/mdnie/mdnie/anti_glare + chmod 0660 /sys/class/mdnie/mdnie/anti_glare + chown system system /sys/class/mdnie/mdnie/extra_dim + chmod 0660 /sys/class/mdnie/mdnie/extra_dim + chown system system /sys/class/mdnie/mdnie/vividness + chmod 0660 /sys/class/mdnie/mdnie/vividness + + chown system system /sys/class/mdnie/mdnie1/lcdtype + chown system system /sys/class/mdnie/mdnie1/lcd_power + chown system media_rw /sys/class/mdnie/mdnie1/scenario + chmod 0660 /sys/class/mdnie/mdnie1/scenario + chown system system /sys/class/mdnie/mdnie1/tuning + chown system media_rw /sys/class/mdnie/mdnie1/outdoor + chown system system /sys/class/mdnie/mdnie1/mdnie_temp + chown system media_rw /sys/class/mdnie/mdnie1/mode + chown system system /sys/class/mdnie/mdnie1/negative + chown system media_rw /sys/class/mdnie/mdnie1/playspeed + chown system media_rw /sys/class/mdnie/mdnie1/accessibility + chown system system /sys/class/mdnie/mdnie1/cabc + chown system system /sys/class/mdnie/mdnie1/bypass + chmod 0660 /sys/class/mdnie/mdnie1/bypass + chown system media_rw /sys/class/mdnie/mdnie1/sensorRGB + chmod 0660 /sys/class/mdnie/mdnie1/sensorRGB + chown system media_rw /sys/class/mdnie/mdnie1/mdnie_ldu + chmod 0660 /sys/class/mdnie/mdnie1/mdnie_ldu + chown system media_rw /sys/class/mdnie/mdnie1/night_mode + chmod 0660 /sys/class/mdnie/mdnie1/night_mode + chown system media_rw /sys/class/mdnie/mdnie1/adaptive_mode + chmod 0660 /sys/class/mdnie/mdnie1/adaptive_mode + chown system system /sys/class/mdnie/mdnie1/color_lens + chmod 0660 /sys/class/mdnie/mdnie1/color_lens + chown system media_rw /sys/class/mdnie/mdnie1/hdr + chmod 0660 /sys/class/mdnie/mdnie1/hdr + chown system media_rw /sys/class/mdnie/mdnie1/whiteRGB + chmod 0660 /sys/class/mdnie/mdnie1/whiteRGB + chown system system /sys/class/mdnie/mdnie1/light_notification + chmod 0660 /sys/class/mdnie/mdnie1/light_notification + chown system system /sys/class/mdnie/mdnie1/afc + chmod 0660 /sys/class/mdnie/mdnie1/afc + chown system system /sys/class/mdnie/mdnie1/anti_glare + chmod 0660 /sys/class/mdnie/mdnie1/anti_glare + chown system system /sys/class/mdnie/mdnie1/extra_dim + chmod 0660 /sys/class/mdnie/mdnie1/extra_dim + chown system system /sys/class/mdnie/mdnie1/vividness + chmod 0660 /sys/class/mdnie/mdnie1/vividness + + mkdir /efs/afc 0700 system system + chmod 700 /efs/afc + mkdir /efs/etc 0700 system system + chmod 700 /efs/etc + +# adaptive control + chown system system /sys/class/lcd/panel/adaptive_control + chmod 0660 /sys/class/lcd/panel/adaptive_control + + chown system system /sys/class/lcd/panel1/adaptive_control + chmod 0660 /sys/class/lcd/panel1/adaptive_control + +# CCB (color waekness) + chown system system /sys/class/backlight/panel/weakness_ccb + chmod 0660 /sys/class/backlight/panel/weakness_ccb + + chown system system /sys/class/backlight/panel1/weakness_ccb + chmod 0660 /sys/class/backlight/panel1/weakness_ccb + +# weakness_hbm_comp (Gallery Max brightness == 2) + chown system system /sys/class/backlight/panel/weakness_hbm_comp + chmod 0660 /sys/class/backlight/panel/weakness_hbm_comp + + chown system system /sys/class/backlight/panel1/weakness_hbm_comp + chmod 0660 /sys/class/backlight/panel1/weakness_hbm_comp + +# AOD(Always On Display) + chown system system /sys/class/lcd/panel/alpm + chmod 0660 /sys/class/lcd/panel/alpm + + chown system system /sys/class/lcd/panel1/alpm + chmod 0660 /sys/class/lcd/panel1/alpm + +# HLPM Mode + chown system system /sys/class/lcd/panel/hlpm_mode + chmod 0660 /sys/class/lcd/panel/hlpm_mode + + chown system system /sys/class/lcd/panel1/hlpm_mode + chmod 0660 /sys/class/lcd/panel1/hlpm_mode + +# Active Clock in AOD + chown system system /dev/act_clk + chmod 0660 /dev/act_clk + +# Self Display in AOD + chown system system /dev/self_display + chmod 0660 /dev/self_display + + chown system system /dev/self_display1 + chmod 0660 /dev/self_display1 + +# Self Move in IDLE + chown system system /sys/class/lcd/panel/self_move + chmod 0660 /sys/class/lcd/panel/self_move + + chown system system /sys/class/lcd/panel1/self_move + chmod 0660 /sys/class/lcd/panel1/self_move + +# MAFPC + chown system system /dev/mafpc + chmod 0660 /dev/mafpc + + chown system system /dev/mafpc1 + chmod 0660 /dev/mafpc1 + + chown system system /sys/class/lcd/panel/mafpc_check + chmod 0660 /sys/class/lcd/panel/mafpc_check + + chown system system /sys/class/lcd/panel1/mafpc_check + chmod 0660 /sys/class/lcd/panel1/mafpc_check + +# POC + mkdir /efs/etc/poc 0700 system system + chmod 700 /efs/etc/poc + mkdir /cache/poc 0700 system system + chmod 700 /cache/poc + + chown system system /dev/poc + chmod 0660 /dev/poc + + chown system system /sys/class/lcd/panel/poc + chmod 0660 /sys/class/lcd/panel/poc + + chown system system /sys/class/lcd/panel1/poc + chmod 0660 /sys/class/lcd/panel1/poc + +# HMT + chown system system /sys/class/lcd/panel/hmt_on + chmod 0660 /sys/class/lcd/panel/hmt_on + chown system system /sys/class/lcd/panel/hmt_bright + chmod 0660 /sys/class/lcd/panel/hmt_bright + chown system system /sys/class/mdnie/mdnie/hmt_color_temperature + chmod 0660 /sys/class/mdnie/mdnie/hmt_color_temperature + + chown system system /sys/class/lcd/panel1/hmt_on + chmod 0660 /sys/class/lcd/panel1/hmt_on + chown system system /sys/class/lcd/panel1/hmt_bright + chmod 0660 /sys/class/lcd/panel1/hmt_bright + chown system system /sys/class/mdnie/mdnie1/hmt_color_temperature + chmod 0660 /sys/class/mdnie/mdnie1/hmt_color_temperature + + setprop sys.daydream.connected 0 + + # chown system system /sys/class/graphics/fb0/msm_cmd_autorefresh_en + # chmod 0660 /sys/class/graphics/fb0/msm_cmd_autorefresh_en + +# IRC + chown system system /sys/class/lcd/panel/irc_mode + chmod 0660 /sys/class/lcd/panel/irc_mode + + chown system system /sys/class/lcd/panel1/irc_mode + chmod 0660 /sys/class/lcd/panel1/irc_mode + +# MCD_MODE + chown system system /sys/class/lcd/panel/mcd_mode + chmod 0660 /sys/class/lcd/panel/mcd_mode + + chown system system /sys/class/lcd/panel1/mcd_mode + chmod 0660 /sys/class/lcd/panel1/mcd_mode + +# BRIGHTDOT + chown system system /sys/class/lcd/panel/brightdot + chmod 0660 /sys/class/lcd/panel/brightdot + + chown system system /sys/class/lcd/panel1/brightdot + chmod 0660 /sys/class/lcd/panel1/brightdot + +# MCD_RESISTANCE + chown system system /sys/class/lcd/panel/mcd_resistance + chmod 0660 /sys/class/lcd/panel/mcd_resistance + + chown system system /sys/class/lcd/panel1/mcd_resistance + chmod 0660 /sys/class/lcd/panel1/mcd_resistance + +# GAMMA_FLASH + chown system system /sys/class/lcd/panel/gamma_flash + chmod 0660 /sys/class/lcd/panel/gamma_flash + + chown system system /sys/class/lcd/panel1/gamma_flash + chmod 0660 /sys/class/lcd/panel1/gamma_flash + +# GAMMA_CHECK + chown system system /sys/class/lcd/panel/gamma_check + chmod 0660 /sys/class/lcd/panel/gamma_check + + chown system system /sys/class/lcd/panel1/gamma_check + chmod 0660 /sys/class/lcd/panel1/gamma_check + +# X-Talk + chown system system /sys/class/lcd/panel/xtalk_mode + chmod 0660 /sys/class/lcd/panel/xtalk_mode + + chown system system /sys/class/lcd/panel1/xtalk_mode + chmod 0660 /sys/class/lcd/panel1/xtalk_mode + +# MST + chown system system /sys/class/lcd/panel/mst + chmod 0660 /sys/class/lcd/panel/mst + + chown system system /sys/class/lcd/panel1/mst + chmod 0660 /sys/class/lcd/panel1/mst + +# DDI H/W Cursor + chown system system /sys/class/lcd/panel/hw_cursor + chmod 0660 /sys/class/lcd/panel/hw_cursor + + chown system system /sys/class/lcd/panel1/hw_cursor + chmod 0660 /sys/class/lcd/panel1/hw_cursor + +# PANEL AGING + chown system system /sys/class/lcd/panel/panel_aging + chmod 0660 /sys/class/lcd/panel/panel_aging + + chown system system /sys/class/lcd/panel1/panel_aging + chmod 0660 /sys/class/lcd/panel1/panel_aging + +# DSC CRC + chown system system /sys/class/lcd/panel/dsc_crc + chmod 0660 /sys/class/lcd/panel/dsc_crc + + chown system system /sys/class/lcd/panel1/dsc_crc + chmod 0660 /sys/class/lcd/panel1/dsc_crc + +# Gram Checksum Test + chown system system /sys/class/lcd/panel/gct + chmod 0660 /sys/class/lcd/panel/gct + + chown system system /sys/class/lcd/panel1/gct + chmod 0660 /sys/class/lcd/panel1/gct + +# Gray Spot Test + chown system system /sys/class/lcd/panel/grayspot + chmod 0660 /sys/class/lcd/panel/grayspot + + chown system system /sys/class/lcd/panel1/grayspot + chmod 0660 /sys/class/lcd/panel1/grayspot + +# vglhighdot Test + chown system system /sys/class/lcd/panel/vglhighdot + chmod 0660 /sys/class/lcd/panel/vglhighdot + + chown system system /sys/class/lcd/panel1/vglhighdot + chmod 0660 /sys/class/lcd/panel1/vglhighdot + +# SPOT_REPAIR_CHECK + chown system system /sys/class/lcd/panel/spot_repair_check + chmod 0660 /sys/class/lcd/panel/spot_repair_check + + chown system system /sys/class/lcd/panel1/spot_repair_check + chmod 0660 /sys/class/lcd/panel1/spot_repair_check + +# POC + chown system system /sys/class/lcd/panel/poc + chmod 0660 /sys/class/lcd/panel/poc + + chown system system /sys/class/lcd/panel1/poc + chmod 0660 /sys/class/lcd/panel1/poc + +# POC_MCA + chown system system /sys/class/lcd/panel/poc_mca + chmod 0440 /sys/class/lcd/panel/poc_mca + + chown system system /sys/class/lcd/panel1/poc_mca + chmod 0440 /sys/class/lcd/panel1/poc_mca + +# POC_INFO + chown system system /sys/class/lcd/panel/poc_info + chmod 0440 /sys/class/lcd/panel/poc_info + + chown system system /sys/class/lcd/panel1/poc_info + chmod 0440 /sys/class/lcd/panel1/poc_info + +# POC OFF + chown system system /sys/class/lcd/panel/poc_onoff + chmod 0660 /sys/class/lcd/panel/poc_onoff + + chown system system /sys/class/lcd/panel1/poc_onoff + chmod 0660 /sys/class/lcd/panel1/poc_onoff + +# IRC OFF + chown system system /sys/class/lcd/panel/irc_onoff + chmod 0660 /sys/class/lcd/panel/irc_onoff + + chown system system /sys/class/lcd/panel1/irc_onoff + chmod 0660 /sys/class/lcd/panel1/irc_onoff + +# ISC Defect Test + chown system system /sys/class/lcd/panel/isc_defect + chmod 0660 /sys/class/lcd/panel/isc_defect + + chown system system /sys/class/lcd/panel1/isc_defect + chmod 0660 /sys/class/lcd/panel1/isc_defect + +# LCD Big Data (DPUI / DPCI) + chown system system /sys/class/lcd/panel/dpui + chown system system /sys/class/lcd/panel/dpui_dbg + chown system system /sys/class/lcd/panel/dpci + chown system system /sys/class/lcd/panel/dpci_dbg + + chown system system /sys/class/lcd/panel1/dpui + chown system system /sys/class/lcd/panel1/dpui_dbg + chown system system /sys/class/lcd/panel1/dpci + chown system system /sys/class/lcd/panel1/dpci_dbg + +# Panel + chown system system /sys/class/lcd/panel/window_type + chown radio system /sys/class/lcd/panel/power_reduce + chown radio system /sys/class/lcd/panel/siop_enable + chown radio system /sys/class/lcd/panel/temperature + chown radio system /sys/class/lcd/panel/tuning + chown radio system /sys/class/lcd/panel/lux + chown system system /sys/class/lcd/panel/smooth_dim + chown radio system /sys/class/lcd/panel/partial_disp + chmod 0660 /sys/class/lcd/panel/partial_disp + chown radio system /sys/class/lcd/panel/cover_control + chmod 0660 /sys/class/lcd/panel/cover_control + chown system system /sys/class/lcd/panel/ldu_correction + chmod 0660 /sys/class/lcd/panel/ldu_correction + chown radio system /sys/class/lcd/panel/force_flip + + chown system system /sys/class/lcd/panel1/window_type + chown radio system /sys/class/lcd/panel1/power_reduce + chown radio system /sys/class/lcd/panel1/siop_enable + chown radio system /sys/class/lcd/panel1/temperature + chown radio system /sys/class/lcd/panel1/tuning + chown radio system /sys/class/lcd/panel1/lux + chown system system /sys/class/lcd/panel1/smooth_dim + chown radio system /sys/class/lcd/panel1/partial_disp + chmod 0660 /sys/class/lcd/panel1/partial_disp + chown radio system /sys/class/lcd/panel1/cover_control + chmod 0660 /sys/class/lcd/panel1/cover_control + chown system system /sys/class/lcd/panel1/ldu_correction + chmod 0660 /sys/class/lcd/panel1/ldu_correction + chown radio system /sys/class/lcd/panel1/force_flip + +# COPR + chown system system /sys/class/lcd/panel/copr_roi + chmod 0660 /sys/class/lcd/panel/copr_roi + chown system system /sys/class/lcd/panel/read_copr + chmod 0660 /sys/class/lcd/panel/read_copr + chown system system /sys/class/lcd/panel/copr + chmod 0660 /sys/class/lcd/panel/copr + chown system system /sys/class/lcd/panel/brt_avg + chmod 0440 /sys/class/lcd/panel/brt_avg + + chown system system /sys/class/lcd/panel1/copr_roi + chmod 0660 /sys/class/lcd/panel1/copr_roi + chown system system /sys/class/lcd/panel1/read_copr + chmod 0660 /sys/class/lcd/panel1/read_copr + chown system system /sys/class/lcd/panel1/copr + chmod 0660 /sys/class/lcd/panel1/copr + chown system system /sys/class/lcd/panel1/brt_avg + chmod 0440 /sys/class/lcd/panel1/brt_avg + +# SELF MASK + chown system system /sys/class/lcd/panel/self_mask + chmod 0660 /sys/class/lcd/panel/self_mask + + chown system system /sys/class/lcd/panel/self_mask_udc + chmod 0660 /sys/class/lcd/panel/self_mask_udc + + chown system system /sys/class/lcd/panel1/self_mask + chmod 0660 /sys/class/lcd/panel1/self_mask + + chown system system /sys/class/lcd/panel1/self_mask_udc + chmod 0660 /sys/class/lcd/panel1/self_mask_udc + + chown system system /sys/class/lcd/panel/self_mask_check + chmod 0660 /sys/class/lcd/panel/self_mask_check + + chown system system /sys/class/lcd/panel1/self_mask_check + chmod 0660 /sys/class/lcd/panel1/self_mask_check + +# DYNAMIC HLPM + chown system system /sys/class/lcd/panel/dynamic_hlpm + chmod 0660 /sys/class/lcd/panel/dynamic_hlpm + + chown system system /sys/class/lcd/panel1/dynamic_hlpm + chmod 0660 /sys/class/lcd/panel1/dynamic_hlpm + +# LCD DYNAMIC FPS USE TE + chown system system /sys/class/lcd/panel/dynamic_fps_use_te + chmod 0660 /sys/class/lcd/panel/dynamic_fps_use_te + + chown system system /sys/class/lcd/panel1/dynamic_fps_use_te + chmod 0660 /sys/class/lcd/panel1/dynamic_fps_use_te + +# SPI intf select + chown system system /sys/class/lcd/panel/spi_if_sel + chmod 0660 /sys/class/lcd/panel/spi_if_sel + +# CCD state Test + chown system system /sys/class/lcd/panel/ccd_state + chmod 0660 /sys/class/lcd/panel/ccd_state + + chown system system /sys/class/lcd/panel1/ccd_state + chmod 0660 /sys/class/lcd/panel1/ccd_state + +# FINGERPRINT MASK + chown system system /sys/class/lcd/panel/mask_brightness + chmod 0660 /sys/class/lcd/panel/mask_brightness + + chown system system /sys/class/lcd/panel/actual_mask_brightness + chmod 0440 /sys/class/lcd/panel/actual_mask_brightness + + chown system system /sys/class/lcd/panel1/mask_brightness + chmod 0660 /sys/class/lcd/panel1/mask_brightness + + chown system system /sys/class/lcd/panel1/actual_mask_brightness + chmod 0440 /sys/class/lcd/panel1/actual_mask_brightness + +# UB CONN DET + chown system system /sys/class/lcd/panel/conn_det + chmod 0660 /sys/class/lcd/panel/conn_det + + chown system system /sys/class/lcd/panel1/conn_det + chmod 0660 /sys/class/lcd/panel1/conn_det + +# TE CHECK + chown system system /sys/class/lcd/panel/te_check + chmod 0660 /sys/class/lcd/panel/te_check + + chown system system /sys/class/lcd/panel1/te_check + chmod 0660 /sys/class/lcd/panel1/te_check + +# DIA + chown system system /sys/class/lcd/panel/dia + chmod 0660 /sys/class/lcd/panel/dia + + chown system system /sys/class/lcd/panel1/dia + chmod 0660 /sys/class/lcd/panel1/dia + +# Finger Print Green Circle + chown system system /sys/class/lcd/panel/fp_green_circle + chmod 0660 /sys/class/lcd/panel/fp_green_circle + + chown system system /sys/class/lcd/panel1/fp_green_circle + chmod 0660 /sys/class/lcd/panel1/fp_green_circle + +# dynamic_freq + chown system system /sys/class/lcd/panel/dynamic_freq + chmod 0660 /sys/class/lcd/panel/dynamic_freq + + chown system system /sys/class/lcd/panel1/dynamic_freq + chmod 0660 /sys/class/lcd/panel1/dynamic_freq + +# Demux_stress Test + chown system system /sys/class/lcd/panel/demux_stress + chmod 0660 /sys/class/lcd/panel/demux_stress + + chown system system /sys/class/lcd/panel1/demux_stress + chmod 0660 /sys/class/lcd/panel1/demux_stress + +# VRR + chown system system /sys/class/lcd/panel/vrr + chmod 0440 /sys/class/lcd/panel/vrr + chown system system /sys/class/lcd/panel1/vrr + chmod 0440 /sys/class/lcd/panel1/vrr + chown system system /sys/class/lcd/panel/vrr_lfd + chmod 0660 /sys/class/lcd/panel/vrr_lfd + chown system system /sys/class/lcd/panel1/vrr_lfd + chmod 0660 /sys/class/lcd/panel1/vrr_lfd + chown system system /sys/class/drm/card0/device/perf_mode + chmod 0666 /sys/class/drm/card0/device/perf_mode + +# Motto + chown system system /sys/class/lcd/panel/motto/swing + chmod 0660 /sys/class/lcd/panel/motto/swing + chown system system /sys/class/lcd/panel/motto/emphasis + chmod 0660 /sys/class/lcd/panel/motto/emphasis + +# ioctl_power_ctrl + chown system system /sys/class/lcd/panel/ioctl_power_ctrl + chmod 0440 /sys/class/lcd/panel/ioctl_power_ctrl + +# Vlin1 test + chown system system /sys/class/lcd/panel/vlin1_test + chmod 0660 /sys/class/lcd/panel/vlin1_test + +# debug information for dumpstate + chown system system /dev/sec_display_debug + chmod 0660 /dev/sec_display_debug + +# night dim + chown system system /sys/class/lcd/panel/night_dim + chmod 0660 /sys/class/lcd/panel/night_dim + + chown system system /sys/class/lcd/panel1/night_dim + chmod 0660 /sys/class/lcd/panel1/night_dim + +# factory pretest + chown system system /sys/class/lcd/panel/fac_pretest + chmod 0660 /sys/class/lcd/panel/fac_pretest + + chown system system /sys/class/lcd/panel1/fac_pretest + chmod 0660 /sys/class/lcd/panel1/fac_pretest + +# tcon pre_emphasis + chown system system /sys/class/lcd/panel/tcon_pe + chmod 0660 /sys/class/lcd/panel/tcon_pe + + chown system system /sys/class/lcd/panel1/tcon_pe + chmod 0660 /sys/class/lcd/panel1/tcon_pe + +# check for display on time + chown system system /sys/class/lcd/panel/display_on + chmod 0440 /sys/class/lcd/panel/display_on + + chown system system /sys/class/lcd/panel1/display_on + chmod 0440 /sys/class/lcd/panel1/display_on + + chmod 0660 /sys/kernel/debug/tracing/events/sde/sde_cmd_release_bw/enable + chmod 0660 /sys/kernel/tracing/events/sde/sde_cmd_release_bw/enable + chmod 0660 /sys/kernel/debug/tracing/events/sde/sde_encoder_underrun/enable + chmod 0660 /sys/kernel/tracing/events/sde/sde_encoder_underrun/enable + chmod 0660 /sys/kernel/debug/tracing/events/sde/sde_evtlog/enable + chmod 0660 /sys/kernel/tracing/events/sde/sde_evtlog/enable + chmod 0660 /sys/kernel/debug/tracing/events/sde/sde_perf_calc_crtc/enable + chmod 0660 /sys/kernel/tracing/events/sde/sde_perf_calc_crtc/enable + chmod 0660 /sys/kernel/debug/tracing/events/sde/sde_perf_crtc_update/enable + chmod 0660 /sys/kernel/tracing/events/sde/sde_perf_crtc_update/enable + chmod 0660 /sys/kernel/debug/tracing/events/sde/sde_perf_set_ot/enable + chmod 0660 /sys/kernel/tracing/events/sde/sde_perf_set_ot/enable + chmod 0660 /sys/kernel/debug/tracing/events/sde/sde_perf_set_qos_luts/enable + chmod 0660 /sys/kernel/tracing/events/sde/sde_perf_set_qos_luts/enable + chmod 0660 /sys/kernel/debug/tracing/events/sde/sde_perf_uidle_cntr/enable + chmod 0660 /sys/kernel/tracing/events/sde/sde_perf_uidle_cntr/enable + chmod 0660 /sys/kernel/debug/tracing/events/sde/sde_perf_uidle_status/enable + chmod 0660 /sys/kernel/tracing/events/sde/sde_perf_uidle_status/enable + chmod 0660 /sys/kernel/debug/tracing/events/sde/sde_perf_update_bus/enable + chmod 0660 /sys/kernel/tracing/events/sde/sde_perf_update_bus/enable + chmod 0660 /sys/kernel/debug/tracing/events/sde/tracing_mark_write/enable + chmod 0660 /sys/kernel/tracing/events/sde/tracing_mark_write/enable diff --git a/rootdir/etc/init.samsung.dp.rc b/rootdir/etc/init.samsung.dp.rc new file mode 100644 index 0000000..8fbc154 --- /dev/null +++ b/rootdir/etc/init.samsung.dp.rc @@ -0,0 +1,87 @@ + +# Copyright (c) 2019-2021, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# * Neither the name of The Linux Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# + +on early-init + +on init + +on late-init + +on charger + +on post-fs + +on late-fs + +on post-fs-data + # Permission for ESE + chmod 0660 /dev/p61 + chown system system /dev/p61 + +on boot + # Permission for NFC + chmod 0660 /dev/pn547 + chown nfc nfc /dev/pn547 + chmod 0660 /dev/p61 + chown system system /dev/p61 + + # Permission for Secure NVM + chmod 0660 /dev/k250a + chown system system /dev/k250a + + # DP AUX switch control + chmod 0660 /sys/class/dp_sec/dp_sbu_sw_sel + chown system system /sys/class/dp_sec/dp_sbu_sw_sel + + # DP DEX control + chmod 0660 /sys/class/dp_sec/dex + chown system system /sys/class/dp_sec/dex + + # DP DEX version + chmod 0440 /sys/class/dp_sec/dex_ver + chown system system /sys/class/dp_sec/dex_ver + + # DP error info + chmod 0660 /sys/class/dp_sec/dp_error_info + chown system system /sys/class/dp_sec/dp_error_info + + # DP monitor info + chmod 0444 /sys/class/dp_sec/monitor_info + chown system system /sys/class/dp_sec/monitor_info + + # DP bandwidth code + chmod 0440 /sys/class/dp_sec/bw_code + chown system radio /sys/class/dp_sec/bw_code + +on shutdown + +# service definition + +# on property triggers diff --git a/rootdir/etc/init.samsung.factory.rc b/rootdir/etc/init.samsung.factory.rc new file mode 100644 index 0000000..1f98476 --- /dev/null +++ b/rootdir/etc/init.samsung.factory.rc @@ -0,0 +1,52 @@ +# Copyright (c) 2019-2024, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# * Neither the name of The Linux Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# + + +on early-init + +on init + +on late-init + +on post-fs + +on late-fs + +on post-fs-data + +on boot + +on shutdown + +# service definition + +# on property triggers + +on early-boot && property:ro.binary.type=factory + umount /product/vm-system diff --git a/rootdir/etc/init.samsung.power.rc b/rootdir/etc/init.samsung.power.rc new file mode 100644 index 0000000..49e2218 --- /dev/null +++ b/rootdir/etc/init.samsung.power.rc @@ -0,0 +1,77 @@ +# Copyright (c) 2019-2023, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# * Neither the name of The Linux Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# + +on early-init + +on init + +on late-init + +on post-fs + +on late-fs + +on post-fs-data + +on boot + chown radio system /sys/class/sec/ap_pmic/gpio_dump + chmod 664 /sys/class/sec/ap_pmic/gpio_dump + write /sys/power/pm_debug_messages 1 + + # limit driver + chown radio system /sys/devices/system/cpu/cpufreq_limit/cpufreq_max_limit + chown radio system /sys/devices/system/cpu/cpufreq_limit/cpufreq_min_limit + chown radio system /sys/devices/system/cpu/cpufreq_limit/cpufreq_table + chown radio system /sys/devices/system/cpu/cpufreq_limit/over_limit + chown radio system /sys/devices/system/cpu/cpufreq_limit/limit_stat + chmod 664 /sys/devices/system/cpu/cpufreq_limit/cpufreq_max_limit + chmod 664 /sys/devices/system/cpu/cpufreq_limit/cpufreq_min_limit + chmod 444 /sys/devices/system/cpu/cpufreq_limit/cpufreq_table + chmod 664 /sys/devices/system/cpu/cpufreq_limit/over_limit + chmod 664 /sys/devices/system/cpu/cpufreq_limit/limit_stat + chown system system /sys/class/sec/ap_pmic/manual_reset + chown radio system /sys/class/sec/ap_pmic/wake_enabled + chmod 664 /sys/class/sec/ap_pmic/wake_enabled + + chown system system /sys/class/sec/ap_pmic/ap_info + chmod 0400 /sys/class/sec/ap_pmic/ap_info +on property:sys.boot_completed=1 + +on charger + +on shutdown + +# service definition + +# on property triggers + +on property:sys.boot_completed=1 + write /sys/class/secgpio_check/secgpio_check_all/gpioinit_call 1 + write /sys/devices/platform/soc/c320000.sys-pm-vx/debug_enable 1 + chmod 220 /dev/power_on_alarm \ No newline at end of file diff --git a/rootdir/etc/init.samsung.rc b/rootdir/etc/init.samsung.rc new file mode 100644 index 0000000..3dc864a --- /dev/null +++ b/rootdir/etc/init.samsung.rc @@ -0,0 +1,124 @@ +# Copyright (c) 2019-2023, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# * Neither the name of The Linux Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# + +import /vendor/etc/init/hw/init.samsung.bsp.rc +import /vendor/etc/init/hw/init.samsung.display.rc +import /vendor/etc/init/hw/init.samsung.dp.rc +import /vendor/etc/init/hw/init.samsung.power.rc +import /vendor/etc/init/hw/init.qti.ss-ramdump.sh +import /vendor/etc/init/hw/init.samsung.${ro.binary.type}.rc + +on early-init + mkdir /mnt/vendor/efs 0771 radio system + mkdir /mnt/vendor/persist 0771 root system + +on init + symlink /dev/block/platform/soc/1d84000.ufshc/by-name/steady /dev/block/steady + symlink /dev/block/platform/soc/1d84000.ufshc/by-name/persistent /dev/block/persistent + +# Create carrier folder for HiddenMenu +on post-fs + mkdir /efs/carrier 0755 system system + restorecon_recursive /efs + + restorecon_recursive /mnt/vendor/efs + chown radio system /mnt/vendor/efs + chmod 0771 /mnt/vendor/efs + + chown system radio /efs + chmod 0771 /efs + restorecon /efs + +on post-fs-data + # carrier partition + chown system system /carrier + chmod 0771 /carrier + restorecon /carrier + +# sensors + chown system system /mnt/vendor/persist/sensors/registry/registry/sns_cm + +# Meta event + chown system radio /sys/class/sensors/sensor_dev/flush + +# If AP debug_level is low, recovery mode for ALL peripheral will be endabled +on post-fs-data && property:ro.boot.debug_level=0x4f4c + setprop persist.vendor.ssr.restart_level ALL_ENABLE + setprop persist.vendor.ssr.enable_ramdumps 1 + setprop persist.vendor.sensors.debug.hal_trigger_ssr true + setprop persist.vendor.sensors.debug.hal_trigger_crash false + +# Sensor property setting +on post-fs-data && property:ro.boot.debug_level=0x494d + setprop persist.vendor.sensors.debug.hal_trigger_crash true + setprop persist.vendor.sensors.debug.hal_trigger_ssr false + +on post-fs-data && property:ro.boot.debug_level=0x4948 + setprop persist.vendor.sensors.debug.hal_trigger_crash true + setprop persist.vendor.sensors.debug.hal_trigger_ssr false + +# Enable recovery mode for modem only (CP Ramdump OFF && dbg_level MID) +on post-fs-data && property:ro.boot.cp_debug_level=0x55FF && property:ro.boot.debug_level=0x494d + setprop persist.vendor.ssr.restart_level mss + setprop persist.vendor.ssr.enable_ramdumps 1 + +# Enable recovery mode for modem only (CP Ramdump OFF && dbg_level HI) +on post-fs-data && property:ro.boot.cp_debug_level=0x55FF && property:ro.boot.debug_level=0x4948 + setprop persist.vendor.ssr.restart_level mss + setprop persist.vendor.ssr.enable_ramdumps 1 + +# Disable recovery mode for modem only (CP Ramdump ON && dbg_level MID) +on post-fs-data && property:ro.boot.cp_debug_level=0x5500 && property:ro.boot.debug_level=0x494d + setprop persist.vendor.ssr.restart_level ALL_DISABLE + setprop persist.vendor.ssr.enable_ramdumps 0 + +# Disable recovery mode for modem only (CP Ramdump ON && dbg_level HI) +on post-fs-data && property:ro.boot.cp_debug_level=0x5500 && property:ro.boot.debug_level=0x4948 + setprop persist.vendor.ssr.restart_level ALL_DISABLE + setprop persist.vendor.ssr.enable_ramdumps 0 + +on early-boot + +on boot + +service factory_ssc /vendor/bin/factory.ssc + class core + user system + group system radio inet diag net_admin net_raw sdcard_rw sdcard_r media_rw + +on property:sys.boot_completed=1 + setprop ro.factory.sensor.delay.init 1 + +on property:sys.dexopt.ctrl=true + setprop dalvik.vm.dex2oat-cpu-set "0,1,5,6" + setprop dalvik.vm.dex2oat-threads 4 + +on property:sys.dexopt.ctrl=false + setprop dalvik.vm.dex2oat-cpu-set "" + set_dex2oat_threads ctrl diff --git a/rootdir/etc/init.samsung.user.rc b/rootdir/etc/init.samsung.user.rc new file mode 100644 index 0000000..25cf407 --- /dev/null +++ b/rootdir/etc/init.samsung.user.rc @@ -0,0 +1,53 @@ +# Copyright (c) 2019-2024, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# * Neither the name of The Linux Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# + + +on early-init + +on init + +on late-init + +on post-fs + +on late-fs + +on post-fs-data + +on boot + +on shutdown + +# service definition + +# on property triggers + +# bcl_pmic5.ko - debug level mid +on property:sys.boot_completed=1 && property:ro.boot.debug_level=0x494d + write /sys/module/bcl_pmic5/parameters/panic_lvl 2 diff --git a/rootdir/etc/init.target.rc b/rootdir/etc/init.target.rc new file mode 100644 index 0000000..27b6523 --- /dev/null +++ b/rootdir/etc/init.target.rc @@ -0,0 +1,275 @@ + +# Copyright (c) 2019-2021, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# * Neither the name of The Linux Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# +# Changes from Qualcomm Innovation Center are provided under the following license: +# Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted (subject to the limitations in the +# disclaimer below) provided that the following conditions are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# +# * Neither the name of Qualcomm Innovation Center, Inc. nor the names of +# its contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE +# GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT +# HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +# IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE +# GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER +# IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN +# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +import /vendor/etc/init/hw/init.qti.kernel.rc + +import /vendor/etc/init/hw/init.samsung.rc + +# CAUTION: init.carrier.rc is replaced with init.${ro.product.model}.rc from Q OS +import /vendor/etc/init/hw/init.${ro.product.vendor.device}.rc +import /vendor/etc/init/hw/init.${ro.product.vendor.name}.rc + +on early-init + write /proc/sys/kernel/printk_devkmsg ratelimited + export MEMTAG_OPTIONS off + + # foreground-boost + mkdir /dev/cpuctl/foreground-boost + chown system system /dev/cpuctl/foreground-boost + chown system system /dev/cpuctl/foreground-boost/tasks + chmod 0664 /dev/cpuctl/foreground-boost/tasks + chown system system /dev/cpuctl/foreground-boost/cgroup.procs + chmod 0664 /dev/cpuctl/foreground-boost/cgroup.procs + + # set property to boost-optimize + setprop sys.perf.boostopt true + + # midground set + mkdir /dev/cpuset/midground + copy /dev/cpuset/cpus /dev/cpuset/midground/cpus + copy /dev/cpuset/mems /dev/cpuset/midground/mems + chown root system /dev/cpuset/midground/cgroup.procs + chmod 0664 /dev/cpuset/midground/cgroup.procs + chown root system /dev/cpuset/midground/cpus + chmod 0664 /dev/cpuset/midground/cpus + write /dev/cpuset/midground/cpus 0-1,5-6 + +on init + wait /dev/block/platform/soc/${ro.boot.bootdevice} + symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice + chown system system /sys/devices/platform/soc/1d84000.ufshc/auto_hibern8 + chmod 0660 /sys/devices/platform/soc/1d84000.ufshc/auto_hibern8 + start logd + + mkdir /dev/cpuctl/general + copy_per_line /dev/cpuctl/tasks /dev/cpuctl/general/tasks + chown system system /dev/cpuctl/general + chown system system /dev/cpuctl/general/tasks + chmod 0644 /dev/cpuctl/general/tasks + chown system system /dev/cpuctl/general/cpu.shares + chmod 0644 /dev/cpuctl/general/cpu.shares + + mkdir /dev/cpuset/foreground-boost + copy /dev/cpuset/cpus /dev/cpuset/foreground-boost/cpus + copy /dev/cpuset/mems /dev/cpuset/foreground-boost/mems + chown system system /dev/cpuset/foreground-boost + chown system system /dev/cpuset/foreground-boost/tasks + chmod 0664 /dev/cpuset/foreground-boost/tasks + chown system system /dev/cpuset/foreground-boost/cgroup.procs + chmod 0664 /dev/cpuset/foreground-boost/cgroup.procs + + chown system system /dev/cpuset/restricted/cpus + chmod 0664 /dev/cpuset/restricted/cpus + +on early-fs + start vold + +on fs + start hwservicemanager + mount_all /vendor/etc/fstab.qcom --early + chown root system /mnt/vendor/persist + chmod 0771 /mnt/vendor/persist + restorecon_recursive /mnt/vendor/persist + mkdir /mnt/vendor/persist/secnvm 0770 system system + mkdir /mnt/vendor/persist/data 0700 system system + +on post-fs && property:ro.boot.factory.interposer=0 +# #Execute virtualization manager +# enable vendor.qvirtservice_rs +# start vendor.qvirtservice_rs + # set RLIMIT_MEMLOCK to 64MB + setrlimit 8 67108864 67108864 + #Execute virtualization manager + enable vendor.qvirtservice + start vendor.qvirtservice + +on late-fs + wait_for_prop hwservicemanager.ready true + #exec_start wait_for_keymaster + mount_all /vendor/etc/fstab.qcom --late + +on post-fs-data + mkdir /vendor/data/tombstones 0771 system system + # Enable WLAN cold boot calibration + write /sys/kernel/cnss/fs_ready 1 + +on early-boot + verity_update_state + +on boot + write /dev/cpuset/audio-app/cpus 0-1 + # Add a cpuset for the camera daemon + # We want all cores for camera + mkdir /dev/cpuset/camera-daemon + write /dev/cpuset/camera-daemon/cpus 0-7 + write /dev/cpuset/camera-daemon/mems 0 + chown cameraserver cameraserver /dev/cpuset/camera-daemon + chown cameraserver cameraserver /dev/cpuset/camera-daemon/tasks + chmod 0660 /dev/cpuset/camera-daemon/tasks + chown system /sys/devices/platform/soc/990000.i2c/i2c-0/0-0038/trusted_touch_enable + chmod 0660 /sys/devices/platform/soc/990000.i2c/i2c-0/0-0038/trusted_touch_enable + chown system /sys/devices/platform/soc/990000.spi/spi_master/spi0/spi0.0/trusted_touch_enable + chmod 0660 /sys/devices/platform/soc/990000.spi/spi_master/spi0/spi0.0/trusted_touch_enable + chown system /sys/devices/system/cpu/hyp_core_ctl/enable + chown system /sys/devices/system/cpu/hyp_core_ctl/hcc_min_freq + + # set cpuset value by performance team + write /dev/cpuset/foreground/cpus 0-6 + write /dev/cpuset/foreground-boost/cpus 0-7 + write /dev/cpuset/sf/cpus 0-1,5-6 + +# HyPer Permission + chown root system /dev/cpuctl/top-app/cpu.uclamp.min + chmod 0664 /dev/cpuctl/top-app/cpu.uclamp.min + chown root system /sys/devices/system/cpu/bus_dcvs/DDR/memlat/adaptive_low_freq + chmod 0664 /sys/devices/system/cpu/bus_dcvs/DDR/memlat/adaptive_low_freq + chown root system /sys/devices/system/cpu/bus_dcvs/DDR/memlat/adaptive_high_freq + chmod 0664 /sys/devices/system/cpu/bus_dcvs/DDR/memlat/adaptive_high_freq + chown root system /sys/devices/system/cpu/bus_dcvs/DDR/soc:qcom,memlat:ddr:prime-latfloor/max_freq + chmod 0664 /sys/devices/system/cpu/bus_dcvs/DDR/soc:qcom,memlat:ddr:prime-latfloor/max_freq + +# For CDSP crash +on property:ro.boot.debug_level=0x494d + setprop vendor.fastrpc.process.attrs 1 + setprop vendor.fastrpc.debug.trace 1 + +on property:vendor.display.lcd_density=560 + setprop dalvik.vm.heapgrowthlimit 256m + +on property:vendor.display.lcd_density=640 + setprop dalvik.vm.heapgrowthlimit 512m + +on init && property:ro.boot.mode=charger + wait_for_prop vendor.all.modules.ready 1 + mount_all /vendor/etc/charger_fw_fstab.qti --early + wait /sys/kernel/boot_adsp/boot + write /sys/kernel/boot_adsp/boot 1 + +on charger + start vendor.power_off_alarm + write /sys/kernel/cnss/charger_mode 1 + +#service vendor.lowi /vendor/bin/sscrpcd +# class core +# user system +# group system wakelock +# capabilities BLOCK_SUSPEND + +#pd-mapper +service vendor.pd_mapper /vendor/bin/pd-mapper + class core + user system + group system + +#Peripheral manager +service vendor.per_mgr /vendor/bin/pm-service + class core + user system + group system + ioprio rt 4 + +service vendor.per_proxy /vendor/bin/pm-proxy + class core + user system + group system + disabled + +#service vendor.mdm_helper /vendor/bin/mdm_helper +# class core +# group system wakelock +# disabled + +service vendor.mdm_launcher /vendor/bin/sh /vendor/bin/init.mdm.sh + class core + oneshot + +on property:init.svc.vendor.per_mgr=running + start vendor.per_proxy + +on property:sys.shutdown.requested=* + write /sys/kernel/qcom_rproc/shutdown_in_progress 1 + stop vendor.per_proxy + +on property:vold.decrypt=trigger_restart_framework + start vendor.cnss_diag + +service vendor.cnss_diag /system/vendor/bin/cnss_diag -q -f -t HELIUM + class main + user system + group system wifi inet sdcard_rw media_rw diag + oneshot + +on early-boot && property:persist.vendor.pcie.boot_option=* + write /sys/bus/platform/devices/1c00000.qcom,pcie/debug/boot_option ${persist.vendor.pcie.boot_option} + write /sys/bus/platform/devices/1c08000.qcom,pcie/debug/boot_option ${persist.vendor.pcie.boot_option} + +service fan_control_turn_on /vendor/bin/fan_service 1 + class late_start + user root + disabled + oneshot + +service fan_control_turn_off /vendor/bin/fan_service 0 + class late_start + user root + disabled + oneshot diff --git a/setup-makefiles.sh b/setup-makefiles.sh new file mode 100755 index 0000000..0c7ced8 --- /dev/null +++ b/setup-makefiles.sh @@ -0,0 +1,70 @@ +#!/bin/bash +# +# SPDX-FileCopyrightText: 2016 The CyanogenMod Project +# SPDX-FileCopyrightText: 2017-2024 The LineageOS Project +# SPDX-License-Identifier: Apache-2.0 +# + +set -e + +DEVICE=e3q +VENDOR=samsung + +# Load extract_utils and do some sanity checks +MY_DIR="${BASH_SOURCE%/*}" +if [[ ! -d "${MY_DIR}" ]]; then MY_DIR="${PWD}"; fi + +ANDROID_ROOT="${MY_DIR}/../../.." + +HELPER="${ANDROID_ROOT}/tools/extract-utils/extract_utils.sh" +if [ ! -f "${HELPER}" ]; then + echo "Unable to find helper script at ${HELPER}" + exit 1 +fi +source "${HELPER}" + +function vendor_imports() { + cat <>"$1" + "device/samsung/e3q", + "hardware/qcom-caf/sm8650", + "hardware/qcom-caf/wlan", + "hardware/samsung", + "vendor/qcom/opensource/commonsys/display", + "vendor/qcom/opensource/commonsys-intf/display", + "vendor/qcom/opensource/dataservices", +EOF +} + +function lib_to_package_fixup_vendor_variants() { + if [ "$2" != "vendor" ]; then + return 1 + fi + + case "$1" in + com.qualcomm.qti.dpm.api@1.0 | \ + vendor.qti.imsrtpservice@3.0) + echo "$1-vendor" + ;; + libwpa_client) ;; + *) + return 1 + ;; + esac +} + +function lib_to_package_fixup() { + lib_to_package_fixup_clang_rt_ubsan_standalone "$1" || + lib_to_package_fixup_proto_3_9_1 "$1" || + lib_to_package_fixup_vendor_variants "$@" +} + +# Initialize the helper +setup_vendor "${DEVICE}" "${VENDOR}" "${ANDROID_ROOT}" + +# Warning headers and guards +write_headers + +write_makefiles "${MY_DIR}/proprietary-files.txt" + +# Finish +write_footers diff --git a/system.prop b/system.prop new file mode 100644 index 0000000..00bcf98 --- /dev/null +++ b/system.prop @@ -0,0 +1,209 @@ +# Audio +ro.audio.spatializer_enabled=true +tunnel.audio.encode=true +use.voice.path.for.pcm.voip=true + +# Bluetooth +persist.vendor.btstack.aac_frm_ctl.enabled=true +ro.bluetooth.library_name=libbluetooth_qti.so + +# Camera +persist.vendor.camera.privapp.list=org.codeaurora.snapcam +vendor.camera.aux.packagelist=org.codeaurora.snapcam + +# CNE +persist.vendor.cne.feature=1 + +# Display +debug.sf.enable_hwc_vds=0 +debug.sf.latch_unsignaled=1 +ro.hwui.drop_shadow_cache_size=6 +ro.hwui.gradient_cache_size=1 +ro.hwui.layer_cache_size=48 +ro.hwui.path_cache_size=32 +ro.hwui.r_buffer_cache_size=8 +ro.hwui.text_large_cache_height=1024 +ro.hwui.text_large_cache_width=2048 +ro.hwui.text_small_cache_height=1024 +ro.hwui.text_small_cache_width=1024 +ro.hwui.texture_cache_flushrate=0.4 +ro.hwui.texture_cache_size=72 +ro.opengles.version=196610 + +# DRM +ro.netflix.bsp_rev=Q8650-37577-1 + +# GNSS +persist.vendor.overlay.izat.optin=rro + +# Health +ro.charger.enable_suspend=1 + +# Media +debug.stagefright.ccodec=1 +media.aac_51_output_enabled=true +media.stagefright.enable-aac=true +media.stagefright.enable-fma2dp=true +media.stagefright.enable-http=true +media.stagefright.enable-player=true +media.stagefright.enable-qcp=true +media.stagefright.enable-scan=true +media.stagefright.thumbnail.prefer_hw_codecs=true + +# NFC +ro.nfc.port=I2C + +# Radio +persist.rild.nitz_long_ons_0= +persist.rild.nitz_long_ons_1= +persist.rild.nitz_long_ons_2= +persist.rild.nitz_long_ons_3= +persist.rild.nitz_plmn= +persist.rild.nitz_short_ons_0= +persist.rild.nitz_short_ons_1= +persist.rild.nitz_short_ons_2= +persist.rild.nitz_short_ons_3= +persist.vendor.radio.atfwd.start=true +ril.subscription.types=NV,RUIM +rild.libpath=/vendor/lib64/libril-qc-hal-qmi.so + +# Sensors +persist.vendor.sensors.enable.mag_filter=true + +# Wi-Fi +ro.wifi.channels= + +# Wi-Fi Display +persist.debug.wfd.enable=1 +persist.sys.wfd.virtual=0 + +# Miscellaneous +DEVICE_PROVISIONED=1 +arm64.memtag.process.system_server=off +com.samsung.speg.prelauncher.disable=true +config.disable_rtt=true +dalvik.vm.appimageformat=lz4 +dalvik.vm.dex2oat-Xms=64m +dalvik.vm.dex2oat-Xmx=512m +dalvik.vm.dex2oat-max-image-block-size=524288 +dalvik.vm.dex2oat-minidebuginfo=true +dalvik.vm.dex2oat-resolve-startup-strings=true +dalvik.vm.dex2oat64.enabled=true +dalvik.vm.dexopt.secondary=true +dalvik.vm.dexopt.thermal-cutoff=2 +dalvik.vm.finalizer-timeout-ms=60000 +dalvik.vm.heapsize=36m +dalvik.vm.image-dex2oat-Xms=64m +dalvik.vm.image-dex2oat-Xmx=64m +dalvik.vm.lockprof.threshold=500 +dalvik.vm.madvise.artfile.size=4294967295 +dalvik.vm.madvise.odexfile.size=104857600 +dalvik.vm.madvise.vdexfile.size=104857600 +dalvik.vm.minidebuginfo=true +dalvik.vm.systemuicompilerfilter=speed +dalvik.vm.usap_pool_enabled=false +dalvik.vm.usap_pool_refill_delay_ms=3000 +dalvik.vm.usap_pool_size_max=3 +dalvik.vm.usap_pool_size_min=1 +dalvik.vm.usap_refill_threshold=1 +dalvik.vm.useartservice=true +dalvik.vm.usejit=true +debug.atrace.tags.enableflags=0 +debug.codec2.stop_hal_before_surface=0 +debug.hwui.skia_atrace_enabled=false +dev.pm.dyn_samplingrate=1 +log.tag.ClatdController=D +log.tag.ConnectivityManager=D +log.tag.ConnectivityService=D +log.tag.IptablesRestoreController=D +log.tag.NetworkLogger=D +mmp.enable.3g2=true +net.bt.name=Android +persist.backup.ntpServer="0.pool.ntp.org" +persist.data.df.agg.dl_pkt=10 +persist.data.df.agg.dl_size=4096 +persist.data.df.dev_name=rmnet_usb0 +persist.data.df.dl_mode=5 +persist.data.df.iwlan_mux=9 +persist.data.df.mux_count=8 +persist.data.df.ul_mode=5 +persist.data.wda.enable=true +persist.debug.coresight.config=stm-events +persist.device_config.runtime_native_boot.iorap_perfetto_enable=true +persist.fuse_sdcard=true +persist.log.level=0xFFFFFFFF +persist.log.semlevel=0xFFFFFF00 +persist.mm.enable.prefetch=true +persist.rmnet.data.enable=true +persist.sys.force_sw_gles=1 +persist.timed.enable=true +persist.traced.enable=1 +persist.vendor.data.mode=concurrent +persist.vendor.time_services.init=0 +pm.dexopt.ab-ota=speed-profile +pm.dexopt.bg-dexopt=speed-profile +pm.dexopt.boot-after-mainline-update=verify +pm.dexopt.boot-after-ota=verify +pm.dexopt.cmdline=verify +pm.dexopt.first-boot=verify +pm.dexopt.inactive=verify +pm.dexopt.install=speed-profile +pm.dexopt.install-bulk=speed-profile +pm.dexopt.install-bulk-downgraded=verify +pm.dexopt.install-bulk-secondary=verify +pm.dexopt.install-bulk-secondary-downgraded=extract +pm.dexopt.install-fast=skip +pm.dexopt.post-boot=extract +pm.dexopt.shared=speed +qcom.hw.aac.encoder=true +qemu.hw.mainkeys=0 +ro.actionable_compatible_property.enabled=true +ro.allow.mock.location=0 +ro.binary.type=user +ro.build.2ndbrand=false +ro.build.PDA=S928BXXS3AXI8 +ro.build.changelist=29543898 +ro.build.display_build_number=true +ro.build.official.developer=false +ro.build.official.release=true +ro.build.selinux=1 +ro.build.version.oneui=60101 +ro.build.version.security_index=1 +ro.build.version.sem=3402 +ro.build.version.sep=150500 +ro.camerax.extensions.enabled=true +ro.config.dmverity=G +ro.config.iccc_version=3.0 +ro.config.knox=v30 +ro.config.rm_preload_enabled=1 +ro.dalvik.vm.native.bridge=0 +ro.kernel.qemu=0 +ro.kernel.qemu.gles=0 +ro.launcher.blur.appLaunch=0 +ro.media.recorder-max-base-layer-fps=60 +ro.oem_unlock_supported=1 +ro.postinstall.fstab.prefix=/system +ro.product.property_source_order=odm,vendor,product,system_ext,system +ro.product_ship=true +ro.security.bio.release=1 +ro.security.bio.ver=1.1 +ro.security.bt.release=1 +ro.security.bt.ver=1.0 +ro.security.fips.ux=Enabled +ro.security.fips_bssl.ver=1.7 +ro.security.mdf.release=1 +ro.security.mdf.ux=Enabled +ro.security.mdf.ver=3.3 +ro.security.wlan.release=2 +ro.security.wlan.ver=1.0 +ro.smps.gain.spk=0.3 +ro.system.build.version.sehi=3405 +ro.system.qb.id=86324119 +ro.vendor.qti.va_aosp.support=1 +security.mdf=None +security.mdf.result=None +security.perf_harden=1 +sys.hqm.support=true +sys.qca1530=detect +vendor.mm.enable.qcom_parser=16777215 + diff --git a/system_ext.prop b/system_ext.prop new file mode 100644 index 0000000..eee0dbf --- /dev/null +++ b/system_ext.prop @@ -0,0 +1,3 @@ +# DPM +persist.vendor.dpm.feature=11 + diff --git a/vendor.prop b/vendor.prop new file mode 100644 index 0000000..ef92618 --- /dev/null +++ b/vendor.prop @@ -0,0 +1,361 @@ +# Audio +aaudio.hw_burst_min_usec=2000 +aaudio.mmap_exclusive_policy=2 +aaudio.mmap_policy=2 +af.fast_track_multiplier=1 +audio.deep_buffer.media=true +audio.offload.video=true +audio.sys.noisy.broadcast.delay=600 +audio.sys.offload.pstimeout.secs=3 +persist.audio.fluence.speaker=true +persist.audio.fluence.voicecall=true +persist.audio.fluence.voicecomm=true +persist.audio.fluence.voicerec=false +persist.vendor.audio.ambisonic.auto.profile=false +persist.vendor.audio.ambisonic.capture=false +persist.vendor.audio.apptype.multirec.enabled=false +persist.vendor.audio.avs.afe_api_version=2 +persist.vendor.audio.fluence.speaker=true +persist.vendor.audio.fluence.tmic.enabled=false +persist.vendor.audio.fluence.voicecall=true +persist.vendor.audio.fluence.voicerec=false +persist.vendor.audio.ha_proxy.enabled=true +persist.vendor.audio.ras.enabled=false +persist.vendor.audio.spv3.enable=true +persist.vendor.audio.voicecall.speaker.stereo=true +ro.audio.flinger_standbytime_ms=2000 +ro.qc.sdk.audio.fluencetype=none +ro.vendor.audio.sdk.fluencetype=none +ro.vendor.audio.sdk.ssr=false +vendor.audio.adm.buffering.ms=3 +vendor.audio.c2.preferred=true +vendor.audio.compress_capture.aac=true +vendor.audio.compress_capture.aac.cut_off_freq=-1 +vendor.audio.compress_capture.enabled=true +vendor.audio.dolby.ds2.enabled=false +vendor.audio.dolby.ds2.hardbypass=false +vendor.audio.enable.mirrorlink=false +vendor.audio.feature.a2dp_offload.enable=true +vendor.audio.feature.audiozoom.enable=false +vendor.audio.feature.compr_voip.enable=true +vendor.audio.feature.compress_meta_data.enable=true +vendor.audio.feature.concurrent_capture.enable=false +vendor.audio.feature.deepbuffer_as_primary.enable=true +vendor.audio.feature.display_port.enable=true +vendor.audio.feature.external_dsp.enable=false +vendor.audio.feature.external_speaker.enable=false +vendor.audio.feature.fm.enable=true +vendor.audio.feature.hdmi_edid.enable=true +vendor.audio.feature.hfp.enable=true +vendor.audio.feature.hwdep_cal.enable=false +vendor.audio.feature.incall_music.enable=true +vendor.audio.feature.kpi_optimize.enable=true +vendor.audio.feature.maxx_audio.enable=false +vendor.audio.feature.multi_voice_session.enable=false +vendor.audio.feature.snd_mon.enable=true +vendor.audio.feature.spkr_prot.enable=true +vendor.audio.feature.usb_offload.enable=true +vendor.audio.flac.sw.decoder.24bit=true +vendor.audio.hal.boot.timeout.ms=20000 +vendor.audio.hal.output.suspend.supported=true +vendor.audio.hw.aac.encoder=false +vendor.audio.offload.buffer.size.kb=32 +vendor.audio.offload.gapless.enabled=true +vendor.audio.offload.multiaac.enable=true +vendor.audio.offload.multiple.enabled=false +vendor.audio.offload.passthrough=false +vendor.audio.offload.playspeed=true +vendor.audio.offload.track.enable=true +vendor.audio.parser.ip.buffer.size=262144 +vendor.audio.safx.pbe.enabled=false +vendor.audio.tunnel.encode=false +vendor.audio.ull_record_period_multiplier=2 +vendor.audio.use.sw.alac.decoder=true +vendor.audio.use.sw.ape.decoder=true +vendor.audio.use.sw.mpegh.decoder=true +vendor.audio.volume.headset.gain.depcal=true +vendor.audio_hal.in_period_size=144 +vendor.audio_hal.period_multiplier=4 +vendor.audio_hal.period_size=192 +vendor.voice.path.for.pcm.voip=true + +# Bluetooth +persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac +persist.bluetooth.a2dp_offload.disabled=false +persist.vendor.bt.a2dp_offload_cap=sbc-aptx-aptxtws-aptxhd-aac-ldac +persist.vendor.bt.aac_frm_ctl.enabled=true +persist.vendor.bt.aac_vbr_frm_ctl.enabled=true +persist.vendor.qcom.bluetooth.soc=hamilton +ro.bluetooth.a2dp_offload.supported=true + +# Camera +camera.disable_zsl_mode=1 + +# CNE +persist.vendor.cne.feature=0 + +# Display +debug.egl.hw=0 +debug.sf.auto_latch_unsignaled=0 +debug.sf.disable_client_composition_cache=1 +debug.sf.enable_adpf_cpu_hint=true +debug.sf.enable_advanced_sf_phase_offset=0 +debug.sf.enable_gl_backpressure=1 +debug.sf.gpu_freq_index=7 +debug.sf.hw=0 +debug.sf.latch_unsignaled=1 +debug.sf.predict_hwc_composition_strategy=0 +debug.sf.treat_170m_as_sRGB=1 +debug.sf.use_phase_offsets_as_durations=0 +persist.sys.sf.color_mode=0 +persist.sys.sf.color_saturation=1.0 +persist.sys.sf.hs_mode=0 +ro.gfx.driver.1=com.qualcomm.qti.gpudrivers.pineapple.api34 +ro.hardware.egl=adreno +ro.hardware.vulkan=adreno +ro.opengles.version=196610 +ro.surface_flinger.clear_slots_with_set_layer_buffer=false +ro.surface_flinger.enable_frame_rate_override=false +ro.surface_flinger.force_hwc_copy_for_virtual_displays=true +ro.surface_flinger.has_HDR_display=true +ro.surface_flinger.has_wide_color_display=true +ro.surface_flinger.max_frame_buffer_acquired_buffers=3 +ro.surface_flinger.max_virtual_display_dimension=4096 +ro.surface_flinger.protected_contents=true +ro.surface_flinger.set_display_power_timer_ms=300 +ro.surface_flinger.set_idle_timer_ms=250 +ro.surface_flinger.set_touch_timer_ms=300 +ro.surface_flinger.use_color_management=true +ro.surface_flinger.use_content_detection_for_refresh_rate=true +ro.surface_flinger.wcg_composition_dataspace=143261696 +vendor.display.allow_3d_adaptive_tm_external=1 +vendor.display.comp_mask=0 +vendor.display.defer_fps_frame_count=4 +vendor.display.disable_3d_adaptive_tm=0 +vendor.display.disable_dynamic_fps=1 +vendor.display.disable_excl_rect=0 +vendor.display.disable_excl_rect_partial_fb=1 +vendor.display.disable_ext_anim=1 +vendor.display.disable_hw_recovery_dump=1 +vendor.display.disable_offline_rotator=1 +vendor.display.disable_scaler=0 +vendor.display.disable_sdr_dimming=0 +vendor.display.disable_sdr_histogram=1 +vendor.display.disable_stc_dimming=1 +vendor.display.enable_async_powermode=0 +vendor.display.enable_async_vds_creation=0 +vendor.display.enable_brightness_drm_prop=0 +vendor.display.enable_brightness_drm_prop_in_super_hdr=0 +vendor.display.enable_display_extensions=1 +vendor.display.enable_dpps_dynamic_fps=0 +vendor.display.enable_early_wakeup=1 +vendor.display.enable_hdr10_gpu_target=1 +vendor.display.enable_optimize_refresh=0 +vendor.display.enable_rc_support=0 +vendor.display.enable_rounded_corner=0 +vendor.display.idle_time=0 +vendor.display.idle_time_inactive=0 +vendor.display.scaling_dest_opt_mode=4 +vendor.display.scaling_source_opt_mode=4 +vendor.display.use_smooth_motion=0 +vendor.display.vds_allow_hwc=1 +vendor.gralloc.disable_ubwc=0 +vendor.gralloc.enable_logs=0 + +# DRM +drm.service.enabled=true + +# Fingerprint +persist.vendor.qfp=true + +# Gatekeeper +vendor.gatekeeper.is_security_level_spu=0 + +# Media +debug.stagefright.ccodec=4 +debug.stagefright.omx_default_rank=0 + +# Perf +ro.vendor.extension_library=libqti-perfd-client.so + +# Power +vendor.power.pasr.enabled=true + +# Radio +persist.vendor.radio.atfwd.start=true +persist.vendor.radio.enableadvancedscan=true +ro.radio.noril=no +ro.telephony.default_cdma_sub=0 + +# USB +vendor.usb.controller=a600000.dwc3 +vendor.usb.diag.func.name=ffs +vendor.usb.dpl.inst.name=dpl +vendor.usb.qdss.inst.name=qdss_sw +vendor.usb.rmnet.func.name=gsi +vendor.usb.rmnet.inst.name=rmnet +vendor.usb.rndis.func.name=gsi +vendor.usb.use_ffs_mtp=1 +vendor.usb.use_gadget_hal=0 + +# Wi-Fi +wifi.aware.interface=wifi-aware0 + +# Miscellaneous +dalvik.vm.dex2oat64.enabled=true +dalvik.vm.heapgrowthlimit=256m +dalvik.vm.heapmaxfree=32m +dalvik.vm.heapminfree=8m +dalvik.vm.heapsize=512m +dalvik.vm.heapstartsize=16m +dalvik.vm.heaptargetutilization=0.5 +debug.c2.use_dmabufheaps=1 +debug.hwui.use_hint_manager=true +debug.mdpcomp.logs=0 +external_storage.casefold.enabled=1 +external_storage.projid.enabled=1 +external_storage.sdcardfs.enabled=0 +graphics.gpu.profiler.support=true +keyguard.no_require_sim=true +log.tag.stats_log=I +persist.backup.ntpServer=0.pool.ntp.org +persist.demo.hdmirotationlock=false +persist.sys.dalvik.vm.lib.2=libart.so +persist.sys.fuse.passthrough.enable=true +persist.vendor.qcomsysd.enabled=1 +persist.vendor.rcs.singlereg.feature=1 +ro.af.client_heap_size_kbyte=7168 +ro.apk_verity.mode=2 +ro.camera.disableJpegR=true +ro.camera.enableCamera1MaxZsl=1 +ro.camera.notify_nfc=1 +ro.carrier=unknown +ro.config.alarm_alert=ACH_Homecoming.ogg +ro.config.media_sound=Media_preview_Touch_the_light.ogg +ro.config.notification_sound=ACH_Spaceline.ogg +ro.config.notification_sound_2=ACH_Signal.ogg +ro.config.pageboost.vramdisk.without_predict=true +ro.config.ringtone=ACH_Galaxy_Bells.ogg +ro.config.ringtone_2=ACH_Atomic_Bell.ogg +ro.config.vc_call_vol_steps=8 +ro.control_privapp_permissions=enforce +ro.crypto.metadata_init_delete_all_keys.enabled=true +ro.hardware.gatekeeper=mdfpp +ro.hardware.keystore=mdfpp +ro.hardware.keystore_desede=true +ro.incremental.enable=yes +ro.logd.size.stats=64K +ro.mediaserver.64b.enable=true +ro.oem_unlock_supported=1 +ro.recovery.usb.adb.pid=D001 +ro.recovery.usb.fastboot.pid=4EE0 +ro.recovery.usb.vid=18D1 +ro.security.cass.feature=1 +ro.security.fips_scrypto.ver=2.7 +ro.security.fips_skc.ver=2.3 +ro.security.keystore.keytype=sakv2,gak,sgak,rkp +ro.security.vpnpp.release=2.0 +ro.security.vpnpp.ver=2.4 +ro.sf.init.lcd_density=600 +ro.slmk.2nd.dha_cached_max=24 +ro.slmk.2nd.dha_cached_min=4 +ro.slmk.2nd.dha_empty_min=8 +ro.slmk.2nd.dha_lmk_scale=3.0 +ro.slmk.2nd.swap_free_low_percentage=10 +ro.slmk.add_bonusEFK=2 +ro.slmk.cam_dha_ver=3 +ro.slmk.cam_kill_start_minutes=30 +ro.slmk.chimera_quota_enable=true +ro.slmk.dha_2ndprop_thMB=8192 +ro.slmk.dha_cached_max=20 +ro.slmk.dha_cached_min=4 +ro.slmk.dha_empty_max=30 +ro.slmk.dha_empty_min=8 +ro.slmk.dha_lmk_scale=2.0 +ro.slmk.freelimit_val=13 +ro.slmk.genai_reclaim_mode=true +ro.slmk.plg_key=25603 +ro.slmk.psi_critical=120 +ro.slmk.psi_medium=70 +ro.slmk.reentry_mode_enable=true +ro.slmk.swap_free_low_percentage=10 +ro.slmk.use_bg_keeping_policy=true +ro.slmk.use_lowmem_keep_except=true +ro.slmk.v_bonusEFK=15692 +ro.soc.manufacturer=QTI +ro.sys.kernelmemory.gmr.enabled=true +ro.sys.kernelmemory.gmr.vendor_plugin=kgsl +ro.sys.kernelmemory.nandswap.higher_max_size=true +ro.sys.kernelmemory.nandswap.quickswap=true +ro.sys.kernelmemory.umr.enabled=true +ro.sys.kernelmemory.umr.mem_free_low_threshold_kb=524288 +ro.sys.kernelmemory.umr.proactive_reclaim_battery_threshold=40 +ro.sys.kernelmemory.umr.psi_cpu_threshold_ms=400 +ro.sys.kernelmemory.umr.psi_mem_threshold_ms=70 +ro.sys.kernelmemory.umr.reclaimer.cachedAppOptimizer.enabled=true +ro.sys.kernelmemory.umr.reclaimer.damon.50.aggr_interval=1000000 +ro.sys.kernelmemory.umr.reclaimer.damon.50.min_age=30000000 +ro.sys.kernelmemory.umr.reclaimer.damon.50.min_nr_regions=90 +ro.sys.kernelmemory.umr.reclaimer.damon.50.quota_ms=20 +ro.sys.kernelmemory.umr.reclaimer.damon.50.quota_reset_interval_ms=1000 +ro.sys.kernelmemory.umr.reclaimer.damon.50.quota_sz=134217728 +ro.sys.kernelmemory.umr.reclaimer.damon.50.sample_interval=100000 +ro.sys.kernelmemory.umr.reclaimer.damon.50.wmarks_high=120 +ro.sys.kernelmemory.umr.reclaimer.damon.50.wmarks_high_12gb=100 +ro.sys.kernelmemory.umr.reclaimer.damon.50.wmarks_interval=1000000 +ro.sys.kernelmemory.umr.reclaimer.damon.50.wmarks_low=15 +ro.sys.kernelmemory.umr.reclaimer.damon.50.wmarks_mid=120 +ro.sys.kernelmemory.umr.reclaimer.damon.50.wmarks_mid_12gb=100 +ro.sys.kernelmemory.umr.reclaimer.damon.cpu_affinity=2 +ro.sys.kernelmemory.umr.reclaimer.damon.enabled=true +ro.sys.kernelmemory.umr.reclaimer.onTrim.enabled=true +ro.vendor.beluga.c=0x4800 +ro.vendor.beluga.p=0x3 +ro.vendor.beluga.s=0x900 +ro.vendor.beluga.t=0x240 +ro.vendor.epdg.support=true +ro.vendor.hdm.supported.swblock=0x100 +ro.vendor.nfc.feature.chipname=NXP_SN100U +ro.vendor.nfc.info.antpos=4 +ro.vendor.nfc.info.antposX=21.6 +ro.vendor.nfc.info.antposY=42.5 +ro.vendor.nfc.info.deviceFoldable=false +ro.vendor.nfc.info.deviceHeight=162.3 +ro.vendor.nfc.info.deviceWidth=79 +ro.vendor.nfc.support.advancedsetting=false +ro.vendor.nfc.support.autoselect=true +ro.vendor.nfc.support.defaultaid=true +ro.vendor.nfc.support.ese=true +ro.vendor.nfc.support.nonaid=true +ro.vendor.nfc.support.uicc=true +ro.vendor.perf-hal.ver=3.0 +ro.vendor.perf.scroll_opt=1 +ro.vendor.qb.id=86324121 +ro.vendor.qspm.enable=true +ro.vendor.sec.radio.def_network=9 +ro.vendor.use_data_netmgrd=false +ro.vendor.uwb.feature.chipname=sr200 +security.ADP.policy_version=00000000 +security.ADP.version=0 +security.ASKS.policy_version=00000000 +security.ASKS.rufs_enable=true +security.ASKS.smsfilter_enable=false +security.ASKS.smsfilter_target=false +security.ASKS.time_value=00000000 +security.ASKS.version=0 +security.securehw.available=false +security.securenvm.available=false +sys.config.activelaunch_enable=true +sys.config.hardcoder.enable=false +sys.config.ibs.enable=false +sys.usb.mtp.batchcancel=1 +sys.vendor.shutdown.waittime=500 +vendor.mm.enable.qcom_parser=16777215 +vendor.pasr.activemode.enabled=true +vendor.perf.framepacing.enable=1 +vendor.qc2audio.per_frame.flac.dec.enabled=true +vendor.qc2audio.suspend.enabled=true +vendor.spu.rkp_enabled=false +vendor.wv.oemcrypto.debug.enable_external_display_check=1 +vendor.wv.oemcrypto.debug.enable_hlos_data_path=true +