要想在Linux目标机启动后自动加载、运行用户程序,可以在rootfs/etc/init.d下创建一个脚本文件,内容如下:
#!/bin/sh
#
# Start user app....
#
case "$1" in
start)
printf "Starting test: "
insmod /lib/modules/4.9.11/kernel/drivers/net/wireless/realtek/rtl8188eu.ko
modprobe g_mass_storage file=/dev/mmcblk1p2 removable=1
/usr/bin/fb-test
;;
stop)
printf "Stopping test: "
rmmod rtl8188eu
modprobe -r g_mass_storage
;;
restart|reload)
"$0" stop
"$0" start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
保存文件名为S99test。
上例中做三件事:
1、加载模块rtl8818eu.ko,Wi-Fi模块驱动;
2、加载模块g_mass_storage,USB GadgetMass Storage Class驱动,将设备虚拟成U盘;
3、运行显示屏测试程序:fb-test
还有一步必须要做,就是赋予上面那个脚本文件可执行权限,如:
chmod +x S99test
重新启动目标设备即可。