zhy1030
驱动牛犊
驱动牛犊
  • 注册日期2004-04-11
  • 最后登录2004-07-30
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1200回复:1

一个关于usb的问题

楼主#
更多 发布于:2004-07-24 15:33
usb控制器(我的是isp1161)的驱动通过usb-alloc-bus,将自己的usb-operation结构注册到总线的op上,结构体中有一个函数指针*submit-urb(),指向控制器驱动的一个相关函数比如是hci-submit-urb,那么其他usb设备(比如是ov511)在调用usb-submit-urb时,是不是最后应该调用到hci-submit-urb呢?如果不是的话,最后到底调用了哪个函数呢?我的好像没有调用到
fatherandme
驱动牛犊
驱动牛犊
  • 注册日期2003-10-16
  • 最后登录2004-08-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-07-25 15:34
int usb_submit_urb(struct urb *urb)
{
if (urb && urb->dev && urb->dev->bus && urb->dev->bus->op)
return urb->dev->bus->op->submit_urb(urb);
else
return -ENODEV;
}

而其中bus->op在控制器枚举的时候给定
分为uhci和ohci
其中uhci的
struct usb_operations uhci_device_operations = {
uhci_alloc_dev,
uhci_free_dev,
uhci_get_current_frame_number,
uhci_submit_urb,
uhci_unlink_urb
};
通过下面这条语句与bus挂钩
bus = usb_alloc_bus(&uhci_device_operations);
游客

返回顶部