Home > Linux > Linux Device Drivers: USB DriversLinux Device Drivers: USB Drivers Eugenia Loli 2005-04-02 Linux 20 CommentsLearn how to develop USB drivers using this sample chapter (PDF).About The Author Eugenia LoliEx-programmer, ex-editor in chief at OSNews.com, now a visual artist/filmmaker.Follow me on Twitter @EugeniaLoli 20 Comments 2005-04-02 3:04 am Why don’t you just post a link to the whole book: http://lwn.net/Kernel/LDD3/Or, if you want to host it, I have a nice 5.4MB DjVu version of the whole book. 2005-04-02 4:20 am hehe.. good point.. 😀 downloading the book now 2005-04-02 4:49 am Buy a copy to help make sure more books like this get written. 2005-04-02 5:55 am “It was originally created to replace a wide range of slowand different buses — the parallel, serial, and keyboard connections — with a single bus type that all devices could connect to.”IMO it replace only the old slow “serial”. The parallel and keyboard connections are today the same as 20 years ago. Notice the name itself, Universal”Serial”Bus. It’s true that same mouse/keyboards are suitable via usb, as others non high-performance devices, but it’s a waste. 2005-04-02 7:28 am well….my keyboard, mouse, printer, scanner, and ADSL modem are all USB….and did you know that there’s plug’n’play?….fortunately it’s not like 20 years ago…Ciao! 2005-04-02 7:32 am Sorry, but i think authors are correct. The purpose of USB was to have a “universal” bus for different devices and ofcourse a high-speed bus as well. The goal is to ultimately have just one type of bus for all devices. I understand that it is a serial bus but then as long as it can cater to the needs of different devices, who cares. Parallel buses also force more pins. 2005-04-02 8:10 am If i remember right, my mouse and keyboard (old keyboard connections) are plug-and-play too. It is a waste and often a disadventage to use such simple input units on USB connections. 2005-04-02 8:18 am So you say that serial transfer is a waste? … You must have been missing SATA (read SERIAL ATA) 2005-04-02 9:01 am The author says that “It was originally created to replace a wide range of slow and different buses”. He’s not saying that it did…And for Serial, ofcause USB means Universal SERIAL Bus, as it actually is a serial bus! Are you suggesting that devices sould be named after the technology tey are desigend to replace instead of tha technology they implement?? 2005-04-02 10:44 am Let’s hope the book doesn’t become useless in a short amount of time due to API changes in the Linux kernel. 2005-04-02 1:33 pm That happened to me when I bought the 2nd edition, right before 2.6 went stable. Luckily the book has a fair license. 2005-04-02 3:55 pm When you are producing millions of device, the cost savings of using USB over something else (PS/2 connectors) add up: the one USB controller takes the place of keyboard/mouse controllers and physical connectors. It’s only with USB that we’ve finally become legacy-free. 2005-04-02 4:19 pm i am searching free online books ( preferably in pdf format)i have found only this web site:andamooka.org anyone here knows some other interesting place with free online books?thanks 2005-04-02 4:36 pm From the great Russia:http://docs.rinet.ru:8080/ 2005-04-02 6:28 pm I am soo glad all I have on my powerbook is usb/firewire. I hate parallel, HUGE thick cables cluttering up my desk, and the whole pc slows down when talking to the printer. Firewire for all my high bandwith stuff (external hard disk, dvd burner) usb for everything else. 2005-04-02 7:10 pm That’s why there’s an API changes page: http://lwn.net/Articles/2.6-kernel-api/Unfortunately, it isn’t that helpful when developing for the SLES 9 2.6.5 kernel… 2005-04-02 7:32 pm More free books and texts are here;http://creativecommons.org/textSample query “linux AND usb”;http://search.creativecommons.org/index.jsp?q=linux+AND+usb+&format…Note that the query above is not properly automatically linked by OS News. Do the search yourself, or use the whole string.The specific licence for each may or may not allow commercial redistribution without contacting the author(s). 2005-04-03 12:02 am Is available as a free download. Only covers kernel 2.4 though. 2005-04-03 9:31 am Don’t forget that serial and parallel connectors arequite convenient generic I/O connections(easy to use).If you only have hardware with big names on it, you maynot need serial/parallel.But you must know that there is not much tochoose from when developing small scale applications(IC programmers, Cellphone connectors, Embedded deviceconnectors, Reciever connectors…)that doesn’t make development more time comsuming(drivers and hardware) and the product more expensive.So every wire that you need to connect your computersUSB to your cellphone, pda, whatever needs ausb->serial/parallel IC and often an extra driver(which can possibly not be ported easily to “yourfav. OS”).So, thats why those cables are soexpensive, and there is not (necissarily)much more happeningin there as you can see. Its just a singleFTDI/Philips/Intel chip or something that doesUSB->serial/parallel conversion.You could of course buy a rather expensiveUSB->serial/parallel cable (which are rather expensive)if you need it after all, but clearly, its hard tofind new devices with serial/parallel port anyhowthese days.Though personally like USB very much, there’s justno point in abolisching serial/parallel andenforcing usb for everything. 2005-04-08 4:24 am Parallel is total idiocy because the current host of serial interfaces offer the same thing (using a parallel client adapter, natch), with decent electrical protection for the interface. Contrawise, offering a parallel interface that is as good is costly in terms of component count (what’s the MTBF of a wave soldering machine, anyone? Yes.) and in the way you can fry 4 CPUs by handing someone a serial cable in the server room and telling them to mount a SCSI-I device.That is, the USB and 1394 interfaces drop out before doing harm, and drop back in unless hit for six.Now, if you had said -bluetooth- with crypto not crippled, I might have gone for it, since it seems logical that I can play one with my teeth, set it on fire, etc. without having an EMI event on the main system. However, I haven’t tested that on an aircraft carrier deck or whale-emulation-device, so I’m still not sure.Psychommu amps…more of those, is what I need.