Re: RFC: Harmonised parameter passing

From: Henk Vergonet
Date: Tue Mar 08 2005 - 10:49:32 EST


On Tue, Mar 08, 2005 at 10:14:32AM -0500, Dmitry Torokhov wrote:
> On Tue, 8 Mar 2005 15:59:23 +0100, Henk Vergonet
> > Could we extend this method where we use the same methodology for inbound drivers? (Currently a lot of drivers use their own parameter parsing code when it comes to passing values at kernel boot time.)
> >
> > so we could do the regular:
> >
> > insmod mcd io=0x340
> >
> > for modules, or with kernel boot parameters:
> >
> > mcd.io=0x340
> >
> > for in-kernel drivers.
> >
>
> Umm.. This is already done. For parameters defined with module_param()
> you use <paramname>=<value> for modules and
> <modulename>.<paramname>=<value> for built-in case.

I did not know, but thats good news! My research was only based on the LKM module howto.

> > My proposal would be to introduce something like:
> >
> > DRIVER_PARM_DESC(variable, description);
> > DRIVER_PARM(variable, type, scope);
> >
> > where scope can be:
> > PARM_SCOPE_MODULE => This parameter is used in module context.
> > PARM_SCOPE_KERNEL => This parameter is used in kernel context.
> > PARM_SCOPE_MODULE | PARM_SCOPE_KERNEL
> > => This parameter is used in both kernel and module context, which should be the default if scope is omitted.
> >
>
> Why would you want parameters that only work for modules? I'd consider
> it a bug, not a feature, when parameter works only when code is
> modularized.
>
I totally agree! (But I was preparing for the discussion were people
argue that they need a different set of parameters at boot time.)

One question remains though, how do you handle the initialization of
multiple instances of an inbound driver?

mcd0.io=0x340 mcd1.io=0x350

Thnx,
Henk
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/