diff options
author | Álvaro Brey <alvaro.brv@gmail.com> | 2017-09-16 17:24:52 +0200 |
---|---|---|
committer | Cosme Domínguez Díaz <cosme.ddiaz@gmail.com> | 2018-03-09 23:28:55 +0100 |
commit | f9d31c67d982c90396a5db5ce2ad13ef0e0c5d80 (patch) | |
tree | 3255cfa7c86e3bbbc17503ff49334b8cfae2cce6 | |
parent | 3ead8ff7409dbafe963999eda38d652d93b16ea0 (diff) |
msm8996-common: rootdir: Kang init.qcom.usb.rc from gemini
* Cleaner, and includes stuff from init.qcom.usb.sh without needing the script
msm8996-common: rootdir: Import back USB compositions from the old .rc
* Fixes ADB and MTP on z2_plus
-rwxr-xr-x | msm8996.mk | 1 | ||||
-rw-r--r-- | rootdir/Android.mk | 8 | ||||
-rw-r--r-- | rootdir/etc/init.qcom.usb.rc | 14 | ||||
-rwxr-xr-x | rootdir/etc/init.qcom.usb.sh | 280 |
4 files changed, 6 insertions, 297 deletions
@@ -144,7 +144,6 @@ PRODUCT_PACKAGES += \ init.qcom.rc \ init.qcom.power.rc \ init.qcom.usb.rc \ - init.qcom.usb.sh \ init.qcom.bt.sh \ ueventd.qcom.rc diff --git a/rootdir/Android.mk b/rootdir/Android.mk index 6c3df51..d13fa87 100644 --- a/rootdir/Android.mk +++ b/rootdir/Android.mk @@ -38,14 +38,6 @@ LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw include $(BUILD_PREBUILT) include $(CLEAR_VARS) -LOCAL_MODULE := init.qcom.usb.sh -LOCAL_MODULE_TAGS := optional eng -LOCAL_MODULE_CLASS := EXECUTABLES -LOCAL_SRC_FILES := etc/init.qcom.usb.sh -LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES) -include $(BUILD_PREBUILT) - -include $(CLEAR_VARS) LOCAL_MODULE := init.qcom.bt.sh LOCAL_MODULE_TAGS := optional eng LOCAL_MODULE_CLASS := EXECUTABLES diff --git a/rootdir/etc/init.qcom.usb.rc b/rootdir/etc/init.qcom.usb.rc index e4a3535..0cee30f 100644 --- a/rootdir/etc/init.qcom.usb.rc +++ b/rootdir/etc/init.qcom.usb.rc @@ -25,10 +25,10 @@ # 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/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/iManufacturer ShenQi Inc. + write /sys/class/android_usb/android0/iManufacturer ${ro.product.manufacturer} + write /sys/class/android_usb/android0/iProduct ${ro.product.model} on fs mkdir /dev/usb-ffs 0770 shell shell @@ -36,11 +36,9 @@ on fs mount functionfs adb /dev/usb-ffs/adb uid=2000,gid=2000 write /sys/class/android_usb/android0/f_ffs/aliases adb -service qcom-usb-sh /vendor/bin/init.qcom.usb.sh - class core - user root - oneshot - seclabel u:r:qti_init_shell:s0 + write /sys/class/android_usb/android0/f_rndis_qc/rndis_transports "BAM2BAM_IPA" + write /sys/module/g_android/parameters/mtp_tx_req_len 131072 + write /sys/module/g_android/parameters/mtp_rx_req_len 131072 # Following are the parameters required for usb functionality. They provide configurable options like # product_id/vendor id and allows specifying required functions: diff --git a/rootdir/etc/init.qcom.usb.sh b/rootdir/etc/init.qcom.usb.sh deleted file mode 100755 index 87ef476..0000000 --- a/rootdir/etc/init.qcom.usb.sh +++ /dev/null @@ -1,280 +0,0 @@ -#!/vendor/bin/sh -# Copyright (c) 2012, The Linux Foundation. All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are -# met: -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above -# copyright notice, this list of conditions and the following -# disclaimer in the documentation and/or other materials provided -# with the distribution. -# * Neither the name of The Linux Foundation nor the names of its -# contributors may be used to endorse or promote products derived -# from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED -# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS -# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE -# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -# -# -chown -h root.system /sys/devices/platform/msm_hsusb/gadget/wakeup -chmod -h 220 /sys/devices/platform/msm_hsusb/gadget/wakeup - -# 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 - -# Get hardware revision -if [ -f /sys/devices/soc0/revision ]; then - soc_revision=`cat /sys/devices/soc0/revision` 2> /dev/null -else - soc_revision=`cat /sys/devices/system/soc/soc0/revision` 2> /dev/null -fi - -# -# Allow persistent usb charging disabling -# User needs to set usb charging disabled in persist.usb.chgdisabled -# -target=`getprop ro.board.platform` -usbchgdisabled=`getprop persist.usb.chgdisabled` -case "$usbchgdisabled" in - "") ;; #Do nothing here - * ) - case $target in - "msm8660") - echo "$usbchgdisabled" > /sys/module/pmic8058_charger/parameters/disabled - echo "$usbchgdisabled" > /sys/module/smb137b/parameters/disabled - ;; - "msm8960") - echo "$usbchgdisabled" > /sys/module/pm8921_charger/parameters/disabled - ;; - esac -esac - -usbcurrentlimit=`getprop persist.usb.currentlimit` -case "$usbcurrentlimit" in - "") ;; #Do nothing here - * ) - case $target in - "msm8960") - echo "$usbcurrentlimit" > /sys/module/pm8921_charger/parameters/usb_max_current - ;; - esac -esac - -# -# Check ESOC for external MDM -# -# Note: currently only a single MDM is supported -# -if [ -d /sys/bus/esoc/devices ]; then -for f in /sys/bus/esoc/devices/*; do - if [ -d $f ]; then - if [ `grep "^MDM" $f/esoc_name` ]; then - esoc_link=`cat $f/esoc_link` - break - fi - fi -done -fi - -target=`getprop ro.board.platform` - -#ifdef VENDOR_EDIT -boot_mode=`getprop ro.boot.ftm_mode` -echo "boot_mode: $boot_mode" > /dev/kmsg -case "$boot_mode" in - "ftm_at" | "ftm_rf" | "ftm_wlan" | "ftm_mos") - usb_config=`getprop persist.sys.usb.config` - echo "BEFORE boot_mode: $usb_config" > /dev/kmsg - if [ "$usb_config" != "diag,adb" ] ; then - setprop persist.sys.usb.config diag,adb - fi - ;; -esac -usb_config=`getprop persist.sys.usb.config` -echo "AFTER boot_mode: $usb_config" > /dev/kmsg -#endif - -# -# Allow USB enumeration with default PID/VID -# -baseband=`getprop ro.baseband` -echo 1 > /sys/class/android_usb/f_mass_storage/lun/nofua -usb_config=`getprop persist.sys.usb.config` -echo "BEFORE: $usb_config" > /dev/kmsg -case "$usb_config" in - "" | "adb" | "none") #USB persist config not set, select default configuration - case "$esoc_link" in - "PCIe") - setprop persist.sys.usb.config diag,diag_mdm,serial_cdev,rmnet_qti_ether,mass_storage,adb - ;; - *) - case "$soc_hwplatform" in - "Dragon") - setprop persist.sys.usb.config diag,adb - ;; - *) - case "$target" in - "msm8916") - setprop persist.sys.usb.config diag,serial_smd,rmnet_bam,adb - ;; - "msm8994" | "msm8992") - if [ "$soc_hwplatform" == "Dragon" ]; then - setprop persist.sys.usb.config diag,adb - else - setprop persist.sys.usb.config diag,serial_smd,serial_tty,rmnet_ipa,mass_storage,adb - fi - ;; - "msm8996") - if [ "$soc_revision" == "1.0" -o "$soc_hwplatform" == "Dragon" ] - then - setprop persist.sys.usb.config diag,adb - #[BSP-66]-Anderson-Disable_set_the_property. - #This will ause BSP-66 issue and cause all the port enable in default. - #else - #setprop persist.sys.usb.config diag,serial_cdev,serial_tty,rmnet_ipa,mass_storage,adb - fi - ;; - "msm8909" | "msm8937") - setprop persist.sys.usb.config diag,serial_smd,rmnet_qti_bam,adb - ;; - "msm8952" | "titanium") - setprop persist.sys.usb.config diag,serial_smd,rmnet_ipa,adb - ;; - *) - setprop persist.sys.usb.config diag,adb - ;; - esac - ;; - esac - ;; - esac - ;; - * ) ;; #USB persist config exists, do nothing -esac - - - -# -# Do target specific things -# -case "$target" in - "msm8974") -# Select USB BAM - 2.0 or 3.0 - echo ssusb > /sys/bus/platform/devices/usb_bam/enable - ;; - "apq8084") - if [ "$baseband" == "apq" ]; then - echo "msm_hsic_host" > /sys/bus/platform/drivers/xhci_msm_hsic/unbind - fi - ;; - "msm8226") - if [ -e /sys/bus/platform/drivers/msm_hsic_host ]; then - if [ ! -L /sys/bus/usb/devices/1-1 ]; then - echo msm_hsic_host > /sys/bus/platform/drivers/msm_hsic_host/unbind - fi - fi - ;; - "msm8994" | "msm8992" | "msm8996" | "titanium") - echo BAM2BAM_IPA > /sys/class/android_usb/android0/f_rndis_qc/rndis_transports - echo 131072 > /sys/module/g_android/parameters/mtp_tx_req_len - echo 131072 > /sys/module/g_android/parameters/mtp_rx_req_len - ;; -esac - -# -# set module params for embedded rmnet devices -# -rmnetmux=`getprop persist.rmnet.mux` -case "$baseband" in - "mdm" | "dsda" | "sglte2") - case "$rmnetmux" in - "enabled") - echo 1 > /sys/module/rmnet_usb/parameters/mux_enabled - echo 8 > /sys/module/rmnet_usb/parameters/no_fwd_rmnet_links - echo 17 > /sys/module/rmnet_usb/parameters/no_rmnet_insts_per_dev - ;; - esac - echo 1 > /sys/module/rmnet_usb/parameters/rmnet_data_init - # Allow QMUX daemon to assign port open wait time - chown -h radio.radio /sys/devices/virtual/hsicctl/hsicctl0/modem_wait - ;; - "dsda2") - echo 2 > /sys/module/rmnet_usb/parameters/no_rmnet_devs - echo hsicctl,hsusbctl > /sys/module/rmnet_usb/parameters/rmnet_dev_names - case "$rmnetmux" in - "enabled") #mux is neabled on both mdms - echo 3 > /sys/module/rmnet_usb/parameters/mux_enabled - echo 8 > /sys/module/rmnet_usb/parameters/no_fwd_rmnet_links - echo 17 > write /sys/module/rmnet_usb/parameters/no_rmnet_insts_per_dev - ;; - "enabled_hsic") #mux is enabled on hsic mdm - echo 1 > /sys/module/rmnet_usb/parameters/mux_enabled - echo 8 > /sys/module/rmnet_usb/parameters/no_fwd_rmnet_links - echo 17 > /sys/module/rmnet_usb/parameters/no_rmnet_insts_per_dev - ;; - "enabled_hsusb") #mux is enabled on hsusb mdm - echo 2 > /sys/module/rmnet_usb/parameters/mux_enabled - echo 8 > /sys/module/rmnet_usb/parameters/no_fwd_rmnet_links - echo 17 > /sys/module/rmnet_usb/parameters/no_rmnet_insts_per_dev - ;; - esac - echo 1 > /sys/module/rmnet_usb/parameters/rmnet_data_init - # Allow QMUX daemon to assign port open wait time - chown -h radio.radio /sys/devices/virtual/hsicctl/hsicctl0/modem_wait - ;; -esac - -# -# Add support for exposing lun0 as cdrom in mass-storage -# -cdromname="/system/etc/cdrom_install.iso" -platformver=`cat /sys/devices/soc0/hw_platform` -case "$target" in - "msm8226" | "msm8610" | "msm8916") - case $platformver in - "QRD") - echo "mounting usbcdrom lun" - echo $cdromname > /sys/class/android_usb/android0/f_mass_storage/rom/file - chmod 0444 /sys/class/android_usb/android0/f_mass_storage/rom/file - ;; - esac - ;; -esac - -# -# Initialize RNDIS Diag option. If unset, set it to 'none'. -# -diag_extra=`getprop persist.sys.usb.config.extra` -if [ "$diag_extra" == "" ]; then - setprop persist.sys.usb.config.extra none -fi - -# 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 - -# enable rps cpus on msm8937 target -setprop sys.usb.rps_mask 0 -case "$soc_id" in - "294" | "295") - setprop sys.usb.rps_mask 10 - ;; -esac |