Re: 3rd party drivers: Was Re: Kernel Geeks Unite?

James Mastros (
Fri, 12 Sep 1997 17:22:11 -0400 (EDT)

On Wed, 10 Sep 1997, Stephen Williams wrote:

> said:
> > It would be wonderful if device makers would include linux drivers,
> > but it ain't gonna happen anytime soon.
> Not so. Picture Elements delivers linux drivers with our boards, as modules.
> However, we distribute them as source and the installation is a little bit
> harder then it needs to be.
Thank you! I should have been more specific. Large numbers of large
vendors aren't going to be makeing linux drivers any time to soon. (Take a
look at the number of "supported" things in MAINTAINERS.) Those that do we
all greatly thank; they have relised that Linux is a God amongst the Mear
Mortals of desktop OSes. (Yes, I did say Linux and not Linus. Not that
Linus isn't a God...).

> Some problems that I encounter are:
> - Kernel symbol versioning is too strict. (Not having some form of versioning
> is too lax.) Type-safe linking of modules (a la C++)would be very helpful
> indeed, and pretty darn nifty.
Would a "function_foo_CHANGED" symbol be good? This symbol would be set to
the last kernel version that changed the interface of the function (or
varable). This would be more lax then current modversions (every kernel
comple), but less lax then encodeing the prototype (about equivlent to C++).
If the value of this is higher then what the module wants it, then we assume
that the module will screw.

> - Major number assignment. Seems like the assignment of major numbers should
> be a local problem, not a global one. Might I suggest that a range of numbers
> be set aside as "locally assigned" and let kerneld straighten it out. If the
> module always takes major_number=<foo> and I can set up the aliases in kerneld
> config files, major number assignment problems will go away. (Mass market
> devices can continue to use preassigned numbers.)
There are. See Documentation/devices.txt. However, kerneld can't
straighten it out; the major/minor needs to be published somehow. Perhaps
kerneld could be told to auto-select device {major,minor} number, and then
create a file in /dev/ matching the selected numbers.

> Yes, I will continue to ship driver source, but it would be nice to be
> able to include precompiled binaries, and install the driver with a few
> simple commands.

> Incidentally, there is a man9 project for keeping ddi man pages. We have
> a plausible set available at: <>.
Cool. I'll have to stop by sometime!

> Steve Williams

-=- James Mastros

I can now be reached again at or
  "Shooting as [a] communications method is obsolete even here in Bosnia, so
I'll skip over it."
	-=- Dragisha Durich