2324|0

35

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

关于tiny210连接到PC机上能通过gadget被识别为U盘的问题,已经解决 [复制链接]

这几天在做项目,需要实现tiny210经过miniUSB连接到PC机上能通过gadget被识别为U盘或者SD卡,我tiny210上安装的是光盘自带linux系统,不能被PC机识别为U盘。找了很多资料,终于成功了,之前主要是没有配置配置模块g_file_storage.ko。在此分享一下配置过程,希望对大家有用。
 
1、首先输入如下命令,配置usb gadget
   [root@localhost linux-2.6.35.7]# make menuconfig
 
2、进入内核配置界面按回车键进去:Device Drivers -->
 
3、接着回车进入:
  • USB support  --->
  •  
    4、再回车进入:<*>   USB Gadget Support  --->
     
    5、选中并按m(“按m”的意思是将其编译成模块):<M> File-backed Storage Gadget 
     
    6、保存并退出
     
    7、在命令行输入如下命令
    [root@localhost linux-2.6.35.7]# make modules
      CHK     include/linux/version.h
      CHK     include/generated/utsrelease.h
    make[1]: “include/generated/mach-types.h”是最新的。
      CALL    scripts/checksyscalls.sh
      CC [M]  drivers/usb/gadget/file_storage.o
      LD [M]  drivers/usb/gadget/g_file_storage.o
      Building modules, stage 2.
      MODPOST 4 modules
    WARNING: modpost: Found 1 section mismatch(es).
    To see full details build your kernel with:
    'make CONFIG_DEBUG_SECTION_MISMATCH=y'
      LD [M]  drivers/usb/gadget/g_file_storage.ko
    最后一行信息表示在目录drivers/usb/gadget/中已经生成了g_file_storage.ko驱动模块,这个模块支持实现tiny210经过miniUSB连接到PC机上能通过gadget被识别为U盘或者SD卡。
     
    8、接着通过sd卡将g_file_storage.ko驱动模块拷贝(当然通过其他方法拷贝也行,本人用的是sd卡来拷贝)到开发板某个目录上(其实这个驱动模块在sd卡内不用拷贝到开发板上也行,只要将sd卡插到tiny210上并能读取卡内文件就行了)
     
    9、最后在开发板上安装这个驱动:在超级终端上输入一下命令挂载驱动:
    insmod  /sdcard/g_file_storage.ko file=/dev/udisk  stall=0  removable=1
    稍等几秒就能在 windows下看到你插入开发板上的U盘了
    当有多个分区的情况时,挂载驱动的命令可以如下:
    insmod g_file_storage.ko filefile=/dev/udisk,/dev/sdcard  stall=0  removable=1
    这里使用了两个分区,分别是一个SD卡,一个U盘。

    (特别注意:配置内核时,tiny210配套的光盘中linux文件夹中的linux内核存在这样情况,在make menuconfig的时候无法选成<M>,只能选成<X>。就像这兄弟的情况一样:http://www.arm9home.net/read.php?tid-20378.html。要解决这个问题很简单,直接用android文件夹中的linux内核来编译就行了,这两个内核是一样的,可能linux文件夹中的那个内核存在点问题。)
     
    以上是本人亲自验证过的,欢迎互相转载。。
    此帖出自ARM技术论坛
    点赞 关注
     

    回复
    举报
    您需要登录后才可以回帖 登录 | 注册

    随便看看
    查找数据手册?

    EEWorld Datasheet 技术支持

    相关文章 更多>>
    关闭
    站长推荐上一条 1/9 下一条

     
    EEWorld订阅号

     
    EEWorld服务号

     
    汽车开发圈

    About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

    站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

    北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

    电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
    快速回复 返回顶部 返回列表