Usb otg storage 的调试
来源:互联网 发布:java aes 256 cbc 编辑:程序博客网 时间:2024/06/05 00:36
1. 内核配置
make menuconfig
Device Drivers --->
[*] USB support --->
<*> USB Gadget Support --->
<M> USB Gadget Drivers
<M> File-backed Storage Gadget
按照上边配置内核,然后进行编译。
cd linux/driver/usb/gadget 即可得到g_file_storage.ko ,这个驱动就是将开发板作为一个U盘之类的存储器使用。
2. 加载驱动
如果根文件系统内,含有 /lib/modules/2.6.32/kernel/drivers/usb/gadget/g_file_storage.ko
^
|
内核版本号
使用命令depmod modprobe可以将g_file_storage.ko加载到内核
使用说明:
root@beagleboard:~# depmod
root@beagleboard:~# modprobe g_file_storage + flash/sd在内存中的分区
2.1. 映射SD卡成U盘
加载USB转U盘驱动内核模块
root@beagleboard:~# modeprobe g_file_storage file=/dev/mmcblk0 stall=0 removable=1
2.2. 映射nand flash的MTD块设备成U盘
查看MTD分区
root@beagleboard:~# cat /proc/mtd
dev: size erasesize name
mtd0: 00080000 00020000 "X-Loader"
mtd1: 001e0000 00020000 "U-Boot"
mtd2: 00020000 00020000 "U-Boot Env"
mtd3: 00400000 00020000 "Kernel"
mtd4: 1f980000 00020000 "File System"
查看MTD块设备
root@beagleboard:~# ls -al /dev/mtd* |grep brw
brw-rw---- 1 root disk 31, 0 Jul 10 2012 /dev/mtdblock0
brw-rw---- 1 root disk 31, 1 Jul 10 2012 /dev/mtdblock1
brw-rw---- 1 root disk 31, 2 Jul 10 2012 /dev/mtdblock2
brw-rw---- 1 root disk 31, 3 Jul 10 2012 /dev/mtdblock3
brw-rw---- 1 root disk 31, 4 Jul 10 2012 /dev/mtdblock4
加载USB转U盘驱动内核模块
root@beagleboard:~# modeprobe g_file_storage file=/dev/mtdblock3 stall=0 removable=1
3. usb连接pc
在Widnows上, 把开发板的USB device口通过USB连接线连到PC的USB host口(即常用的插U盘的USB口)
Winodws资源管理器里会自动识别出可移动磁盘。
4. 注意事项:
针对这个otg的操作,需要注意,以下事项:
只能在开机之后,并且正常加载过g_file_storage.ko模块之后才能将usb线连接到pc。
如果没有加载g_file_storage.ko模块,那么什么时候连接usb线,什么时候系统崩溃。
如果在开机阶段连接usb线,那么,板子无法启动,直接死掉
5. 其他的功能
类似地, USB转网卡(/sys/class/net下有所有的网络设备), USB转串口(/dev目录下有对应的设备文件), 功能类似, 一般地, BSP都做好了, 最多调试下.
注:我只是测试了一个usb otg storage 的模块功能。
6. 示例图片
下图的可移动磁盘boot(E:) 就是通过开发板的otg存储功能
![](otg.png)
make menuconfig
Device Drivers --->
[*] USB support --->
<*> USB Gadget Support --->
<M> USB Gadget Drivers
<M> File-backed Storage Gadget
按照上边配置内核,然后进行编译。
cd linux/driver/usb/gadget 即可得到g_file_storage.ko ,这个驱动就是将开发板作为一个U盘之类的存储器使用。
2. 加载驱动
如果根文件系统内,含有 /lib/modules/2.6.32/kernel/drivers/usb/gadget/g_file_storage.ko
^
|
内核版本号
使用命令depmod modprobe可以将g_file_storage.ko加载到内核
使用说明:
root@beagleboard:~# depmod
root@beagleboard:~# modprobe g_file_storage + flash/sd在内存中的分区
2.1. 映射SD卡成U盘
加载USB转U盘驱动内核模块
root@beagleboard:~# modeprobe g_file_storage file=/dev/mmcblk0 stall=0 removable=1
2.2. 映射nand flash的MTD块设备成U盘
查看MTD分区
root@beagleboard:~# cat /proc/mtd
dev: size erasesize name
mtd0: 00080000 00020000 "X-Loader"
mtd1: 001e0000 00020000 "U-Boot"
mtd2: 00020000 00020000 "U-Boot Env"
mtd3: 00400000 00020000 "Kernel"
mtd4: 1f980000 00020000 "File System"
查看MTD块设备
root@beagleboard:~# ls -al /dev/mtd* |grep brw
brw-rw---- 1 root disk 31, 0 Jul 10 2012 /dev/mtdblock0
brw-rw---- 1 root disk 31, 1 Jul 10 2012 /dev/mtdblock1
brw-rw---- 1 root disk 31, 2 Jul 10 2012 /dev/mtdblock2
brw-rw---- 1 root disk 31, 3 Jul 10 2012 /dev/mtdblock3
brw-rw---- 1 root disk 31, 4 Jul 10 2012 /dev/mtdblock4
加载USB转U盘驱动内核模块
root@beagleboard:~# modeprobe g_file_storage file=/dev/mtdblock3 stall=0 removable=1
3. usb连接pc
在Widnows上, 把开发板的USB device口通过USB连接线连到PC的USB host口(即常用的插U盘的USB口)
Winodws资源管理器里会自动识别出可移动磁盘。
4. 注意事项:
针对这个otg的操作,需要注意,以下事项:
只能在开机之后,并且正常加载过g_file_storage.ko模块之后才能将usb线连接到pc。
如果没有加载g_file_storage.ko模块,那么什么时候连接usb线,什么时候系统崩溃。
如果在开机阶段连接usb线,那么,板子无法启动,直接死掉
5. 其他的功能
类似地, USB转网卡(/sys/class/net下有所有的网络设备), USB转串口(/dev目录下有对应的设备文件), 功能类似, 一般地, BSP都做好了, 最多调试下.
注:我只是测试了一个usb otg storage 的模块功能。
6. 示例图片
下图的可移动磁盘boot(E:) 就是通过开发板的otg存储功能
![](otg.png)
0 0
- Usb otg storage 的调试
- USB OTG mass storage
- usb-otg-调试心得
- usb-otg-调试心得
- MPC8309 USB OTG功能调试
- AM335X的USB otg网卡(RNDIS /Ethernet Gadget)调试
- usb otg的一些简介
- USB OTG的工作原理
- USB OTG的工作原理
- usb otg的一些简介
- USB OTG的工作原理
- USB Gadget Storage功能调试
- USB Gadget Storage功能调试
- USB Gadget Storage功能调试
- USB-OTG
- usb otg
- USB otg
- USB OTG
- Lua IO库详解
- jQuery六章 使用jQuery操作DOM
- react-native Linking
- poj1175 搜索+hash
- 浅谈JDBC的升级之路
- Usb otg storage 的调试
- nginx php显示空白处理
- Linux 网络接口配置(/etc/network/interfaces)
- iOS中打一个包上传后,iTunes中找不到上传的包的解决方法
- 有个排序后的字符串数组,其中散步着一些空字符串,找出给定字符串的位置
- Python下调用Linux的Shell命令
- iOS实现浮动泡泡功能,悬浮泡泡,windows系统屏幕保护程序的气泡功能(碰撞检测)
- 高德坐标与中国坐标的转换Android
- Effective STL