Dear Greg,

        This is Ravi . I want to write a USB device driver for web camera . 
Before i 
go for this , I found a paper presented by you on the Internet, explaining 
the  general concepts of the usb device driver working , taking an example of 
" usb- skeleton.c  " . It was very useful to all of the new driver writers .

        In that html documentaion I found that whenever we do 
"usb_submit_urb(urb) ", 
the driver will sumbit the initialized urb structure to the device . But if u 
look at the implementation of " usb_submit_urb() " in " usb.c " , then you'll 
come across the statements like the following ,

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;
}

        Here the driver is internally making a call to "submit_urb() " , 
 which is a 
member of the "  usb_operations " structure . But I don't know how and where  
the " op " object of type " usb_operations " structure,  is initialized to 
call " submit_urb() " function . 

        You please go through this , and please try to clear my doubt .

Waiting for ur reply ,

N Ravi


-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to