Re: Driver API (was Re: Linux GPL and binary module exception clause?)

Jason Kingsland
2003-12-11T15:47:38Z

Hannu Savolainen writes:
> Even better would be a proper device driver ABI for "loosely
> integrated" device drivers.

Peter Chubb writes:

> One of the things we're working on here is an ABI to allow device
> drivers to live in user space, by enabling access to interrupts and
> PCI DMA.

This is already available via a commercial product.

It's a proprietary licensed Linux binary loadable module (hmm...) that
exports the kernel services to user space in an abstract, OS and CPU
agnostic manner. The API is consistent for Win32, Linux, Solaris, VxWorks
and variants.

I've used it previously in a cross-platform commercial application which had
to run on Linux and Win32 and required hardware access, it works well. The
driver is provided as object code which you have to link against the kernel
headers to get access to the appropriate Linux ABI for the target release.

I believe the later versions include support for USB and HotSwap of PCI
busses (for things like CompactPCI) - look at the Kerneldriver and Windriver
products on the following page:

http://www.jungo.com/products.html#driver_tools

ps. Another dubious case of GPL boundaries perhaps - but I'm not going to
restart that thread !