分类: LINUX
2011-08-13 16:54:04
Linux的Gadget驱动可以将dev目录下的设备(比如内存、Nand、SD卡)虚拟成电脑的U盘,但是电脑访问后一般都会将其格式化为FAT格式,如何再让ARM处理器访问这个这个设备困扰了我们好久。今天就来谈一谈解决方法:
1)首先用dd指令建立一个空的img文件,例子中大小为10MB,也可以建立在内存中:
dd if=/dev/zero of=fat.img bs=1k count=10k
2)加载gadget驱动,在pc上格式化为fat格式
insmod g_file_storage.ko file=fat.img stall=0 removable=1
3)随便拷贝点文件进去
4)在PC上卸载这个U盘
5)进入开发板控制台,执行命令:
losetup /dev/loop0 fat.img
作用是将我们的img文件映射到loop0设备里面
6)最后挂载这个设备:
mount -t vfat /dev/loop0 /mnt
记住要挂载为vfat格式,因为你在pc上是格式化成fat格式的。
7)ls看一下,从PC拷过去的文件的确在里面。
/ # cd /mnt
/mnt # ls
SEP4020 Linux2.6.16 SDK Develop Manual Version 3.0 Beta1.pdf
hello
/mnt #