[prog] I'm new here / writing drivers

Akkana Peck akkana at shallowsky.com
Sat Feb 21 13:41:06 EST 2004


Gemma Peter writes:
> I have a graphics tablet (Nisis Easypen G3) which I have had since
> before I started using Linux. I want to write my own drivers for it so I
> can use it in The Gimp :)
> 
> I don't know much C but I know some C++.
> 
> Has anyone here had experience of writing drivers for USB peripherals?
> What things do I need to learn first?

I've fiddled around a little with some USB drivers, and one thing I've
noticed is that there's a lack of helpful documentation for people
wanting to get into that.  linux-usb.org has a lot of specifications,
like the USB spec, but it it doesn't have any "how to get started"
type guides.  None of the linux kernel books I've seen, like the
O'Reilly books, talk about USB drivers at all.

Browse around linux-usb.org and also Documentation/usb/* in the
kernel source directory, and look at the drivers for existing graphics
tablets (e.g. wacom.c).  You'll probably also want to know a bit about
the input subsystem (Documentation/input/input.txt), since graphics
tablets act like a mouse and are handled through the input subsystem;
and, for debugging, something about the X events interface -- there's
a tiny bit in input.txt but I bet there's better documentation on that
somewhere.

Do you know about the kernelchix list?  That might be better than
programming for discussing kernel details, and you might have better
luck finding experienced kernel developers there.  Mostly it's been
inactive, but if you started a discussion of driver writing on that
list, I bet there would be some useful input from kernel developers
(I'm cc'ing kernelchix).  I've been wanting to poke around a bit in the
wacom driver to see why I'm no longer getting pressure (it used to work)
so I'd be interested in a discussion on tablet drivers too.

	...Akkana


More information about the Programming mailing list