* [PATCH] use select in sound/isa/Kconfig
@ 2005-07-17 15:07 Bodo Eggert
2005-07-19 16:36 ` [2.6 patch] sound drivers select'ing ISAPNP must depend on PNP && ISA Adrian Bunk
0 siblings, 1 reply; 5+ messages in thread
From: Bodo Eggert @ 2005-07-17 15:07 UTC (permalink / raw)
To: 7eggert, akpm, torvalds, linux-kernel
In sound/isa/Kconfig, select ISAPNP and depend on ISAPNP are intermixed,
resulting in funny behaviour. (Soundcarts get selectable if other
soundcards are selected).
This patch changes the "depend on ISAPNP"s to select.
sound/isa/Kconfig | 15 ++++++++++-----
1 files changed, 10 insertions(+), 5 deletions(-)
Signed-Off-By: Bodo Eggert <7eggert@gmx.de>
--- a/sound/isa/Kconfig 2005-07-17 08:10:20.000000000 +0200
+++ b/sound/isa/Kconfig 2005-07-17 16:57:53.000000000 +0200
@@ -15,7 +15,8 @@ config SND_CS4231_LIB
config SND_AD1816A
tristate "Analog Devices SoundPort AD1816A"
- depends on SND && ISAPNP
+ depends on SND
+ select ISAPNP
select SND_OPL3_LIB
select SND_MPU401_UART
select SND_PCM
@@ -80,7 +81,8 @@ config SND_CS4236
config SND_ES968
tristate "Generic ESS ES968 driver"
- depends on SND && ISAPNP
+ depends on SND
+ select ISAPNP
select SND_MPU401_UART
select SND_PCM
help
@@ -291,7 +293,8 @@ config SND_WAVEFRONT
config SND_ALS100
tristate "Avance Logic ALS100/ALS120"
- depends on SND && ISAPNP
+ depends on SND
+ select ISAPNP
select SND_OPL3_LIB
select SND_MPU401_UART
select SND_PCM
@@ -304,7 +307,8 @@ config SND_ALS100
config SND_AZT2320
tristate "Aztech Systems AZT2320"
- depends on SND && ISAPNP
+ depends on SND
+ select ISAPNP
select SND_OPL3_LIB
select SND_MPU401_UART
select SND_CS4231_LIB
@@ -328,7 +332,8 @@ config SND_CMI8330
config SND_DT019X
tristate "Diamond Technologies DT-019X, Avance Logic ALS-007"
- depends on SND && ISAPNP
+ depends on SND
+ select ISAPNP
select SND_OPL3_LIB
select SND_MPU401_UART
select SND_PCM
--
Funny quotes:
3. On the other hand, you have different fingers.
^ permalink raw reply [flat|nested] 5+ messages in thread
* [2.6 patch] sound drivers select'ing ISAPNP must depend on PNP && ISA
2005-07-17 15:07 [PATCH] use select in sound/isa/Kconfig Bodo Eggert
@ 2005-07-19 16:36 ` Adrian Bunk
2005-07-19 20:50 ` Bodo Eggert
0 siblings, 1 reply; 5+ messages in thread
From: Adrian Bunk @ 2005-07-19 16:36 UTC (permalink / raw)
To: Bodo Eggert, perex; +Cc: akpm, torvalds, linux-kernel, alsa-devel
On Sun, Jul 17, 2005 at 05:07:48PM +0200, Bodo Eggert wrote:
> In sound/isa/Kconfig, select ISAPNP and depend on ISAPNP are intermixed,
> resulting in funny behaviour. (Soundcarts get selectable if other
> soundcards are selected).
>
> This patch changes the "depend on ISAPNP"s to select.
>...
I like the idea of this patch, but it brings to more drivers to a
violation of the "if you select something, you have to ensure that the
dependencies of what you select are fulfilled" rule causing link errors
with invalid .config's.
This patch (on top of your patch) fixes this problem.
Signed-off-by: Adrian Bunk <bunk@stusta.de>
---
sound/isa/Kconfig | 14 +++++++-------
1 files changed, 7 insertions(+), 7 deletions(-)
--- linux-2.6.13-rc3-mm1-full/sound/isa/Kconfig.old 2005-07-19 18:27:21.000000000 +0200
+++ linux-2.6.13-rc3-mm1-full/sound/isa/Kconfig 2005-07-19 18:28:44.000000000 +0200
@@ -15,7 +15,7 @@
config SND_AD1816A
tristate "Analog Devices SoundPort AD1816A"
- depends on SND
+ depends on SND && PNP && ISA
select ISAPNP
select SND_OPL3_LIB
select SND_MPU401_UART
@@ -81,7 +81,7 @@
config SND_ES968
tristate "Generic ESS ES968 driver"
- depends on SND
+ depends on SND && PNP && ISA
select ISAPNP
select SND_MPU401_UART
select SND_PCM
@@ -162,7 +162,7 @@
config SND_INTERWAVE
tristate "AMD InterWave, Gravis UltraSound PnP"
- depends on SND
+ depends on SND && PNP && ISA
select SND_RAWMIDI
select SND_CS4231_LIB
select SND_GUS_SYNTH
@@ -177,7 +177,7 @@
config SND_INTERWAVE_STB
tristate "AMD InterWave + TEA6330T (UltraSound 32-Pro)"
- depends on SND
+ depends on SND && PNP && ISA
select SND_RAWMIDI
select SND_CS4231_LIB
select SND_GUS_SYNTH
@@ -293,7 +293,7 @@
config SND_ALS100
tristate "Avance Logic ALS100/ALS120"
- depends on SND
+ depends on SND && PNP && ISA
select ISAPNP
select SND_OPL3_LIB
select SND_MPU401_UART
@@ -307,7 +307,7 @@
config SND_AZT2320
tristate "Aztech Systems AZT2320"
- depends on SND
+ depends on SND && PNP && ISA
select ISAPNP
select SND_OPL3_LIB
select SND_MPU401_UART
@@ -332,7 +332,7 @@
config SND_DT019X
tristate "Diamond Technologies DT-019X, Avance Logic ALS-007"
- depends on SND
+ depends on SND && PNP && ISA
select ISAPNP
select SND_OPL3_LIB
select SND_MPU401_UART
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [2.6 patch] sound drivers select'ing ISAPNP must depend on PNP && ISA
2005-07-19 16:36 ` [2.6 patch] sound drivers select'ing ISAPNP must depend on PNP && ISA Adrian Bunk
@ 2005-07-19 20:50 ` Bodo Eggert
2005-07-23 16:48 ` Adrian Bunk
0 siblings, 1 reply; 5+ messages in thread
From: Bodo Eggert @ 2005-07-19 20:50 UTC (permalink / raw)
To: Adrian Bunk; +Cc: Bodo Eggert, perex, akpm, torvalds, linux-kernel, alsa-devel
On Tue, 19 Jul 2005, Adrian Bunk wrote:
> On Sun, Jul 17, 2005 at 05:07:48PM +0200, Bodo Eggert wrote:
> > In sound/isa/Kconfig, select ISAPNP and depend on ISAPNP are intermixed,
> > resulting in funny behaviour. (Soundcarts get selectable if other
> > soundcards are selected).
> >
> > This patch changes the "depend on ISAPNP"s to select.
> >...
>
> I like the idea of this patch, but it brings to more drivers to a
> violation of the "if you select something, you have to ensure that the
> dependencies of what you select are fulfilled" rule causing link errors
> with invalid .config's.
That should be mentioned in kconfig-language.txt. OTOH, the build system
should automatically propagate the dependencies. I asume that should be
easy, except for having the time to implement that.
BTW: How can you select something to be at least a module?
BTW2: In bool options, depending on FOO seems to be equal to depending on
FOO!=n. Is this assumption correct?
--
Top 100 things you don't want the sysadmin to say:
49. What's this switch for anyways...?
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [2.6 patch] sound drivers select'ing ISAPNP must depend on PNP && ISA
2005-07-19 20:50 ` Bodo Eggert
@ 2005-07-23 16:48 ` Adrian Bunk
2005-07-24 9:39 ` Bodo Eggert
0 siblings, 1 reply; 5+ messages in thread
From: Adrian Bunk @ 2005-07-23 16:48 UTC (permalink / raw)
To: Bodo Eggert; +Cc: perex, akpm, torvalds, linux-kernel, alsa-devel
On Tue, Jul 19, 2005 at 10:50:53PM +0200, Bodo Eggert wrote:
> On Tue, 19 Jul 2005, Adrian Bunk wrote:
> > On Sun, Jul 17, 2005 at 05:07:48PM +0200, Bodo Eggert wrote:
>
> > > In sound/isa/Kconfig, select ISAPNP and depend on ISAPNP are intermixed,
> > > resulting in funny behaviour. (Soundcarts get selectable if other
> > > soundcards are selected).
> > >
> > > This patch changes the "depend on ISAPNP"s to select.
> > >...
> >
> > I like the idea of this patch, but it brings to more drivers to a
> > violation of the "if you select something, you have to ensure that the
> > dependencies of what you select are fulfilled" rule causing link errors
> > with invalid .config's.
>
> That should be mentioned in kconfig-language.txt. OTOH, the build system
> should automatically propagate the dependencies. I asume that should be
> easy, except for having the time to implement that.
>...
There are nontrivial problems:
E.g. what should happen if you select option A that depends on (B || C)?
There's one opinion that options should be either select'able _or_ user
visible.
The current policy in the kernel is not 100% dogmatic regarding this
issue, but it shouldn't be violated without a good reason.
cu
Adrian
--
"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [2.6 patch] sound drivers select'ing ISAPNP must depend on PNP && ISA
2005-07-23 16:48 ` Adrian Bunk
@ 2005-07-24 9:39 ` Bodo Eggert
0 siblings, 0 replies; 5+ messages in thread
From: Bodo Eggert @ 2005-07-24 9:39 UTC (permalink / raw)
To: Adrian Bunk; +Cc: Bodo Eggert, perex, akpm, torvalds, linux-kernel, alsa-devel
On Sat, 23 Jul 2005, Adrian Bunk wrote:
> On Tue, Jul 19, 2005 at 10:50:53PM +0200, Bodo Eggert wrote:
> > OTOH, the build system
> > should automatically propagate the dependencies. I asume that should be
> > easy, except for having the time to implement that.
> >...
>
> There are nontrivial problems:
> E.g. what should happen if you select option A that depends on (B || C)?
You should in effect depend on ($original_depends) && (B || C). You'll
just need to append all (recursive) dependencies in the selecting option.
last_length:=-1; /* impossible value */
while |options_with_unresolved_selects| > 0 do begin
if |options_with_unresolved_selects| == last_length
then goto circular_recursion_detected;
last_length:=|options_with_unresolved_selects|;
for i in options_with_unresolved_selects do begin
for s in i->unresolved_selects do
if 0 == |s->unresolved_selects|
then begin
add(i->depends, s->depends)
delete_from(i->unresolved_selects, s)
end
if 0 == |i->unresolved_selects|
then delete_from(options_with_unresolved_selects, i);
end
end
> There's one opinion that options should be either select'able _or_ user
> visible.
That would only result in ugly workarounds. Think about the kernel
libraries. You'll want to manually select them, and you'll want to
automatically select them, and you want both to be visible.
--
Funny quotes:
22. When everything's going your way, you're in the wrong lane and and going
the wrong way.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2005-07-24 9:38 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-07-17 15:07 [PATCH] use select in sound/isa/Kconfig Bodo Eggert
2005-07-19 16:36 ` [2.6 patch] sound drivers select'ing ISAPNP must depend on PNP && ISA Adrian Bunk
2005-07-19 20:50 ` Bodo Eggert
2005-07-23 16:48 ` Adrian Bunk
2005-07-24 9:39 ` Bodo Eggert
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox