diff --git a/rootdir/Android.mk b/rootdir/Android.mk index 2e59d4e5..2c8bc7e7 100644 --- a/rootdir/Android.mk +++ b/rootdir/Android.mk @@ -59,14 +59,6 @@ LOCAL_SRC_FILES := bin/init.class_main.sh LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES) include $(BUILD_PREBUILT) -include $(CLEAR_VARS) -LOCAL_MODULE := init.qcom.usb.rc -LOCAL_MODULE_TAGS := optional -LOCAL_MODULE_CLASS := ETC -LOCAL_SRC_FILES := etc/init.qcom.usb.rc -LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init/hw -include $(BUILD_PREBUILT) - include $(CLEAR_VARS) LOCAL_MODULE := init.msm.usb.configfs.rc LOCAL_MODULE_TAGS := optional @@ -75,14 +67,6 @@ LOCAL_SRC_FILES := etc/init.msm.usb.configfs.rc 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 -LOCAL_MODULE_CLASS := ETC -LOCAL_SRC_FILES := bin/init.qcom.usb.sh -LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES) -include $(BUILD_PREBUILT) - include $(CLEAR_VARS) LOCAL_MODULE := init.recovery.qcom.rc LOCAL_MODULE_TAGS := optional diff --git a/rootdir/bin/init.qcom.usb.sh b/rootdir/bin/init.qcom.usb.sh deleted file mode 100755 index 4dbf0b07..00000000 --- a/rootdir/bin/init.qcom.usb.sh +++ /dev/null @@ -1,242 +0,0 @@ -#!/vendor/bin/sh -# Copyright (c) 2012-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. -# -# - -# Set platform variables -soc_hwplatform=`cat /sys/devices/soc0/hw_platform 2> /dev/null` -soc_machine=`cat /sys/devices/soc0/machine 2> /dev/null` -soc_machine=${soc_machine:0:2} -soc_id=`cat /sys/devices/soc0/soc_id 2> /dev/null` - -# -# Check ESOC for external modem -# -# Note: currently only a single MDM/SDX is supported -# -esoc_name=`cat /sys/bus/esoc/devices/esoc0/esoc_name 2> /dev/null` - -target=`getprop ro.board.platform` - -if [ -f /sys/class/android_usb/f_mass_storage/lun/nofua ]; then - echo 1 > /sys/class/android_usb/f_mass_storage/lun/nofua -fi - -# -# Override USB default composition -# -# If USB persist config not set, set default configuration -if [ "$(getprop persist.vendor.usb.config)" == "" -a \ - "$(getprop init.svc.vendor.usb-gadget-hal-1-0)" != "running" ]; then - if [ "$esoc_name" != "" ]; then - setprop persist.vendor.usb.config diag,diag_mdm,qdss,qdss_mdm,serial_cdev,dpl,rmnet,adb - else - case "$(getprop ro.baseband)" in - "apq") - setprop persist.vendor.usb.config diag,adb - ;; - *) - case "$soc_hwplatform" in - "Dragon" | "SBC") - setprop persist.vendor.usb.config diag,adb - ;; - *) - case "$soc_machine" in - "SA") - setprop persist.vendor.usb.config diag,adb - ;; - *) - case "$target" in - "msm8996") - setprop persist.vendor.usb.config diag,serial_cdev,serial_tty,rmnet_ipa,mass_storage,adb - ;; - "msm8909") - setprop persist.vendor.usb.config diag,serial_smd,rmnet_qti_bam,adb - ;; - "msm8937") - if [ -d /config/usb_gadget ]; then - setprop persist.vendor.usb.config diag,serial_cdev,rmnet,dpl,adb - else - case "$soc_id" in - "313" | "320") - setprop persist.vendor.usb.config diag,serial_smd,rmnet_ipa,adb - ;; - *) - setprop persist.vendor.usb.config diag,serial_smd,rmnet_qti_bam,adb - ;; - esac - fi - ;; - "msm8953") - if [ -d /config/usb_gadget ]; then - setprop persist.vendor.usb.config diag,serial_cdev,rmnet,dpl,adb - else - setprop persist.vendor.usb.config diag,serial_smd,rmnet_ipa,adb - fi - ;; - "msm8998" | "sdm660" | "sdm636"| "apq8098_latv") - setprop persist.vendor.usb.config diag,serial_cdev,rmnet,adb - ;; - "sdm845" | "sdm710") - setprop persist.vendor.usb.config diag,serial_cdev,rmnet,dpl,adb - ;; - "msmnile" | "sm6150" | "trinket" | "lito" | "atoll" | "bengal") - setprop persist.vendor.usb.config diag,serial_cdev,rmnet,dpl,qdss,adb - ;; - *) - setprop persist.vendor.usb.config diag,adb - ;; - esac - ;; - esac - ;; - esac - ;; - esac - fi -fi - -# Start peripheral mode on primary USB controllers for Automotive platforms -case "$soc_machine" in - "SA") - if [ -f /sys/bus/platform/devices/a600000.ssusb/mode ]; then - default_mode=`cat /sys/bus/platform/devices/a600000.ssusb/mode` - case "$default_mode" in - "none") - echo peripheral > /sys/bus/platform/devices/a600000.ssusb/mode - ;; - esac - fi - ;; -esac - -# set rndis transport to BAM2BAM_IPA for 8920 and 8940 -if [ "$target" == "msm8937" ]; then - if [ ! -d /config/usb_gadget ]; then - case "$soc_id" in - "313" | "320") - echo BAM2BAM_IPA > /sys/class/android_usb/android0/f_rndis_qc/rndis_transports - ;; - *) - ;; - esac - fi -fi - -# check configfs is mounted or not -if [ -d /config/usb_gadget ]; then - product_string=`cat /config/usb_gadget/g1/strings/0x409/product` 2> /dev/null - if [ "product_string" == "" ]; then - # Chip-serial is used for unique MSM identification in Product string - msm_serial=`cat /sys/devices/soc0/serial_number`; - msm_serial_hex=`printf %08X $msm_serial` - machine_type=`cat /sys/devices/soc0/machine` - product_string="$machine_type-$soc_hwplatform _SN:$msm_serial_hex" - echo "$product_string" > /config/usb_gadget/g1/strings/0x409/product - fi - - # ADB requires valid iSerialNumber; if ro.serialno is missing, use dummy - serialnumber=`cat /config/usb_gadget/g1/strings/0x409/serialnumber 2> /dev/null` - if [ "$serialnumber" == "" ]; then - serialno=1234567 - echo $serialno > /config/usb_gadget/g1/strings/0x409/serialnumber - fi - setprop vendor.usb.configfs 1 -fi - -# -# Initialize RNDIS Diag option. If unset, set it to 'none'. -# -diag_extra=`getprop persist.vendor.usb.config.extra` -if [ "$diag_extra" == "" ]; then - setprop persist.vendor.usb.config.extra none -fi - -# enable rps cpus on msm8937 target -setprop vendor.usb.rps_mask 0 -case "$soc_id" in - "294" | "295" | "353" | "354") - setprop vendor.usb.rps_mask 40 - ;; -esac - -# -# Initialize UVC conifguration. -# -if [ -d /config/usb_gadget/g1/functions/uvc.0 ]; then - cd /config/usb_gadget/g1/functions/uvc.0 - - echo 3072 > streaming_maxpacket - echo 1 > streaming_maxburst - mkdir control/header/h - ln -s control/header/h control/class/fs/ - ln -s control/header/h control/class/ss - - mkdir -p streaming/uncompressed/u/360p - echo "666666\n1000000\n5000000\n" > streaming/uncompressed/u/360p/dwFrameInterval - - mkdir -p streaming/uncompressed/u/720p - echo 1280 > streaming/uncompressed/u/720p/wWidth - echo 720 > streaming/uncompressed/u/720p/wWidth - echo 29491200 > streaming/uncompressed/u/720p/dwMinBitRate - echo 29491200 > streaming/uncompressed/u/720p/dwMaxBitRate - echo 1843200 > streaming/uncompressed/u/720p/dwMaxVideoFrameBufferSize - echo 5000000 > streaming/uncompressed/u/720p/dwDefaultFrameInterval - echo "5000000\n" > streaming/uncompressed/u/720p/dwFrameInterval - - mkdir -p streaming/mjpeg/m/360p - echo "666666\n1000000\n5000000\n" > streaming/mjpeg/m/360p/dwFrameInterval - - mkdir -p streaming/mjpeg/m/720p - echo 1280 > streaming/mjpeg/m/720p/wWidth - echo 720 > streaming/mjpeg/m/720p/wWidth - echo 29491200 > streaming/mjpeg/m/720p/dwMinBitRate - echo 29491200 > streaming/mjpeg/m/720p/dwMaxBitRate - echo 1843200 > streaming/mjpeg/m/720p/dwMaxVideoFrameBufferSize - echo 5000000 > streaming/mjpeg/m/720p/dwDefaultFrameInterval - echo "5000000\n" > streaming/mjpeg/m/720p/dwFrameInterval - - echo 0x04 > /config/usb_gadget/g1/functions/uvc.0/streaming/mjpeg/m/bmaControls - - mkdir -p streaming/h264/h/960p - echo 1920 > streaming/h264/h/960p/wWidth - echo 960 > streaming/h264/h/960p/wWidth - echo 40 > streaming/h264/h/960p/bLevelIDC - echo "333667\n" > streaming/h264/h/960p/dwFrameInterval - - mkdir -p streaming/h264/h/1920p - echo "333667\n" > streaming/h264/h/1920p/dwFrameInterval - - mkdir streaming/header/h - ln -s streaming/uncompressed/u streaming/header/h - ln -s streaming/mjpeg/m streaming/header/h - ln -s streaming/h264/h streaming/header/h - ln -s streaming/header/h streaming/class/fs/ - ln -s streaming/header/h streaming/class/hs/ - ln -s streaming/header/h streaming/class/ss/ -fi diff --git a/rootdir/etc/init.qcom.usb.rc b/rootdir/etc/init.qcom.usb.rc deleted file mode 100755 index 08f56ad7..00000000 --- a/rootdir/etc/init.qcom.usb.rc +++ /dev/null @@ -1,1666 +0,0 @@ -# Copyright (c) 2011-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. -# - -on charger - mkdir /dev/usb-ffs 0770 shell shell - mkdir /dev/usb-ffs/adb 0770 shell shell - mount configfs none /config - mkdir /config/usb_gadget/g1 0770 shell shell - mkdir /config/usb_gadget/g1/strings/0x409 0770 - write /config/usb_gadget/g1/bcdUSB 0x0200 - write /config/usb_gadget/g1/os_desc/use 1 - write /config/usb_gadget/g1/strings/0x409/serialnumber ${ro.serialno} - write /config/usb_gadget/g1/strings/0x409/manufacturer ${ro.product.manufacturer} - write /config/usb_gadget/g1/strings/0x409/product ${ro.product.model} - mkdir /config/usb_gadget/g1/functions/mass_storage.0 - mkdir /config/usb_gadget/g1/functions/ffs.adb - mkdir /config/usb_gadget/g1/configs/b.1 0770 shell shell - mkdir /config/usb_gadget/g1/configs/b.1/strings/0x409 0770 shell shell - write /config/usb_gadget/g1/os_desc/b_vendor_code 0x1 - symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 - mount functionfs adb /dev/usb-ffs/adb uid=2000,gid=2000 - write /sys/class/android_usb/android0/f_ffs/aliases adb - enable vendor.qcom-usb-sh - start vendor.qcom-usb-sh - setprop sys.usb.config mass_storage - -on boot - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - mount configfs none /config - mkdir /config/usb_gadget/g1 0770 - mkdir /config/usb_gadget/g2 0770 - mkdir /config/usb_gadget/g1/strings/0x409 0770 - mkdir /config/usb_gadget/g2/strings/0x409 0770 - write /config/usb_gadget/g1/bcdUSB 0x0200 - write /config/usb_gadget/g2/bcdUSB 0x0200 - write /config/usb_gadget/g1/os_desc/use 1 - write /config/usb_gadget/g1/strings/0x409/serialnumber ${ro.serialno} - write /config/usb_gadget/g2/strings/0x409/serialnumber ${ro.serialno} - write /config/usb_gadget/g1/strings/0x409/manufacturer ${ro.product.manufacturer} - write /config/usb_gadget/g2/strings/0x409/manufacturer ${ro.product.manufacturer} - write /config/usb_gadget/g1/strings/0x409/product ${ro.product.model} - write /config/usb_gadget/g2/strings/0x409/product ${ro.product.model} - mkdir /config/usb_gadget/g1/functions/mass_storage.0 - mkdir /config/usb_gadget/g1/functions/mtp.gs0 - mkdir /config/usb_gadget/g1/functions/ptp.gs1 - mkdir /config/usb_gadget/g1/functions/accessory.gs2 - mkdir /config/usb_gadget/g1/functions/audio_source.gs3 - mkdir /config/usb_gadget/g1/functions/midi.gs5 - mkdir /config/usb_gadget/g1/functions/ffs.adb - mkdir /config/usb_gadget/g1/functions/diag.diag - mkdir /config/usb_gadget/g1/functions/diag.diag_mdm - mkdir /config/usb_gadget/g1/functions/diag.diag_mdm2 - mkdir /config/usb_gadget/g1/functions/cser.dun.0 - mkdir /config/usb_gadget/g1/functions/cser.nmea.1 - mkdir /config/usb_gadget/g1/functions/cser.dun.2 - mkdir /config/usb_gadget/g1/functions/gsi.rmnet - mkdir /config/usb_gadget/g1/functions/gsi.rndis - mkdir /config/usb_gadget/g1/functions/gsi.dpl - mkdir /config/usb_gadget/g1/functions/qdss.qdss - mkdir /config/usb_gadget/g1/functions/qdss.qdss_mdm - mkdir /config/usb_gadget/g1/functions/rndis_bam.rndis - mkdir /config/usb_gadget/g1/functions/rndis.rndis - mkdir /config/usb_gadget/g1/functions/rmnet_bam.rmnet - mkdir /config/usb_gadget/g1/functions/rmnet_bam.dpl - mkdir /config/usb_gadget/g1/functions/rmnet_bam.rmnet_bam_dmux - mkdir /config/usb_gadget/g1/functions/rmnet_bam.dpl_bam_dmux - mkdir /config/usb_gadget/g1/functions/ncm.0 - mkdir /config/usb_gadget/g1/functions/ccid.ccid - mkdir /config/usb_gadget/g1/functions/uac2.0 - mkdir /config/usb_gadget/g1/functions/uvc.0 - mkdir /config/usb_gadget/g1/configs/b.1 0770 - mkdir /config/usb_gadget/g2/configs/b.1 0770 - mkdir /config/usb_gadget/g1/configs/b.1/strings/0x409 0770 - mkdir /config/usb_gadget/g2/configs/b.1/strings/0x409 0770 - write /config/usb_gadget/g1/os_desc/b_vendor_code 0x1 - write /config/usb_gadget/g1/os_desc/qw_sign "MSFT100" - symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 - mkdir /dev/usb-ffs 0775 shell system - mkdir /dev/usb-ffs/adb 0770 shell system - mount functionfs adb /dev/usb-ffs/adb uid=2000,gid=1000,rmode=0770,fmode=0660 - write /sys/class/android_usb/android0/f_ffs/aliases adb - setprop sys.mtp.device_type 2 - setprop vendor.usb.controller ${sys.usb.controller} - enable vendor.qcom-usb-sh - -service vendor.qcom-usb-sh /vendor/bin/init.qcom.usb.sh - class core - user root - oneshot - disabled - -on boot && property:ro.boot.usbconfigfs=true - setprop sys.usb.configfs 1 - -on property:vendor.usb.configfs=1 && property:sys.usb.configfs=0 - setprop sys.usb.configfs 1 - -# Following are the parameters required for usb functionality. They provide configurable options like -# product_id/vendor id and allows specifying required functions: -# -# Required parameters: -# -# /sys/class/android_usb/android0/enable: Enables/disables usb composition -# Value: 0 (disable), 1 (enable) -# -# /sys/class/android_usb/android0/idVendor: Stores Vendor ID -# Value: 05c6 (Vendor id for Qualcomm Inc) -# -# /sys/class/android_usb/android0/idProduct: Stores Product id corresponding to usb composition -# Value: 0x9xxx for composite interface, 0xFxxx for single interface -# -# /sys/class/android_usb/android0/f_diag/clients: Stores name of clients representing a diag interface. -# Value: Passed one per interface. e.g. diag[,diag_mdm, diag_qsc, diag_mdm2] -# -# /sys/class/android_usb/android0/functions: Stores name of the function drivers used in usb composition. -# Value: Passed one per function driver. e.g. diag[,adb] -# -#Optional parameters: -# -# /sys/class/android_usb/android0/f_serial/transports: Stores type of underlying transports used to -# communicate to serial interface. -# Value: Passed one per interface. One value represents control and data transport together. -# e.g. smd[,sdio,tty,hsic] -# Only required if serial interface is present. -# -# /sys/class/android_usb/android0/f_serial/transport_names: Stores name of the underlying transports -# used to communicate to serial interface. This is used to distinguish between more than one interface -# using same transport type. -# Value: Passed one per interface. One value represents control and data transport together. -# e.g. serial_hsic[,serial_hsusb] -# Only required for transport type hsic, optional for other transport types. -# -# /sys/class/android_usb/android0/f_rmnet/transports: Stores type of underlying transports used to -# communicate to rmnet interface. -# Value: Passed two per interface as control, data transport type pair. -# e.g. smd,bam[,hsuart,hsuart] -# Only required if rmnet interface is present. -# -# /sys/class/android_usb/android0/f_rmnet/transport_names: Stores name of the underlying transports -# used to communicate to rmnet interface. This is used to distinguish between more than one interface -# using same transport type. -# Value: Passed one per interface. One value represents control and data transport together. -# e.g. rmnet_hsic[,rmnet_hsusb] -# Only required for transport type hsic, optional for other transport types. - -# USB compositions -on property:sys.usb.config=diag,serial_tty,serial_smd && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9002 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_serial/transports tty,smd - write /sys/class/android_usb/android0/functions diag,serial - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,serial_tty,serial_smd,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9020 - 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 diag,adb,serial - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 901D - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/functions diag,adb - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 900E - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/functions diag - 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,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - 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 smd,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,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - 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_bam && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - 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 smd,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_qti_bam && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - 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 - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,serial_cdev,serial_tty,rmnet_ipa,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - 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_ipa,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - 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} - -on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_bam,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - 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 smd,bam - 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,acm_smd,acm_tty,rmnet_bam,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 903D - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_acm/acm_transports smd,tty - write /sys/class/android_usb/android0/f_rmnet/transports smd,bam - write /sys/class/android_usb/android0/functions diag,adb,acm,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 && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - 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 smd,bam - 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} - -on property:sys.usb.config=diag,acm_smd,acm_tty,rmnet_bam,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 903E - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_acm/acm_transports smd,tty - write /sys/class/android_usb/android0/f_rmnet/transports smd,bam - 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} - -on property:sys.usb.config=diag,diag_mdm,serial_sdio,serial_smd,rmnet_smd_sdio,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9037 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_serial/transports sdio,smd - write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet_smd_sdio,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,diag_mdm,acm_sdio,acm_smd,rmnet_smd_sdio,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 903B - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_acm/acm_transports sdio,smd - write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet_smd_sdio,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,diag_mdm,serial_sdio,serial_smd,rmnet_smd_sdio,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9038 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_serial/transports sdio,smd - write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd_sdio,mass_storage - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,diag_mdm,acm_sdio,acm_smd,rmnet_smd_sdio,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 903C - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_acm/acm_transports sdio,smd - write /sys/class/android_usb/android0/functions diag,acm,rmnet_smd_sdio,mass_storage - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,diag_mdm,serial_sdio,serial_tty,rmnet_sdio,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9031 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_serial/transports sdio,tty - write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet_sdio,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,diag_mdm,acm_sdio,acm_tty,rmnet_sdio,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 903B - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_acm/acm_transports sdio,tty - write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet_sdio,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,diag_mdm,serial_sdio,serial_tty,rmnet_sdio,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9032 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_serial/transports sdio,tty - write /sys/class/android_usb/android0/functions diag,serial,rmnet_sdio,mass_storage - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,diag_mdm,acm_sdio,acm_tty,rmnet_sdio,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 903C - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_acm/acm_transports sdio,tty - write /sys/class/android_usb/android0/functions diag,acm,rmnet_sdio,mass_storage - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,serial_tty,serial_tty,rmnet_smd,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - 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 tty,tty - write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet_smd,mass_storage - write /sys/class/android_usb/android0/enable 1 - start adbd - start vendor.port-bridge - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,acm_tty,acm_tty,rmnet_smd,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 903D - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_acm/acm_transports tty,tty - write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet_smd,mass_storage - write /sys/class/android_usb/android0/enable 1 - start adbd - start vendor.port-bridge - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,serial_tty,serial_tty,rmnet_smd,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - 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 tty,tty - write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd,mass_storage - write /sys/class/android_usb/android0/enable 1 - start vendor.port-bridge - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,acm_tty,acm_tty,rmnet_smd,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 903E - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_acm/acm_transports tty,tty - write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd,mass_storage - 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_smd,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - 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/functions diag,adb,serial,rmnet_smd,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,acm_smd,acm_tty,rmnet_smd,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 903D - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_acm/acm_transports smd,tty - write /sys/class/android_usb/android0/functions diag,adb,acm,rmnet_smd,mass_storage - write /sys/class/android_usb/android0/enable 1 - start adbd - start vendor.port-bridge - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_smd,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - 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/functions diag,serial,rmnet_smd,mass_storage - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,acm_smd,acm_tty,rmnet_smd,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 903E - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_acm/acm_transports smd,tty - write /sys/class/android_usb/android0/functions diag,serial,rmnet_smd,mass_storage - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -# RmNet using USB BAM to IPA BAM -on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_ipa,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - 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_ipa,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - 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} - -on property:sys.usb.config=diag,serial_smd,rmnet_ipa,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - 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 && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - 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} - -# Fusion 3 composition -on property:sys.usb.config=diag,serial_hsic,serial_tty,rmnet_hsic,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - 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 hsic,tty - write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic - write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic - write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic - write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage - write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size 16384 - write /sys/module/mdm_bridge/parameters/max_rx_urbs 20 - write /sys/module/g_android/parameters/ghsic_data_rx_req_size 16384 - write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size 20 - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -# Fusion 3 composition with diag_mdm and adb -on property:sys.usb.config=diag,diag_mdm,serial_hsic,serial_tty,rmnet_hsic,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9031 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_serial/transports hsic,tty - write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic - write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic - write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic - write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage - write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size 16384 - write /sys/module/mdm_bridge/parameters/max_rx_urbs 20 - write /sys/module/g_android/parameters/ghsic_data_rx_req_size 16384 - write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size 20 - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -# Fusion 3 composition with diag_mdm -on property:sys.usb.config=diag,diag_mdm,serial_hsic,serial_tty,rmnet_hsic,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9032 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_serial/transports hsic,tty - write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic - write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic - write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic - write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage - write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size 16384 - write /sys/module/mdm_bridge/parameters/max_rx_urbs 20 - write /sys/module/g_android/parameters/ghsic_data_rx_req_size 16384 - write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size 20 - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -# Fusion 3 DSDA composition with adb -on property:sys.usb.config=diag,diag_mdm,diag_qsc,serial_hsic,serial_hsuart,rmnet_hsic,rmnet_hsuart,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9065 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc - write /sys/class/android_usb/android0/f_serial/transports hsic,hsuart - write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic,serial_hsuart - write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic,hsuart,hsuart - write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic,rmnet_hsuart - write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage - write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size 16384 - write /sys/module/mdm_bridge/parameters/max_rx_urbs 20 - write /sys/module/g_android/parameters/ghsic_data_rx_req_size 16384 - write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size 20 - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -# Fusion 3 DSDA composition without adb -on property:sys.usb.config=diag,diag_mdm,diag_qsc,serial_hsic,serial_hsuart,rmnet_hsic,rmnet_hsuart,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9066 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc - write /sys/class/android_usb/android0/f_serial/transports hsic,hsuart - write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic,serial_hsuart - write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic,hsuart,hsuart - write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic,rmnet_hsuart - write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage - write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size 16384 - write /sys/module/mdm_bridge/parameters/max_rx_urbs 20 - write /sys/module/g_android/parameters/ghsic_data_rx_req_size 16384 - write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size 20 - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -# Fusion 3 DSDA2 composition with adb -on property:sys.usb.config=diag,diag_mdm,diag_mdm2,serial_hsic,serial_hsusb,rmnet_hsic,rmnet_hsusb,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9065 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_mdm2 - write /sys/class/android_usb/android0/f_serial/transports hsic,hsic - write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic,serial_hsusb - write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic,hsic,hsic - write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic,rmnet_hsusb - write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,mass_storage - write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size 16384 - write /sys/module/mdm_bridge/parameters/max_rx_urbs 20 - write /sys/module/g_android/parameters/ghsic_data_rx_req_size 16384 - write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size 20 - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -# Fusion 3 DSDA2 composition without adb -on property:sys.usb.config=diag,diag_mdm,diag_mdm2,serial_hsic,serial_hsusb,rmnet_hsic,rmnet_hsusb,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9066 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_mdm2 - write /sys/class/android_usb/android0/f_serial/transports hsic,hsic - write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic,serial_hsusb - write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic,hsic,hsic - write /sys/class/android_usb/android0/f_rmnet/transport_names rmnet_hsic,rmnet_hsusb - write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage - write /sys/module/mdm_bridge/parameters/rx_rmnet_buffer_size 16384 - write /sys/module/mdm_bridge/parameters/max_rx_urbs 20 - write /sys/module/g_android/parameters/ghsic_data_rx_req_size 16384 - write /sys/module/g_android/parameters/ghsic_data_rmnet_rx_q_size 20 - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -# Fusion PCIe composition with diag_mdm and adb -# Serial & RmNet bridged in userspace with tty and qti/ether -on property:sys.usb.config=diag,diag_mdm,serial_tty,rmnet_qti_ether,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9035 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_serial/transports tty - write /sys/class/android_usb/android0/f_rmnet/transports qti,ether - 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} - -# Fusion PCIe composition with diag_mdm -# Serial & RmNet bridged in userspace with tty and qti/ether -on property:sys.usb.config=diag,diag_mdm,serial_hsic,rmnet_hsic,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9036 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_serial/transports tty - write /sys/class/android_usb/android0/f_rmnet/transports qti,ether - 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} - -# Fusion HSIC/PCIe Hybrid composition with diag_mdm and adb -# RmNet is bridged over PCIe using qti,ether ctrl/data transports -on property:sys.usb.config=diag,diag_mdm,serial_hsic,rmnet_qti_ether,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9035 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_serial/transports hsic - write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic - write /sys/class/android_usb/android0/f_rmnet/transports qti,ether - 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} - -# Fusion HSIC/PCIe Hybrid composition with diag_mdm -# RmNet is bridged over PCIe using qti,ether ctrl/data transports -on property:sys.usb.config=diag,diag_mdm,serial_hsic,rmnet_hsic,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9036 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_serial/transports hsic - write /sys/class/android_usb/android0/f_serial/transport_names serial_hsic - write /sys/class/android_usb/android0/f_rmnet/transports qti,ether - 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} - -# Fusion PCIe composition with diag_mdm -# Serial & RmNet bridged in userspace with port bridge and qti/ether -on property:sys.usb.config=diag,diag_mdm,serial_cdev,rmnet_qti_ether,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9036 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_serial/transports char_bridge - write /sys/class/android_usb/android0/f_rmnet/transports qti,ether - 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} - -on property:sys.usb.config=diag,diag_mdm,serial_cdev,rmnet_qti_ether,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9035 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_serial/transports char_bridge - write /sys/class/android_usb/android0/f_rmnet/transports qti,ether - 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} - -# Fusion 2.2 composition with diag_qsc and adb -on property:sys.usb.config=diag,diag_qsc,serial_smd,serial_tty,serial_hsuart,rmnet_hsuart,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9053 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_qsc - write /sys/class/android_usb/android0/f_serial/transports smd,tty,hsuart - write /sys/class/android_usb/android0/f_rmnet/transports smd,bam,hsuart,hsuart - 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} - -# Fusion 2.2 composition with diag_qsc -on property:sys.usb.config=diag,diag_qsc,serial_smd,serial_tty,serial_hsuart,rmnet_hsuart,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9054 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_qsc - write /sys/class/android_usb/android0/f_serial/transports smd,tty,hsuart - write /sys/class/android_usb/android0/f_rmnet/transports smd,bam,hsuart,hsuart - 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} - -on property:vendor.usb.tethering=true - write /sys/class/net/rndis0/queues/rx-0/rps_cpus ${vendor.usb.rps_mask} - -on property:sys.usb.config=rndis - setprop sys.usb.config rndis,${persist.vendor.usb.config.extra} - -on property:sys.usb.config=rndis,none && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct F00E - write /sys/class/android_usb/android0/f_rndis/wceis 1 - write /sys/class/android_usb/android0/functions rndis - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state rndis - -on property:sys.usb.config=rndis,adb && property:sys.usb.configfs=0 - setprop sys.usb.config rndis,${persist.vendor.usb.config.extra},adb - -on property:sys.usb.config=rndis,none,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9024 - write /sys/class/android_usb/android0/f_rndis/wceis 1 - write /sys/class/android_usb/android0/functions rndis,adb - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state rndis,adb - -on property:sys.usb.config=rndis,diag && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 902C - write /sys/class/android_usb/android0/f_rndis/wceis 1 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/functions rndis,diag - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state rndis - -on property:sys.usb.config=rndis,diag,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 902D - write /sys/class/android_usb/android0/f_rndis/wceis 1 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/functions rndis,diag,adb - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state rndis,adb - -# DPL is implemented using QDSS -on property:sys.usb.config=rndis,diag,dpl && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90BF - write /sys/class/android_usb/android0/f_rndis/wceis 1 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_qdss/debug_intf 0 - write /sys/class/android_usb/android0/f_qdss/transports qti,bam2bam_ipa - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - write /sys/class/android_usb/android0/functions rndis,diag,qdss - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state rndis - -# DPL is implemented using QDSS -on property:sys.usb.config=rndis,diag,dpl,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90C0 - write /sys/class/android_usb/android0/f_rndis/wceis 1 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_qdss/debug_intf 0 - write /sys/class/android_usb/android0/f_qdss/transports qti,bam2bam_ipa - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - write /sys/class/android_usb/android0/functions rndis,diag,qdss,adb - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state rndis,adb - -on property:sys.usb.config=rndis,serial_smd && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90B3 - write /sys/class/android_usb/android0/f_rndis/wceis 1 - write /sys/class/android_usb/android0/f_serial/transports smd - write /sys/class/android_usb/android0/functions rndis,serial - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state rndis - -on property:sys.usb.config=rndis,serial_smd,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90B4 - write /sys/class/android_usb/android0/f_rndis/wceis 1 - write /sys/class/android_usb/android0/f_serial/transports smd - write /sys/class/android_usb/android0/functions rndis,serial,adb - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state rndis,adb - -on property:sys.usb.config=rndis,serial_smd,diag && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90B5 - write /sys/class/android_usb/android0/f_rndis/wceis 1 - 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/functions rndis,serial,diag - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state rndis - -on property:sys.usb.config=rndis,serial_smd,diag,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90B6 - write /sys/class/android_usb/android0/f_rndis/wceis 1 - 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/functions rndis,serial,diag,adb - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state rndis,adb - -on property:sys.usb.config=rndis,serial_cdev,diag && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90B5 - write /sys/class/android_usb/android0/f_rndis/wceis 1 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_serial/transports char_bridge - write /sys/class/android_usb/android0/functions rndis,serial,diag - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state rndis - -on property:sys.usb.config=rndis,serial_cdev,diag,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90B6 - write /sys/class/android_usb/android0/f_rndis/wceis 1 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_serial/transports char_bridge - write /sys/class/android_usb/android0/functions rndis,serial,diag,adb - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state rndis,adb - -on property:sys.usb.config=rndis,diag,diag_mdm && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9041 - write /sys/class/android_usb/android0/f_rndis/wceis 1 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/functions rndis,diag - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state rndis - -on property:sys.usb.config=rndis,diag,diag_mdm,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9042 - write /sys/class/android_usb/android0/f_rndis/wceis 1 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/functions rndis,diag,adb - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state rndis,adb - -on property:sys.usb.config=rndis,diag,diag_mdm,diag_qsc && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9086 - write /sys/class/android_usb/android0/f_rndis/wceis 1 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc - write /sys/class/android_usb/android0/functions rndis,diag - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state rndis - -on property:sys.usb.config=rndis,diag,diag_mdm,diag_qsc,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9087 - write /sys/class/android_usb/android0/f_rndis/wceis 1 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc - write /sys/class/android_usb/android0/functions rndis,diag,adb - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state rndis,adb - -on property:sys.usb.config=ptp && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 904D - 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 && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 904E - 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} - -on property:sys.usb.config=mtp && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct F003 - 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,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9039 - 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=mtp,diag && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 901B - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/functions mtp,diag - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=mtp,diag,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 903A - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/functions mtp,diag,adb - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=mtp,diag,diag_mdm && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9040 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/functions mtp,diag - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=mtp,diag,diag_mdm,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 903F - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/functions mtp,diag,adb - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=mtp,diag,diag_mdm,diag_qsc && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9088 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc - write /sys/class/android_usb/android0/functions mtp,diag - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=mtp,diag,diag_mdm,diag_qsc,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9089 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm,diag_qsc - write /sys/class/android_usb/android0/functions mtp,diag,adb - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,diag_mdm,ccid && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9045 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/functions diag,ccid - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,diag_mdm,ccid,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9044 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/functions diag,adb,ccid - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9015 - write /sys/class/android_usb/android0/functions adb,mass_storage - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -#Mass-storage only composition -on property:sys.usb.config=mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct F000 - write /sys/class/android_usb/android0/functions mass_storage - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,qdss && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 904A - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_qdss/debug_intf 1 - write /sys/class/android_usb/android0/f_qdss/transports bam - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - write /sys/class/android_usb/android0/functions diag,qdss - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,qdss,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - 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/f_qdss/debug_intf 1 - write /sys/class/android_usb/android0/f_qdss/transports bam - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - 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} - -on property:sys.usb.config=diag,diag_mdm,qdss && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9099 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_qdss/debug_intf 1 - write /sys/class/android_usb/android0/f_qdss/transports bam - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - write /sys/class/android_usb/android0/functions diag,qdss - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,diag_mdm,qdss,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9098 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_qdss/debug_intf 1 - write /sys/class/android_usb/android0/f_qdss/transports bam - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - 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} - -on property:sys.usb.config=diag,qdss,rmnet_bam && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9083 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_rmnet/transports smd,bam - write /sys/class/android_usb/android0/f_qdss/debug_intf 1 - write /sys/class/android_usb/android0/f_qdss/transports bam - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - write /sys/class/android_usb/android0/functions diag,qdss,rmnet - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,qdss,rmnet_qti_bam && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9083 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_rmnet/transports qti,bam - write /sys/class/android_usb/android0/f_qdss/debug_intf 1 - write /sys/class/android_usb/android0/f_qdss/transports bam - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - write /sys/class/android_usb/android0/functions diag,qdss,rmnet - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,qdss,rmnet_bam,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9084 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_rmnet/transports smd,bam - write /sys/class/android_usb/android0/f_qdss/debug_intf 1 - write /sys/class/android_usb/android0/f_qdss/transports bam - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - write /sys/class/android_usb/android0/functions diag,qdss,adb,rmnet - write /sys/module/dwc3/parameters/tx_fifo_resize_enable 1 - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,qdss,rmnet_qti_bam,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9084 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_rmnet/transports qti,bam - write /sys/class/android_usb/android0/f_qdss/debug_intf 1 - write /sys/class/android_usb/android0/f_qdss/transports bam - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - write /sys/class/android_usb/android0/functions diag,qdss,adb,rmnet - write /sys/module/dwc3/parameters/tx_fifo_resize_enable 1 - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,qdss,rmnet_ipa && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9083 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa - write /sys/class/android_usb/android0/f_qdss/debug_intf 1 - write /sys/class/android_usb/android0/f_qdss/transports bam - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - write /sys/class/android_usb/android0/functions diag,qdss,rmnet - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,qdss,rmnet_ipa,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9084 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa - write /sys/class/android_usb/android0/f_qdss/debug_intf 1 - write /sys/class/android_usb/android0/f_qdss/transports bam - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - write /sys/class/android_usb/android0/functions diag,qdss,adb,rmnet - write /sys/module/dwc3/parameters/tx_fifo_resize_enable 1 - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,diag_mdm,qdss,rmnet_hsic && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 909B - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic - write /sys/class/android_usb/android0/f_qdss/debug_intf 1 - write /sys/class/android_usb/android0/f_qdss/transports bam - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - write /sys/class/android_usb/android0/functions diag,qdss,rmnet - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,diag_mdm,qdss,rmnet_hsic,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 909A - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic - write /sys/class/android_usb/android0/f_qdss/debug_intf 1 - write /sys/class/android_usb/android0/f_qdss/transports bam - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - write /sys/class/android_usb/android0/functions diag,qdss,adb,rmnet - write /sys/module/dwc3/parameters/tx_fifo_resize_enable 1 - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,diag_mdm,qdss_apq,qdss_mdm,rmnet_hsic && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90A3 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic - write /sys/class/android_usb/android0/f_qdss/debug_intf 0 - write /sys/class/android_usb/android0/f_qdss/transports bam,hsic - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam,qdss_hsic - write /sys/class/android_usb/android0/functions diag,qdss,rmnet - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,diag_mdm,qdss_apq,qdss_mdm,rmnet_hsic,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90A2 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_rmnet/transports hsic,hsic - write /sys/class/android_usb/android0/f_qdss/debug_intf 0 - write /sys/class/android_usb/android0/f_qdss/transports bam,hsic - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam,qdss_hsic - write /sys/class/android_usb/android0/functions diag,qdss,adb,rmnet - write /sys/module/dwc3/parameters/tx_fifo_resize_enable 1 - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=rndis,diag,qdss && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9081 - write /sys/class/android_usb/android0/f_rndis/wceis 1 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_qdss/debug_intf 1 - write /sys/class/android_usb/android0/f_qdss/transports bam - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - write /sys/class/android_usb/android0/functions rndis,diag,qdss - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=rndis,diag,qdss,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 9082 - write /sys/class/android_usb/android0/f_rndis/wceis 1 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_qdss/debug_intf 1 - write /sys/class/android_usb/android0/f_qdss/transports bam - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - write /sys/class/android_usb/android0/functions rndis,diag,qdss,adb - write /sys/module/dwc3/parameters/tx_fifo_resize_enable 1 - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -# same as 9025, plus data packet logging (DPL) using QDSS -on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_ipa,mass_storage,dpl,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90AD - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_serial/transports smd,tty -# DPL is implemented using QDSS - write /sys/class/android_usb/android0/f_qdss/debug_intf 0 - write /sys/class/android_usb/android0/f_qdss/transports qti,bam2bam_ipa - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - 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,qdss - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -# same as 9026, plus data packet logging (DPL) -on property:sys.usb.config=diag,serial_smd,serial_tty,rmnet_ipa,mass_storage,dpl && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90B0 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_serial/transports smd,tty -# DPL is implemented using QDSS - write /sys/class/android_usb/android0/f_qdss/debug_intf 0 - write /sys/class/android_usb/android0/f_qdss/transports qti,bam2bam_ipa - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa - write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage,qdss - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,serial_cdev,serial_tty,rmnet_ipa,mass_storage,dpl,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90AD - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_serial/transports char_bridge,tty -# DPL is implemented using QDSS - write /sys/class/android_usb/android0/f_qdss/debug_intf 0 - write /sys/class/android_usb/android0/f_qdss/transports qti,bam2bam_ipa - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - 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,qdss - 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_ipa,mass_storage,dpl && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90B0 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_serial/transports char_bridge,tty -# DPL is implemented using QDSS - write /sys/class/android_usb/android0/f_qdss/debug_intf 0 - write /sys/class/android_usb/android0/f_qdss/transports qti,bam2bam_ipa - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa - write /sys/class/android_usb/android0/functions diag,serial,rmnet,mass_storage,qdss - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=ncm && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 0525 - write /sys/class/android_usb/android0/idProduct A4A1 - write /sys/class/android_usb/android0/functions ncm - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=ncm,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 908C - write /sys/class/android_usb/android0/functions ncm,adb - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=charging && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct F006 - write /sys/class/android_usb/android0/functions charging - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,serial_smd,rmnet_qti_bam,dpl_qti_bam_dmux && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90B7 - 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/f_qdss/transports qti,bam_dmux - write /sys/class/android_usb/android0/functions diag,serial,rmnet,qdss - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,serial_smd,rmnet_qti_bam,dpl_qti_bam_dmux,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90B8 - 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/f_qdss/transports qti,bam_dmux - write /sys/class/android_usb/android0/functions diag,serial,rmnet,qdss,adb - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,diag_cnss,serial_smd,serial_tty,rmnet_bam,mass_storage,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90B2 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_cnss - write /sys/class/android_usb/android0/f_serial/transports smd,tty - write /sys/class/android_usb/android0/f_rmnet/transports smd,bam - write /sys/class/android_usb/android0/functions diag,diag_cnss,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,diag_cnss,serial_smd,serial_tty,rmnet_bam,mass_storage && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90B3 - write /sys/class/android_usb/android0/f_diag/clients diag,diag_cnss - write /sys/class/android_usb/android0/f_serial/transports smd,tty - write /sys/class/android_usb/android0/f_rmnet/transports smd,bam - write /sys/class/android_usb/android0/functions diag,diag_cnss,serial,rmnet,mass_storage - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=midi && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90BA - write /sys/class/android_usb/android0/functions midi - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=midi,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90BB - write /sys/class/android_usb/android0/functions midi,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,dpl && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90B7 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_serial/transports smd -# DPL is implemented using QDSS - write /sys/class/android_usb/android0/f_qdss/debug_intf 0 - write /sys/class/android_usb/android0/f_qdss/transports qti,bam2bam_ipa - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa - write /sys/class/android_usb/android0/functions diag,serial,rmnet,qdss - 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,dpl,adb && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/iSerial ${ro.serialno} - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90B8 - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/f_serial/transports smd -# DPL is implemented using QDSS - write /sys/class/android_usb/android0/f_qdss/debug_intf 0 - write /sys/class/android_usb/android0/f_qdss/transports qti,bam2bam_ipa - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_bam - write /sys/class/android_usb/android0/f_rmnet/transports qti,bam2bam_ipa - write /sys/class/android_usb/android0/functions diag,serial,rmnet,qdss,adb - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,diag_mdm,serial_tty,rmnet_qti_ether,dpl_ether,mass_storage,adb - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90AE - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_serial/transports tty - write /sys/class/android_usb/android0/f_rmnet/transports qti,ether - write /sys/class/android_usb/android0/f_qdss/debug_intf 0 - write /sys/class/android_usb/android0/f_qdss/transports qti,ether - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_dpl - write /sys/class/android_usb/android0/functions diag,adb,serial,rmnet,qdss,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,diag_mdm,serial_tty,rmnet_qti_ether,dpl_ether,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 90AF - write /sys/class/android_usb/android0/f_diag/clients diag,diag_mdm - write /sys/class/android_usb/android0/f_serial/transports tty - write /sys/class/android_usb/android0/f_rmnet/transports qti,ether - write /sys/class/android_usb/android0/f_qdss/debug_intf 0 - write /sys/class/android_usb/android0/f_qdss/transports qti,ether - write /sys/class/android_usb/android0/f_qdss/transport_names qdss_dpl - write /sys/class/android_usb/android0/functions diag,serial,rmnet,qdss,mass_storage - write /sys/class/android_usb/android0/enable 1 - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,adb,uac2 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90CA - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/functions diag,adb,uac2_func - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,adb,video && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90CB - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/functions diag,adb,video - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} - -on property:sys.usb.config=diag,adb,uac2,video && property:sys.usb.configfs=0 - write /sys/class/android_usb/android0/enable 0 - write /sys/class/android_usb/android0/idVendor 05C6 - write /sys/class/android_usb/android0/idProduct 90CC - write /sys/class/android_usb/android0/f_diag/clients diag - write /sys/class/android_usb/android0/functions diag,adb,uac2_func,video - write /sys/class/android_usb/android0/enable 1 - start adbd - setprop sys.usb.state ${sys.usb.config} diff --git a/sdm660.mk b/sdm660.mk index c8cf13cd..961de92b 100644 --- a/sdm660.mk +++ b/sdm660.mk @@ -307,8 +307,6 @@ PRODUCT_PACKAGES += \ init.qti.dcvs.sh \ init.qcom.rc \ init.qcom.sh \ - init.qcom.usb.rc \ - init.qcom.usb.sh \ init.recovery.qcom.rc \ init.target.rc \ init.xiaomi_parts.rc \ @@ -587,6 +585,13 @@ PRODUCT_COPY_FILES += \ PRODUCT_PACKAGES += \ android.hardware.usb@1.0-service.xiaomi_sdm660 +PRODUCT_PACKAGES += \ + init.qcom.usb.rc \ + init.qcom.usb.sh + +PRODUCT_SOONG_NAMESPACES += \ + vendor/qcom/opensource/usb/etc + # Vibrator PRODUCT_PACKAGES += \ vendor.qti.hardware.vibrator.service