aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÁlvaro Brey <alvaro.brv@gmail.com>2017-09-16 17:24:52 +0200
committerCosme Domínguez Díaz <cosme.ddiaz@gmail.com>2018-03-09 23:28:55 +0100
commitf9d31c67d982c90396a5db5ce2ad13ef0e0c5d80 (patch)
tree3255cfa7c86e3bbbc17503ff49334b8cfae2cce6
parent3ead8ff7409dbafe963999eda38d652d93b16ea0 (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-xmsm8996.mk1
-rw-r--r--rootdir/Android.mk8
-rw-r--r--rootdir/etc/init.qcom.usb.rc14
-rwxr-xr-xrootdir/etc/init.qcom.usb.sh280
4 files changed, 6 insertions, 297 deletions
diff --git a/msm8996.mk b/msm8996.mk
index 03eb61f..ae91ad6 100755
--- a/msm8996.mk
+++ b/msm8996.mk
@@ -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