| # SPDX-License-Identifier: GPL-2.0-only |
| menu "SoC Audio for Freescale CPUs" |
| |
| comment "Common SoC Audio options for Freescale CPUs:" |
| |
| config SND_SOC_FSL_ASRC |
| tristate "Asynchronous Sample Rate Converter (ASRC) module support" |
| depends on HAS_DMA |
| select REGMAP_MMIO |
| select SND_SOC_GENERIC_DMAENGINE_PCM |
| help |
| Say Y if you want to add Asynchronous Sample Rate Converter (ASRC) |
| support for the Freescale CPUs. |
| This option is only useful for out-of-tree drivers since |
| in-tree drivers select it automatically. |
| |
| config SND_SOC_FSL_SAI |
| tristate "Synchronous Audio Interface (SAI) module support" |
| select REGMAP_MMIO |
| select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n |
| select SND_SOC_GENERIC_DMAENGINE_PCM |
| select SND_SOC_FSL_UTILS |
| help |
| Say Y if you want to add Synchronous Audio Interface (SAI) |
| support for the Freescale CPUs. |
| This option is only useful for out-of-tree drivers since |
| in-tree drivers select it automatically. |
| |
| config SND_SOC_FSL_MQS |
| tristate "Medium Quality Sound (MQS) module support" |
| depends on SND_SOC_FSL_SAI |
| select REGMAP_MMIO |
| select IMX_SCMI_MISC_DRV if IMX_SCMI_MISC_EXT !=n |
| help |
| Say Y if you want to add Medium Quality Sound (MQS) |
| support for the Freescale CPUs. |
| This option is only useful for out-of-tree drivers since |
| in-tree drivers select it automatically. |
| |
| config SND_SOC_FSL_AUDMIX |
| tristate "Audio Mixer (AUDMIX) module support" |
| select REGMAP_MMIO |
| help |
| Say Y if you want to add Audio Mixer (AUDMIX) |
| support for the NXP iMX CPUs. |
| |
| config SND_SOC_FSL_SSI |
| tristate "Synchronous Serial Interface module (SSI) support" |
| select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n |
| select SND_SOC_IMX_PCM_FIQ if SND_IMX_SOC != n && (MXC_TZIC || MXC_AVIC) |
| select REGMAP_MMIO |
| help |
| Say Y if you want to add Synchronous Serial Interface (SSI) |
| support for the Freescale CPUs. |
| This option is only useful for out-of-tree drivers since |
| in-tree drivers select it automatically. |
| |
| config SND_SOC_FSL_SPDIF |
| tristate "Sony/Philips Digital Interface (S/PDIF) module support" |
| select REGMAP_MMIO |
| select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n |
| select SND_SOC_IMX_PCM_FIQ if SND_IMX_SOC != n && (MXC_TZIC || MXC_AVIC) |
| select BITREVERSE |
| select SND_SOC_FSL_UTILS |
| help |
| Say Y if you want to add Sony/Philips Digital Interface (SPDIF) |
| support for the Freescale CPUs. |
| This option is only useful for out-of-tree drivers since |
| in-tree drivers select it automatically. |
| |
| config SND_SOC_FSL_ESAI |
| tristate "Enhanced Serial Audio Interface (ESAI) module support" |
| select REGMAP_MMIO |
| select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n |
| help |
| Say Y if you want to add Enhanced Synchronous Audio Interface |
| (ESAI) support for the Freescale CPUs. |
| This option is only useful for out-of-tree drivers since |
| in-tree drivers select it automatically. |
| |
| config SND_SOC_FSL_MICFIL |
| tristate "Pulse Density Modulation Microphone Interface (MICFIL) module support" |
| select REGMAP_MMIO |
| select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n |
| select SND_SOC_GENERIC_DMAENGINE_PCM |
| select SND_SOC_FSL_UTILS |
| help |
| Say Y if you want to add Pulse Density Modulation microphone |
| interface (MICFIL) support for NXP. |
| |
| config SND_SOC_FSL_EASRC |
| tristate "Enhanced Asynchronous Sample Rate Converter (EASRC) module support" |
| depends on SND_SOC_FSL_ASRC |
| select REGMAP_MMIO |
| select SND_SOC_GENERIC_DMAENGINE_PCM |
| help |
| Say Y if you want to add Enhanced ASRC support for NXP. The ASRC is |
| a digital module that converts audio from a source sample rate to a |
| destination sample rate. It is a new design module compare with the |
| old ASRC. |
| |
| config SND_SOC_FSL_XCVR |
| tristate "NXP Audio Transceiver (XCVR) module support" |
| select REGMAP_MMIO |
| select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n |
| select SND_SOC_GENERIC_DMAENGINE_PCM |
| select SND_SOC_FSL_UTILS |
| help |
| Say Y if you want to add Audio Transceiver (XCVR) support for NXP |
| iMX CPUs. XCVR is a digital module that supports HDMI2.1 eARC, |
| HDMI1.4 ARC and SPDIF. |
| |
| config SND_SOC_FSL_AUD2HTX |
| tristate "AUDIO TO HDMI TX module support" |
| depends on ARCH_MXC || COMPILE_TEST |
| select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n |
| help |
| Say Y if you want to add AUDIO TO HDMI TX support for NXP. |
| |
| config SND_SOC_FSL_UTILS |
| tristate |
| |
| config SND_SOC_FSL_RPMSG |
| tristate "NXP Audio Base On RPMSG support" |
| depends on COMMON_CLK |
| depends on OF && I2C |
| depends on RPMSG |
| depends on SND_IMX_SOC || SND_IMX_SOC = n |
| select SND_SOC_IMX_RPMSG if SND_IMX_SOC != n |
| help |
| Say Y if you want to add rpmsg audio support for the Freescale CPUs. |
| This option is only useful for out-of-tree drivers since |
| in-tree drivers select it automatically. |
| |
| config SND_SOC_FSL_LPC3XXX |
| tristate "SoC Audio for NXP LPC32XX CPUs" |
| depends on ARCH_LPC32XX || COMPILE_TEST |
| select SND_SOC_GENERIC_DMAENGINE_PCM |
| help |
| Say Y or M if you want to add support for the LPC3XXX I2S interface. |
| |
| config SND_SOC_IMX_PCM_DMA |
| tristate |
| select SND_SOC_GENERIC_DMAENGINE_PCM |
| |
| config SND_SOC_IMX_AUDIO_RPMSG |
| tristate |
| depends on RPMSG |
| |
| config SND_SOC_IMX_PCM_RPMSG |
| tristate |
| depends on SND_SOC_IMX_AUDIO_RPMSG |
| select SND_SOC_GENERIC_DMAENGINE_PCM |
| |
| config SND_SOC_IMX_AUDMUX |
| tristate "Digital Audio Mux module support" |
| help |
| Say Y if you want to add Digital Audio Mux (AUDMUX) support |
| for the ARM i.MX CPUs. |
| This option is only useful for out-of-tree drivers since |
| in-tree drivers select it automatically. |
| |
| config SND_POWERPC_SOC |
| tristate "SoC Audio for Freescale PowerPC CPUs" |
| depends on FSL_SOC || PPC_MPC52xx |
| help |
| Say Y or M if you want to add support for codecs attached to |
| the PowerPC CPUs. |
| |
| config SND_IMX_SOC |
| tristate "SoC Audio for Freescale i.MX CPUs" |
| depends on ARCH_MXC || COMPILE_TEST |
| help |
| Say Y or M if you want to add support for codecs attached to |
| the i.MX CPUs. |
| |
| if SND_POWERPC_SOC |
| |
| config SND_MPC52xx_DMA |
| tristate |
| |
| config SND_SOC_POWERPC_DMA |
| tristate |
| |
| config SND_SOC_POWERPC_QMC_AUDIO |
| tristate "QMC ALSA SoC support" |
| depends on CPM_QMC |
| help |
| ALSA SoC Audio support using the Freescale QUICC Multichannel |
| Controller (QMC). |
| Say Y or M if you want to add support for SoC audio using Freescale |
| QMC. |
| |
| comment "SoC Audio support for Freescale PPC boards:" |
| |
| config SND_SOC_P1022_DS |
| tristate "ALSA SoC support for the Freescale P1022 DS board" |
| # I2C is necessary for the WM8776 driver |
| depends on P1022_DS && I2C |
| select SND_SOC_FSL_SSI |
| select SND_SOC_FSL_UTILS |
| select SND_SOC_POWERPC_DMA |
| select SND_SOC_WM8776 |
| default y if P1022_DS |
| help |
| Say Y if you want to enable audio on the Freescale P1022 DS board. |
| This will also include the Wolfson Microelectronics WM8776 codec |
| driver. |
| |
| config SND_SOC_P1022_RDK |
| tristate "ALSA SoC support for the Freescale / iVeia P1022 RDK board" |
| # I2C is necessary for the WM8960 driver |
| depends on P1022_RDK && I2C |
| select SND_SOC_FSL_SSI |
| select SND_SOC_FSL_UTILS |
| select SND_SOC_POWERPC_DMA |
| select SND_SOC_WM8960 |
| default y if P1022_RDK |
| help |
| Say Y if you want to enable audio on the Freescale / iVeia |
| P1022 RDK board. This will also include the Wolfson |
| Microelectronics WM8960 codec driver. |
| |
| config SND_SOC_MPC5200_I2S |
| tristate "Freescale MPC5200 PSC in I2S mode driver" |
| depends on PPC_MPC52xx && PPC_BESTCOMM |
| select SND_MPC52xx_DMA |
| select PPC_BESTCOMM_GEN_BD |
| help |
| Say Y here to support the MPC5200 PSCs in I2S mode. |
| |
| config SND_SOC_MPC5200_AC97 |
| tristate "Freescale MPC5200 PSC in AC97 mode driver" |
| depends on PPC_MPC52xx && PPC_BESTCOMM |
| select SND_SOC_AC97_BUS |
| select SND_MPC52xx_DMA |
| select PPC_BESTCOMM_GEN_BD |
| help |
| Say Y here to support the MPC5200 PSCs in AC97 mode. |
| |
| config SND_MPC52xx_SOC_PCM030 |
| tristate "SoC AC97 Audio support for Phytec pcm030 and WM9712" |
| depends on PPC_MPC5200_SIMPLE |
| select SND_SOC_MPC5200_AC97 |
| select SND_SOC_WM9712 |
| help |
| Say Y if you want to add support for sound on the Phytec pcm030 |
| baseboard. |
| |
| config SND_MPC52xx_SOC_EFIKA |
| tristate "SoC AC97 Audio support for bbplan Efika and STAC9766" |
| depends on PPC_EFIKA |
| select SND_SOC_MPC5200_AC97 |
| select SND_SOC_STAC9766 |
| help |
| Say Y if you want to add support for sound on the Efika. |
| |
| endif # SND_POWERPC_SOC |
| |
| config SND_SOC_IMX_PCM_FIQ |
| tristate |
| default y if (SND_SOC_FSL_SSI=m || SND_SOC_FSL_SPDIF=m) && (MXC_TZIC || MXC_AVIC) |
| select FIQ |
| |
| if SND_IMX_SOC |
| |
| comment "SoC Audio support for Freescale i.MX boards:" |
| |
| config SND_SOC_EUKREA_TLV320 |
| tristate "Eukrea TLV320" |
| depends on ARCH_MXC && !ARM64 && I2C |
| select SND_SOC_TLV320AIC23_I2C |
| select SND_SOC_IMX_AUDMUX |
| select SND_SOC_FSL_SSI |
| select SND_SOC_IMX_PCM_DMA |
| help |
| Enable I2S based access to the TLV320AIC23B codec attached |
| to the SSI interface |
| |
| config SND_SOC_IMX_ES8328 |
| tristate "SoC Audio support for i.MX boards with the ES8328 codec" |
| depends on OF && (I2C || SPI) |
| select SND_SOC_ES8328_I2C if I2C |
| select SND_SOC_ES8328_SPI if SPI_MASTER |
| select SND_SOC_IMX_PCM_DMA |
| select SND_SOC_IMX_AUDMUX |
| select SND_SOC_FSL_SSI |
| help |
| Say Y if you want to add support for the ES8328 audio codec connected |
| via SSI/I2S over either SPI or I2C. |
| |
| config SND_SOC_IMX_SGTL5000 |
| tristate "SoC Audio support for i.MX boards with sgtl5000" |
| depends on OF && I2C |
| select SND_SOC_SGTL5000 |
| select SND_SOC_IMX_PCM_DMA |
| select SND_SOC_IMX_AUDMUX |
| select SND_SOC_FSL_SSI |
| help |
| Say Y if you want to add support for SoC audio on an i.MX board with |
| a sgtl5000 codec. |
| |
| Note that this is an old driver. Consider enabling |
| SND_SOC_FSL_ASOC_CARD and SND_SOC_SGTL5000 to use the newer |
| driver. |
| |
| config SND_SOC_FSL_ASOC_CARD |
| tristate "Generic ASoC Sound Card with ASRC support" |
| depends on OF && I2C |
| # enforce SND_SOC_FSL_ASOC_CARD=m if SND_AC97_CODEC=m: |
| depends on SND_AC97_CODEC || SND_AC97_CODEC=n |
| select SND_SIMPLE_CARD_UTILS |
| select SND_SOC_IMX_AUDMUX |
| select SND_SOC_IMX_PCM_DMA |
| select SND_SOC_FSL_ESAI |
| select SND_SOC_FSL_SAI |
| select SND_SOC_FSL_SSI |
| select SND_SOC_FSL_SPDIF |
| select SND_SOC_TLV320AIC31XX |
| select SND_SOC_WM8994 |
| select MFD_WM8994 |
| help |
| ALSA SoC Audio support with ASRC feature for Freescale SoCs that have |
| ESAI/SAI/SSI and connect with external CODECs such as WM8962, CS42888, |
| CS4271, CS4272, SGTL5000 and TLV320AIC32x4. |
| Say Y if you want to add support for Freescale Generic ASoC Sound Card. |
| |
| config SND_SOC_IMX_AUDMIX |
| tristate "SoC Audio support for i.MX boards with AUDMIX" |
| select SND_SOC_FSL_AUDMIX |
| select SND_SOC_FSL_SAI |
| help |
| SoC Audio support for i.MX boards with Audio Mixer |
| Say Y if you want to add support for SoC audio on an i.MX board with |
| an Audio Mixer. |
| |
| config SND_SOC_IMX_HDMI |
| tristate "SoC Audio support for i.MX boards with HDMI port" |
| select SND_SOC_FSL_SAI |
| select SND_SOC_FSL_AUD2HTX |
| select SND_SOC_HDMI_CODEC |
| help |
| ALSA SoC Audio support with HDMI feature for Freescale SoCs that have |
| SAI/AUD2HTX and connect with internal HDMI IP or external module |
| SII902X. |
| Say Y if you want to add support for SoC audio on an i.MX board with |
| IMX HDMI. |
| |
| config SND_SOC_IMX_RPMSG |
| tristate "SoC Audio support for i.MX boards with rpmsg" |
| depends on RPMSG |
| depends on OF && I2C |
| select SND_SOC_IMX_PCM_RPMSG |
| select SND_SOC_IMX_AUDIO_RPMSG |
| help |
| SoC Audio support for i.MX boards with rpmsg. |
| There should be rpmsg devices defined in other core (M core) |
| Say Y if you want to add support for SoC audio on an i.MX board with |
| a rpmsg devices. |
| |
| config SND_SOC_IMX_CARD |
| tristate "SoC Audio Graph Sound Card support for i.MX boards" |
| depends on OF && I2C |
| select SND_SOC_AK4458 |
| select SND_SOC_AK5558 |
| select SND_SOC_IMX_PCM_DMA |
| select SND_SOC_FSL_SAI |
| select SND_SIMPLE_CARD_UTILS |
| help |
| This option enables audio sound card support for i.MX boards |
| with OF-graph DT bindings. |
| It also support DPCM of single CPU multi Codec ststem. |
| |
| endif # SND_IMX_SOC |
| |
| endmenu |