背景
新开的板子去掉了有线连接,保留了wifi连接,经测试wifi能够正常连接网络,但是使用ssh无法登录进开发板,目前原因未知,这对开发板上调试应用程序带来了极大的挑战,不能每次修改一次QT界面都重新烧写根文件系统,这对开发调试来说是不可接受的。
所以考虑使用板子的otg接口来模拟U盘,这样修改完的应用程序可以通过usb传输到根文件系统,提高开发效率。经测试otg功能识别后因为emmc的根文件系统的格式为ext3,在windows下无法正常识别,始终弹窗提示格式化U盘,,所以打算将原有的跟文件系统分出一部分为一个新分区,格式化为ext32系统,这样就可以从win传输文件到emmc,然后将新分区挂载进根文件系统,这个通过拷贝就可以将程序更新到根文件系统里面,在调试和改动不大的情况下保证开发效率。
添加新分区
使用fdisk 可以看到板子上的emmc有三个分区。
尝试对mmcblk2添加新分区,可以看到因为rootfs分区占用了7389M,没有剩余空间可以添加新分区了
所以需要添加一个分区来进行主机和板子之间的文件传输,添加最下面一行,给rootfs保留了1G的空间,剩下的6个多G都分给userfs。
在开机以后可以发现多了一个分区:
然后重新对这个分区格式化
mkfs.fat /dev/mmcblk2p4
mount -t vfat /dev/mmcblk2p4 /mnt
下面就是挂载usb gadget把/dev/mmcblk2p4 模拟成一个U盘给win系统访问
insmod libcomposite.ko
insmod usb_f_mass_storage.ko
insmod g_mass_storage.ko file=/dev/mmcblk2p4 removable=1
完工,可以更愉快的调试啦