Re: [2.6 patch] non-PC parport config change

From: Russell King
Date: Mon Jan 17 2005 - 05:46:49 EST


On Mon, Jan 17, 2005 at 11:33:17AM +0100, Adrian Bunk wrote:
> This patch adds a config option PARPORT_NOT_PC (and removes the
> PARPORT_OTHER option) and lets all non-PC parallel ports options depend
> on it.
>
> Advantages:
> - the config structure is IMHO a bit more logical
> - the mega #if in parport.h is gone now
>
> Additionally, it removes the unneeded PARPORT_NEED_GENERIC_OPS #define.
>
> Signed-off-by: Adrian Bunk <bunk@xxxxxxxxx>

This actually looks like a nice example where the use of select would
work nicely. IOW:

config PARPORT_ARC
tristate "Archimedes hardware"
depends on ARM && PARPORT
select PARPORT_NOT_PC

config PARPORT_AMIGA
tristate "Amiga builtin port"
depends on AMIGA && PARPORT
select PARPORT_NOT_PC

config PARPORT_NOT_PC
bool

And I notice in passing that you've already used select on this new
configuration option in USB, and this new configuration option is user
visible. Bad.

The golden rule (if you don't wish _me_ to complain) is:

Don't use select on user-visible options. Either make them
non-user visibile or don't use select at all.

In this case, the former is far more preferable because it means that
the existing defconfig files don't need to be fixed for their parports
work again.

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 PCMCIA - http://pcmcia.arm.linux.org.uk/
2.6 Serial core
-
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/