On 10/14/07, Manish Katiyar <mkatiyar@xxxxxxxxx> wrote: > Hi Greg, > > Thanks for that info and warning me not to try usb flash stick :-) to > learn......... Will a USB mouse be simpler ???....... i dont expect > myself to write code to move the mouse...........but atleast put > something in dmesg when i plug it.........just to understand the > basics........ > Alternatively, instead of starting with a particular hardware, why not start with Google? >From Google: a. find out all about the basics of the USB protocol. Protocols are source code independent. and all the intro stuff: www.beyondlogic.org/usbnutshell/usb1.htm www.linux-usb.org/USB-guide/c15.html www.hitex.co.uk/usb/usbtutorial.html www.pmc-sierra.com/webinars/usb.html www.usb.org/developers/whitepapers/usb_20g.pdf www.linuxjournal.com/article/7353 ---> this is on a simple USB lamp device. www.linuxjournal.com/article/4786 kerneltrap.org/node/2895 free-electrons.com/doc/linux-usb/text73.html b. Next delve right into the kernel source: take one existing example and tear it apart. Lots of questions about kernel stuff will come in. Key is to look out for all the key USB APIs, eg, just go to drivers/usb/core subdirectory and grep for "EXPORT". message.c:EXPORT_SYMBOL(usb_sg_init); message.c:EXPORT_SYMBOL(usb_sg_cancel); etc etc. c. You may need to fallback on the USB specification if necessary. d. In Linux kernel Documentation/usb directory - many articles exists, and the following as well: www.linux-kernel.de/docs/kernel/writing_usb_driver.pdf -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ