* add adbd monitor

This commit is contained in:
lxowalle
2025-11-19 13:53:18 +08:00
parent 505c0a56c3
commit 5602fd9d59
2 changed files with 33 additions and 0 deletions

View File

@@ -0,0 +1,15 @@
#!/bin/bash
UDC_PATH=/sys/kernel/config/usb_gadget/g0/UDC
if [ -f /boot/usb.adbd ] && [ -f /boot/usb.dev ];
then
while true; do
if [ -z "$(cat $UDC_PATH | tr -d '[:space:]')" ];
then
echo "try restart usb device"
/etc/init.d/S03usbdev stop
/etc/init.d/S03usbdev start
fi
sleep 5
done
fi

View File

@@ -196,6 +196,13 @@ then
sleep 0.4 sleep 0.4
done done
echo device > /proc/cviusb/otg_role echo device > /proc/cviusb/otg_role
if [ -e /boot/usb.adbd ]
then
if [ -z $(ps aux | grep adbd_monitor | grep -v grep) ]; then
/etc/adbd_monitor.sh &
fi
fi
fi fi
fi fi
@@ -222,5 +229,16 @@ then
unlink /sys/kernel/config/usb_gadget/g0/configs/c.1/ncm.usb0 unlink /sys/kernel/config/usb_gadget/g0/configs/c.1/ncm.usb0
rmdir /sys/kernel/config/usb_gadget/g0/functions/ncm.usb0 rmdir /sys/kernel/config/usb_gadget/g0/functions/ncm.usb0
fi fi
# adbd
if [ -e /sys/kernel/config/usb_gadget/g0/configs/c.1/ffs.adb ]
then
adbd_pid=$(ps aux | grep '/usr/bin/adbd' | grep -v grep | awk '{print $1}')
kill -15 $adbd_pid
umount /dev/usb-ffs/adb
rm /dev/usb-ffs/adb -rf
unlink /sys/kernel/config/usb_gadget/g0/configs/c.1/ffs.adb
rmdir /sys/kernel/config/usb_gadget/g0/functions/ffs.adb
fi
fi fi