linux-mips
[Top] [All Lists]

Re: [PATCH] SOUND: Fix non-ISA_DMA_API build failure

To: Ralf Baechle <ralf@linux-mips.org>
Subject: Re: [PATCH] SOUND: Fix non-ISA_DMA_API build failure
From: Takashi Iwai <tiwai@suse.de>
Date: Fri, 24 Jun 2011 14:22:41 +0200
Cc: Mauro Carvalho Chehab <mchehab@infradead.org>, Jaroslav Kysela <perex@perex.cz>, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, alsa-devel@alsa-project.org, linux-mips@linux-mips.org
In-reply-to: <20110624111608.GA6327@linux-mips.org>
References: <20110623144750.GA10180@linux-mips.org> <s5hzkl7zlcq.wl%tiwai@suse.de> <20110624111608.GA6327@linux-mips.org>
Sender: linux-mips-bounce@linux-mips.org
User-agent: Wanderlust/2.15.6 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.9 (=?iso-2022-jp-2?b?R29qGyQoRCtXGyhC?=) APEL/10.7 Emacs/23.2 (x86_64-suse-linux-gnu) MULE/6.0 (HANACHIRUSATO)
At Fri, 24 Jun 2011 12:16:08 +0100,
Ralf Baechle wrote:
> 
> On Fri, Jun 24, 2011 at 10:26:13AM +0200, Takashi Iwai wrote:
> 
> > Hrm...  I still don't understand why ES18XX or others were selected at
> > the first place.  Isn't it covered by the conditional in
> > sound/isa/Kconfig like below?
> > 
> > ================================================================
> > menuconfig SND_ISA
> >     bool "ISA sound devices"
> >     depends on ISA && ISA_DMA_API
> > ...
> > if SND_ISA
> > ...
> > config SND_ES18XX
> >     tristate "Generic ESS ES18xx driver"
> > ...
> > endif       # SND_ISA
> > ================================================================
> > 
> > Isn't SND_ISA=n in your case although ISA_DMA_API=n?
> 
> The answer is hidden in this Kconfig warning:
> 
> warning: (RADIO_MIROPCM20) selects SND_ISA which has unmet direct 
> dependencies (SOUND && !M68K && SND && ISA && ISA_DMA_API)
> 
> This is due to the following in drivers/media/radio/Kconfig:
> 
> config RADIO_MIROPCM20
>         tristate "miroSOUND PCM20 radio"
>         depends on ISA && VIDEO_V4L2 && SND
>         select SND_ISA
>         select SND_MIRO
> 
> So SND_ISA gets forced on even though the dependency on ISA_DMA_API is not
> fulfilled.  That's solved by adding the dependency on ISA_DMA_API to
> RADIO_MIROPCM20.

Ah, yeah, I see now.


> > Also, adlib driver is really only for ISA, so I see no big reason to
> > allow this built for non-ISA.
> 
> With the patch applied:
> 
> [...]
> menuconfig SND_ISA
>         bool "ISA sound devices"
>         depends on ISA
> [...]
> 
> if SND_ISA
> 
> config SND_ADLIB
>         tristate "AdLib FM card"
>         select SND_OPL3_LIB
> [...]
> 
> So the Adlib driver will still only be built with ISA enabled.  The only
> thing that makes the Adlib driver different from all the others in the
> ifdef SND_ISA ... endif bracket is that it does not directly or indirectly
> use the ISA DMA API and that's in the end the reason why sound/isa/Kconfig
> needs to be changed.
> 
> I originally approach this a different way but now that I'm explaining the
> details I notice that it probably makes sense to split this patch into two:
> 
>  o The drivers/media/radio/Kconfig part should be applied for 3.0 and
>    maybe -stable.

Yes, this will be good.

>  o The sound/isa/Kconfig part is basically only fixing the dependency for
>    the Adlib driver allowing it to be built on non-ISA_DMA_API system and
>    is material for the next release after 3.0.

Any serious reason that snd-adlib must be built even with ISA=n?
As the device is really present only for ISA, it doesn't make much
sense to build this even though the driver itself doesn't need
ISA_DMA_API.


thanks,

Takashi

<Prev in Thread] Current Thread [Next in Thread>