diff options
author | Sam Protsenko <semen.protsenko@linaro.org> | 2018-01-12 17:02:01 -0600 |
---|---|---|
committer | Praneeth Bajjuri <praneeth@ti.com> | 2018-01-12 17:02:32 -0600 |
commit | 626cf2cc64beca480fe6238f613f6d9d7b9bd781 (patch) | |
tree | 1f1131910842427f0e09614e36c8e71573ef5169 | |
parent | a07158ca417cca2b7d02d8a779e0748d213aa502 (diff) | |
download | am57xevm-d-oreo-r6-core-k49-release.tar.gz |
am57xevm: Sync USB init script with Hikeyd-oreo-r6-core-released-oreo-r6-core-k49-release
Sync USB init script with Hikey init.common.usb.rc. This patch fixes
ADB (when using Android-O with kernel v4.9). Next changes are made:
- Add sys.usb.ffs.mtp.ready=1 related changes from Hikey file
("Switch to FunctionFS userspace interface" patch)
- Read UDC from /sys/class/udc/ at runtime (remove setting
sys.usb.controller property manually, it's already done at runtime)
- Remove "on adbd=stopped" trigger: it's already done in
system/core/rootdir/init.usb.configfs.rc file
Note that there is no need to revert this kernel patch anymore:
usb: gadget: f_fs: Fix wrong check on reserved1 of OS_DESC_EXT_COMPAT
That was a very old bug related to USB os_desc and fixed in AOSP since
then. USB Gadgets are working fine on Android-O with v4.9 kernel now.
Change-Id: Ic726e6989633661a8af75b24234caae299c4839e
Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
Signed-off-by: Praneeth Bajjuri <praneeth@ti.com>
-rw-r--r-- | init.am57xevmboard.usb.rc | 55 |
1 files changed, 25 insertions, 30 deletions
diff --git a/init.am57xevmboard.usb.rc b/init.am57xevmboard.usb.rc index 501f2ab..7e1e068 100644 --- a/init.am57xevmboard.usb.rc +++ b/init.am57xevmboard.usb.rc @@ -1,56 +1,51 @@ on boot mount configfs none /config mkdir /config/usb_gadget/g1 0770 shell shell - write /config/usb_gadget/g1/idVendor 0x0451 - write /config/usb_gadget/g1/idProduct 0xD101 mkdir /config/usb_gadget/g1/strings/0x409 0770 shell shell + write /config/usb_gadget/g1/bcdUSB 0x0200 + write /config/usb_gadget/g1/idVendor 0x0451 + write /config/usb_gadget/g1/bcdDevice 0x0223 + 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/strings/0x409/serialnumber ${ro.serialno} + mkdir /config/usb_gadget/g1/functions/ffs.adb + mkdir /config/usb_gadget/g1/functions/ffs.mtp 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/configs/b.1/strings/0x409/configuration "Conf 1" + write /config/usb_gadget/g1/os_desc/b_vendor_code 0x1 + write /config/usb_gadget/g1/os_desc/qw_sign "MSFT100" write /config/usb_gadget/g1/configs/b.1/MaxPower 120 - - # Create adb+ffs gadget function - mkdir /config/usb_gadget/g1/functions/ffs.adb 0770 shell shell - mkdir /dev/usb-ffs 0770 shell shell + mkdir /dev/usb-ffs 0775 shell shell mkdir /dev/usb-ffs/adb 0770 shell shell mount functionfs adb /dev/usb-ffs/adb uid=2000,gid=2000 - - # Create MTP and PTP functions - mkdir /config/usb_gadget/g1/functions/mtp.gs0 0770 shell shell - mkdir /config/usb_gadget/g1/functions/ptp.gs1 0770 shell shell - - setprop sys.usb.controller 488d0000.usb + mkdir /dev/usb-ffs/mtp 0770 mtp mtp + mount functionfs mtp /dev/usb-ffs/mtp rmode=0770,fmode=0660,uid=1024,gid=1024,no_disconnect=1 + setprop sys.usb.mtp.device_type 3 setprop sys.usb.configfs 1 + symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 on property:sys.usb.config=none && property:sys.usb.configfs=1 write /config/usb_gadget/g1/os_desc/use 0 - setprop sys.usb.ffs.ready 0 -on property:init.svc.adbd=stopped - setprop sys.usb.ffs.ready 0 - -on property:sys.usb.config=mtp && property:sys.usb.configfs=1 - write /config/usb_gadget/g1/functions/mtp.gs0/os_desc/interface.MTP/compatible_id "MTP" - write /config/usb_gadget/g1/os_desc/use 1 +on property:sys.usb.ffs.mtp.ready=1 && property:sys.usb.config=mtp && property:sys.usb.configfs=1 write /config/usb_gadget/g1/idProduct 0xD108 + write /config/usb_gadget/g1/os_desc/use 1 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 -on property:sys.usb.config=mtp,adb && property:sys.usb.configfs=1 - write /config/usb_gadget/g1/functions/mtp.gs0/os_desc/interface.MTP/compatible_id "MTP" -# write /config/usb_gadget/g1/os_desc/use 1 +on property:sys.usb.ffs.ready=1 && property:sys.usb.ffs.mtp.ready=1 && property:sys.usb.config=mtp,adb && property:sys.usb.configfs=1 write /config/usb_gadget/g1/idProduct 0xD109 - -on property:sys.usb.config=ptp && property:sys.usb.configfs=1 - write /config/usb_gadget/g1/functions/ptp.gs1/os_desc/interface.MTP/compatible_id "PTP" write /config/usb_gadget/g1/os_desc/use 1 - write /config/usb_gadget/g1/idProduct 0xD10D + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 -on property:sys.usb.config=ptp,adb && property:sys.usb.configfs=1 - write /config/usb_gadget/g1/functions/ptp.gs1/os_desc/interface.MTP/compatible_id "PTP" +on property:sys.usb.ffs.mtp.ready=1 && property:sys.usb.config=ptp && property:sys.usb.configfs=1 + write /config/usb_gadget/g1/idProduct 0xD10D write /config/usb_gadget/g1/os_desc/use 1 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 + +on property:sys.usb.ffs.ready=1 && property:sys.usb.ffs.mtp.ready=1 && property:sys.usb.config=ptp,adb && property:sys.usb.configfs=1 write /config/usb_gadget/g1/idProduct 0xD10E + write /config/usb_gadget/g1/os_desc/use 1 + symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 on property:sys.usb.config=adb && property:sys.usb.configfs=1 write /config/usb_gadget/g1/idProduct 0xD101 |