Path: blob/next/external/packages/bsp/sun60iw2/etc/adb_conf.sh
18131 views
#!/bin/bash12echo usb_device > /sys/devices/platform/soc@3000000/10.usbc0/otg_role34disable_udc="/etc/.disable_udc"5udc_config=/sys/kernel/config/usb_gadget/g1/UDC67function enable_udc(){8while [ 1 ];do9udc=`ls /sys/class/udc 2>/dev/null`10isudc=`cat $udc_config 2>/dev/null`11if [ "x$isudc" = "x" ] && [ -f $udc_config ]; then12echo $udc > $udc_config13fi14sleep 115if [ -f $disable_udc ];then16rm $disable_udc17break18fi19done20}2122function start_adb(){23serialnumber=$124if [ "x$serialnumber" = "x" ];then25serialnumber="0402101560"26fi27printf "Starting adb "28# for adbd compatibilities29mkdir -p /system/30mkdir -p /system/bin31if [ ! -f /system/bin/sh ];then32ln -s /bin/sh /system/bin/sh33fi3435# config ptmx36mkdir -p /dev/pts37mount -t devpts none /dev/pts3839# config adb function40mount -t configfs none /sys/kernel/config > /dev/null 2>&141mkdir -p /sys/kernel/config/usb_gadget/g142echo "0x18d1" > /sys/kernel/config/usb_gadget/g1/idVendor43echo "0x0002" > /sys/kernel/config/usb_gadget/g1/idProduct44mkdir -p /sys/kernel/config/usb_gadget/g1/strings/0x40945echo "$serialnumber" > /sys/kernel/config/usb_gadget/g1/strings/0x409/serialnumber46echo "Google.Inc" > /sys/kernel/config/usb_gadget/g1/strings/0x409/manufacturer47echo "Configfs ffs gadget" > /sys/kernel/config/usb_gadget/g1/strings/0x409/product48mkdir -p /sys/kernel/config/usb_gadget/g1/functions/ffs.adb49mkdir -p /sys/kernel/config/usb_gadget/g1/configs/c.150mkdir -p /sys/kernel/config/usb_gadget/g1/configs/c.1/strings/0x40951echo 0xc0 > /sys/kernel/config/usb_gadget/g1/configs/c.1/bmAttributes52echo 500 > /sys/kernel/config/usb_gadget/g1/configs/c.1/MaxPower53ln -s /sys/kernel/config/usb_gadget/g1/functions/ffs.adb/ /sys/kernel/config/usb_gadget/g1/configs/c.1/ffs.adb > /dev/null 2>&154mkdir -p /dev/usb-ffs55mkdir -p /dev/usb-ffs/adb56if [ "x`ls -A /dev/usb-ffs/adb`" = "x" ];then57mount -o uid=2000,gid=2000 -t functionfs adb /dev/usb-ffs/adb/58fi5960# start adbd daemon61adbd &62sleep 16364# enable udc65cat /sys/bus/platform/drivers/otg\ manager/10.usbc0/usb_device6667enable_udc &68}6970case "$1" in71start|"")72otg_role_file="/sys/bus/platform/drivers/otg manager/10.usbc0/otg_role"73[ -f "$otg_role_file" ] && otg_role=`cat "$otg_role_file"`74if /sbin/ifconfig > /dev/null 2>&1 && [ "x$otg_role" != "xusb_host" ];then75autotest=/etc/.autotest76[ -f $autotest ] && serialnumber=`cat $autotest`77start_adb $serialnumber78fi79;;80stop)81printf "Stopping adbd "82touch $disable_udc83sleep 284killall adbd &85[ $? -eq 0 ] && echo "OK" || "FAIL"86;;87restart|reload)88"$0" stop89"$0" start90;;91*)92echo "Usage: $0 {start|stop|restart}"93exit 194;;95esac96979899