diff options
Diffstat (limited to 'rootdir/etc/init.qcom.usb.rc')
-rwxr-xr-x | rootdir/etc/init.qcom.usb.rc | 163 |
1 files changed, 115 insertions, 48 deletions
diff --git a/rootdir/etc/init.qcom.usb.rc b/rootdir/etc/init.qcom.usb.rc index 9fe0e25..ee1cc63 100755 --- a/rootdir/etc/init.qcom.usb.rc +++ b/rootdir/etc/init.qcom.usb.rc @@ -28,6 +28,10 @@ on init write /sys/class/android_usb/android0/f_rndis/wceis 1 write /sys/class/android_usb/android0/iSerial ${ro.serialno} + write /sys/class/android_usb/android0/iManufacturer ShenQi Inc. + write /sys/class/android_usb/android0/iProduct Z2-PLUS + write /sys/class/android_usb/android0/f_mass_storage/inquiry_string "ShenQi Z2-PLUS 0100" + write /sys/class/android_usb/android0/f_mass_storage/lun/file "/system/etc/cdrom_install.iso" on fs mkdir /dev/usb-ffs 0770 shell shell @@ -40,55 +44,118 @@ service qcom-usb-sh /system/bin/sh /init.qcom.usb.sh user root oneshot -# 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 + write /sys/class/android_usb/android0/enable 0 + write /sys/class/android_usb/android0/idVendor 05C6 + write /sys/class/android_usb/android0/idProduct 1 + write /sys/class/android_usb/android0/f_diag/clients diag + write /sys/class/android_usb/android0/f_serial/transports tty,tty,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=mass_storage + write /sys/class/android_usb/android0/enable 0 + write /sys/class/android_usb/android0/idVendor 2B4C + write /sys/class/android_usb/android0/idProduct 1016 + 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_mass_storage/lun/file "/system/etc/cdrom_install.iso" + write /sys/class/android_usb/android0/functions diag,serial,mass_storage + write /sys/class/android_usb/android0/enable 1 + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=mass_storage,adb + write /sys/class/android_usb/android0/enable 0 + write /sys/class/android_usb/android0/idVendor 2B4C + write /sys/class/android_usb/android0/idProduct 1017 + 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_mass_storage/lun/file "/system/etc/cdrom_install.iso" + write /sys/class/android_usb/android0/functions adb,diag,serial,mass_storage + write /sys/class/android_usb/android0/enable 1 + start adbd + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=rndis + write /sys/class/android_usb/android0/enable 0 + write /sys/class/android_usb/android0/idVendor 2B4C + write /sys/class/android_usb/android0/idProduct 1018 + write /sys/class/android_usb/android0/functions rndis + write /sys/class/android_usb/android0/enable 1 + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=rndis,adb + write /sys/class/android_usb/android0/enable 0 + write /sys/class/android_usb/android0/idVendor 2B4C + write /sys/class/android_usb/android0/idProduct 1019 + write /sys/class/android_usb/android0/functions rndis,adb + write /sys/class/android_usb/android0/enable 1 + start adbd + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=mtp + write /sys/class/android_usb/android0/enable 0 + write /sys/class/android_usb/android0/idVendor 2B4C + write /sys/class/android_usb/android0/idProduct 101A + write /sys/class/android_usb/android0/f_mass_storage/lun/file "/system/etc/cdrom_install.iso" + write /sys/class/android_usb/android0/functions mtp,mass_storage + write /sys/class/android_usb/android0/enable 1 + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=mtp,adb + write /sys/class/android_usb/android0/enable 0 + write /sys/class/android_usb/android0/idVendor 2B4C + write /sys/class/android_usb/android0/idProduct 101B + write /sys/class/android_usb/android0/f_mass_storage/lun/file "/system/etc/cdrom_install.iso" + write /sys/class/android_usb/android0/functions mtp,mass_storage,adb + write /sys/class/android_usb/android0/enable 1 + start adbd + setprop sys.usb.state ${sys.usb.config} + +on property:sys.usb.config=ptp + write /sys/class/android_usb/android0/enable 0 + write /sys/class/android_usb/android0/idVendor 2B4C + write /sys/class/android_usb/android0/idProduct 101C + 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 + write /sys/class/android_usb/android0/enable 0 + write /sys/class/android_usb/android0/idVendor 2B4C + write /sys/class/android_usb/android0/idProduct 101D + 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=rndis,diag + write /sys/class/android_usb/android0/enable 0 + write /sys/class/android_usb/android0/idVendor 05C6 + write /sys/class/android_usb/android0/idProduct 90B5 + 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 ${sys.usb.config} + +on property:sys.usb.config=rndis,diag,adb + write /sys/class/android_usb/android0/enable 0 + write /sys/class/android_usb/android0/idVendor 05C6 + write /sys/class/android_usb/android0/idProduct 90B6 + 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 ${sys.usb.config} + +on property:sys.usb.tethering=true + write /sys/class/net/rndis0/queues/rx-0/rps_cpus ${sys.usb.rps_mask} + on property:sys.usb.config=diag,serial_tty,serial_smd write /sys/class/android_usb/android0/enable 0 write /sys/class/android_usb/android0/idVendor 05C6 |