msm8953-common: Initial Common tree
* based on motorola sdm632-common Co-authored-by: Jorg3Lucas <jorgelucas@pixelexperience.org>
This commit is contained in:
131
rootdir/Android.mk
Normal file
131
rootdir/Android.mk
Normal file
@@ -0,0 +1,131 @@
|
||||
LOCAL_PATH:= $(call my-dir)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := init.class_main.sh
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_SRC_FILES := bin/init.class_main.sh
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := init.mmi.boot.sh
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_SRC_FILES := bin/init.mmi.boot.sh
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := init.mmi.usb.sh
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_SRC_FILES := bin/init.mmi.usb.sh
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := init.qcom.early_boot.sh
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_SRC_FILES := bin/init.qcom.early_boot.sh
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := init.qcom.post_boot.sh
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_SRC_FILES := bin/init.qcom.post_boot.sh
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := init.qcom.sensors.sh
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_SRC_FILES := bin/init.qcom.sensors.sh
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := init.qcom.sh
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_SRC_FILES := bin/init.qcom.sh
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := init.qti.qseecomd.sh
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_SRC_FILES := bin/init.qti.qseecomd.sh
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := init.hidl.sensor.rc
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_SRC_FILES := etc/init.hidl.sensor.rc
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := init.mmi.chipset.rc
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_SRC_FILES := etc/init.mmi.chipset.rc
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := init.mmi.overlay.rc
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_SRC_FILES := etc/init.mmi.overlay.rc
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := init.mmi.usb.rc
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_SRC_FILES := etc/init.mmi.usb.rc
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := init.mmi.rc
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_SRC_FILES := etc/init.mmi.rc
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := init.qcom.rc
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_SRC_FILES := etc/init.qcom.rc
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := init.target.rc
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_SRC_FILES := etc/init.target.rc
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := ueventd.qcom.rc
|
||||
LOCAL_MODULE_STEM := ueventd.rc
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
LOCAL_MODULE_CLASS := ETC
|
||||
LOCAL_SRC_FILES := root/ueventd.qcom.rc
|
||||
# this needs to be in /vendor/ueventd.rc
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR)
|
||||
include $(BUILD_PREBUILT)
|
||||
155
rootdir/bin/init.class_main.sh
Normal file
155
rootdir/bin/init.class_main.sh
Normal file
@@ -0,0 +1,155 @@
|
||||
#! /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`
|
||||
qcrild_status=true
|
||||
|
||||
case "$baseband" in
|
||||
"apq" | "sda" | "qcs" )
|
||||
setprop ro.vendor.radio.noril yes
|
||||
stop ril-daemon
|
||||
stop vendor.ril-daemon
|
||||
stop vendor.qcrild
|
||||
esac
|
||||
|
||||
case "$baseband" in
|
||||
"msm" | "csfb" | "svlte2a" | "mdm" | "mdm2" | "sglte" | "sglte2" | "dsda2" | "unknown" | "dsda3" | "sdm" | "sdx" | "sm6")
|
||||
|
||||
# For older modem packages launch ril-daemon.
|
||||
if [ -f /vendor/firmware_mnt/verinfo/ver_info.txt ]; then
|
||||
modem=`cat /vendor/firmware_mnt/verinfo/ver_info.txt |
|
||||
sed -n 's/^[^:]*modem[^:]*:[[:blank:]]*//p' |
|
||||
sed 's/.*MPSS.\(.*\)/\1/g' | cut -d \. -f 1`
|
||||
if [ "$modem" = "AT" ]; then
|
||||
version=`cat /vendor/firmware_mnt/verinfo/ver_info.txt |
|
||||
sed -n 's/^[^:]*modem[^:]*:[[:blank:]]*//p' |
|
||||
sed 's/.*AT.\(.*\)/\1/g' | cut -d \- -f 1`
|
||||
if [ ! -z $version ]; then
|
||||
if [ "$version" \< "3.1" ]; then
|
||||
qcrild_status=false
|
||||
fi
|
||||
fi
|
||||
elif [ "$modem" = "TA" ]; then
|
||||
version=`cat /vendor/firmware_mnt/verinfo/ver_info.txt |
|
||||
sed -n 's/^[^:]*modem[^:]*:[[:blank:]]*//p' |
|
||||
sed 's/.*TA.\(.*\)/\1/g' | cut -d \- -f 1`
|
||||
if [ ! -z $version ]; then
|
||||
if [ "$version" \< "3.0" ]; then
|
||||
qcrild_status=false
|
||||
fi
|
||||
fi
|
||||
elif [ "$modem" = "JO" ]; then
|
||||
version=`cat /vendor/firmware_mnt/verinfo/ver_info.txt |
|
||||
sed -n 's/^[^:]*modem[^:]*:[[:blank:]]*//p' |
|
||||
sed 's/.*JO.\(.*\)/\1/g' | cut -d \- -f 1`
|
||||
if [ ! -z $version ]; then
|
||||
if [ "$version" \< "3.2" ]; then
|
||||
qcrild_status=false
|
||||
fi
|
||||
fi
|
||||
elif [ "$modem" = "TH" ]; then
|
||||
qcrild_status=false
|
||||
fi
|
||||
else
|
||||
qcrild_status=false
|
||||
fi
|
||||
|
||||
if [ "$qcrild_status" = "true" ]; then
|
||||
# Make sure both rild, qcrild are not running at same time.
|
||||
# This is possible with vanilla aosp system image.
|
||||
stop ril-daemon
|
||||
stop vendor.ril-daemon
|
||||
|
||||
start vendor.qcrild
|
||||
else
|
||||
start ril-daemon
|
||||
start vendor.ril-daemon
|
||||
fi
|
||||
|
||||
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
|
||||
if [ "$qcrild_status" = "true" ]; then
|
||||
start vendor.qcrild2
|
||||
else
|
||||
start vendor.ril-daemon2
|
||||
fi
|
||||
elif [ "$multisim" = "tsts" ]; then
|
||||
if [ "$qcrild_status" = "true" ]; then
|
||||
start vendor.qcrild2
|
||||
start vendor.qcrild3
|
||||
else
|
||||
start vendor.ril-daemon2
|
||||
start vendor.ril-daemon3
|
||||
fi
|
||||
fi
|
||||
|
||||
case "$datamode" in
|
||||
"tethered")
|
||||
start vendor.dataqti
|
||||
start vendor.dataadpl
|
||||
;;
|
||||
"concurrent")
|
||||
start vendor.dataqti
|
||||
start vendor.dataadpl
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
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
|
||||
46
rootdir/bin/init.mmi.boot.sh
Normal file
46
rootdir/bin/init.mmi.boot.sh
Normal file
@@ -0,0 +1,46 @@
|
||||
#!/vendor/bin/sh
|
||||
|
||||
PATH=/sbin:/vendor/bin
|
||||
export PATH
|
||||
|
||||
scriptname=${0##*/}
|
||||
|
||||
# We take this from cpuinfo because hex "letters" are lowercase there - (lolwhat)
|
||||
cinfo=`getprop ro.boot.hwrev`
|
||||
hw=${cinfo#???}
|
||||
|
||||
# Now "cook" the value so it can be matched against devtree names
|
||||
m2=${hw%?}
|
||||
minor2=${hw#$m2}
|
||||
m1=${m2%?}
|
||||
minor1=${m2#$m1}
|
||||
if [ "$minor2" == "0" ]; then
|
||||
minor2=""
|
||||
if [ "$minor1" == "0" ]; then
|
||||
minor1=""
|
||||
fi
|
||||
fi
|
||||
|
||||
rev="p${hw%??}$minor1$minor2"
|
||||
rev2=`echo $rev | tr '[:upper:]' '[:lower:]'`
|
||||
|
||||
setprop ro.boot.hardware.revision $rev2
|
||||
unset hw cinfo m1 m2 minor1 minor2
|
||||
|
||||
# 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
|
||||
|
||||
|
||||
430
rootdir/bin/init.mmi.usb.sh
Normal file
430
rootdir/bin/init.mmi.usb.sh
Normal file
@@ -0,0 +1,430 @@
|
||||
#!/vendor/bin/sh
|
||||
# Copyright (c) 2012, Code Aurora Forum. 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 Code Aurora Forum, Inc. 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.
|
||||
#
|
||||
#
|
||||
# Allow unique persistent serial numbers for devices connected via usb
|
||||
# User needs to set unique usb serial number to persist.usb.serialno and
|
||||
# if persistent serial number is not set then Update USB serial number if
|
||||
# passed from command line
|
||||
#
|
||||
|
||||
target=`getprop ro.board.platform`
|
||||
usb_action=`getprop vendor.usb.mmi-usb-sh.action`
|
||||
echo "mmi-usb-sh: action = \"$usb_action\""
|
||||
sys_usb_config=`getprop vendor.usb.config`
|
||||
|
||||
tcmd_ctrl_adb ()
|
||||
{
|
||||
ctrl_adb=`getprop vendor.tcmd.ctrl_adb`
|
||||
echo "mmi-usb-sh: vendor.tcmd.ctrl_adb = $ctrl_adb"
|
||||
case "$ctrl_adb" in
|
||||
"0")
|
||||
if [[ "$sys_usb_config" == *adb* ]]
|
||||
then
|
||||
# *** ALWAYS expecting adb at the end ***
|
||||
new_usb_config=${sys_usb_config/,adb/}
|
||||
echo "mmi-usb-sh: disabling adb ($new_usb_config)"
|
||||
setprop persist.vendor.usb.config $new_usb_config
|
||||
setprop vendor.usb.config $new_usb_config
|
||||
setprop persist.vendor.factory.allow_adb 0
|
||||
fi
|
||||
;;
|
||||
"1")
|
||||
if [[ "$sys_usb_config" != *adb* ]]
|
||||
then
|
||||
# *** ALWAYS expecting adb at the end ***
|
||||
new_usb_config="$sys_usb_config,adb"
|
||||
echo "mmi-usb-sh: enabling adb ($new_usb_config)"
|
||||
setprop persist.vendor.usb.config $new_usb_config
|
||||
setprop vendor.usb.config $new_usb_config
|
||||
setprop persist.vendor.factory.allow_adb 1
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
}
|
||||
|
||||
case "$usb_action" in
|
||||
"")
|
||||
;;
|
||||
"vendor.tcmd.ctrl_adb")
|
||||
tcmd_ctrl_adb
|
||||
;;
|
||||
esac
|
||||
|
||||
# soc_ids for 8937
|
||||
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 "$target" in
|
||||
"msm8937")
|
||||
setprop vendor.usb.rps_mask 0
|
||||
setprop vendor.rmnet_vnd.rps_mask 0
|
||||
case "$soc_id" in
|
||||
"294" | "295")
|
||||
setprop vendor.usb.rps_mask 40
|
||||
;;
|
||||
esac
|
||||
|
||||
case "$soc_id" in
|
||||
"313" | "320")
|
||||
qcom_usb_config="diag,serial_smd,rmnet_ipa"
|
||||
qcom_adb_usb_config="diag,serial_smd,rmnet_ipa,adb"
|
||||
bpt_usb_config="diag,serial_smd,rmnet_bam_ipa"
|
||||
bpt_adb_usb_config="diag,serial_smd,rmnet_bam_ipa,adb"
|
||||
setprop vendor.usb.rndis.func.name "rndis_bam"
|
||||
setprop vendor.usb.rmnet.inst.name "rmnet"
|
||||
setprop vendor.usb.dpl.inst.name "dpl"
|
||||
;;
|
||||
*)
|
||||
qcom_usb_config="diag,serial_smd,rmnet_qti_bam"
|
||||
qcom_adb_usb_config="diag,serial_smd,rmnet_qti_bam,adb"
|
||||
bpt_usb_config="diag,serial_smd,rmnet"
|
||||
bpt_adb_usb_config="diag,serial_smd,rmnet,adb"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
"msm8953")
|
||||
#Set RPS Mask for Tethering to CPU4
|
||||
setprop vendor.usb.rps_mask 10
|
||||
setprop vendor.rmnet_vnd.rps_mask 0
|
||||
if [ -d /config/usb_gadget/g1 ]; then
|
||||
qcom_usb_config="diag,serial_cdev,rmnet"
|
||||
qcom_adb_usb_config="diag,serial_cdev,rmnet,adb"
|
||||
bpt_usb_config="diag,serial,rmnet"
|
||||
bpt_adb_usb_config="diag,serial,rmnet,adb"
|
||||
setprop vendor.usb.rndis.func.name "rndis_bam"
|
||||
setprop vendor.usb.rmnet.func.name "rmnet_bam"
|
||||
else
|
||||
qcom_usb_config="diag,serial_smd,serial_tty,rmnet_bam,mass_storage"
|
||||
qcom_adb_usb_config="diag,serial_smd,serial_tty,rmnet_bam,mass_storage,adb"
|
||||
bpt_usb_config="diag,serial_smd,serial_tty,rmnet"
|
||||
bpt_adb_usb_config="diag,serial_smd,serial_tty,rmnet,adb"
|
||||
fi
|
||||
setprop vendor.usb.controller "7000000.dwc3"
|
||||
;;
|
||||
"msm8996")
|
||||
#Set RPS Mask for Tethering to CPU2
|
||||
setprop vendor.usb.rps_mask 2
|
||||
setprop vendor.rmnet_vnd.rps_mask 0f
|
||||
qcom_usb_config="diag,serial_cdev,serial_tty,rmnet_bam,mass_storage"
|
||||
qcom_adb_usb_config="diag,serial_cdev,serial_tty,rmnet_bam,mass_storage,adb"
|
||||
bpt_usb_config="diag,serial_cdev,serial_tty,rmnet"
|
||||
bpt_adb_usb_config="diag,serial_cdev,serial_tty,rmnet,adb"
|
||||
setprop vendor.usb.controller "6a00000.dwc3"
|
||||
;;
|
||||
"msm8998")
|
||||
#Set RPS Mask for Tethering to CPU2
|
||||
setprop vendor.usb.rps_mask 70
|
||||
setprop vendor.rmnet_vnd.rps_mask 0d
|
||||
qcom_usb_config="diag,serial_cdev,rmnet"
|
||||
qcom_adb_usb_config="diag,serial_cdev,rmnet,adb"
|
||||
bpt_usb_config="diag,serial,rmnet"
|
||||
bpt_adb_usb_config="diag,serial,rmnet,adb"
|
||||
setprop vendor.usb.controller "a800000.dwc3"
|
||||
setprop vendor.usb.rndis.func.name "gsi"
|
||||
setprop vendor.usb.rmnet.func.name "gsi"
|
||||
setprop vendor.usb.hcd_mask 80
|
||||
;;
|
||||
"sdm660")
|
||||
#Set RPS Mask for Tethering to CPU2
|
||||
setprop vendor.usb.rps_mask 30
|
||||
setprop vendor.rmnet_vnd.rps_mask 4
|
||||
qcom_usb_config="diag,serial_cdev,rmnet"
|
||||
qcom_adb_usb_config="diag,serial_cdev,rmnet,adb"
|
||||
bpt_usb_config="diag,serial,rmnet"
|
||||
bpt_adb_usb_config="diag,serial,rmnet,adb"
|
||||
setprop vendor.usb.controller "a800000.dwc3"
|
||||
setprop vendor.usb.rndis.func.name "rndis_bam"
|
||||
setprop vendor.usb.rmnet.func.name "rmnet_bam"
|
||||
;;
|
||||
"sdm845")
|
||||
qcom_usb_config="diag,serial_cdev,rmnet"
|
||||
qcom_adb_usb_config="diag,serial_cdev,rmnet,adb"
|
||||
bpt_usb_config="diag,serial,rmnet"
|
||||
bpt_adb_usb_config="diag,serial,rmnet,adb"
|
||||
setprop vendor.usb.controller "a600000.dwc3"
|
||||
setprop vendor.usb.rndis.func.name "gsi"
|
||||
setprop vendor.usb.rmnet.func.name "gsi"
|
||||
;;
|
||||
"sdm710")
|
||||
qcom_usb_config="diag,serial_cdev,rmnet"
|
||||
qcom_adb_usb_config="diag,serial_cdev,rmnet,adb"
|
||||
bpt_usb_config="diag,serial,rmnet"
|
||||
bpt_adb_usb_config="diag,serial,rmnet,adb"
|
||||
setprop vendor.usb.controller "a600000.dwc3"
|
||||
setprop vendor.usb.rndis.func.name "gsi"
|
||||
setprop vendor.usb.rmnet.func.name "gsi"
|
||||
;;
|
||||
"sm6150")
|
||||
qcom_usb_config="diag,serial_cdev,rmnet"
|
||||
qcom_adb_usb_config="diag,serial_cdev,rmnet,adb"
|
||||
bpt_usb_config="diag,serial,rmnet"
|
||||
bpt_adb_usb_config="diag,serial,rmnet,adb"
|
||||
setprop vendor.usb.controller "a600000.dwc3"
|
||||
setprop vendor.usb.rndis.func.name "gsi"
|
||||
setprop vendor.usb.rmnet.func.name "gsi"
|
||||
setprop vendor.usb.hcd_mask 80
|
||||
setprop vendor.usb.rps_mask 40
|
||||
;;
|
||||
"trinket")
|
||||
qcom_usb_config="diag,serial_cdev,rmnet"
|
||||
qcom_adb_usb_config="diag,serial_cdev,rmnet,adb"
|
||||
bpt_usb_config="diag,serial,rmnet"
|
||||
bpt_adb_usb_config="diag,serial,rmnet,adb"
|
||||
setprop vendor.usb.controller "4e00000.dwc3"
|
||||
setprop vendor.usb.rndis.func.name "gsi"
|
||||
setprop vendor.usb.rmnet.func.name "gsi"
|
||||
;;
|
||||
"kona")
|
||||
qcom_usb_config="diag,diag_mdm,qdss,qdss_mdm,serial_cdev,serial_cdev_mdm,dpl,rmnet"
|
||||
qcom_adb_usb_config="diag,diag_mdm,qdss,qdss_mdm,serial_cdev,serial_cdev_mdm,dpl,rmnet,adb"
|
||||
bpt_usb_config="diag,serial,rmnet"
|
||||
bpt_adb_usb_config="diag,serial,rmnet,adb"
|
||||
setprop vendor.usb.controller "a600000.dwc3"
|
||||
echo "none" > /config/usb_gadget/g1/UDC
|
||||
echo "a600000.dwc3" > /config/usb_gadget/g1/UDC
|
||||
setprop vendor.usb.rndis.func.name "gsi"
|
||||
setprop vendor.usb.rmnet.func.name "gsi"
|
||||
;;
|
||||
"lito")
|
||||
qcom_usb_config="diag,diag_mdm,qdss,qdss_mdm,serial_cdev,serial_cdev_mdm,dpl,rmnet"
|
||||
qcom_adb_usb_config="diag,diag_mdm,qdss,qdss_mdm,serial_cdev,serial_cdev_mdm,dpl,rmnet,adb"
|
||||
bpt_usb_config="diag,serial,rmnet"
|
||||
bpt_adb_usb_config="diag,serial,rmnet,adb"
|
||||
setprop vendor.usb.controller "a600000.dwc3"
|
||||
echo "none" > /config/usb_gadget/g1/UDC
|
||||
echo "a600000.dwc3" > /config/usb_gadget/g1/UDC
|
||||
setprop vendor.usb.rndis.func.name "gsi"
|
||||
setprop vendor.usb.rmnet.func.name "gsi"
|
||||
;;
|
||||
esac
|
||||
|
||||
## This is needed to switch to the qcom rndis driver.
|
||||
diag_extra=`getprop persist.vendor.usb.config.extra`
|
||||
if [ "$diag_extra" == "" ]; then
|
||||
setprop persist.vendor.usb.config.extra none
|
||||
fi
|
||||
|
||||
#
|
||||
# Allow USB enumeration with default PID/VID
|
||||
#
|
||||
usb_config=`getprop persist.vendor.usb.config`
|
||||
mot_usb_config=`getprop persist.vendor.mot.usb.config`
|
||||
bootmode=`getprop ro.bootmode`
|
||||
buildtype=`getprop ro.build.type`
|
||||
securehw=`getprop ro.boot.secure_hardware`
|
||||
cid=`getprop ro.vendor.boot.cid`
|
||||
diagmode=`getprop persist.vendor.radio.usbdiag`
|
||||
|
||||
echo "mmi-usb-sh: persist usb configs = \"$usb_config\", \"$mot_usb_config\", \"$diagmode\""
|
||||
|
||||
|
||||
phonelock_type=`getprop persist.sys.phonelock.mode`
|
||||
usb_restricted=`getprop persist.sys.usb.policylocked`
|
||||
if [ "$securehw" == "1" ] && [ "$buildtype" == "user" ] && [ "$(($cid))" != 0 ]
|
||||
then
|
||||
if [ "$usb_restricted" == "1" ]
|
||||
then
|
||||
echo 1 > /sys/class/android_usb/android0/secure
|
||||
else
|
||||
case "$phonelock_type" in
|
||||
"1" )
|
||||
echo 1 > /sys/class/android_usb/android0/secure
|
||||
;;
|
||||
* )
|
||||
echo 0 > /sys/class/android_usb/android0/secure
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
fi
|
||||
|
||||
# ##DIAG# mode option
|
||||
case "$diagmode" in
|
||||
"1" )
|
||||
case "$usb_config" in
|
||||
"$bpt_usb_config" | "$bpt_adb_usb_config" )
|
||||
;;
|
||||
* )
|
||||
case "$securehw" in
|
||||
"1" )
|
||||
setprop persist.vendor.usb.config $bpt_usb_config
|
||||
;;
|
||||
*)
|
||||
setprop persist.vendor.usb.config $bpt_adb_usb_config
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
exit 0
|
||||
;;
|
||||
* )
|
||||
# Do nothing. USB enumeration will be set by bootmode
|
||||
;;
|
||||
esac
|
||||
|
||||
|
||||
|
||||
case "$bootmode" in
|
||||
"bp-tools" )
|
||||
case "$usb_config" in
|
||||
"$bpt_usb_config" | "$bpt_adb_usb_config" )
|
||||
;;
|
||||
* )
|
||||
case "$securehw" in
|
||||
"1" )
|
||||
setprop persist.vendor.usb.config $bpt_usb_config
|
||||
setprop persist.vendor.usb.bp-tools.config $bpt_usb_config
|
||||
setprop persist.vendor.usb.bp-tools.func $bpt_usb_config
|
||||
;;
|
||||
*)
|
||||
setprop persist.vendor.usb.config $bpt_adb_usb_config
|
||||
setprop persist.vendor.usb.bp-tools.config $bpt_adb_usb_config
|
||||
setprop persist.vendor.usb.bp-tools.func $bpt_adb_usb_config
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
"mot-factory" )
|
||||
allow_adb=`getprop persist.vendor.factory.allow_adb`
|
||||
case "$allow_adb" in
|
||||
"1")
|
||||
if [ "$usb_config" != "usbnet,adb" ]
|
||||
then
|
||||
setprop persist.vendor.usb.config usbnet,adb
|
||||
setprop persist.vendor.usb.mot-factory.config usbnet,adb
|
||||
setprop persist.vendor.usb.mot-factory.func usbnet,adb
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
if [ "$usb_config" != "usbnet" ]
|
||||
then
|
||||
setprop persist.vendor.usb.config usbnet
|
||||
setprop persist.vendor.usb.mot-factory.config usbnet
|
||||
setprop persist.vendor.usb.mot-factory.func usbnet
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
# Disable Host Mode LPM for Factory mode
|
||||
echo 1 > /sys/module/dwc3_msm/parameters/disable_host_mode_pm
|
||||
;;
|
||||
"qcom" )
|
||||
case "$usb_config" in
|
||||
"$qcom_usb_config" | "$qcom_adb_usb_config" )
|
||||
;;
|
||||
* )
|
||||
case "$securehw" in
|
||||
"1" )
|
||||
setprop persist.vendor.usb.config $qcom_usb_config
|
||||
setprop persist.vendor.usb.qcom.config $qcom_usb_config
|
||||
setprop persist.vendor.usb.qcom.func $qcom_usb_config
|
||||
;;
|
||||
*)
|
||||
setprop persist.vendor.usb.config $qcom_adb_usb_config
|
||||
setprop persist.vendor.usb.qcom.config $qcom_adb_usb_config
|
||||
setprop persist.vendor.usb.qcom.func $qcom_adb_usb_config
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
* )
|
||||
if [ "$buildtype" == "user" ] && [ "$phonelock_type" != "1" ] && [ "$usb_restricted" != "1" ]
|
||||
then
|
||||
echo 1 > /sys/class/android_usb/android0/secure
|
||||
echo "Disabling enumeration until bootup!"
|
||||
fi
|
||||
|
||||
case "$usb_config" in
|
||||
"mtp,adb" | "mtp" | "adb")
|
||||
;;
|
||||
*)
|
||||
case "$mot_usb_config" in
|
||||
"mtp,adb" | "mtp" | "adb")
|
||||
setprop persist.vendor.usb.config $mot_usb_config
|
||||
;;
|
||||
*)
|
||||
case "$securehw" in
|
||||
"1" )
|
||||
setprop persist.vendor.usb.config mtp
|
||||
;;
|
||||
*)
|
||||
setprop persist.vendor.usb.config adb
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
|
||||
adb_early=`getprop ro.boot.adb_early`
|
||||
if [ "$adb_early" == "1" ]; then
|
||||
echo 0 > /sys/class/android_usb/android0/secure
|
||||
echo "Enabling enumeration after bootup, count = $count !"
|
||||
new_persist_usb_config=`getprop persist.vendor.usb.config`
|
||||
if [[ "$new_persist_usb_config" != *adb* ]]; then
|
||||
setprop persist.vendor.usb.config "adb"
|
||||
setprop vendor.usb.config "adb"
|
||||
else
|
||||
setprop vendor.usb.config $new_persist_usb_config
|
||||
fi
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ "$buildtype" == "user" ] && [ "$phonelock_type" != "1" ] && [ "$usb_restricted" != "1" ]
|
||||
then
|
||||
count=0
|
||||
bootcomplete=`getprop vendor.boot_completed`
|
||||
echo "mmi-usb-sh - bootcomplete = $booted"
|
||||
while [ "$bootcomplete" != "1" ]; do
|
||||
echo "Sleeping till bootup!"
|
||||
sleep 1
|
||||
count=$((count+1))
|
||||
if [ $count -gt 90 ]
|
||||
then
|
||||
echo "mmi-usb-sh - Timed out waiting for bootup"
|
||||
break
|
||||
fi
|
||||
bootcomplete=`getprop vendor.boot_completed`
|
||||
done
|
||||
echo 0 > /sys/class/android_usb/android0/secure
|
||||
echo "Enabling enumeration after bootup, count = $count !"
|
||||
exit 0
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
new_persist_usb_config=`getprop persist.vendor.usb.config`
|
||||
if [ "$sys_usb_config" != "$new_persist_usb_config" ]; then
|
||||
setprop vendor.usb.config $new_persist_usb_config
|
||||
fi
|
||||
494
rootdir/bin/init.qcom.early_boot.sh
Normal file
494
rootdir/bin/init.qcom.early_boot.sh
Normal file
@@ -0,0 +1,494 @@
|
||||
#! /vendor/bin/sh
|
||||
|
||||
# Copyright (c) 2012-2013,2016,2018,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.
|
||||
#
|
||||
|
||||
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
|
||||
*)
|
||||
if [ $fb_width -le 1600 ]; then
|
||||
setprop vendor.display.lcd_density 560
|
||||
else
|
||||
setprop vendor.display.lcd_density 640
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
"lito")
|
||||
case "$soc_hwplatform" in
|
||||
*)
|
||||
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")
|
||||
if [ -f /vendor/firmware_mnt/verinfo/ver_info.txt ]; then
|
||||
echo "file"
|
||||
modem=`cat /vendor/firmware_mnt/verinfo/ver_info.txt |
|
||||
sed -n 's/^[^:]*modem[^:]*:[[:blank:]]*//p' |
|
||||
sed 's/.*TA.\(.*\)/\1/g' | cut -d \- -f 1`
|
||||
# In MSM8953 if meta version is greater than 2.1, need
|
||||
# to use the new vendor-ril which supports L+L feature
|
||||
# otherwise use the existing old one.
|
||||
zygote=`getprop ro.zygote`
|
||||
case "$zygote" in
|
||||
""zygote64_32"")
|
||||
if [ "$modem" \< "3.0" ]; then
|
||||
setprop vendor.rild.libpath "/vendor/lib64/libril-qc-qmi-1.so"
|
||||
else
|
||||
setprop vendor.rild.libpath "/vendor/lib64/libril-qc-hal-qmi.so"
|
||||
fi
|
||||
;;
|
||||
"zygote32")
|
||||
if [ "$modem" \< "3.0" ]; then
|
||||
setprop vendor.rild.libpath "/vendor/lib/libril-qc-qmi-1.so"
|
||||
else
|
||||
setprop vendor.rild.libpath "/vendor/lib/libril-qc-hal-qmi.so"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
;;
|
||||
"sdm710" | "msmpeafowl")
|
||||
case "$soc_hwplatform" in
|
||||
*)
|
||||
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_hwid" in
|
||||
385)
|
||||
setprop vendor.media.target.version 1
|
||||
esac
|
||||
;;
|
||||
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.build.product`
|
||||
|
||||
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
|
||||
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
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
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 <filename> <ownership> <permission>
|
||||
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
|
||||
5173
rootdir/bin/init.qcom.post_boot.sh
Normal file
5173
rootdir/bin/init.qcom.post_boot.sh
Normal file
File diff suppressed because it is too large
Load Diff
44
rootdir/bin/init.qcom.sensors.sh
Normal file
44
rootdir/bin/init.qcom.sensors.sh
Normal file
@@ -0,0 +1,44 @@
|
||||
#!/vendor/bin/sh
|
||||
# Copyright (c) 2015, 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
|
||||
#
|
||||
start_sensors()
|
||||
{
|
||||
chmod -h 664 /persist/sensors/sensors_settings
|
||||
chown -h -R system.system /persist/sensors
|
||||
start vendor.sensors.qti
|
||||
|
||||
# Only for SLPI
|
||||
if [ -c /dev/msm_dsps -o -c /dev/sensors ]; then
|
||||
start vendor.sensors
|
||||
fi
|
||||
}
|
||||
|
||||
start_sensors
|
||||
493
rootdir/bin/init.qcom.sh
Normal file
493
rootdir/bin/init.qcom.sh
Normal file
@@ -0,0 +1,493 @@
|
||||
#! /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
|
||||
}
|
||||
|
||||
start_copying_prebuilt_qcril_db()
|
||||
{
|
||||
if [ -f /vendor/radio/qcril_database/qcril.db -a ! -f /data/vendor/radio/qcril.db ]; then
|
||||
# [MOTO] - First copy db from the old N path to O path for upgrade
|
||||
if [ -f /data/misc/radio/qcril.db ]; then
|
||||
cp /data/misc/radio/qcril.db /data/vendor/radio/qcril.db
|
||||
# copy the backup db from the old N path to O path for upgrade
|
||||
if [ -f /data/misc/radio/qcril_backup.db ]; then
|
||||
cp /data/misc/radio/qcril_backup.db /data/vendor/radio/qcril_backup.db
|
||||
fi
|
||||
# Now delete the old folder
|
||||
rm -fr /data/misc/radio
|
||||
else
|
||||
cp /vendor/radio/qcril_database/qcril.db /data/vendor/radio/qcril.db
|
||||
fi
|
||||
chown -h radio.radio /data/vendor/radio/qcril.db
|
||||
else
|
||||
# [MOTO] if qcril.db's owner is not radio (e.g. root),
|
||||
# reset it for the recovery
|
||||
qcril_db_owner=`stat -c %U /data/misc/radio/qcril.db`
|
||||
echo "qcril.db's owner is $qcril_db_owner"
|
||||
if [ $qcril_db_owner != "radio" ]; then
|
||||
echo "reset owner to radio for qcril.db"
|
||||
chown -h radio.radio /data/misc/radio/qcril.db
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
baseband=`getprop ro.baseband`
|
||||
echo 1 > /proc/sys/net/ipv6/conf/default/accept_ra_defrtr
|
||||
|
||||
#case "$baseband" in
|
||||
# "svlte2a")
|
||||
# start bridgemgrd // no bridgemgrd on 8996 for now, comment out
|
||||
# ;;
|
||||
#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
|
||||
35
rootdir/bin/init.qti.qseecomd.sh
Normal file
35
rootdir/bin/init.qti.qseecomd.sh
Normal file
@@ -0,0 +1,35 @@
|
||||
#!/vendor/bin/sh
|
||||
# Copyright (c) 2018, 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.
|
||||
#
|
||||
#
|
||||
|
||||
while [ "$registered" != "true" ]
|
||||
do
|
||||
sleep 0.1
|
||||
registered="`getprop vendor.sys.listeners.registered`"
|
||||
done
|
||||
30
rootdir/etc/init.hidl.sensor.rc
Normal file
30
rootdir/etc/init.hidl.sensor.rc
Normal file
@@ -0,0 +1,30 @@
|
||||
#Blaine add seosors-hal input group for AP senosr,it will override android.hardware.sensors@1.0-service.rc
|
||||
|
||||
service sensors-hal-1-0 /vendor/bin/hw/android.hardware.sensors@1.0-service
|
||||
class hal
|
||||
user system
|
||||
group input system
|
||||
capabilities SYS_NICE
|
||||
|
||||
on boot
|
||||
# change permission for capsensor
|
||||
chown system system /sys/class/sensors/Moto\ CapSense\ Ch0/enable
|
||||
chown system system /sys/class/sensors/Moto\ CapSense\ Ch0/poll_delay
|
||||
chown system system /sys/class/sensors/Moto\ CapSense\ Ch1/enable
|
||||
chown system system /sys/class/sensors/Moto\ CapSense\ Ch1/poll_delay
|
||||
chown system system /sys/class/sensors/Moto\ CapSense\ Ch2/enable
|
||||
chown system system /sys/class/sensors/Moto\ CapSense\ Ch2/poll_delay
|
||||
chown system system /sys/class/sensors/Moto\ CapSense\ Ch3/enable
|
||||
chown system system /sys/class/sensors/Moto\ CapSense\ Ch3/poll_delay
|
||||
chmod 0660 /sys/class/sensors/Moto\ CapSense\ Ch0/enable
|
||||
chmod 0660 /sys/class/sensors/Moto\ CapSense\ Ch0/poll_delay
|
||||
chmod 0660 /sys/class/sensors/Moto\ CapSense\ Ch1/enable
|
||||
chmod 0660 /sys/class/sensors/Moto\ CapSense\ Ch1/poll_delay
|
||||
chmod 0660 /sys/class/sensors/Moto\ CapSense\ Ch2/enable
|
||||
chmod 0660 /sys/class/sensors/Moto\ CapSense\ Ch2/poll_delay
|
||||
chmod 0660 /sys/class/sensors/Moto\ CapSense\ Ch3/enable
|
||||
chmod 0660 /sys/class/sensors/Moto\ CapSense\ Ch3/poll_delay
|
||||
chown system system /dev/input/event3
|
||||
chown system system /dev/input/event4
|
||||
chown system system /dev/input/event5
|
||||
chown system system /dev/input/event6
|
||||
40
rootdir/etc/init.mmi.chipset.rc
Normal file
40
rootdir/etc/init.mmi.chipset.rc
Normal file
@@ -0,0 +1,40 @@
|
||||
# Chipset-specific init settings
|
||||
on boot
|
||||
# Change permission for type C params
|
||||
chown root oem_5004 /sys/devices/soc/78b6000.i2c/i2c-2/2-0022/CC_state
|
||||
chown root oem_5004 /sys/devices/soc/78b6000.i2c/i2c-2/2-0022/enable_vconn
|
||||
|
||||
# Change ownership and permission for AMPS factory testing
|
||||
chown root oem_5004 /sys/class/i2c-adapter/i2c-2/2-002d/enable
|
||||
chmod 0660 /sys/class/i2c-adapter/i2c-2/2-002d/enable
|
||||
chown root oem_5004 /sys/class/i2c-adapter/i2c-2/2-002d/hsic_vdd
|
||||
chmod 0660 /sys/class/i2c-adapter/i2c-2/2-002d/hsic_vdd
|
||||
|
||||
# Change permission for fingerprint sensor
|
||||
chown system oem_5004 /sys/devices/soc/soc:fpc_fpc1020/nav
|
||||
chown system oem_5004 /sys/devices/soc/soc:fpc_fpc1020/dev_enable
|
||||
chown system oem_5004 /sys/devices/soc/soc:fpc_fpc1020/irq
|
||||
chown system oem_5004 /sys/devices/soc/soc:fpc_fpc1020/irq_cnt
|
||||
chmod 0440 /sys/devices/soc/soc:fpc_fpc1020/irq_cnt
|
||||
|
||||
on post-fs-data
|
||||
#setup folder for WLAN WAPI
|
||||
chmod 0770 /data/wapi_certificate
|
||||
|
||||
# This dir only for preinstall app so libs
|
||||
mkdir /data/app-lib2 0771 system system
|
||||
|
||||
on moto-charger
|
||||
setprop ro.board.platform msm8953
|
||||
load_system_props
|
||||
trigger firmware_mounts_complete
|
||||
start qcom-post-boot
|
||||
start vendor.gbmodinstall
|
||||
start vendor.charge_only_mode
|
||||
start vendor.batt_health
|
||||
start vendor.thermal-com
|
||||
start system_suspend
|
||||
|
||||
# Set hub drive strength to +5%
|
||||
on property:ro.bootmode=normal
|
||||
write /sys/module/usb3813_hub/parameters/boost_val 3
|
||||
43
rootdir/etc/init.mmi.overlay.rc
Normal file
43
rootdir/etc/init.mmi.overlay.rc
Normal file
@@ -0,0 +1,43 @@
|
||||
import init.hidl.sensor.rc
|
||||
|
||||
service capsense_set_threshold /system/vendor/bin/capsense_set_threshold
|
||||
class core
|
||||
user system
|
||||
group system
|
||||
disabled
|
||||
oneshot
|
||||
|
||||
on init
|
||||
|
||||
# Change ownership for for HBM feature
|
||||
chown system system /sys/class/graphics/fb0/hbm
|
||||
# Change ownership for for cabc feature
|
||||
chown system system /sys/class/graphics/fb0/cabc
|
||||
|
||||
on boot
|
||||
# capsensor fw path
|
||||
chown system system /sys/class/capsense/set_threshold
|
||||
|
||||
# Change permission for fingerprint sensor
|
||||
chown system mot_tcmd /sys/devices/soc/soc:fpc_fpc1020/dev_enable
|
||||
chown system mot_tcmd /sys/devices/soc/soc:fpc_fpc1020/irq
|
||||
chown system mot_tcmd /sys/devices/soc/soc:fpc_fpc1020/irq_cnt
|
||||
chmod 0440 /sys/devices/soc/soc:fpc_fpc1020/irq_cnt
|
||||
|
||||
# Change ownership and permission for laser_sensor
|
||||
chown system system /sys/kernel/range/enable_sar
|
||||
chmod 0660 /sys/kernel/range/enable_sar
|
||||
chown system system /sys/kernel/range/set_delay_ms
|
||||
chmod 0660 /sys/kernel/range/set_delay_ms
|
||||
chown system system /sys/kernel/range/near
|
||||
chmod 0660 /sys/kernel/range/near
|
||||
|
||||
# Change the ownership of display TE files for tcmds
|
||||
chown root mot_tcmd /sys/class/graphics/fb0/te_test
|
||||
chown root mot_tcmd /sys/class/graphics/fb0/te_enable
|
||||
chown root mot_tcmd /sys/class/graphics/fb0/frame_counter
|
||||
|
||||
service mmi-laser-sh /vendor/bin/init.mmi.laser.sh
|
||||
class core
|
||||
user root
|
||||
oneshot
|
||||
306
rootdir/etc/init.mmi.rc
Normal file
306
rootdir/etc/init.mmi.rc
Normal file
@@ -0,0 +1,306 @@
|
||||
# Chipset-specific file
|
||||
import /vendor/etc/init/hw/init.mmi.chipset.rc
|
||||
|
||||
# Target-specific file
|
||||
import /vendor/etc/init/hw/init.mmi.overlay.rc
|
||||
|
||||
# Moto USB configuration
|
||||
import /vendor/etc/init/hw/init.mmi.usb.rc
|
||||
|
||||
# Carrier specific script
|
||||
import /vendor/etc/init/carrier/init.${ro.boot.carrier}.rc
|
||||
import /vendor/etc/init/carrier/init.default.rc
|
||||
|
||||
on early-boot
|
||||
write /sys/module/subsystem_restart/parameters/disable_restart_work 0x0
|
||||
|
||||
on init
|
||||
chown system log /sys/fs/pstore/console-ramoops-0
|
||||
chmod 0440 /sys/fs/pstore/console-ramoops-0
|
||||
chown system log /sys/fs/pstore/annotate-ramoops-0
|
||||
chmod 0640 /sys/fs/pstore/annotate-ramoops-0
|
||||
chown system log /sys/fs/pstore/dmesg-ramoops-0
|
||||
chmod 0640 /sys/fs/pstore/dmesg-ramoops-0
|
||||
chown system log /proc/driver/mmi_annotate
|
||||
chmod 0640 /proc/driver/mmi_annotate
|
||||
|
||||
# Setup kernel dropbox permissions so that dropboxd can utilize it
|
||||
chown root diag /sys/kernel/dropbox/event
|
||||
chown root diag /sys/kernel/dropbox/data
|
||||
|
||||
on fs
|
||||
# use /persist as phony PDS partition
|
||||
symlink /persist /pds
|
||||
|
||||
on post-fs
|
||||
mkdir /mnt/vendor/persist/camera 0755 oem_5004 oem_5004
|
||||
mkdir /mnt/vendor/persist/camera/dualcal 0777 camera oem_5004
|
||||
mkdir /mnt/vendor/persist/camera/focus 0775 camera oem_5004
|
||||
mkdir /mnt/vendor/persist/camera/ledcal 0775 camera oem_5004
|
||||
mkdir /mnt/vendor/persist/camera/mot_ledcal 0775 camera camera
|
||||
mkdir /mnt/vendor/persist/camera/mot_gyrocal 0775 camera camera
|
||||
mkdir /mnt/vendor/persist/batt_health 0775 oem_5001 oem_5001
|
||||
mkdir /mnt/vendor/persist/mdm 0770 radio radio
|
||||
mkdir /mnt/vendor/persist/factory 0755 oem_5004 oem_5004
|
||||
mkdir /mnt/vendor/persist/factory/audio 0755 oem_5004 system
|
||||
mkdir /mnt/vendor/persist/factory/wlan 0755 oem_5004 oem_5004
|
||||
mkdir /mnt/vendor/persist/factory/regulatory 0755 oem_5004 system
|
||||
mkdir /mnt/vendor/persist/public 0755 oem_5004 oem_5004
|
||||
mkdir /persist/public/atvc 0770 oem_5012 shell
|
||||
mkdir /mnt/vendor/persist/public/att_dm 0775 radio oem_5004
|
||||
mkdir /mnt/vendor/persist/public/hiddenmenu 0775 radio oem_5004
|
||||
mkdir /mnt/vendor/persist/public/hiddenmenu/data 0775 system oem_5004
|
||||
mkdir /persist/public/locale 0700 system system
|
||||
mkdir /persist/public/omadm 0700 radio radio
|
||||
mkdir /persist/public/svcs 0770 system system
|
||||
mkdir /mnt/vendor/persist/wifi 0755 oem_5004 oem_5004
|
||||
mkdir /mnt/vendor/persist/bt 0755 oem_5004 bluetooth
|
||||
mkdir /persist/public/usc_dm 0775 radio radio
|
||||
mkdir /persist/sds 0700 vold vold
|
||||
mkdir /mnt/vendor/persist/rfs/msm/mpss/mot_rfs 0771 rfs system
|
||||
|
||||
# This dir is used to store any OMA(both DM and CP) files in persist partition
|
||||
# Any app with radio UID or vendor_tcmd GID can read/write/execute files in this dir.
|
||||
mkdir /mnt/vendor/persist/public/oma 0775 radio oem_5004
|
||||
|
||||
chown vendor_prod_persist vendor_prod_persist /mnt/product/persist/lifetime/tf_data
|
||||
chown oem_5004 oem_5004 /mnt/vendor/persist/factory/fti
|
||||
chmod 0664 /mnt/vendor/persist/factory/fti
|
||||
chown oem_5004 oem_5004 /mnt/vendor/persist/factory/byte
|
||||
chmod 0660 /mnt/vendor/persist/factory/byte
|
||||
chmod 0660 /mnt/vendor/persist/wifi/wlan_mac.bin
|
||||
chown oem_5004 oem_5004 /mnt/vendor/persist/bt/bt_bdaddr
|
||||
chmod 0664 /mnt/vendor/persist/bt/bt_bdaddr
|
||||
|
||||
# Set life_calls and life_timer file permissions
|
||||
chown radio oem_5004 /mnt/vendor/persist/public/hiddenmenu/life_calls
|
||||
chmod 0775 /mnt/vendor/persist/public/hiddenmenu/life_calls
|
||||
chown radio oem_5004 /mnt/vendor/persist/public/hiddenmenu/life_timer
|
||||
chmod 0775 /mnt/vendor/persist/public/hiddenmenu/life_timer
|
||||
|
||||
chmod 0711 /mnt/vendor/persist/rfs
|
||||
chmod 0711 /mnt/vendor/persist/rfs/msm
|
||||
chmod 0711 /mnt/vendor/persist/rfs/msm/mpss
|
||||
chmod 0771 /mnt/vendor/persist/rfs/msm/mpss/mot_rfs
|
||||
|
||||
swapon_all /vendor/etc/fstab.qcom
|
||||
write /proc/sys/vm/page-cluster 0
|
||||
|
||||
|
||||
on post-fs-data
|
||||
|
||||
# Setup folders for security
|
||||
mkdir /mnt/vendor/persist/security 02770 drmrpc drmrpc
|
||||
mkdir /data/vendor/dbvc 0750 vendor_tcmd shell
|
||||
chown drmrpc vendor_tcmd /mnt/vendor/persist/security
|
||||
|
||||
# Setup folder for Pre-Activation Kill Switch app (PAKS)
|
||||
mkdir /mnt/vendor/persist/paks 02770 oem_5004 oem_5004
|
||||
|
||||
# Create directory used by power_supply_logger
|
||||
mkdir /data/vendor/power_supply_logger 0750 vendor_pwric log
|
||||
# Create directory power_supply_logger used by memtest and batt_health
|
||||
mkdir /data/vendor_de/power_supply_logger 0770 root log
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/battery/cycle_count
|
||||
chmod 0664 /sys/class/power_supply/battery/cycle_count
|
||||
|
||||
# Permissions for Factory Test of Charging Paths
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/battery/device/force_chg_auto_enable
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/battery/device/force_chg_ibatt
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/battery/device/force_chg_itrick
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/battery/device/force_chg_iusb
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/battery/device/force_chg_idc
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/battery/device/force_chg_usb_suspend
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/battery/device/force_chg_fail_clear
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/battery/device/force_chg_usb_otg_ctl
|
||||
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/mmi_battery/device/force_chg_auto_enable
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/mmi_battery/device/force_chg_ibatt
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/mmi_battery/device/force_chg_itrick
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/mmi_battery/device/force_chg_iusb
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/mmi_battery/device/force_chg_idc
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/mmi_battery/device/force_chg_usb_suspend
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/mmi_battery/device/force_chg_fail_clear
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/mmi_battery/device/force_chg_usb_otg_ctl
|
||||
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/wireless/device/chip_id
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/wireless/current_now
|
||||
chown oem_5001 oem_5001 /sys/class/power_supply/wireless/voltage_now
|
||||
chown oem_5001 oem_5001 /sys/kernel/debug/pmic-votable/CHG_DISABLE/force_val
|
||||
chmod 0664 /sys/kernel/debug/pmic-votable/CHG_DISABLE/force_val
|
||||
chown oem_5001 oem_5001 /sys/kernel/debug/pmic-votable/CHG_DISABLE/force_active
|
||||
chmod 0664 /sys/kernel/debug/pmic-votable/CHG_DISABLE/force_active
|
||||
|
||||
chown root oem_5020 /sys/module/qpnp_smbcharger_mmi/parameters/eb_rechrg_start_soc
|
||||
chown root oem_5020 /sys/module/qpnp_smbcharger_mmi/parameters/eb_rechrg_stop_soc
|
||||
chown root oem_5020 /sys/module/qpnp_smbcharger_mmi/parameters/eb_attach_start_soc
|
||||
chown root oem_5020 /sys/module/qpnp_smbcharger_mmi/parameters/eb_attach_stop_soc
|
||||
chown root oem_5020 /sys/module/qpnp_smbcharger_mmi/parameters/eb_low_start_soc
|
||||
chown root oem_5020 /sys/module/qpnp_smbcharger_mmi/parameters/eb_low_stop_soc
|
||||
chown root oem_5020 /sys/module/qpnp_smbcharger_mmi/parameters/eb_on_sw
|
||||
|
||||
chmod 0664 /sys/module/qpnp_smbcharger_mmi/parameters/eb_rechrg_start_soc
|
||||
chmod 0664 /sys/module/qpnp_smbcharger_mmi/parameters/eb_rechrg_stop_soc
|
||||
chmod 0664 /sys/module/qpnp_smbcharger_mmi/parameters/eb_attach_start_soc
|
||||
chmod 0664 /sys/module/qpnp_smbcharger_mmi/parameters/eb_attach_stop_soc
|
||||
chmod 0664 /sys/module/qpnp_smbcharger_mmi/parameters/eb_low_start_soc
|
||||
chmod 0664 /sys/module/qpnp_smbcharger_mmi/parameters/eb_low_stop_soc
|
||||
chmod 0664 /sys/module/qpnp_smbcharger_mmi/parameters/eb_on_sw
|
||||
|
||||
chown root oem_5020 /sys/class/power_supply/usb/usb_priority
|
||||
chmod 0660 /sys/class/power_supply/usb/usb_priority
|
||||
chown root oem_5020 /sys/module/dwc3_msm/parameters/usb_priority
|
||||
chmod 0660 /sys/module/dwc3_msm/parameters/usb_priority
|
||||
chown root oem_5020 /sys/module/usbnet/parameters/force_on
|
||||
chmod 0666 /sys/module/usbnet/parameters/force_on
|
||||
|
||||
# Setup folder for native to transfer data to NativeDropBoxAgent
|
||||
mkdir /data/vendor/dropbox-add 0730 log diag
|
||||
|
||||
# Create panic dump dir.
|
||||
mkdir /data/vendor/dontpanic 0750 root log
|
||||
|
||||
# Create directory for cutback
|
||||
mkdir /data/vendor/misc/cutback 0770 radio wifi
|
||||
|
||||
# Create bug2go folder
|
||||
mkdir /data/vendor/bug2go 0770 log log
|
||||
|
||||
# Setup folder for aplogd
|
||||
mkdir /data/vendor/aplogd 0750 log log
|
||||
|
||||
# Create directory used by chargeonlymode
|
||||
mkdir /data/vendor/chargeonly 0750 root log
|
||||
|
||||
# Subsystem RAM-dumps
|
||||
mkdir /data/vendor/ss-ram-dumps 0750 system log
|
||||
mkdir /data/vendor/ss-ram-dumps/bp-dumps 0750 system log
|
||||
mkdir /data/vendor/ss-ram-dumps/riva-dumps 0750 system log
|
||||
|
||||
# folder for Blueooth ramdump
|
||||
mkdir /data/vendor/bt-ram-dumps 0750 bluetooth log
|
||||
|
||||
# folder for ssrdumps
|
||||
mkdir /data/vendor/ssrdump 0775 root system
|
||||
|
||||
#Folder for hardware properties
|
||||
mkdir /data/vendor/hardware_revisions 0755 system system
|
||||
|
||||
# Imager tuning data for camera subsystem
|
||||
mkdir /data/vendor/misc/imager 0771 camera camera
|
||||
|
||||
# NFC vendor data
|
||||
mkdir /data/vendor/nfc 0770 nfc nfc
|
||||
|
||||
# Required by FingerPrint Cards (FPC) via init so we don't need to give qseecomd or fingerprintd permissions to create them
|
||||
mkdir /data/vendor/fpc 0700 system system
|
||||
mkdir /data/vendor/.fps 0770 system vendor_fingerp
|
||||
|
||||
on boot
|
||||
# MOTO, NJH348, IKHALFMWK-1864, change system max tcp buffer sizes based on RAT changes
|
||||
# Define system changable TCP buffer max values
|
||||
chown system system /proc/sys/net/core/rmem_max
|
||||
chown system system /proc/sys/net/core/wmem_max
|
||||
|
||||
# Change ownership and permission for backlight
|
||||
chown system system /sys/class/backlight/lcd-backlight:0/brightness
|
||||
chmod 0664 /sys/class/backlight/lcd-backlight:0/brightness
|
||||
chown system system /sys/class/backlight/lcd-backlight:0/max_brightness
|
||||
chmod 0664 /sys/class/backlight/lcd-backlight:0/max_brightness
|
||||
chmod 0664 /sys/class/leds/lcd-backlight/brightness
|
||||
chown system system /sys/class/leds/charging/brightness
|
||||
chmod 0664 /sys/class/leds/charging/brightness
|
||||
|
||||
# change permission of red leds
|
||||
chown system system /sys/class/leds/red/brightness
|
||||
chmod 0664 /sys/class/leds/red/brightness
|
||||
|
||||
# Change ownership and permission for vibrator
|
||||
chown system system /sys/class/timed_output/vibrator/enable
|
||||
chmod 0660 /sys/class/timed_output/vibrator/enable
|
||||
chown system system /sys/class/leds/vibrator/state
|
||||
chmod 0660 /sys/class/leds/vibrator/state
|
||||
chown system system /sys/class/leds/vibrator/activate
|
||||
chmod 0660 /sys/class/leds/vibrator/activate
|
||||
chown system system /sys/class/leds/vibrator/duration
|
||||
chmod 0660 /sys/class/leds/vibrator/duration
|
||||
chown system system /sys/class/leds/vibrator/seq
|
||||
chmod 0660 /sys/class/leds/vibrator/seq
|
||||
chown system system /sys/class/leds/vibrator/extra
|
||||
chmod 0660 /sys/class/leds/vibrator/extra
|
||||
chown root vendor_mod /sys/bus/i2c/devices/2-005a/reduce
|
||||
|
||||
# Change ownership of aov related sysfs entries
|
||||
chown audio audio /sys/kernel/aov/trigger
|
||||
chown audio audio /sys/kernel/aov/register
|
||||
chown audio audio /sys/kernel/aov/event
|
||||
|
||||
# Quiet binder logs
|
||||
write /sys/module/binder/parameters/debug_mask 0x5
|
||||
|
||||
# Clear cooldown state
|
||||
mkdir /mnt/vendor/persist/chargeonly 0770 system system
|
||||
write /mnt/vendor/persist/chargeonly/cooldown n
|
||||
chown system system /mnt/vendor/persist/chargeonly/cooldown
|
||||
chmod 0660 /mnt/vendor/persist/chargeonly/cooldown
|
||||
|
||||
|
||||
on charger
|
||||
trigger early-fs
|
||||
trigger fs
|
||||
trigger post-fs
|
||||
trigger late-fs
|
||||
trigger post-fs-data
|
||||
trigger moto-charger
|
||||
class_stop main
|
||||
class_stop late_start
|
||||
|
||||
|
||||
# from P onwards aplogd cannot read vold.post_fs_data_done so a new property
|
||||
# shall be used to allow aplogd checking if FBE has finished /data decryption
|
||||
on property:vold.post_fs_data_done=*
|
||||
setprop vendor.vold.post_fs_data_done ${vold.post_fs_data_done}
|
||||
|
||||
# translate to qcom property name in order to keep the consistent with
|
||||
# our legacy property
|
||||
on property:persist.vendor.qc.sub.rdump.on=*
|
||||
setprop persist.vendor.ssr.enable_ramdumps ${persist.vendor.qc.sub.rdump.on}
|
||||
|
||||
# translate MMI property in order to keep the consistent with QCOM
|
||||
on property:ro.vendor.hw.dualsim=true
|
||||
setprop persist.radio.multisim.config dsds
|
||||
|
||||
on property:persist.vendor.qc.sub.rdump.on=*
|
||||
setprop persist.vendor.ssr.enable_ramdumps ${persist.vendor.qc.sub.rdump.on}
|
||||
|
||||
on property:ro.vendor.hw.dualsim=false
|
||||
setprop persist.radio.multisim.config ""
|
||||
|
||||
service vendor.charge_only_mode /vendor/bin/charge_only_mode
|
||||
user root
|
||||
group graphics system input
|
||||
disabled
|
||||
|
||||
service vendor.thermal-com /vendor/bin/thermal-engine --minimode
|
||||
class main
|
||||
user root
|
||||
disabled
|
||||
|
||||
service vendor.adspd /vendor/bin/adspd
|
||||
class main
|
||||
socket adspdsock stream 0660 system audio
|
||||
user audio
|
||||
group audio input diag
|
||||
|
||||
on property:vendor.wifi.tethering=false
|
||||
write /sys/module/wlan/parameters/sar_mhs disabled
|
||||
|
||||
on property:vendor.wifi.tethering=true
|
||||
write /sys/module/wlan/parameters/sar_mhs enabled
|
||||
|
||||
#Override fwpath string when wpa_supplicant server was killed
|
||||
on property:vendor.wifi.station=true
|
||||
write /sys/module/wlan/parameters/sar_sta enabled
|
||||
|
||||
on property:vendor.wifi.station=false
|
||||
write /sys/module/wlan/parameters/sar_sta disabled
|
||||
534
rootdir/etc/init.mmi.usb.rc
Normal file
534
rootdir/etc/init.mmi.usb.rc
Normal file
@@ -0,0 +1,534 @@
|
||||
# Copyright (c) 2011, Code Aurora Forum. 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 Code Aurora 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/android_usb/android0/f_rndis/wceis 1
|
||||
|
||||
on boot
|
||||
write /sys/class/android_usb/android0/iManufacturer ${ro.product.manufacturer}
|
||||
write /sys/class/android_usb/android0/iProduct ${ro.product.model}
|
||||
write /sys/class/android_usb/android0/iSerial ${ro.serialno}
|
||||
#create motorola usblan driver instance for factory
|
||||
mkdir /config/usb_gadget/g1/functions/usbnet.usb0
|
||||
mkdir /dev/bus 0755 root root
|
||||
mkdir /dev/bus/usb 0755 root root
|
||||
chown system system /sys/class/android_usb/android0/secure
|
||||
chmod 0660 /sys/class/android_usb/android0/secure
|
||||
# Configure BAM2BAM_IPA for RNDIS
|
||||
write /sys/class/android_usb/android0/f_rndis_qc/rndis_transports BAM2BAM_IPA
|
||||
# Disable RNDIS UL aggregation
|
||||
write /sys/class/android_usb/android0/f_rndis_qc/max_pkt_per_xfer 1
|
||||
write /sys/module/g_android/parameters/mtp_rx_req_len 524288
|
||||
write /sys/module/g_android/parameters/mtp_tx_req_len 524288
|
||||
write /sys/class/android_usb/f_mass_storage/lun/nofua 1
|
||||
|
||||
chown root system /sys/module/uvcvideo/parameters/quirks
|
||||
chmod 0660 /sys/module/uvcvideo/parameters/quirks
|
||||
|
||||
on charger
|
||||
write /sys/class/android_usb/android0/iSerial ${ro.serialno}
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idVendor 22B8
|
||||
write /sys/class/android_usb/android0/idProduct 2EB7
|
||||
write /sys/class/android_usb/android0/functions mass_storage
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
|
||||
on fs
|
||||
mkdir /dev/usb-ffs 0770 shell shell
|
||||
mkdir /dev/usb-ffs/adb 0770 shell shell
|
||||
mount functionfs adb /dev/usb-ffs/adb uid=2000,gid=2000
|
||||
write /sys/class/android_usb/android0/f_ffs/aliases adb
|
||||
|
||||
on property:ro.persistent_properties.ready=true && property:vold.decrypt=trigger_load_persist_props
|
||||
setprop vendor.usb.config ${sys.usb.config}
|
||||
setprop persist.vendor.mot.usb.config ${persist.sys.usb.config:-" "}
|
||||
setprop persist.vendor.usb.config " "
|
||||
|
||||
on property:sys.boot_completed=*
|
||||
setprop vendor.boot_completed ${sys.boot_completed}
|
||||
|
||||
on property:persist.vendor.usb.config=*
|
||||
setprop persist.sys.usb.config ${persist.vendor.usb.config}
|
||||
|
||||
on property:vendor.usb.config=*
|
||||
setprop sys.usb.config ${vendor.usb.config}
|
||||
|
||||
on property:vendor.usb.controller=*
|
||||
setprop sys.usb.controller ${vendor.usb.controller}
|
||||
|
||||
on property:persist.vendor.usb.qcom.config=*
|
||||
setprop persist.sys.usb.qcom.config ${persist.vendor.usb.qcom.config}
|
||||
setprop persist.sys.usb.qcom.func ${persist.vendor.usb.qcom.config}
|
||||
|
||||
on property:persist.vendor.usb.bp-tools.config=*
|
||||
setprop persist.sys.usb.bp-tools.config ${persist.vendor.usb.bp-tools.config}
|
||||
setprop persist.sys.usb.bp-tools.func ${persist.vendor.usb.bp-tools.config}
|
||||
|
||||
on property:persist.vendor.usb.mot-factory.config=*
|
||||
setprop persist.sys.usb.mot-factory.config ${persist.vendor.usb.mot-factory.config}
|
||||
setprop persist.sys.usb.mot-factory.func ${persist.vendor.usb.mot-factory.config}
|
||||
|
||||
service vendor.mmi-usb-sh /vendor/bin/init.mmi.usb.sh
|
||||
class late_start
|
||||
user root
|
||||
group system
|
||||
oneshot
|
||||
|
||||
# Disable USB-SS in bp-tools
|
||||
on property:ro.bootmode=bp-tools
|
||||
write /sys/module/dwc3_msm/parameters/disable_ss_switch 1
|
||||
|
||||
on property:vendor.tcmd.ctrl_adb=1
|
||||
stop vendor.mmi-usb-sh
|
||||
setprop vendor.usb.mmi-usb-sh.action vendor.tcmd.ctrl_adb
|
||||
start vendor.mmi-usb-sh
|
||||
|
||||
on property:vendor.tcmd.ctrl_adb=0
|
||||
stop vendor.mmi-usb-sh
|
||||
setprop vendor.usb.mmi-usb-sh.action vendor.tcmd.ctrl_adb
|
||||
start vendor.mmi-usb-sh
|
||||
|
||||
# USB compositions
|
||||
# QC compositions for msm8953
|
||||
on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_bam,mass_storage,adb
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idVendor 05C6
|
||||
write /sys/class/android_usb/android0/idProduct 9025
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports smd,tty
|
||||
write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa
|
||||
write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
start adbd
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_bam,mass_storage
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idVendor 05C6
|
||||
write /sys/class/android_usb/android0/idProduct 9026
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports smd,tty
|
||||
write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa
|
||||
write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
# QC compositions for MSM8996
|
||||
on property:sys.usb.config=diag,serial_cdev,serial_tty,rmnet_bam,mass_storage,adb
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idVendor 05C6
|
||||
write /sys/class/android_usb/android0/idProduct 9025
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports char_bridge,tty
|
||||
write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa
|
||||
write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
start adbd
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=diag,serial_cdev,serial_tty,rmnet_bam,mass_storage
|
||||
stop adbd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idVendor 05C6
|
||||
write /sys/class/android_usb/android0/idProduct 9026
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports char_bridge,tty
|
||||
write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa
|
||||
write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
# QC compositions for MSM8937
|
||||
on property:sys.usb.config=diag,serial_smd,rmnet_qti_bam,adb
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idVendor 05C6
|
||||
write /sys/class/android_usb/android0/idProduct 9091
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports smd
|
||||
write /sys/class/android_usb/android0/f_rmnet/transports qti,bam
|
||||
write /sys/class/android_usb/android0/functions diag,serial,rmnet,adb
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
start adbd
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=diag,serial_smd,rmnet_qti_bam
|
||||
stop adbd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idVendor 05C6
|
||||
write /sys/class/android_usb/android0/idProduct 9092
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports smd
|
||||
write /sys/class/android_usb/android0/f_rmnet/transports qti,bam
|
||||
write /sys/class/android_usb/android0/functions diag,serial,rmnet,adb
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=diag,serial_smd,rmnet_ipa,adb
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idVendor 05C6
|
||||
write /sys/class/android_usb/android0/idProduct 9091
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports smd
|
||||
write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa
|
||||
write /sys/class/android_usb/android0/functions diag,serial,rmnet,adb
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
start adbd
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=diag,serial_smd,rmnet_ipa
|
||||
stop adbd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idVendor 05C6
|
||||
write /sys/class/android_usb/android0/idProduct 9092
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports smd
|
||||
write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa
|
||||
write /sys/class/android_usb/android0/functions diag,serial,rmnet
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
# QDSS - Qualcomm Debug Subsystem
|
||||
on property:sys.usb.config=diag,qdss,adb
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idVendor 05C6
|
||||
write /sys/class/android_usb/android0/idProduct 9060
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/functions diag,qdss,adb
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
start adbd
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
# Motorola Compositions for msm8953 bp-tools mode
|
||||
on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet,adb
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idProduct ${ro.usb.bpt_adb}
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports smd,tty
|
||||
write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa
|
||||
write /sys/class/android_usb/android0/functions diag,serial,rmnet,adb
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
start adbd
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
# Motorola Compositions for msm8937 bp-tools mode
|
||||
on property:sys.usb.config=diag,serial_smd,rmnet,adb
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/idProduct ${ro.usb.bpt_adb}
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports smd
|
||||
write /sys/class/android_usb/android0/f_rmnet/transports qti,bam
|
||||
write /sys/class/android_usb/android0/functions diag,serial,rmnet,adb
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
start adbd
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=diag,serial_smd,rmnet
|
||||
stop adbd
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/idProduct ${ro.usb.bpt}
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports smd
|
||||
write /sys/class/android_usb/android0/f_rmnet/transports qti,bam
|
||||
write /sys/class/android_usb/android0/functions diag,serial,rmnet
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=diag,serial_smd,rmnet_bam_ipa,adb
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/idProduct ${ro.usb.bpt_adb}
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports smd
|
||||
write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa
|
||||
write /sys/class/android_usb/android0/functions diag,serial,rmnet,adb
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
start adbd
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=diag,serial_smd,rmnet_bam_ipa
|
||||
stop adbd
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/idProduct ${ro.usb.bpt}
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports smd
|
||||
write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa
|
||||
write /sys/class/android_usb/android0/functions diag,serial,rmnet
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idProduct ${ro.usb.bpt}
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports smd,tty
|
||||
write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa
|
||||
write /sys/class/android_usb/android0/functions diag,serial,rmnet
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=rndis,diag,serial_smd,serial_tty,adb
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idProduct ${ro.usb.bpteth_adb}
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports smd,tty
|
||||
write /sys/class/android_usb/android0/functions rndis,diag,serial,adb
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
start adbd
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=rndis,diag,serial_smd,serial_tty
|
||||
stop adbd
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idProduct ${ro.usb.bpteth}
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports smd,tty
|
||||
write /sys/class/android_usb/android0/functions rndis,diag,serial
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
# Motorola Compositions for MSM8996 bp-tools mode
|
||||
on property:sys.usb.config=diag,serial_cdev,serial_tty,rmnet,adb
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idProduct ${ro.usb.bpt_adb}
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports char_bridge,tty
|
||||
write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa
|
||||
write /sys/class/android_usb/android0/functions diag,serial,rmnet,adb
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
start adbd
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=diag,serial_cdev,serial_tty,rmnet
|
||||
stop adbd
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idProduct ${ro.usb.bpt}
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports char_bridge,tty
|
||||
write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa
|
||||
write /sys/class/android_usb/android0/functions diag,serial,rmnet
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=rndis,diag,serial_cdev,serial_tty,adb
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idProduct ${ro.usb.bpteth_adb}
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports char_bridge,tty
|
||||
write /sys/class/android_usb/android0/functions rndis,diag,serial,adb
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
start adbd
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=rndis,diag,serial_cdev,serial_tty
|
||||
stop adbd
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idProduct ${ro.usb.bpteth}
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/f_diag/clients diag
|
||||
write /sys/class/android_usb/android0/f_serial/transports char_bridge,tty
|
||||
write /sys/class/android_usb/android0/functions rndis,diag,serial
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
#Factory mode Compositions
|
||||
on property:sys.usb.config=usbnet,adb
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idProduct 2e2d
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/functions usbnet,adb
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
start adbd
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=usbnet
|
||||
stop adbd
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idProduct 2e2c
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/functions usbnet
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
# Standard AOSP Compositions
|
||||
on property:sys.usb.config=rndis
|
||||
stop adbd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/idProduct 2e24
|
||||
write /sys/class/android_usb/android0/functions rndis
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=rndis,adb
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/idProduct 2e25
|
||||
write /sys/class/android_usb/android0/functions rndis,adb
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
start adbd
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=mtp
|
||||
stop adbd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/bDeviceClass 0
|
||||
write /sys/class/android_usb/android0/bDeviceSubClass 0
|
||||
write /sys/class/android_usb/android0/bDeviceProtocol 0
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/idProduct ${ro.usb.mtp}
|
||||
write /sys/class/android_usb/android0/functions mtp
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=mtp,cdrom,adb
|
||||
stop adbd
|
||||
write /sys/class/android_usb/android0/f_mass_storage/lun/file ""
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/bDeviceClass 0
|
||||
write /sys/class/android_usb/android0/bDeviceSubClass 0
|
||||
write /sys/class/android_usb/android0/bDeviceProtocol 0
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/idProduct ${ro.usb.mtp_cdrom}
|
||||
write /sys/class/android_usb/android0/f_mass_storage/cdrom 1
|
||||
write /sys/class/android_usb/android0/functions mtp,mass_storage
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
write /sys/class/android_usb/android0/f_mass_storage/lun/file "/system/etc/cdrom"
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=mtp,cdrom
|
||||
stop adbd
|
||||
write /sys/class/android_usb/android0/f_mass_storage/lun/file ""
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/bDeviceClass 0
|
||||
write /sys/class/android_usb/android0/bDeviceSubClass 0
|
||||
write /sys/class/android_usb/android0/bDeviceProtocol 0
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/idProduct ${ro.usb.mtp_cdrom}
|
||||
write /sys/class/android_usb/android0/f_mass_storage/cdrom 1
|
||||
write /sys/class/android_usb/android0/functions mtp,mass_storage
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
write /sys/class/android_usb/android0/f_mass_storage/lun/file "/system/etc/cdrom"
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=mtp,adb
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/bDeviceClass 0
|
||||
write /sys/class/android_usb/android0/bDeviceSubClass 0
|
||||
write /sys/class/android_usb/android0/bDeviceProtocol 0
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/idProduct ${ro.usb.mtp_adb}
|
||||
write /sys/class/android_usb/android0/functions mtp,adb
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
start adbd
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=ptp
|
||||
stop adbd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/bDeviceClass 0
|
||||
write /sys/class/android_usb/android0/bDeviceSubClass 0
|
||||
write /sys/class/android_usb/android0/bDeviceProtocol 0
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/idProduct ${ro.usb.ptp}
|
||||
write /sys/class/android_usb/android0/functions ptp
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
on property:sys.usb.config=ptp,adb
|
||||
start vendor.tcmd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/bDeviceClass 0
|
||||
write /sys/class/android_usb/android0/bDeviceSubClass 0
|
||||
write /sys/class/android_usb/android0/bDeviceProtocol 0
|
||||
write /sys/class/android_usb/android0/idVendor 22b8
|
||||
write /sys/class/android_usb/android0/idProduct ${ro.usb.ptp_adb}
|
||||
write /sys/class/android_usb/android0/functions ptp,adb
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
start adbd
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
# USB midi configuration
|
||||
on property:sys.usb.config=midi
|
||||
stop adbd
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idVendor 18D1
|
||||
write /sys/class/android_usb/android0/idProduct 4EE8
|
||||
write /sys/class/android_usb/android0/functions ${sys.usb.config}
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
start adbd
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
# USB midi configuration, with adb
|
||||
on property:sys.usb.config=midi,adb
|
||||
write /sys/class/android_usb/android0/enable 0
|
||||
write /sys/class/android_usb/android0/idVendor 18D1
|
||||
write /sys/class/android_usb/android0/idProduct 4EE9
|
||||
write /sys/class/android_usb/android0/functions ${sys.usb.config}
|
||||
write /sys/class/android_usb/android0/enable 1
|
||||
start adbd
|
||||
setprop sys.usb.state ${sys.usb.config}
|
||||
|
||||
# DHCP service for Ethernet
|
||||
service dhcpcd_eth0 /system/bin/dhcpcd -G
|
||||
class late_start
|
||||
disabled
|
||||
oneshot
|
||||
|
||||
service iprenew_eth0 /system/bin/dhcpcd -nBK
|
||||
class late_start
|
||||
disabled
|
||||
oneshot
|
||||
1011
rootdir/etc/init.qcom.rc
Normal file
1011
rootdir/etc/init.qcom.rc
Normal file
File diff suppressed because it is too large
Load Diff
317
rootdir/etc/init.target.rc
Normal file
317
rootdir/etc/init.target.rc
Normal file
@@ -0,0 +1,317 @@
|
||||
# Copyright (c) 2013-2014,2018, 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.mmi.rc
|
||||
import /vendor/etc/init/hw/init.${ro.boot.device}.rc
|
||||
|
||||
on early-init
|
||||
exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules audio_apr audio_adsp_loader audio_q6_notifier audio_q6 audio_usf audio_native audio_pinctrl_wcd audio_swr audio_platform audio_swr_ctrl audio_hdmi audio_wcd9xxx audio_wcd_core audio_wsa881x_analog audio_wsa881x audio_mbhc audio_stub audio_digital_cdc audio_analog_cdc audio_wcd_cpe audio_cpe_lsm audio_wcd9335 audio_machine_sdm450 audio_machine_ext_sdm450
|
||||
write /proc/sys/kernel/sched_boost 1
|
||||
mkdir /firmware 0771 system system
|
||||
symlink /data/tombstones /tombstones
|
||||
|
||||
on init
|
||||
setprop ro.vendor.fsg-id ${ro.boot.fsg-id}
|
||||
setprop ro.vendor.hw.dualsim ${ro.boot.dualsim}
|
||||
setprop ro.vendor.hw.device ${ro.boot.device}
|
||||
setprop ro.vendor.hw.radio ${ro.boot.radio}
|
||||
setprop ro.vendor.hw.hwrev ${ro.boot.hwrev}
|
||||
setprop ro.vendor.hw.revision ${ro.boot.revision}
|
||||
setprop ro.vendor.carrier ${ro.boot.carrier}
|
||||
setprop ro.vendor.boot.cid ${ro.boot.cid}
|
||||
setprop ro.vendor.boot.radio ${ro.boot.radio}
|
||||
setprop ro.vendor.boot.hwrev ${ro.boot.hwrev}
|
||||
setprop ro.vendor.boot.powerup_reason ${ro.boot.powerup_reason}
|
||||
setprop ro.vendor.boot.bl_state ${ro.boot.bl_state}
|
||||
setprop ro.vendor.boot.serialno ${ro.boot.serialno}
|
||||
setprop ro.vendor.zygote ${ro.zygote}
|
||||
|
||||
# Translate MMI property in order to keep consistent with QCOM
|
||||
on property:ro.vendor.hw.dualsim=true
|
||||
setprop persist.radio.multisim.config dsds
|
||||
|
||||
on property:ro.vendor.hw.dualsim=false
|
||||
setprop persist.radio.multisim.config ""
|
||||
|
||||
on fs
|
||||
wait /dev/block/platform/soc/${ro.boot.bootdevice}
|
||||
symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice
|
||||
mount_all /vendor/etc/fstab.qcom
|
||||
chown root system /mnt/vendor/persist
|
||||
chmod 0771 /mnt/vendor/persist
|
||||
mkdir /mnt/vendor/persist/data 0700 system system
|
||||
mkdir /mnt/vendor/persist/bms 0700 root system
|
||||
restorecon_recursive /persist
|
||||
|
||||
write /proc/sys/vm/swappiness 100
|
||||
#write /sys/kernel/boot_adsp/boot 1
|
||||
|
||||
#wait /dev/block/bootdevice/by-name/oem
|
||||
#mount ext4 /dev/block/bootdevice/by-name/oem /oem ro nosuid nodev barrier=1
|
||||
|
||||
on post-fs
|
||||
# set RLIMIT_MEMLOCK to 64MB
|
||||
setrlimit 8 67108864 67108864
|
||||
|
||||
start vendor.qseecomd
|
||||
exec - system system -- /vendor/bin/init.qti.qseecomd.sh
|
||||
|
||||
on post-fs-data
|
||||
mkdir /data/tombstones 0771 system system
|
||||
mkdir /tombstones/modem 0771 system system
|
||||
mkdir /tombstones/lpass 0771 system system
|
||||
mkdir /tombstones/wcnss 0771 system system
|
||||
mkdir /tombstones/dsps 0771 system system
|
||||
mkdir /persist/data/sfs 0700 system system
|
||||
mkdir /persist/data/tz 0700 system system
|
||||
mkdir /data/misc/dts 0770 media audio
|
||||
mkdir /data/vendor/hbtp 0750 system system
|
||||
|
||||
|
||||
#Create folder for mm-qcamera-daemon
|
||||
mkdir /data/vendor/camera 0770 camera camera
|
||||
|
||||
#start camera server as daemon
|
||||
service qcamerasvr /system/vendor/bin/mm-qcamera-daemon
|
||||
class main
|
||||
user camera
|
||||
group camera system inet input graphics
|
||||
|
||||
on init
|
||||
write /dev/stune/foreground/schedtune.sched_boost_no_override 1
|
||||
write /dev/stune/top-app/schedtune.sched_boost_no_override 1
|
||||
write /dev/stune/schedtune.colocate 0
|
||||
write /dev/stune/background/schedtune.colocate 0
|
||||
write /dev/stune/foreground/schedtune.colocate 0
|
||||
write /dev/stune/top-app/schedtune.colocate 1
|
||||
write /sys/module/qpnp_rtc/parameters/poweron_alarm 1
|
||||
|
||||
# Allow usb charging to be disabled peristently
|
||||
on property:persist.usb.chgdisabled=1
|
||||
write /sys/class/power_supply/battery/charging_enabled 0
|
||||
|
||||
on property:persist.usb.chgdisabled=0
|
||||
write /sys/class/power_supply/battery/charging_enabled 1
|
||||
|
||||
service vendor.qseecomd /vendor/bin/qseecomd
|
||||
class core
|
||||
user root
|
||||
group root
|
||||
|
||||
service perfd /system/vendor/bin/perfd
|
||||
class main
|
||||
user root
|
||||
disabled
|
||||
|
||||
service thermal-engine /system/vendor/bin/thermal-engine
|
||||
class main
|
||||
user root
|
||||
socket thermal-send-client stream 0666 system system
|
||||
socket thermal-recv-client stream 0660 system system
|
||||
socket thermal-recv-passive-client stream 0666 system system
|
||||
socket thermal-send-rule stream 0660 system system
|
||||
group root system
|
||||
|
||||
service audiod /system/vendor/bin/audiod
|
||||
class late_start
|
||||
user system
|
||||
group system
|
||||
|
||||
on boot
|
||||
start rmt_storage
|
||||
insmod /system/lib/modules/adsprpc.ko
|
||||
# access permission for secure touch
|
||||
chmod 0660 /sys/devices/soc/78b7000.i2c/i2c-3/3-0020/input/input0/secure_touch_enable
|
||||
chmod 0440 /sys/devices/soc/78b7000.i2c/i2c-3/3-0020/input/input0/secure_touch
|
||||
chmod 0660 /sys/devices/soc/78b8000.i2c/i2c-4/4-0020/input/input0/secure_touch_enable
|
||||
chmod 0440 /sys/devices/soc/78b8000.i2c/i2c-4/4-0020/input/input0/secure_touch
|
||||
chown system drmrpc /sys/devices/soc/78b7000.i2c/i2c-3/3-0020/input/input0/secure_touch_enable
|
||||
chown system drmrpc /sys/devices/soc/78b7000.i2c/i2c-3/3-0020/input/input0/secure_touch
|
||||
chown system drmrpc /sys/devices/soc/78b8000.i2c/i2c-4/4-0020/input/input0/secure_touch_enable
|
||||
chown system drmrpc /sys/devices/soc/78b8000.i2c/i2c-4/4-0020/input/input0/secure_touch
|
||||
|
||||
# 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-3
|
||||
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
|
||||
|
||||
####Regionalization config and prop files####
|
||||
chmod 0644 /persist/speccfg/spec
|
||||
chmod 0644 /persist/speccfg/devicetype
|
||||
chmod 0644 /persist/speccfg/mbnversion
|
||||
chmod 0644 /persist/speccfg/.not_triggered
|
||||
chmod 0644 /persist/speccfg/vendor_ro.prop
|
||||
chmod 0644 /persist/speccfg/vendor_persist.prop
|
||||
chmod 0644 /persist/speccfg/submask
|
||||
chmod 0644 /persist/speccfg/partition
|
||||
chown system system /persist/speccfg/spec
|
||||
chown system system /persist/speccfg/devicetype
|
||||
chown system system /persist/speccfg/mbnversion
|
||||
chown system system /persist/speccfg/.not_triggered
|
||||
chown system system /persist/speccfg/vendor_ro.prop
|
||||
chown system system /persist/speccfg/vendor_persist.prop
|
||||
chown system system /persist/speccfg/submask
|
||||
chown system system /persist/speccfg/partition
|
||||
|
||||
# access permission for wlan
|
||||
chown system system /mnt/vendor/persist/WCNSS_qcom_wlan_nv.bin
|
||||
|
||||
#USB controller configuration
|
||||
write /sys/module/g_android/parameters/mtp_tx_req_len 131072
|
||||
write /sys/module/g_android/parameters/mtp_rx_req_len 131072
|
||||
write /sys/class/android_usb/android0/f_rndis_qc/rndis_transports BAM2BAM_IPA
|
||||
setprop vendor.usb.rndis.func.name "rndis_bam"
|
||||
setprop vendor.usb.rmnet.func.name "rmnet_bam"
|
||||
setprop vendor.usb.rmnet.inst.name "rmnet"
|
||||
setprop vendor.usb.dpl.inst.name "dpl"
|
||||
|
||||
#Turn on GPU rate stats through gcc_oxili_gfx3d_clk
|
||||
chown system system /sys/kernel/debug/clk/gcc_oxili_gfx3d_clk/rate_stats
|
||||
chmod 0664 /sys/kernel/debug/clk/gcc_oxili_gfx3d_clk/rate_stats
|
||||
write /sys/kernel/debug/clk/gcc_oxili_gfx3d_clk/rate_stats 1
|
||||
|
||||
on property:init.svc.surfaceflinger=stopped
|
||||
stop ppd
|
||||
|
||||
on property:init.svc.surfaceflinger=running
|
||||
start ppd
|
||||
|
||||
on property:init.svc.surfaceflinger=restarting
|
||||
stop ppd
|
||||
|
||||
on property:init.svc.zygote=stopped
|
||||
stop ppd
|
||||
|
||||
on property:init.svc.zygote=running
|
||||
start ppd
|
||||
|
||||
on property:init.svc.zygote=restarting
|
||||
stop ppd
|
||||
|
||||
service wcnss-service /system/vendor/bin/wcnss_service
|
||||
class main
|
||||
user system
|
||||
group system wifi radio
|
||||
oneshot
|
||||
|
||||
on charger
|
||||
wait /dev/block/bootdevice/by-name/system
|
||||
mount ext4 /dev/block/bootdevice/by-name/system /system ro barrier=1
|
||||
load_system_props
|
||||
setprop persist.sys.usb.config mass_storage
|
||||
start qcom-post-boot
|
||||
setprop persist.sys.usb.config mass_storage
|
||||
|
||||
on charger && property:ro.boot.usbconfigfs=true
|
||||
setprop sys.usb.configfs 1
|
||||
|
||||
on charger && property:ro.boot.usbconfigfs=false
|
||||
setprop sys.usb.configfs 0
|
||||
|
||||
## imsdatadaemon starts with root and UID will be downgraded to SYSTEM.
|
||||
service vendor.imsqmidaemon /system/vendor/bin/imsqmidaemon
|
||||
class main
|
||||
user system
|
||||
socket ims_qmid stream 0660 system radio
|
||||
group radio log diag
|
||||
|
||||
# imsdatadaemon starts with root and UID will be downgraded to SYSTEM.
|
||||
service vendor.imsdatadaemon /system/vendor/bin/imsdatadaemon
|
||||
class main
|
||||
user system
|
||||
socket ims_datad stream 0660 system radio
|
||||
group system wifi radio inet log diag
|
||||
disabled
|
||||
|
||||
on property:vendor.ims.QMI_DAEMON_STATUS=1
|
||||
start vendor.imsdatadaemon
|
||||
|
||||
service vendor.ims_rtp_daemon /system/vendor/bin/ims_rtp_daemon
|
||||
class main
|
||||
user system
|
||||
group radio diag inet log
|
||||
|
||||
service vendor.imsrcsservice /system/vendor/bin/imsrcsd
|
||||
class main
|
||||
user system
|
||||
group radio diag inet log wakelock
|
||||
|
||||
on property:vendor.ims.DATA_DAEMON_STATUS=1
|
||||
restart vendor.ims_rtp_daemon
|
||||
|
||||
service adsprpcd /system/vendor/bin/adsprpcd
|
||||
class main
|
||||
user media
|
||||
group media
|
||||
|
||||
service vendor.per_mgr /system/vendor/bin/pm-service
|
||||
class core
|
||||
user system
|
||||
group system net_raw
|
||||
|
||||
service vendor.per_proxy /system/vendor/bin/pm-proxy
|
||||
class core
|
||||
user system
|
||||
group system
|
||||
disabled
|
||||
|
||||
on property:init.svc.vendor.per_mgr=running
|
||||
start vendor.per_proxy
|
||||
|
||||
on property:sys.shutdown.requested=*
|
||||
stop vendor.per_proxy
|
||||
stop vendor.ims_rtp_daemon
|
||||
|
||||
service energy-awareness /system/vendor/bin/energy-awareness
|
||||
class main
|
||||
user root
|
||||
group system
|
||||
oneshot
|
||||
|
||||
on boot
|
||||
write /sys/devices/soc/78b8000.i2c/i2c-4/4-0020/input/input0/fw_name PR1702898-s3528t_00260005_00380008.img
|
||||
write /sys/devices/soc/78b8000.i2c/i2c-4/4-0020/input/input0/update_fw 1
|
||||
|
||||
on boot
|
||||
chown system iystem /sys/class/leds/red/blink
|
||||
chown system system /sys/class/leds/red/breath
|
||||
chown system system /sys/class/leds/red/delay_on
|
||||
chown system system /sys/class/leds/red/delay_off
|
||||
chown system system /sys/class/leds/green/blink
|
||||
chown system system /sys/class/leds/green/breath
|
||||
chown system system /sys/class/leds/green/delay_on
|
||||
chown system system /sys/class/leds/green/delay_off
|
||||
chown system system /sys/class/leds/blue/blink
|
||||
chown system system /sys/class/leds/blue/breath
|
||||
chown system system /sys/class/leds/blue/delay_on
|
||||
chown system system /sys/class/leds/blue/delay_off
|
||||
405
rootdir/root/ueventd.qcom.rc
Normal file
405
rootdir/root/ueventd.qcom.rc
Normal file
@@ -0,0 +1,405 @@
|
||||
# Copyright (c) 2012-2015, 2017-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.
|
||||
#
|
||||
|
||||
# Firmware directory Path
|
||||
# Below macro will be read by uevent and path will
|
||||
# be added to search path for firmware loading
|
||||
firmware_directories /vendor/firmware_mnt/image/
|
||||
|
||||
# the DIAG device node is not world writable/readable.
|
||||
/dev/diag 0660 system oem_2901
|
||||
|
||||
/dev/genlock 0666 system system
|
||||
/dev/wlan 0660 wifi wifi
|
||||
/dev/kgsl 0666 system system
|
||||
/dev/kgsl-3d0 0666 system system
|
||||
/dev/kgsl-2d0 0666 root root
|
||||
/dev/kgsl-2d1 0666 root root
|
||||
/dev/ion 0664 system system
|
||||
/dev/rtc0 0660 system system
|
||||
/dev/smd0 0660 system system
|
||||
/dev/smd4 0660 system system
|
||||
/dev/smd_cxm_qmi 0640 radio radio
|
||||
/dev/smd5 0660 system system
|
||||
/dev/smd6 0660 system system
|
||||
/dev/smd7 0660 bluetooth bluetooth
|
||||
/dev/ccid_bridge 0660 system system
|
||||
/dev/ipa 0660 radio radio
|
||||
/dev/wwan_ioctl 0660 radio radio
|
||||
/dev/ipaNatTable 0660 radio radio
|
||||
/dev/rmnet_ctrl 0660 usb usb
|
||||
/dev/dpl_ctrl 0660 usb usb
|
||||
/dev/ipa_odl_ctl 0660 radio radio
|
||||
/dev/ipa_adpl 0660 system oem_2905
|
||||
/dev/synx_device 0660 root camera
|
||||
/dev/hab 0666 system system
|
||||
|
||||
#permissions for CSVT
|
||||
/dev/smd11 0660 radio radio
|
||||
|
||||
#permsissions for BT/FM
|
||||
/dev/smd2 0660 bluetooth bluetooth
|
||||
/dev/smd3 0660 bluetooth bluetooth
|
||||
/dev/btpower 0660 bluetooth system
|
||||
|
||||
#permissions for pta
|
||||
/dev/pta 0660 system system
|
||||
|
||||
/dev/radio0 0640 system system
|
||||
/dev/rfcomm0 0660 bluetooth bluetooth
|
||||
/dev/ttyUSB0 0660 bluetooth bluetooth
|
||||
/dev/smdcntl0 0640 radio radio
|
||||
/dev/smdcntl1 0640 radio radio
|
||||
/dev/smdcntl2 0640 radio radio
|
||||
/dev/smdcntl3 0640 radio radio
|
||||
/dev/smdcntl4 0640 radio radio
|
||||
/dev/smdcntl5 0640 radio radio
|
||||
/dev/smdcntl6 0640 radio radio
|
||||
/dev/smdcntl7 0640 radio radio
|
||||
/dev/smdcntl8 0640 radio radio
|
||||
/dev/smdcnt_rev0 0640 radio radio
|
||||
/dev/smdcnt_rev1 0640 radio radio
|
||||
/dev/smdcnt_rev2 0640 radio radio
|
||||
/dev/smdcnt_rev3 0640 radio radio
|
||||
/dev/smdcnt_rev4 0640 radio radio
|
||||
/dev/smdcnt_rev5 0640 radio radio
|
||||
/dev/smdcnt_rev6 0640 radio radio
|
||||
/dev/smdcnt_rev7 0640 radio radio
|
||||
/dev/smdcnt_rev8 0640 radio radio
|
||||
/dev/smuxctl32 0640 radio radio
|
||||
/dev/sdioctl0 0640 radio radio
|
||||
/dev/sdioctl1 0640 radio radio
|
||||
/dev/sdioctl2 0640 radio radio
|
||||
/dev/sdioctl3 0640 radio radio
|
||||
/dev/sdioctl4 0640 radio radio
|
||||
/dev/sdioctl5 0640 radio radio
|
||||
/dev/sdioctl6 0640 radio radio
|
||||
/dev/sdioctl7 0640 radio radio
|
||||
/dev/sdioctl8 0640 radio radio
|
||||
/dev/rmnet_mux_ctrl 0640 radio radio
|
||||
/dev/hsicctl0 0640 radio radio
|
||||
/dev/hsicctl1 0640 radio radio
|
||||
/dev/hsicctl2 0640 radio radio
|
||||
/dev/hsicctl3 0640 radio radio
|
||||
/dev/hsicctl4 0640 radio radio
|
||||
/dev/hsicctl5 0640 radio radio
|
||||
/dev/hsicctl6 0640 radio radio
|
||||
/dev/hsicctl7 0640 radio radio
|
||||
/dev/hsicctl8 0640 radio radio
|
||||
/dev/hsicctl9 0640 radio radio
|
||||
/dev/hsicctl10 0640 radio radio
|
||||
/dev/hsicctl11 0640 radio radio
|
||||
/dev/hsicctl12 0640 radio radio
|
||||
/dev/hsicctl13 0640 radio radio
|
||||
/dev/hsicctl14 0640 radio radio
|
||||
/dev/hsicctl15 0640 radio radio
|
||||
/dev/hsicctl16 0640 radio radio
|
||||
/dev/mhi_*_pipe_14 0640 radio radio
|
||||
/dev/mhi_*_pipe_16 0640 radio radio
|
||||
/dev/mhi_*_pipe_32 0640 radio radio
|
||||
/dev/at_usb0 0640 radio radio
|
||||
/dev/at_mdm0 0640 radio radio
|
||||
/dev/video* 0660 system camera
|
||||
/dev/cvp* 0660 system camera
|
||||
/dev/media* 0660 system camera
|
||||
/dev/v4l-subdev* 0660 system camera
|
||||
/dev/qseecom 0660 system drmrpc
|
||||
/dev/qce 0660 system drmrpc
|
||||
/dev/smcinvoke 0660 system drmrpc
|
||||
/dev/qsee_ipc_irq_spss 0660 system drmrpc
|
||||
/dev/seemplog 0660 system system
|
||||
/dev/pft 0660 system drmrpc
|
||||
/dev/spcom 0660 system system
|
||||
/dev/spss_utils 0660 system system
|
||||
/dev/sp_kernel 0660 system system
|
||||
/dev/sp_nvm 0660 system system
|
||||
/dev/sp_ssr 0660 system system
|
||||
/dev/sp_keymaster 0660 system system
|
||||
/dev/sec_nvm_* 0660 system system
|
||||
/dev/cryptoapp 0660 system system
|
||||
/dev/spdaemon_ssr 0660 system system
|
||||
/dev/spu_hal_ssr 0660 system system
|
||||
/dev/iuicc* 0660 system system
|
||||
/dev/gemini0 0660 system camera
|
||||
/dev/jpeg0 0660 system camera
|
||||
/dev/jpeg1 0660 system camera
|
||||
/dev/jpeg2 0660 system camera
|
||||
/dev/jpeg3 0660 system camera
|
||||
/dev/adsprpc-smd 0664 system system
|
||||
/dev/adsprpc-smd-secure 0644 system system
|
||||
/dev/system_health_monitor 0644 radio system
|
||||
/dev/mdss_rotator 0664 system system
|
||||
|
||||
#QDSS
|
||||
/dev/byte-cntr 0660 system oem_2902
|
||||
/dev/mhi_qdss 0660 system oem_2902
|
||||
/sys/class/qdss_bridge/mhi_qdss mode 0660 system oem_2902
|
||||
|
||||
#qg
|
||||
/dev/qg 0660 system system
|
||||
/dev/qg_battery 0660 system system
|
||||
|
||||
#qvr
|
||||
/dev/qvr_external_sensor_ioctl 0660 system system
|
||||
/sys/kernel/qvr_external_sensor/fd 0660 system system
|
||||
|
||||
# wlan
|
||||
/dev/wcnss_wlan 0660 system system
|
||||
/dev/wcnss_ctrl 0660 system system
|
||||
/sys/devices/soc/a000000.qcom,wcnss-wlan/net/wlan0/queues/rx-* rps_cpus 0660 system system
|
||||
/sys/devices/soc/a000000.qcom,wcnss-wlan/net/p2p0/queues/rx-* rps_cpus 0660 system system
|
||||
/dev/spidev0.0 0660 system audio
|
||||
/dev/i2c-7 0660 system audio
|
||||
/dev/msm_camera/* 0660 system camera
|
||||
/dev/gemini/ 0660 system camera
|
||||
/dev/mercury0 0660 system camera
|
||||
/dev/msm_vidc_reg 0660 system audio
|
||||
/dev/msm_vidc_dec 0660 system audio
|
||||
/dev/msm_vidc_dec_sec 0660 system audio
|
||||
/dev/msm_vidc_enc 0660 system audio
|
||||
/dev/msm_rotator 0660 system system
|
||||
/dev/hw_random 0600 root root
|
||||
/dev/sdsprpc-smd 0660 system system
|
||||
|
||||
#permissions for audio
|
||||
/dev/wcd_dsp0_control 0660 system audio
|
||||
/dev/wcd-dsp-glink 0660 system audio
|
||||
/dev/audio_slimslave 0660 system audio
|
||||
/dev/msm_qcelp 0660 system audio
|
||||
/dev/msm_evrc 0660 system audio
|
||||
/dev/msm_wma 0660 system audio
|
||||
/dev/msm_wmapro 0660 system audio
|
||||
/dev/msm_alac 0660 system audio
|
||||
/dev/msm_ape 0660 system audio
|
||||
/dev/msm_amrnb 0660 system audio
|
||||
/dev/msm_amrwb 0660 system audio
|
||||
/dev/msm_amrwbplus 0660 system audio
|
||||
/dev/msm_aac 0660 system audio
|
||||
/dev/msm_multi_aac 0660 system audio
|
||||
/dev/msm_aac_in 0660 system audio
|
||||
/dev/msm_qcelp_in 0660 system audio
|
||||
/dev/msm_evrc_in 0660 system audio
|
||||
/dev/msm_amrnb_in 0660 system audio
|
||||
/dev/msm_amrwb_in 0660 system audio
|
||||
/dev/msm_a2dp_in 0660 system audio
|
||||
/dev/msm_ac3 0660 system audio
|
||||
/dev/msm_audio_cal 0660 system audio
|
||||
/dev/msm_hweffects 0660 system audio
|
||||
/dev/msm_cad 0660 system audio
|
||||
/dev/msm_fm 0660 system audio
|
||||
/dev/msm_mvs 0660 system audio
|
||||
/dev/msm_pcm_lp_dec 0660 system audio
|
||||
/dev/msm_preproc_ctl 0660 system audio
|
||||
/dev/msm_rtac 0660 system audio
|
||||
/dev/msm_voicememo 0660 system audio
|
||||
/dev/ttyHSL1 0660 system system
|
||||
/dev/ttyHS1 0660 system system
|
||||
/dev/mdm 0660 system radio
|
||||
/sys/devices/virtual/smdpkt/smdcntl* open_timeout 0664 radio radio
|
||||
/dev/sdio_tty_ciq_00 0660 system system
|
||||
/dev/tty_sdio_00 0660 system system
|
||||
/dev/ttyGS0 0660 system system
|
||||
/dev/i2c-5 0660 media media
|
||||
/dev/avtimer 0660 system audio
|
||||
/dev/spidev2.0 0660 system audio
|
||||
/dev/aud_pasthru_adsp 0660 system audio
|
||||
# DVB devices
|
||||
/dev/dvb/adapter0/demux* 0440 media media
|
||||
/dev/dvb/adapter0/dvr* 0660 media media
|
||||
/dev/dvb/adapter0/video* 0660 media media
|
||||
|
||||
# Broadcast devices
|
||||
/dev/tsc_mux0 0660 media media
|
||||
/dev/tsc_ci0 0660 media media
|
||||
|
||||
# sensors
|
||||
/dev/sensors 0660 system system
|
||||
/sys/devices/i2c-12/12-* pollrate_ms 0664 system system
|
||||
/sys/devices/f9925000.i2c/i2c-0/0-* enable 0660 input system
|
||||
/sys/devices/f9925000.i2c/i2c-0/0-* poll_delay 0660 input system
|
||||
/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* enable 0660 input system
|
||||
/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* poll_delay 0660 input system
|
||||
/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* enable_wakeup 0660 input system
|
||||
/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* max_latency 0660 input system
|
||||
/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* flush 0660 input system
|
||||
/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* calibrate 0660 input system
|
||||
/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* enable 0660 input system
|
||||
/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* poll_delay 0660 input system
|
||||
/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* enable_wakeup 0660 input system
|
||||
/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* max_latency 0660 input system
|
||||
/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* flush 0660 input system
|
||||
/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* calibrate 0660 input system
|
||||
/sys/devices/virtual/optical_sensors/proximity ps_adc 0660 input system
|
||||
/sys/devices/virtual/optical_sensors/proximity ps_poll_delay 0660 input system
|
||||
/sys/devices/virtual/optical_sensors/lightsensor ls_auto 0660 input system
|
||||
/sys/devices/virtual/optical_sensors/lightsensor ls_poll_delay 0660 input system
|
||||
/sys/devices/virtual/input/input* poll 0660 input system
|
||||
/sys/devices/virtual/input/input* pollrate_ms 0660 input system
|
||||
/sys/devices/soc/78b7000.i2c/i2c-3/3-0020/input/input* secure_touch 0440 system drmrpc
|
||||
/sys/devices/soc/78b7000.i2c/i2c-3/3-0020/input/input* secure_touch_enable 0660 system drmrpc
|
||||
/sys/devices/soc/78b7000.i2c/i2c-3/3-0038/input/input* secure_touch 0440 system drmrpc
|
||||
/sys/devices/soc/78b7000.i2c/i2c-3/3-0038/input/input* secure_touch_enable 0660 system drmrpc
|
||||
/sys/devices/soc/78b7000.i2c/i2c-3/3-004b/input/input* secure_touch 0440 system drmrpc
|
||||
/sys/devices/soc/78b7000.i2c/i2c-3/3-004b/input/input* secure_touch_enable 0660 system drmrpc
|
||||
/sys/devices/soc/c179000.i2c/i2c-5/5-0020/input/input* secure_touch 0440 system drmrpc
|
||||
/sys/devices/soc/c179000.i2c/i2c-5/5-0020/input/input* secure_touch_enable 0660 system drmrpc
|
||||
/sys/devices/platform/soc/a98000.i2c/i2c-2/2-0020/input/input* secure_touch 0440 system drmrpc
|
||||
/sys/devices/platform/soc/a98000.i2c/i2c-2/2-0020/input/input* secure_touch_enable 0660 system drmrpc
|
||||
/sys/devices/platform/soc/a84000.i2c/i2c-2/2-0020/input/input* secure_touch 0440 system drmrpc
|
||||
/sys/devices/platform/soc/a84000.i2c/i2c-2/2-0020/input/input* secure_touch_enable 0660 system drmrpc
|
||||
|
||||
# GNSS Device premissions
|
||||
/dev/gnss_sirf 0660 gps gps
|
||||
|
||||
# laser sensor access
|
||||
/sys/devices/virtual/input/input* enable_ps_sensor 0660 system input
|
||||
/sys/devices/virtual/input/input* set_delay_ms 0660 system input
|
||||
/sys/devices/virtual/input/input* do_flush 0660 system input
|
||||
|
||||
# vm_bms
|
||||
/dev/vm_bms 0660 system system
|
||||
/dev/battery_data 0660 system system
|
||||
|
||||
# wlan
|
||||
/dev/wcnss_wlan 0660 system system
|
||||
/dev/wcnss_ctrl 0660 system system
|
||||
/sys/devices/soc/600000.qcom,pcie/pci0000:00/0000:00:00.0/0000:01:00.0/net/wlan0/queues/rx-* rps_cpus 0660 system system
|
||||
/sys/devices/soc/600000.qcom,pcie/pci0000:00/0000:00:00.0/0000:01:00.0/net/p2p0/queues/rx-* rps_cpus 0660 system system
|
||||
|
||||
# wigig
|
||||
/sys/bus/pci/drivers/wil6210* 0000:01:00.0/wil6210/fst_link_loss 0660 wifi wifi
|
||||
/sys/bus/pci/drivers/wil6210* 0000:01:00.0/wil6210/thermal_throttling 0660 system system
|
||||
/sys/bus/pci/drivers/wil6210* 0000:01:00.0/wil6210/snr_thresh 0660 wifi wifi
|
||||
/sys/bus/pci/drivers/wil6210* 0000:01:00.0/net/wigig0/queues/rx-0/rps_cpus 0660 system system
|
||||
/sys/bus/pci/drivers/wil6210* 0000:01:00.0/net/wigig0/gro_flush_timeout 0660 system system
|
||||
/sys/devices/virtual/net/bond0 queues/rx-0/rps_cpus 0660 system system
|
||||
/dev/wigig_sensing 0660 system system
|
||||
|
||||
#nfc permissions
|
||||
/dev/nfc-nci 0660 nfc nfc
|
||||
/dev/nq-nci 0660 nfc nfc
|
||||
/dev/assd 0660 nfc nfc
|
||||
|
||||
# UIO devices
|
||||
/dev/uio0 0660 system system
|
||||
/dev/uio1 0660 system system
|
||||
/dev/uio2 0660 system system
|
||||
|
||||
# SSR devices
|
||||
/dev/subsys_* 0640 system system
|
||||
|
||||
# Ultrasound device
|
||||
/dev/usf1 0660 system system
|
||||
|
||||
# Ramdump devices
|
||||
/dev/ramdump* 0640 system system
|
||||
|
||||
# Fingerprint device
|
||||
/dev/qbt* 0660 system system
|
||||
/sys/class/fts/touch_aoi aoi_set 0660 root system
|
||||
/sys/class/fts/touch_aoi power_set 0660 root system
|
||||
|
||||
#ImproveTouch device
|
||||
/dev/hbtp_input 0660 system system
|
||||
/dev/hbtp_vm 0660 system system
|
||||
|
||||
# Add device block for FRP
|
||||
/dev/block/platform/soc/7824900.sdhci/by-name/config 0600 system system
|
||||
/dev/block/platform/soc/7464900.sdhci/by-name/frp 0600 system system
|
||||
/dev/block/platform/soc/624000.ufshc/by-name/frp 0600 system system
|
||||
/dev/block/platform/soc/1da4000.ufshc/by-name/frp 0600 system system
|
||||
/dev/block/platform/soc/c0c4000.sdhci/by-name/frp 0600 system system
|
||||
/dev/block/platform/soc/1d84000.ufshc/by-name/frp 0600 system system
|
||||
/dev/block/platform/soc/7c4000.sdhci/by-name/frp 0600 system system
|
||||
/dev/block/platform/soc/4744000.sdhci/by-name/frp 0600 system system
|
||||
/dev/block/platform/soc/4804000.ufshc/by-name/frp 0600 system system
|
||||
|
||||
# This is temporary while using SD card for initial bring-up
|
||||
/dev/block/platform/soc/8804000.sdhci/by-name/frp 0600 system system
|
||||
|
||||
# Kmsg device
|
||||
/dev/kmsg 0620 root system
|
||||
|
||||
# LED class devices
|
||||
/sys/class/leds/red delay_on 0640 system system
|
||||
/sys/class/leds/red delay_off 0640 system system
|
||||
/sys/class/leds/red breath 0640 system system
|
||||
/sys/class/leds/green delay_on 0640 system system
|
||||
/sys/class/leds/green delay_off 0640 system system
|
||||
/sys/class/leds/green breath 0640 system system
|
||||
/sys/class/leds/blue delay_on 0640 system system
|
||||
/sys/class/leds/blue delay_off 0640 system system
|
||||
/sys/class/leds/blue breath 0640 system system
|
||||
|
||||
# NPU device
|
||||
/dev/msm_npu 0644 system system
|
||||
|
||||
# USB role switch
|
||||
/sys/class/dual_role_usb/* data_role 0660 system system
|
||||
/sys/class/dual_role_usb/* power_role 0660 system system
|
||||
/sys/class/dual_role_usb/* mode 0660 system system
|
||||
|
||||
#Memory Offline
|
||||
/sys/devices/system/memory/memory* state 0660 system system
|
||||
|
||||
/sys/devices/virtual/hdcp/msm_hdcp min_level_change 0664 system graphics
|
||||
|
||||
# sys-fs display
|
||||
/sys/class/graphics/fb* hpd 0664 system graphics
|
||||
/sys/class/graphics/fb* res_info 0664 system graphics
|
||||
/sys/class/graphics/fb* vendor_name 0664 system graphics
|
||||
/sys/class/graphics/fb* product_description 0664 system graphics
|
||||
/sys/class/graphics/fb* video_mode 0664 system graphics
|
||||
/sys/class/graphics/fb* format_3d 0664 system graphics
|
||||
/sys/class/graphics/fb* s3d_mode 0664 system graphics
|
||||
/sys/class/graphics/fb* dynamic_fps 0664 system graphics
|
||||
/sys/class/graphics/fb* msm_fb_dfps_mode 0664 system graphics
|
||||
/sys/class/graphics/fb* hdr_stream 0664 system graphics
|
||||
/sys/class/graphics/fb* cec/enable 0664 system graphics
|
||||
/sys/class/graphics/fb* cec/logical_addr 0664 system graphics
|
||||
/sys/class/graphics/fb* cec/rd_msg 0664 system graphics
|
||||
/sys/class/graphics/fb* pa 0664 system graphics
|
||||
/sys/class/graphics/fb* cec/wr_msg 0600 system graphics
|
||||
/sys/class/graphics/fb* hdcp/tp 0664 system graphics
|
||||
/sys/class/graphics/fb* hdcp2p2/min_level_change 0660 system graphics
|
||||
/sys/class/graphics/fb* hdmi_audio_cb 0600 audioserver audio
|
||||
|
||||
/sys/class/graphics/fb* lineptr_value 0664 system graphics
|
||||
/sys/class/graphics/fb* msm_fb_persist_mode 0664 system graphics
|
||||
|
||||
/sys/class/graphics/fb0 idle_time 0664 system graphics
|
||||
/sys/class/graphics/fb0 dynamic_fps 0664 system graphics
|
||||
/sys/class/graphics/fb0 dyn_pu 0664 system graphics
|
||||
/sys/class/graphics/fb0 modes 0664 system graphics
|
||||
/sys/class/graphics/fb0 mode 0664 system graphics
|
||||
/sys/class/graphics/fb0 msm_cmd_autorefresh_en 0664 system graphics
|
||||
/sys/class/kgsl/kgsl-3d0 pwrscale 0664 root system
|
||||
/sys/class/kgsl/kgsl-3d0 devfreq/governor 0664 root system
|
||||
/sys/class/kgsl/kgsl-3d0 force_rail_on 0664 root system
|
||||
/sys/class/kgsl/kgsl-3d0 force_bus_on 0664 root system
|
||||
/sys/class/kgsl/kgsl-3d0 force_clk_on 0664 root system
|
||||
/sys/class/kgsl/kgsl-3d0 bus_split 0664 root system
|
||||
Reference in New Issue
Block a user