The cancelling behavior in MTP has two behaviors. 1. cancel requests one by one 2. batch cancel all requests This patch will set the property to true to enable batch cancel all requests. Bug: 181729410 Test: build pass Change-Id: I546dad88e5e0c72c9bafdaded8e9026deccfbb88
254 lines
12 KiB
Text
254 lines
12 KiB
Text
on early-boot
|
|
mkdir /config/usb_gadget/g1
|
|
mkdir /config/usb_gadget/g1/strings/0x409
|
|
mkdir /config/usb_gadget/g1/configs/b.1
|
|
write /config/usb_gadget/g1/idVendor 0x18d1
|
|
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}
|
|
write /config/usb_gadget/g1/configs/b.1/MaxPower 0x384
|
|
write /config/usb_gadget/g1/os_desc/b_vendor_code 0x1
|
|
write /config/usb_gadget/g1/os_desc/qw_sign "MSFT100"
|
|
|
|
# ffs function
|
|
mkdir /config/usb_gadget/g1/functions/ffs.adb 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/functions/ffs.mtp
|
|
mkdir /config/usb_gadget/g1/functions/ffs.ptp
|
|
mkdir /dev/usb-ffs 0775 shell shell
|
|
mkdir /dev/usb-ffs/adb 0770 shell shell
|
|
mkdir /dev/usb-ffs/mtp 0770 mtp mtp
|
|
mkdir /dev/usb-ffs/ptp 0770 mtp mtp
|
|
mount functionfs adb /dev/usb-ffs/adb rmode=0770,fmode=0660,uid=2000,gid=2000,no_disconnect=1
|
|
mount functionfs mtp /dev/usb-ffs/mtp rmode=0770,fmode=0660,uid=1024,gid=1024,no_disconnect=1
|
|
mount functionfs ptp /dev/usb-ffs/ptp rmode=0770,fmode=0660,uid=1024,gid=1024,no_disconnect=1
|
|
setprop sys.usb.mtp.device_type 3
|
|
setprop sys.usb.mtp.batchcancel true
|
|
symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1
|
|
|
|
# mtp function
|
|
mkdir /config/usb_gadget/g1/functions/mtp.gs0
|
|
|
|
# ptp function
|
|
mkdir /config/usb_gadget/g1/functions/ptp.gs1
|
|
|
|
# accessory function
|
|
mkdir /config/usb_gadget/g1/functions/accessory.gs2
|
|
|
|
# audio_source function
|
|
mkdir /config/usb_gadget/g1/functions/audio_source.gs3
|
|
|
|
# rndis function
|
|
mkdir /config/usb_gadget/g1/functions/rndis.gs4
|
|
# Modify class/subclass/protocol for rndis.gs4
|
|
# Remote NDIS: Class: Wireless Controller (0xe0), Subclass: 0x1, Protocol: 0x3
|
|
write /config/usb_gadget/g1/functions/rndis.gs4/class e0
|
|
write /config/usb_gadget/g1/functions/rndis.gs4/subclass 01
|
|
write /config/usb_gadget/g1/functions/rndis.gs4/protocol 03
|
|
write /config/usb_gadget/g1/functions/rndis.gs4/os_desc/interface.ncm/compatible_id RNDIS
|
|
write /config/usb_gadget/g1/functions/rndis.gs4/ifname rndis%d
|
|
setprop vendor.usb.rndis.config rndis.gs4
|
|
|
|
# midi function
|
|
mkdir /config/usb_gadget/g1/functions/midi.gs5
|
|
|
|
# acm function
|
|
mkdir /config/usb_gadget/g1/functions/acm.gs6
|
|
|
|
# dm function
|
|
mkdir /config/usb_gadget/g1/functions/dm.gs7
|
|
|
|
# uts function
|
|
mkdir /config/usb_gadget/g1/functions/uts.gs8
|
|
|
|
# ncm function
|
|
mkdir /config/usb_gadget/g1/functions/ncm.gs9
|
|
write /config/usb_gadget/g1/functions/ncm.gs9/os_desc/interface.ncm/compatible_id WINNCM
|
|
write /config/usb_gadget/g1/functions/ncm.gs9/ifname ncm%d
|
|
|
|
# etr_miu function
|
|
mkdir /config/usb_gadget/g1/functions/etr_miu.gs11
|
|
|
|
# disable permission change. TODO (b/206902205): add back later
|
|
# setprop vendor.usb.functions.ready 1
|
|
|
|
on boot
|
|
write /config/usb_gadget/g1/bcdDevice 0x0510
|
|
# Use USB Gadget HAL
|
|
setprop sys.usb.configfs 2
|
|
|
|
on property:sys.usb.config=accessory && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x2D00
|
|
write /config/usb_gadget/g1/idVendor 0x18D1
|
|
|
|
on property:sys.usb.ffs.ready=1 && property:sys.usb.config=accessory,adb && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x2D01
|
|
write /config/usb_gadget/g1/idVendor 0x18D1
|
|
|
|
on property:sys.usb.config=none && property:sys.usb.configfs=1
|
|
rm /config/usb_gadget/g1/configs/b.1/f4
|
|
|
|
on property:sys.usb.config=mtp && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x6860
|
|
write /config/usb_gadget/g1/idVendor 0x04E8
|
|
|
|
on property:sys.usb.config=ptp && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x6860
|
|
write /config/usb_gadget/g1/idVendor 0x04E8
|
|
|
|
on property:sys.usb.ffs.ready=1 && property:sys.usb.config=adb && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x6860
|
|
write /config/usb_gadget/g1/idVendor 0x04E8
|
|
|
|
on property:sys.usb.ffs.ready=1 && property:sys.usb.config=mtp,adb && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x6860
|
|
write /config/usb_gadget/g1/idVendor 0x04E8
|
|
|
|
on property:sys.usb.config=rndis && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x6863
|
|
write /config/usb_gadget/g1/idVendor 0x04E8
|
|
|
|
on property:sys.usb.ffs.ready=1 && property:sys.usb.config=rndis,adb && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x6864
|
|
write /config/usb_gadget/g1/idVendor 0x04E8
|
|
|
|
on property:sys.usb.config=ptp && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x6865
|
|
write /config/usb_gadget/g1/idVendor 0x04E8
|
|
|
|
on property:sys.usb.ffs.ready=1 && property:sys.usb.config=ptp,adb && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x6866
|
|
write /config/usb_gadget/g1/idVendor 0x04E8
|
|
|
|
# Enable dm,acm,adb functions once in factory build
|
|
on property:ro.vendor.factory=1 && property:sys.usb.configfs=1 && property:sys.boot_completed=1
|
|
setprop sys.usb.config dm,acm,adb
|
|
|
|
# We introduce lsi mode to call sys.usb.config none
|
|
on property:sys.usb.config=rndis,acm,dm,adb && property:sys.usb.configfs=1
|
|
setprop sys.usb.config "none"
|
|
setprop sys.usb.config "lsi-rndis,acm,dm,adb"
|
|
|
|
on property:sys.usb.config=lsi-rndis,acm,dm,adb && property:sys.usb.configfs=1
|
|
start adbd
|
|
|
|
on property:sys.usb.ffs.ready=1 && property:sys.usb.config=lsi-rndis,acm,dm,adb && property:sys.usb.configfs=1
|
|
mkdir /config/usb_gadget/g1/functions/rndis.gs4
|
|
write /config/usb_gadget/g1/idProduct 0x6862
|
|
write /config/usb_gadget/g1/idVendor 0x04E8
|
|
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_acm_dm_adb"
|
|
symlink /config/usb_gadget/g1/functions/rndis.gs4 /config/usb_gadget/g1/configs/b.1/f1
|
|
symlink /config/usb_gadget/g1/functions/acm.gs6 /config/usb_gadget/g1/configs/b.1/f2
|
|
symlink /config/usb_gadget/g1/functions/dm.gs7 /config/usb_gadget/g1/configs/b.1/f3
|
|
symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f4
|
|
write /config/usb_gadget/g1/UDC ${sys.usb.controller}
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
on property:sys.usb.config=dm,acm,adb && property:sys.usb.configfs=1
|
|
setprop sys.usb.config "none"
|
|
setprop sys.usb.config "lsi-dm,acm,adb"
|
|
|
|
on property:sys.usb.config=lsi-dm,acm,adb && property:sys.usb.configfs=1
|
|
start adbd
|
|
|
|
on property:sys.usb.ffs.ready=1 && property:sys.usb.config=lsi-dm,acm,adb && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x685D
|
|
write /config/usb_gadget/g1/idVendor 0x04E8
|
|
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "dm_acm_adb"
|
|
symlink /config/usb_gadget/g1/functions/dm.gs7 /config/usb_gadget/g1/configs/b.1/f1
|
|
symlink /config/usb_gadget/g1/functions/acm.gs6 /config/usb_gadget/g1/configs/b.1/f2
|
|
symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f3
|
|
write /config/usb_gadget/g1/UDC ${sys.usb.controller}
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
on property:sys.usb.config=dm,acm,uts,adb && property:sys.usb.configfs=1
|
|
setprop sys.usb.config "none"
|
|
setprop sys.usb.config "lsi-dm,acm,uts,adb"
|
|
|
|
on property:sys.usb.config=lsi-dm,acm,uts,adb && property:sys.usb.configfs=1
|
|
start adbd
|
|
|
|
on property:sys.usb.ffs.ready=1 && property:sys.usb.config=lsi-dm,acm,uts,adb && property:sys.usb.configfs=1
|
|
mkdir /config/usb_gadget/g1/functions/rndis.gs4
|
|
write /config/usb_gadget/g1/idProduct 0x6862
|
|
write /config/usb_gadget/g1/idVendor 0x04E8
|
|
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "dm_acm_uts_adb"
|
|
symlink /config/usb_gadget/g1/functions/dm.gs7 /config/usb_gadget/g1/configs/b.1/f1
|
|
symlink /config/usb_gadget/g1/functions/acm.gs6 /config/usb_gadget/g1/configs/b.1/f2
|
|
symlink /config/usb_gadget/g1/functions/uts.gs8 /config/usb_gadget/g1/configs/b.1/f3
|
|
symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f4
|
|
write /config/usb_gadget/g1/UDC ${sys.usb.controller}
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
on property:sys.usb.config=mass_storage && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x685B
|
|
write /config/usb_gadget/g1/idVendor 0x04E8
|
|
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mass_storage"
|
|
symlink /config/usb_gadget/g1/functions/mass_storage.gs9 /config/usb_gadget/g1/configs/b.1/f1
|
|
write /config/usb_gadget/g1/UDC ${sys.usb.controller}
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
on property:sys.usb.config=mass_storage,adb && property:sys.usb.configfs=1
|
|
start adbd
|
|
|
|
on property:sys.usb.ffs.ready=1 && property:sys.usb.config=mass_storage,adb && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x685E
|
|
write /config/usb_gadget/g1/idVendor 0x04E8
|
|
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mass_storage_adb"
|
|
symlink /config/usb_gadget/g1/functions/mass_storage.gs9 /config/usb_gadget/g1/configs/b.1/f1
|
|
symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2
|
|
write /config/usb_gadget/g1/UDC ${sys.usb.controller}
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
on property:sys.usb.config=mass_storage,acm && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x685E
|
|
write /config/usb_gadget/g1/idVendor 0x04E8
|
|
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mass_storage_acm"
|
|
symlink /config/usb_gadget/g1/functions/mass_storage.gs9 /config/usb_gadget/g1/configs/b.1/f1
|
|
symlink /config/usb_gadget/g1/functions/acm.gs6 /config/usb_gadget/g1/configs/b.1/f2
|
|
write /config/usb_gadget/g1/UDC ${sys.usb.controller}
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
on property:sys.usb.config=rndis,diag && property:sys.usb.configfs=1
|
|
write /sys/class/android_usb/android0/enable 0
|
|
write /sys/class/android_usb/android0/idVendor 04e8
|
|
write /sys/class/android_usb/android0/idProduct 6862
|
|
write /sys/class/android_usb/android0/f_diag/clients diag_mdm
|
|
write /sys/class/android_usb/android0/functions ${sys.usb.config}
|
|
write /sys/class/android_usb/android0/enable 1
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
on property:sys.usb.config=rndis,diag && property:sys.usb.configfs=1
|
|
mkdir /config/usb_gadget/g1/functions/rndis.gs4
|
|
write /config/usb_gadget/g1/idProduct 0x6862
|
|
write /config/usb_gadget/g1/idVendor 0x04E8
|
|
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_diag"
|
|
symlink /config/usb_gadget/g1/functions/rndis.gs4 /config/usb_gadget/g1/configs/b.1/f1
|
|
symlink /config/usb_gadget/g1/functions/diag.gs10 /config/usb_gadget/g1/configs/b.1/f2
|
|
write /config/usb_gadget/g1/UDC ${sys.usb.controller}
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
on property:sys.usb.config=diag,acm && property:sys.usb.configfs=1
|
|
write /config/usb_gadget/g1/idProduct 0x685d
|
|
write /config/usb_gadget/g1/idVendor 0x04E8
|
|
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "diag_acm"
|
|
symlink /config/usb_gadget/g1/functions/diag.gs10 /config/usb_gadget/g1/configs/b.1/f1
|
|
symlink /config/usb_gadget/g1/functions/acm.gs6 /config/usb_gadget/g1/configs/b.1/f2
|
|
write /config/usb_gadget/g1/UDC ${sys.usb.controller}
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
on property:sys.usb.config=rndis,acm,diag && property:sys.usb.configfs=1
|
|
mkdir /config/usb_gadget/g1/functions/rndis.gs4
|
|
write /config/usb_gadget/g1/idProduct 0x6864
|
|
write /config/usb_gadget/g1/idVendor 0x04E8
|
|
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "rndis_acm_diag"
|
|
symlink /config/usb_gadget/g1/functions/rndis.gs4 /config/usb_gadget/g1/configs/b.1/f1
|
|
symlink /config/usb_gadget/g1/functions/acm.gs6 /config/usb_gadget/g1/configs/b.1/f2
|
|
symlink /config/usb_gadget/g1/functions/diag.gs10 /config/usb_gadget/g1/configs/b.1/f3
|
|
write /config/usb_gadget/g1/UDC ${sys.usb.controller}
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
on property:vendor.usb.config=*
|
|
start usbd
|
|
|
|
on property:persist.vendor.usb.usbradio.config=*
|
|
start usbd
|