diff options
Diffstat (limited to 'rootdir/etc/init.qcom.usb.rc')
-rwxr-xr-x | rootdir/etc/init.qcom.usb.rc | 163 |
1 files changed, 48 insertions, 115 deletions
diff --git a/rootdir/etc/init.qcom.usb.rc b/rootdir/etc/init.qcom.usb.rc index ee1cc63..9fe0e25 100755 --- a/rootdir/etc/init.qcom.usb.rc +++ b/rootdir/etc/init.qcom.usb.rc @@ -28,10 +28,6 @@ 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 @@ -44,118 +40,55 @@ service qcom-usb-sh /system/bin/sh /init.qcom.usb.sh user root oneshot -# 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} +# 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 write /sys/class/android_usb/android0/enable 0 write /sys/class/android_usb/android0/idVendor 05C6 |