Free training materials on writing Linux USB device drivers
[Posted January 23, 2007 by cook]
From: |
| Michael Opdenacker <michael-AT-free-electrons.com> |
To: |
| lwn-AT-lwn.net |
Subject: |
| Free training materials on writing Linux USB device drivers |
Date: |
| Tue, 23 Jan 2007 22:12:58 +0100 |
Do you need to write a Linux driver for a new USB device? Did you ask
for help on a community mailing list, but the answer was "Use the
Source, Luke"?
This was wise advice. The Linux sources contain hundreds of USB driver
sources which you can learn from. You are also likely to find code for
devices which are pretty similar to yours. You could then reuse some of
this code for your device!
Now, you realize how fortunate you are compared to when you had to write
the equivalent driver for a proprietary operating system! The only
documentation you could find was the OS driver manual, and there was
just one example from that manual. In addition, you couldn't even reuse
that sample driver code as it was copyright protected by the OS vendor!!!
Now, you should be ready to use the Source. Just the Source? Some
documentation would still help in understanding existing code faster.
Fortunately, an increasing number of documentation sources exist for
Free and Open Source Software.
Free Electrons, a training and consulting company in Free and Open
Source Software for embedded systems, has just released a new set of
free training slides on USB device driver development:
http://free-electrons.com/news/news.2007-01-21 .
These slides give details about the Linux USB implementation and the
data structure it uses. They explains the API to create, transmit, and
process the completion of USB Request Blocks, and details the resources
a driver needs to register to support a USB device. They also give the
most useful resources that were used by Free Electrons to create them.
Free Electrons also takes advantage of this announcement to send its
best wishes to the whole user and developer community. Let 2007 be the
Year of the Penguin! More details in our New Year's card:
http://free-electrons.com/news/news.2007-01-01 . Just like everything
produced by Free Electrons, this card is available under a free license.
You can reuse it if you like it!
--
Michael Opdenacker, Free Electrons
Free Embedded Linux Training Materials
on http://free-electrons.com/training
(More than 1500 pages!)