9dc15f81ba
Placing both the I2C and SPI code in the same module causes problems with mixes of modular and non-modular builds of the buses so it's generally bad practice. As with other drivers split the bus code out of the WM8731 driver into separate modules. Signed-off-by: Mark Brown <broonie@kernel.org> Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20220325153121.1598494-6-broonie@kernel.org Signed-off-by: Mark Brown <broonie@kernel.org>
180 lines
5.7 KiB
Plaintext
180 lines
5.7 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0-only
|
|
config SND_ATMEL_SOC
|
|
tristate "SoC Audio for the Atmel System-on-Chip"
|
|
depends on HAS_IOMEM
|
|
help
|
|
Say Y or M if you want to add support for codecs attached to
|
|
the ATMEL SSC interface. You will also need
|
|
to select the audio interfaces to support below.
|
|
|
|
if SND_ATMEL_SOC
|
|
|
|
config SND_ATMEL_SOC_PDC
|
|
bool
|
|
|
|
config SND_ATMEL_SOC_DMA
|
|
bool
|
|
select SND_SOC_GENERIC_DMAENGINE_PCM
|
|
|
|
config SND_ATMEL_SOC_SSC
|
|
tristate
|
|
select SND_ATMEL_SOC_DMA
|
|
select SND_ATMEL_SOC_PDC
|
|
|
|
config SND_ATMEL_SOC_SSC_PDC
|
|
tristate "SoC PCM DAI support for AT91 SSC controller using PDC"
|
|
depends on ATMEL_SSC
|
|
select SND_ATMEL_SOC_PDC
|
|
select SND_ATMEL_SOC_SSC
|
|
help
|
|
Say Y or M if you want to add support for Atmel SSC interface
|
|
in PDC mode configured using audio-graph-card in device-tree.
|
|
|
|
config SND_ATMEL_SOC_SSC_DMA
|
|
tristate "SoC PCM DAI support for AT91 SSC controller using DMA"
|
|
depends on ATMEL_SSC
|
|
select SND_ATMEL_SOC_DMA
|
|
select SND_ATMEL_SOC_SSC
|
|
help
|
|
Say Y or M if you want to add support for Atmel SSC interface
|
|
in DMA mode configured using audio-graph-card in device-tree.
|
|
|
|
config SND_AT91_SOC_SAM9G20_WM8731
|
|
tristate "SoC Audio support for WM8731-based At91sam9g20 evaluation board"
|
|
depends on ARCH_AT91 || COMPILE_TEST
|
|
depends on ATMEL_SSC && I2C
|
|
select SND_ATMEL_SOC_SSC_PDC
|
|
select SND_SOC_WM8731_I2C
|
|
help
|
|
Say Y if you want to add support for SoC audio on WM8731-based
|
|
AT91sam9g20 evaluation board.
|
|
|
|
config SND_ATMEL_SOC_WM8904
|
|
tristate "Atmel ASoC driver for boards using WM8904 codec"
|
|
depends on ARCH_AT91 || COMPILE_TEST
|
|
depends on ATMEL_SSC && I2C
|
|
select SND_ATMEL_SOC_SSC_DMA
|
|
select SND_SOC_WM8904
|
|
help
|
|
Say Y if you want to add support for Atmel ASoC driver for boards using
|
|
WM8904 codec.
|
|
|
|
config SND_AT91_SOC_SAM9X5_WM8731
|
|
tristate "SoC Audio support for WM8731-based at91sam9x5 board"
|
|
depends on ARCH_AT91 || COMPILE_TEST
|
|
depends on ATMEL_SSC && SND_SOC_I2C_AND_SPI
|
|
select SND_ATMEL_SOC_SSC_DMA
|
|
select SND_SOC_WM8731
|
|
help
|
|
Say Y if you want to add support for audio SoC on an
|
|
at91sam9x5 based board that is using WM8731 codec.
|
|
|
|
config SND_ATMEL_SOC_CLASSD
|
|
tristate "Atmel ASoC driver for boards using CLASSD"
|
|
depends on ARCH_AT91 || COMPILE_TEST
|
|
select SND_SOC_GENERIC_DMAENGINE_PCM
|
|
select REGMAP_MMIO
|
|
help
|
|
Say Y if you want to add support for Atmel ASoC driver for boards using
|
|
CLASSD.
|
|
|
|
config SND_ATMEL_SOC_PDMIC
|
|
tristate "Atmel ASoC driver for boards using PDMIC"
|
|
depends on OF && (ARCH_AT91 || COMPILE_TEST)
|
|
select SND_SOC_GENERIC_DMAENGINE_PCM
|
|
select REGMAP_MMIO
|
|
help
|
|
Say Y if you want to add support for Atmel ASoC driver for boards using
|
|
PDMIC.
|
|
|
|
config SND_ATMEL_SOC_TSE850_PCM5142
|
|
tristate "ASoC driver for the Axentia TSE-850"
|
|
depends on ARCH_AT91 && OF
|
|
depends on ATMEL_SSC && I2C
|
|
select SND_ATMEL_SOC_SSC_DMA
|
|
select SND_SOC_PCM512x_I2C
|
|
help
|
|
Say Y if you want to add support for the ASoC driver for the
|
|
Axentia TSE-850 with a PCM5142 codec.
|
|
|
|
config SND_ATMEL_SOC_I2S
|
|
tristate "Atmel ASoC driver for boards using I2S"
|
|
depends on OF && (ARCH_AT91 || COMPILE_TEST)
|
|
select SND_SOC_GENERIC_DMAENGINE_PCM
|
|
select REGMAP_MMIO
|
|
help
|
|
Say Y or M if you want to add support for Atmel ASoc driver for boards
|
|
using I2S.
|
|
|
|
config SND_SOC_MIKROE_PROTO
|
|
tristate "Support for Mikroe-PROTO board"
|
|
depends on OF
|
|
depends on SND_SOC_I2C_AND_SPI
|
|
select SND_SOC_WM8731
|
|
help
|
|
Say Y or M if you want to add support for MikroElektronika PROTO Audio
|
|
Board. This board contains the WM8731 codec, which can be configured
|
|
using I2C over SDA (MPU Data Input) and SCL (MPU Clock Input) pins.
|
|
Both playback and capture are supported.
|
|
|
|
config SND_MCHP_SOC_I2S_MCC
|
|
tristate "Microchip ASoC driver for boards using I2S MCC"
|
|
depends on OF && (ARCH_AT91 || COMPILE_TEST)
|
|
select SND_SOC_GENERIC_DMAENGINE_PCM
|
|
select REGMAP_MMIO
|
|
help
|
|
Say Y or M if you want to add support for I2S Multi-Channel ASoC
|
|
driver on the following Microchip platforms:
|
|
- sam9x60
|
|
- sama7g5
|
|
|
|
The I2SMCC complies with the Inter-IC Sound (I2S) bus specification
|
|
and supports a Time Division Multiplexed (TDM) interface with
|
|
external multi-channel audio codecs.
|
|
Starting with sama7g5, I2S and Left-Justified multi-channel is
|
|
supported by using multiple data pins, output and input, without TDM.
|
|
|
|
config SND_MCHP_SOC_SPDIFTX
|
|
tristate "Microchip ASoC driver for boards using S/PDIF TX"
|
|
depends on OF && (ARCH_AT91 || COMPILE_TEST)
|
|
select SND_SOC_GENERIC_DMAENGINE_PCM
|
|
select REGMAP_MMIO
|
|
help
|
|
Say Y or M if you want to add support for Microchip S/PDIF TX ASoc
|
|
driver on the following Microchip platforms:
|
|
- sama7g5
|
|
|
|
This S/PDIF TX driver is compliant with IEC-60958 standard and
|
|
includes programmable User Data and Channel Status fields.
|
|
|
|
config SND_MCHP_SOC_SPDIFRX
|
|
tristate "Microchip ASoC driver for boards using S/PDIF RX"
|
|
depends on OF && (ARCH_AT91 || COMPILE_TEST)
|
|
depends on COMMON_CLK
|
|
select SND_SOC_GENERIC_DMAENGINE_PCM
|
|
select REGMAP_MMIO
|
|
help
|
|
Say Y or M if you want to add support for Microchip S/PDIF RX ASoc
|
|
driver on the following Microchip platforms:
|
|
- sama7g5
|
|
|
|
This S/PDIF RX driver is compliant with IEC-60958 standard and
|
|
includes programmable User Data and Channel Status fields.
|
|
|
|
config SND_MCHP_SOC_PDMC
|
|
tristate "Microchip ASoC driver for boards using PDMC"
|
|
depends on OF && (ARCH_AT91 || COMPILE_TEST)
|
|
select SND_SOC_GENERIC_DMAENGINE_PCM
|
|
select REGMAP_MMIO
|
|
help
|
|
Say Y or M if you want to add support for Microchip ASoC PDMC driver on the
|
|
following Microchip platforms:
|
|
- sama7g5
|
|
|
|
The Pulse Density Microphone Controller (PDMC) interfaces up to 4 digital
|
|
microphones PDM outputs. It generates a single clock line and samples 1 or
|
|
2 data lines. The signal path includes an audio grade programmable
|
|
decimation filter and outputs 24-bit audio words.
|
|
|
|
endif
|