firefly-rk3288使用USB GADGET实现大容量存储脚本
#!/bin/sh
UMS_EN=off
ADB_EN=off
MTP_EN=off
make_config_string()
{
tmp=CONFIGSTRINGif[?n"CONFIG_STRING if [ -n "CONFIGS?TRINGif[?n"CONFIG_STRING" ]; then
CONFIG_STRING=KaTeX parse error: Expected group after '_' at position 6: {tmp}_?{1}
else
CONFIG_STRING=$1
fi
}
parameter_init()
{
while read line
do
case “$line” in
usb_mtp_en)
MTP_EN=on
make_config_string mtp
;;
usb_adb_en)
ADB_EN=on
make_config_string adb
;;
usb_ums_en)
UMS_EN=on
make_config_string ums
;;
esac
done < $DIR/.usb_config
}
configfs_init()
{
mount -t configfs none /sys/kernel/config
mkdir /sys/kernel/config/usb_gadget/rockchip -m 0770
echo 0x2207 > /sys/kernel/config/usb_gadget/rockchip/idVendor
echo $PID > /sys/kernel/config/usb_gadget/rockchip/idProduct
mkdir /sys/kernel/config/usb_gadget/rockchip/strings/0x409 -m 0770
echo “0123456789ABCDEF” > /sys/kernel/config/usb_gadget/rockchip/strings/0x409/serialnumber
echo “rockchip” > /sys/kernel/config/usb_gadget/rockchip/strings/0x409/manufacturer
echo “rk3xxx” > /sys/kernel/config/usb_gadget/rockchip/strings/0x409/product
mkdir /sys/kernel/config/usb_gadget/rockchip/configs/b.1 -m 0770
mkdir /sys/kernel/config/usb_gadget/rockchip/configs/b.1/strings/0x409 -m 0770
echo 500 > /sys/kernel/config/usb_gadget/rockchip/configs/b.1/MaxPower
echo “$CONFIG_STRING” > /sys/kernel/config/usb_gadget/rockchip/configs/b.1/strings/0x409/configuration
}
function_init()
{
if [ $UMS_EN = on ];then
mkdir /sys/kernel/config/usb_gadget/rockchip/functions/mass_storage.0
echo /dev/disk/by-partlabel/userdata > /sys/kernel/config/usb_gadget/rockchip/functions/mass_storage.0/lun.0/file
ln -s /sys/kernel/config/usb_gadget/rockchip/functions/mass_storage.0 /sys/kernel/config/usb_gadget/rockchip/configs/b.1/mass_storage.0
fi
}
case “$1” in
start)
DIR=$(cd dirname $0; pwd)
if [ ! -e “$DIR/.usb_config” ]; then
echo “$0: Cannot find .usb_config”
exit 0
fi
stop)
echo “none” > /sys/kernel/config/usb_gadget/rockchip/UDC
;;
restart|reload)
;;
*)
echo “Usage: $0 {start|stop|restart}”
exit 1
esac
總結
以上是生活随笔為你收集整理的firefly-rk3288使用USB GADGET实现大容量存储脚本的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JAVA设计模式-11-代理模式(动态)
- 下一篇: sql server2014 企业版 百