usb: Enable midi function in charger mode
It needs a USB function in charger mode to set the charging current to
500mA/900mA.
Bug: 188744218
Test: charging at 900mA in charger mode
Signed-off-by: Kyle Tso <kyletso@google.com>
Change-Id: I95c98ecec30dd4394228f7290412c303771a3158
diff --git a/conf/init.gs101.usb.rc b/conf/init.gs101.usb.rc
index f0d671c..b8ffc0a 100644
--- a/conf/init.gs101.usb.rc
+++ b/conf/init.gs101.usb.rc
@@ -84,3 +84,30 @@
on property:persist.vendor.usb.usbradio.config=*
start usbd
+
+on charger
+ 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/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"
+ write /config/usb_gadget/g1/bcdDevice 0x0510
+ mkdir /config/usb_gadget/g1/functions/midi.gs5
+ symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1
+ setprop sys.usb.controller "11110000.dwc3"
+ setprop sys.usb.configfs 1
+
+on property:ro.bootmode=charger
+ setprop sys.usb.config midi
+
+on property:sys.usb.config=midi && property:sys.usb.configfs=1
+ write /config/usb_gadget/g1/idVendor 0x18d1
+ write /config/usb_gadget/g1/idProduct 0x4eea
+ write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "midi"
+ symlink /config/usb_gadget/g1/functions/midi.gs5 /config/usb_gadget/g1/configs/b.1/f1
+ write /config/usb_gadget/g1/UDC ${sys.usb.controller}
+ setprop sys.usb.state ${sys.usb.config}