linux 2.6 下usb2。0驱动开发的问题。

发布于 2022-09-28 04:18:59 字数 685 浏览 16 评论 0

借此地问个问题。。。。。。

前提:
    最近手上有一个4个endpoint的usb2。0设备,想在linux2。6核下写它的驱动,我把usb-skeleton.c中的VENDOR_ID和PRODUCT_ID都已经相应的改为了usb的特定值,其它内容不动。

现在的情况:
  (运行环境:在直接安装的linux2。6。8内核下开发和测试,桌面电脑,非嵌入式)
   1. ehci-hcd &ohci-hcd模块系统已经加载了,usb总线下已经认得此设备为usb2.0,speed=480,dirver 也显示为我写的驱动了)。
   2. 我在/dev下mknod了一个设备文件来attach此设备,对它进行操作。

问题:
1。当插入此设备时,系统调用了驱动中的probe函数,可是iface_desc->desc.bNumEndpoints却为0,这是为什么?
2。我手工把dev->bulk_in_endpointAddr添上,读写此设备确是不正确(urb 出错)。

备注:此设备应该没问题,因为包装盒里的linux驱动可以跑!

想了几天,实在不解,望这里的CUer帮忙看一下,为啥会出现上述问题?我还缺什么模块没加载 ,这个和hotplug模块有关系吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文