[PATCH v3 30/38] sound: add HAS_IOPORT dependencies
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.
Co-developed-by: Arnd Bergmann arnd@kernel.org Signed-off-by: Niklas Schnelle schnelle@linux.ibm.com --- sound/drivers/Kconfig | 3 +++ sound/isa/Kconfig | 31 ++++++++++++++++++++++++++--- sound/pci/Kconfig | 45 ++++++++++++++++++++++++++++++++----------- sound/pcmcia/Kconfig | 2 ++ 4 files changed, 67 insertions(+), 14 deletions(-)
diff --git a/sound/drivers/Kconfig b/sound/drivers/Kconfig index be3009746f3a..864991d8776d 100644 --- a/sound/drivers/Kconfig +++ b/sound/drivers/Kconfig @@ -128,6 +128,7 @@ config SND_VIRMIDI
config SND_MTPAV tristate "MOTU MidiTimePiece AV multiport MIDI" + depends on HAS_IOPORT select SND_RAWMIDI help To use a MOTU MidiTimePiece AV multiport MIDI adapter @@ -152,6 +153,7 @@ config SND_MTS64
config SND_SERIAL_U16550 tristate "UART16550 serial MIDI driver" + depends on HAS_IOPORT select SND_RAWMIDI help To include support for MIDI serial port interfaces, say Y here @@ -185,6 +187,7 @@ config SND_SERIAL_GENERIC
config SND_MPU401 tristate "Generic MPU-401 UART driver" + depends on HAS_IOPORT select SND_MPU401_UART help Say Y here to include support for MIDI ports compatible with diff --git a/sound/isa/Kconfig b/sound/isa/Kconfig index 6ffa48dd5983..c7cef1e656fa 100644 --- a/sound/isa/Kconfig +++ b/sound/isa/Kconfig @@ -23,6 +23,7 @@ menuconfig SND_ISA bool "ISA sound devices" depends on ISA || COMPILE_TEST depends on ISA_DMA_API + depends on HAS_IOPORT default y help Support for sound devices connected via the ISA bus. @@ -31,6 +32,7 @@ if SND_ISA
config SND_ADLIB tristate "AdLib FM card" + depends on HAS_IOPORT select SND_OPL3_LIB help Say Y here to include support for AdLib FM cards. @@ -41,6 +43,7 @@ config SND_ADLIB config SND_AD1816A tristate "Analog Devices SoundPort AD1816A" depends on PNP + depends on HAS_IOPORT select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART @@ -69,6 +72,7 @@ config SND_AD1848 config SND_ALS100 tristate "Diamond Tech. DT-019x and Avance Logic ALSxxx" depends on PNP + depends on HAS_IOPORT select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART @@ -84,6 +88,7 @@ config SND_ALS100 config SND_AZT1605 tristate "Aztech AZT1605 Driver" depends on SND + depends on HAS_IOPORT select SND_WSS_LIB select SND_MPU401_UART select SND_OPL3_LIB @@ -97,6 +102,7 @@ config SND_AZT1605 config SND_AZT2316 tristate "Aztech AZT2316 Driver" depends on SND + depends on HAS_IOPORT select SND_WSS_LIB select SND_MPU401_UART select SND_OPL3_LIB @@ -110,6 +116,7 @@ config SND_AZT2316 config SND_AZT2320 tristate "Aztech Systems AZT2320" depends on PNP + depends on HAS_IOPORT select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART @@ -123,6 +130,7 @@ config SND_AZT2320
config SND_CMI8328 tristate "C-Media CMI8328" + depends on HAS_IOPORT select SND_WSS_LIB select SND_OPL3_LIB select SND_MPU401_UART @@ -135,6 +143,7 @@ config SND_CMI8328
config SND_CMI8330 tristate "C-Media CMI8330" + depends on HAS_IOPORT select SND_WSS_LIB select SND_SB16_DSP select SND_OPL3_LIB @@ -148,6 +157,7 @@ config SND_CMI8330
config SND_CS4231 tristate "Generic Cirrus Logic CS4231 driver" + depends on HAS_IOPORT select SND_MPU401_UART select SND_WSS_LIB help @@ -159,6 +169,7 @@ config SND_CS4231
config SND_CS4236 tristate "Generic Cirrus Logic CS4232/CS4236+ driver" + depends on HAS_IOPORT select SND_OPL3_LIB select SND_MPU401_UART select SND_WSS_LIB @@ -172,6 +183,7 @@ config SND_CS4236
config SND_ES1688 tristate "Generic ESS ES688/ES1688 and ES968 PnP driver" + depends on HAS_IOPORT select SND_OPL3_LIB select SND_MPU401_UART select SND_PCM @@ -184,6 +196,7 @@ config SND_ES1688
config SND_ES18XX tristate "Generic ESS ES18xx driver" + depends on HAS_IOPORT select SND_OPL3_LIB select SND_MPU401_UART select SND_PCM @@ -195,7 +208,7 @@ config SND_ES18XX
config SND_SC6000 tristate "Gallant SC-6000/6600/7000 and Audio Excel DSP 16" - depends on HAS_IOPORT_MAP + depends on HAS_IOPORT_MAP && HAS_IOPORT select SND_WSS_LIB select SND_OPL3_LIB select SND_MPU401_UART @@ -223,6 +236,7 @@ config SND_GUSCLASSIC
config SND_GUSEXTREME tristate "Gravis UltraSound Extreme" + depends on HAS_IOPORT select SND_OPL3_LIB select SND_MPU401_UART select SND_PCM @@ -273,6 +287,7 @@ config SND_INTERWAVE_STB
config SND_JAZZ16 tristate "Media Vision Jazz16 card and compatibles" + depends on HAS_IOPORT select SND_OPL3_LIB select SND_MPU401_UART select SND_SB8_DSP @@ -289,6 +304,7 @@ config SND_JAZZ16
config SND_OPL3SA2 tristate "Yamaha OPL3-SA2/SA3" + depends on HAS_IOPORT select SND_OPL3_LIB select SND_MPU401_UART select SND_WSS_LIB @@ -301,6 +317,7 @@ config SND_OPL3SA2
config SND_OPTI92X_AD1848 tristate "OPTi 82C92x - AD1848" + depends on HAS_IOPORT select SND_OPL3_LIB select SND_OPL4_LIB select SND_MPU401_UART @@ -314,6 +331,7 @@ config SND_OPTI92X_AD1848
config SND_OPTI92X_CS4231 tristate "OPTi 82C92x - CS4231" + depends on HAS_IOPORT select SND_OPL3_LIB select SND_OPL4_LIB select SND_MPU401_UART @@ -327,6 +345,7 @@ config SND_OPTI92X_CS4231
config SND_OPTI93X tristate "OPTi 82C93x" + depends on HAS_IOPORT select SND_OPL3_LIB select SND_MPU401_UART select SND_WSS_LIB @@ -339,6 +358,7 @@ config SND_OPTI93X
config SND_MIRO tristate "Miro miroSOUND PCM1pro/PCM12/PCM20radio driver" + depends on HAS_IOPORT select SND_OPL4_LIB select SND_WSS_LIB select SND_MPU401_UART @@ -352,6 +372,7 @@ config SND_MIRO
config SND_SB8 tristate "Sound Blaster 1.0/2.0/Pro (8-bit)" + depends on HAS_IOPORT select SND_OPL3_LIB select SND_RAWMIDI select SND_SB8_DSP @@ -364,6 +385,7 @@ config SND_SB8
config SND_SB16 tristate "Sound Blaster 16 (PnP)" + depends on HAS_IOPORT select SND_OPL3_LIB select SND_MPU401_UART select SND_SB16_DSP @@ -376,6 +398,7 @@ config SND_SB16
config SND_SBAWE tristate "Sound Blaster AWE (32,64) (PnP)" + depends on HAS_IOPORT select SND_OPL3_LIB select SND_MPU401_UART select SND_SB16_DSP @@ -405,6 +428,7 @@ config SND_SB16_CSP
config SND_SSCAPE tristate "Ensoniq SoundScape driver" + depends on HAS_IOPORT select SND_MPU401_UART select SND_WSS_LIB select FW_LOADER @@ -426,6 +450,7 @@ config SND_SSCAPE
config SND_WAVEFRONT tristate "Turtle Beach Maui,Tropez,Tropez+ (Wavefront)" + depends on HAS_IOPORT select FW_LOADER select SND_OPL3_LIB select SND_MPU401_UART @@ -439,7 +464,7 @@ config SND_WAVEFRONT
config SND_MSND_PINNACLE tristate "Turtle Beach MultiSound Pinnacle/Fiji driver" - depends on X86 + depends on X86 && HAS_IOPORT select FW_LOADER select SND_MPU401_UART select SND_PCM @@ -452,7 +477,7 @@ config SND_MSND_PINNACLE
config SND_MSND_CLASSIC tristate "Support for Turtle Beach MultiSound Classic, Tahiti, Monterey" - depends on X86 + depends on X86 && HAS_IOPORT select FW_LOADER select SND_MPU401_UART select SND_PCM diff --git a/sound/pci/Kconfig b/sound/pci/Kconfig index a55836225401..e8780bade58f 100644 --- a/sound/pci/Kconfig +++ b/sound/pci/Kconfig @@ -26,7 +26,7 @@ config SND_ALS300 select SND_PCM select SND_AC97_CODEC select SND_OPL3_LIB - depends on ZONE_DMA + depends on ZONE_DMA && HAS_IOPORT help Say 'Y' or 'M' to include support for Avance Logic ALS300/ALS300+
@@ -36,6 +36,7 @@ config SND_ALS300 config SND_ALS4000 tristate "Avance Logic ALS4000" depends on ISA_DMA_API + depends on HAS_IOPORT select SND_OPL3_LIB select SND_MPU401_UART select SND_PCM @@ -51,7 +52,7 @@ config SND_ALI5451 tristate "ALi M5451 PCI Audio Controller" select SND_MPU401_UART select SND_AC97_CODEC - depends on ZONE_DMA + depends on ZONE_DMA && HAS_IOPORT help Say Y here to include support for the integrated AC97 sound device on motherboards using the ALi M5451 Audio Controller @@ -96,6 +97,7 @@ config SND_ATIIXP_MODEM
config SND_AU8810 tristate "Aureal Advantage" + depends on HAS_IOPORT select SND_MPU401_UART select SND_AC97_CODEC help @@ -110,6 +112,7 @@ config SND_AU8810
config SND_AU8820 tristate "Aureal Vortex" + depends on HAS_IOPORT select SND_MPU401_UART select SND_AC97_CODEC help @@ -123,6 +126,7 @@ config SND_AU8820
config SND_AU8830 tristate "Aureal Vortex 2" + depends on HAS_IOPORT select SND_MPU401_UART select SND_AC97_CODEC help @@ -157,7 +161,7 @@ config SND_AZT3328 select SND_RAWMIDI select SND_AC97_CODEC select SND_TIMER - depends on ZONE_DMA + depends on ZONE_DMA && HAS_IOPORT help Say Y here to include support for Aztech AZF3328 (PCI168) soundcards. @@ -193,6 +197,7 @@ config SND_BT87X_OVERCLOCK
config SND_CA0106 tristate "SB Audigy LS / Live 24bit" + depends on HAS_IOPORT select SND_AC97_CODEC select SND_RAWMIDI select SND_VMASTER @@ -205,6 +210,7 @@ config SND_CA0106
config SND_CMIPCI tristate "C-Media 8338, 8738, 8768, 8770" + depends on HAS_IOPORT select SND_OPL3_LIB select SND_MPU401_UART select SND_PCM @@ -221,6 +227,7 @@ config SND_OXYGEN_LIB
config SND_OXYGEN tristate "C-Media 8786, 8787, 8788 (Oxygen)" + depends on HAS_IOPORT select SND_OXYGEN_LIB select SND_PCM select SND_MPU401_UART @@ -246,6 +253,7 @@ config SND_OXYGEN
config SND_CS4281 tristate "Cirrus Logic (Sound Fusion) CS4281" + depends on HAS_IOPORT select SND_OPL3_LIB select SND_RAWMIDI select SND_AC97_CODEC @@ -257,6 +265,7 @@ config SND_CS4281
config SND_CS46XX tristate "Cirrus Logic (Sound Fusion) CS4280/CS461x/CS462x/CS463x" + depends on HAS_IOPORT select SND_RAWMIDI select SND_AC97_CODEC select FW_LOADER @@ -290,6 +299,7 @@ config SND_CS5530 config SND_CS5535AUDIO tristate "CS5535/CS5536 Audio" depends on X86_32 || MIPS || COMPILE_TEST + depends on HAS_IOPORT select SND_PCM select SND_AC97_CODEC help @@ -307,6 +317,7 @@ config SND_CS5535AUDIO
config SND_CTXFI tristate "Creative Sound Blaster X-Fi" + depends on HAS_IOPORT select SND_PCM help If you want to use soundcards based on Creative Sound Blastr X-Fi @@ -468,7 +479,7 @@ config SND_EMU10K1 select SND_AC97_CODEC select SND_TIMER select SND_SEQ_DEVICE if SND_SEQUENCER != n - depends on ZONE_DMA + depends on ZONE_DMA && HAS_IOPORT help Say Y to include support for Sound Blaster PCI 512, Live!, Audigy and E-mu APS (partially supported) soundcards. @@ -491,7 +502,7 @@ config SND_EMU10K1X tristate "Emu10k1X (Dell OEM Version)" select SND_AC97_CODEC select SND_RAWMIDI - depends on ZONE_DMA + depends on ZONE_DMA && HAS_IOPORT help Say Y here to include support for the Dell OEM version of the Sound Blaster Live!. @@ -501,6 +512,7 @@ config SND_EMU10K1X
config SND_ENS1370 tristate "(Creative) Ensoniq AudioPCI 1370" + depends on HAS_IOPORT select SND_RAWMIDI select SND_PCM help @@ -511,6 +523,7 @@ config SND_ENS1370
config SND_ENS1371 tristate "(Creative) Ensoniq AudioPCI 1371/1373" + depends on HAS_IOPORT select SND_RAWMIDI select SND_AC97_CODEC help @@ -525,7 +538,7 @@ config SND_ES1938 select SND_OPL3_LIB select SND_MPU401_UART select SND_AC97_CODEC - depends on ZONE_DMA + depends on ZONE_DMA && HAS_IOPORT help Say Y here to include support for soundcards based on ESS Solo-1 (ES1938, ES1946, ES1969) chips. @@ -537,7 +550,7 @@ config SND_ES1968 tristate "ESS ES1968/1978 (Maestro-1/2/2E)" select SND_MPU401_UART select SND_AC97_CODEC - depends on ZONE_DMA + depends on ZONE_DMA && HAS_IOPORT help Say Y here to include support for soundcards based on ESS Maestro 1/2/2E chips. @@ -569,6 +582,7 @@ config SND_ES1968_RADIO
config SND_FM801 tristate "ForteMedia FM801" + depends on HAS_IOPORT select SND_OPL3_LIB select SND_MPU401_UART select SND_AC97_CODEC @@ -624,7 +638,7 @@ config SND_ICE1712 select SND_MPU401_UART select SND_AC97_CODEC select BITREVERSE - depends on ZONE_DMA + depends on ZONE_DMA && HAS_IOPORT help Say Y here to include support for soundcards based on the ICE1712 (Envy24) chip. @@ -640,6 +654,7 @@ config SND_ICE1712
config SND_ICE1724 tristate "ICE/VT1724/1720 (Envy24HT/PT)" + depends on HAS_IOPORT select SND_RAWMIDI select SND_AC97_CODEC select SND_VMASTER @@ -712,7 +727,7 @@ config SND_LX6464ES config SND_MAESTRO3 tristate "ESS Allegro/Maestro3" select SND_AC97_CODEC - depends on ZONE_DMA + depends on ZONE_DMA && HAS_IOPORT help Say Y here to include support for soundcards based on ESS Maestro 3 (Allegro) chips. @@ -753,6 +768,7 @@ config SND_NM256
config SND_PCXHR tristate "Digigram PCXHR" + depends on HAS_IOPORT select FW_LOADER select SND_PCM select SND_HWDEP @@ -764,6 +780,7 @@ config SND_PCXHR
config SND_RIPTIDE tristate "Conexant Riptide" + depends on HAS_IOPORT select FW_LOADER select SND_OPL3_LIB select SND_MPU401_UART @@ -808,6 +825,7 @@ config SND_RME9652 config SND_SE6X tristate "Studio Evolution SE6X" depends on SND_OXYGEN=n && SND_VIRTUOSO=n # PCI ID conflict + depends on HAS_IOPORT select SND_OXYGEN_LIB select SND_PCM select SND_MPU401_UART @@ -830,7 +848,7 @@ config SND_SONICVIBES select SND_OPL3_LIB select SND_MPU401_UART select SND_AC97_CODEC - depends on ZONE_DMA + depends on ZONE_DMA && HAS_IOPORT help Say Y here to include support for soundcards based on the S3 SonicVibes chip. @@ -842,7 +860,7 @@ config SND_TRIDENT tristate "Trident 4D-Wave DX/NX; SiS 7018" select SND_MPU401_UART select SND_AC97_CODEC - depends on ZONE_DMA + depends on ZONE_DMA && HAS_IOPORT help Say Y here to include support for soundcards based on Trident 4D-Wave DX/NX or SiS 7018 chips. @@ -852,6 +870,7 @@ config SND_TRIDENT
config SND_VIA82XX tristate "VIA 82C686A/B, 8233/8235 AC97 Controller" + depends on HAS_IOPORT select SND_MPU401_UART select SND_AC97_CODEC help @@ -863,6 +882,7 @@ config SND_VIA82XX
config SND_VIA82XX_MODEM tristate "VIA 82C686A/B, 8233 based Modems" + depends on HAS_IOPORT select SND_AC97_CODEC help Say Y here to include support for the integrated MC97 modem on @@ -873,6 +893,7 @@ config SND_VIA82XX_MODEM
config SND_VIRTUOSO tristate "Asus Virtuoso 66/100/200 (Xonar)" + depends on HAS_IOPORT select SND_OXYGEN_LIB select SND_PCM select SND_MPU401_UART @@ -889,6 +910,7 @@ config SND_VIRTUOSO
config SND_VX222 tristate "Digigram VX222" + depends on HAS_IOPORT select SND_VX_LIB help Say Y here to include support for Digigram VX222 soundcards. @@ -898,6 +920,7 @@ config SND_VX222
config SND_YMFPCI tristate "Yamaha YMF724/740/744/754" + depends on HAS_IOPORT select SND_OPL3_LIB select SND_MPU401_UART select SND_AC97_CODEC diff --git a/sound/pcmcia/Kconfig b/sound/pcmcia/Kconfig index 10291c43cb18..b133ad423f84 100644 --- a/sound/pcmcia/Kconfig +++ b/sound/pcmcia/Kconfig @@ -13,6 +13,7 @@ if SND_PCMCIA && PCMCIA config SND_VXPOCKET tristate "Digigram VXpocket" select SND_VX_LIB + depends on HAS_IOPORT help Say Y here to include support for Digigram VXpocket and VXpocket 440 soundcards. @@ -22,6 +23,7 @@ config SND_VXPOCKET
config SND_PDAUDIOCF tristate "Sound Core PDAudioCF" + depends on HAS_IOPORT select SND_PCM help Say Y here to include support for Sound Core PDAudioCF
On Tue, 14 Mar 2023 13:12:08 +0100, Niklas Schnelle wrote:
--- a/sound/isa/Kconfig +++ b/sound/isa/Kconfig @@ -23,6 +23,7 @@ menuconfig SND_ISA bool "ISA sound devices" depends on ISA || COMPILE_TEST depends on ISA_DMA_API
- depends on HAS_IOPORT default y help Support for sound devices connected via the ISA bus.
With this dependency, ...
@@ -31,6 +32,7 @@ if SND_ISA
config SND_ADLIB tristate "AdLib FM card"
- depends on HAS_IOPORT select SND_OPL3_LIB help Say Y here to include support for AdLib FM cards.
... this and lots of other similar changes become redundant, as they already depend on CONFIG_SND_ISA.
--- a/sound/pcmcia/Kconfig +++ b/sound/pcmcia/Kconfig @@ -13,6 +13,7 @@ if SND_PCMCIA && PCMCIA config SND_VXPOCKET tristate "Digigram VXpocket" select SND_VX_LIB
- depends on HAS_IOPORT help Say Y here to include support for Digigram VXpocket and VXpocket 440 soundcards.
@@ -22,6 +23,7 @@ config SND_VXPOCKET
config SND_PDAUDIOCF tristate "Sound Core PDAudioCF"
- depends on HAS_IOPORT select SND_PCM help Say Y here to include support for Sound Core PDAudioCF
I guess it's easier to make CONFIG_SND_PCMCIA depending on CONFIG_HAS_IOPORT (like done for CONFIG_SND_ISA).
thanks,
Takashi
On Tue, 2023-03-14 at 13:33 +0100, Takashi Iwai wrote:
On Tue, 14 Mar 2023 13:12:08 +0100, Niklas Schnelle wrote:
--- a/sound/isa/Kconfig +++ b/sound/isa/Kconfig @@ -23,6 +23,7 @@ menuconfig SND_ISA bool "ISA sound devices" depends on ISA || COMPILE_TEST depends on ISA_DMA_API
- depends on HAS_IOPORT default y help Support for sound devices connected via the ISA bus.
With this dependency, ...
@@ -31,6 +32,7 @@ if SND_ISA
config SND_ADLIB tristate "AdLib FM card"
- depends on HAS_IOPORT select SND_OPL3_LIB help Say Y here to include support for AdLib FM cards.
... this and lots of other similar changes become redundant, as they already depend on CONFIG_SND_ISA.
Good point and semantically it makes sense too since ISA is closely associated with I/O ports.
--- a/sound/pcmcia/Kconfig +++ b/sound/pcmcia/Kconfig @@ -13,6 +13,7 @@ if SND_PCMCIA && PCMCIA config SND_VXPOCKET tristate "Digigram VXpocket" select SND_VX_LIB
- depends on HAS_IOPORT help Say Y here to include support for Digigram VXpocket and VXpocket 440 soundcards.
@@ -22,6 +23,7 @@ config SND_VXPOCKET
config SND_PDAUDIOCF tristate "Sound Core PDAudioCF"
- depends on HAS_IOPORT select SND_PCM help Say Y here to include support for Sound Core PDAudioCF
I guess it's easier to make CONFIG_SND_PCMCIA depending on CONFIG_HAS_IOPORT (like done for CONFIG_SND_ISA).
In principle I think there could be a MMIO based PCMCIA sound card but it appears there is none currently supported and I doubt someone adds one so yeah that makes sense even if it isn't as clear cut as with CONFIG_SND_ISA.
I've changed both vor v4. Thanks!
participants (2)
-
Niklas Schnelle
-
Takashi Iwai