Re: Input layer demand loading

Fredrik Tolf
2003-07-16T21:11:58Z

On Wednesday 16 July 2003 18.26, Greg KH wrote:
> On Wed, Jul 16, 2003 at 02:57:42PM +0200, Fredrik Tolf wrote:
> > On Wednesday 16 July 2003 06.29, Greg KH wrote:
> > > On Mon, Jul 14, 2003 at 12:58:24PM +0200, Fredrik Tolf wrote:
> > > > If the input layer userspace interface code has been compiled as
> > > > modules, and you have a ordinary (not hotplug) device, eg. a gameport
> > > > joystick, can really the hotplug interface be used to load joydev.o
> > > > when /dev/input/js0 is opened?
> > >
> > > No, you want to load the joydev.o driver when you plug in the gameport
> > > joystick. Which will be before you open the /dev node.
> >
> > Not necessarily. When the joystick is plugged in, you want to load the
> > hardware driver modules. There's really no need for the userspace
> > interface until someone requests it. At least that's the way I see it.
> > And in any case, even if you do want to load joydev.o when the joystick
> > is plugged in, I don't see how that could be done on-demand when the
> > joystick port isn't hotplug compatible, such as is the case with
> > gameports, right?
>
> True, but then if you try to open the port, you will only get the base
> joydev.o module loaded, not the gameport driver, which is what you
> _really_ want to have loaded, right?

Huh? Look at it this way: As it is now, if you have a non-hotplug joystick,
then you can't load anything automatically, not even the hardware drivers.
If you have demand-loading in the input layer, on the other hand, you can have
"above" directives in modules.conf (or "install" directives in modprobe.conf)
to pull in the hardware drivers along with joydev. So not only does
demand-loading permit hardware drivers and userspace interfaces independently
of each other, it also provides for loading hardware drivers on demand for
non-hotplug hardware.

Fredrik Tolf