Re: [RFC v2 31/39] sound: add HAS_IOPORT dependencies

From: Takashi Iwai
Date: Mon May 09 2022 - 05:33:57 EST


On Fri, 29 Apr 2022 15:50:54 +0200,
Niklas Schnelle wrote:
>
> In a future patch HAS_IOPORT=n will result in inb()/outb() and friends
> not being declared. We thus need to add HAS_IOPORT as dependency for
> those drivers using them. For SND_OPL3_LIB this adds its first
> dependency so drivers currently selecting it unconditionally need to
> depend on it instead.
>
> Co-developed-by: Arnd Bergmann <arnd@xxxxxxxxxx>
> Signed-off-by: Niklas Schnelle <schnelle@xxxxxxxxxxxxx>
> ---
> sound/drivers/Kconfig | 5 ++++
> sound/isa/Kconfig | 44 ++++++++++++++---------------
> sound/pci/Kconfig | 64 +++++++++++++++++++++++++++++--------------
> 3 files changed, 70 insertions(+), 43 deletions(-)
>
> diff --git a/sound/drivers/Kconfig b/sound/drivers/Kconfig
> index ca4cdf666f82..4d250e619786 100644
> --- a/sound/drivers/Kconfig
> +++ b/sound/drivers/Kconfig
> @@ -1,10 +1,12 @@
> # SPDX-License-Identifier: GPL-2.0-only
> config SND_MPU401_UART
> tristate
> + depends on HAS_IOPORT
> select SND_RAWMIDI
>
> config SND_OPL3_LIB
> tristate
> + depends on HAS_IOPPORT
> select SND_TIMER
> select SND_HWDEP
> select SND_SEQ_DEVICE if SND_SEQUENCER != n

Both of those are the items to be reverse-selected, so cannot fulfill
the dependency with depends-on. That is, the items that select those
should have the dependency on HAS_IOPORT instead.

That is, a change like below:

> --- a/sound/isa/Kconfig
> +++ b/sound/isa/Kconfig
> @@ -31,7 +31,7 @@ if SND_ISA
>
> config SND_ADLIB
> tristate "AdLib FM card"
> - select SND_OPL3_LIB
> + depends on SND_OPL3_LIB

... won't work. CONFIG_SND_OPL3_LIB is not enabled by itself but only
to be selected.


thanks,

Takashi