通过configfs虚拟出两路usb串口,脚本如下:
#!/bin/sh
# usage
# ./usb-acm.sh usb2 or ./usb-acm.sh usb3
# ./usb-acm.sh usb2 disable or ./usb-acm.sh usb3 disable
usb_dev_controller=${1}_acm
export CONFIGFS_HOME=/etc/configfs
UDC=$CONFIGFS_HOME/usb_gadget/${usb_dev_controller}/UDC
# modify following to adapt different chip
USB_COUNT=2
USB1_NAME=usb2
USB2_NAME=usb3
USB1=100000.dwc3
USB2=200000.dwc3
if [ $# == 0 ] || [ $# -ge 3 ]; then
echo "usage:"
echo "./usb-acm.sh usb2 or ./usb-acm.sh usb3"
echo "./usb-acm.sh usb2 disable or ./usb-acm.sh usb3 disable"
exit 0
fi
if [ ${USB_COUNT} == 1 ] && [ $1 != ${USB1_NAME} ]; then
echo "don't support: ${1}"
exit 0
fi
if [ ${USB_COUNT} == 2 ] && [ $1 != ${USB1_NAME} ] && [ $1 != ${USB2_N