阅读:1200回复:1
一个关于usb的问题
usb控制器(我的是isp1161)的驱动通过usb-alloc-bus,将自己的usb-operation结构注册到总线的op上,结构体中有一个函数指针*submit-urb(),指向控制器驱动的一个相关函数比如是hci-submit-urb,那么其他usb设备(比如是ov511)在调用usb-submit-urb时,是不是最后应该调用到hci-submit-urb呢?如果不是的话,最后到底调用了哪个函数呢?我的好像没有调用到
|
|
沙发#
发布于: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); |
|