LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1432|回复: 2

写过Linux USB驱动的请进-->

[复制链接]
发表于 2008-4-26 19:04:44 | 显示全部楼层 |阅读模式
最近在做一个Linux下USB数据采集卡的驱动,驱动编译成.KO模块文件,在用insmod成功加载驱动模块后,接下来用mknod创建一个对应USB数据采集卡的设备文件,但是提供给mknod命令的参数:主设备号和次设备号应该是多少呢?从哪里可以知道这两个参数的值?我从/proc/devices文件中查到USB设备的主设备号为180(FC6系统),但是用mknod /dev/usbcard c 180 192命令创建的设备文件用open函数却打不开(以超级用户来调用的),这是为什么??真是郁闷啊!
一个设备文件是如何和一个设备关联起来的呢??知道的大虾能否指点指点……
发表于 2008-4-27 00:13:14 | 显示全部楼层
设备文件通过主从设备号和设备关联起来, 而采用什么设备号是由驱动来决定的. 如果楼主是为非专有类型的设备写驱动, 那么最好遵照既有的约定, 比如可以参照 Documents/kernel-para* 文件中的说明, 不过此文件似乎已久未更新
回复 支持 反对

使用道具 举报

发表于 2008-4-28 21:09:17 | 显示全部楼层
首先,设备号是在linux源代码中documentions/devices里面都指定了,你可以看看。。
然后,你驱动程序里面要制定次设备号。。

然后说说我的问题哈,我最近也在做一个和你这个差不多的东西。我采用批量数据(usb_bulk_msg(0)读取设备中的数据时,老是提示usb_bulk_msg:timeout..你遇到过这种问题了吗??帮我分析分析吧。。。不胜感激。。
回复 支持 反对

使用道具 举报

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

本版积分规则

快速回复 返回顶部 返回列表