2019-05-19 13:07:45 +01:00
# SPDX-License-Identifier: GPL-2.0-only
2014-03-16 08:21:34 +04:00
menu "SoC Audio for Freescale CPUs"
2014-03-16 08:21:35 +04:00
comment "Common SoC Audio options for Freescale CPUs:"
2014-07-29 18:08:53 +08:00
config SND_SOC_FSL_ASRC
tristate "Asynchronous Sample Rate Converter (ASRC) module support"
2016-06-02 18:29:24 +05:30
depends on HAS_DMA
2014-07-29 18:08:53 +08:00
select REGMAP_MMIO
2014-07-30 11:27:06 -03:00
select SND_SOC_GENERIC_DMAENGINE_PCM
2014-07-29 18:08:53 +08:00
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.
2013-12-17 11:24:38 +08:00
config SND_SOC_FSL_SAI
2014-04-30 18:10:05 +08:00
tristate "Synchronous Audio Interface (SAI) module support"
2014-02-11 10:47:04 +08:00
select REGMAP_MMIO
2014-06-03 14:11:56 +02:00
select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
2013-12-17 11:24:38 +08:00
select SND_SOC_GENERIC_DMAENGINE_PCM
2014-04-30 18:10:05 +08:00
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.
2013-12-17 11:24:38 +08:00
2019-09-13 17:42:14 +08:00
config SND_SOC_FSL_MQS
tristate "Medium Quality Sound (MQS) module support"
depends on SND_SOC_FSL_SAI
select REGMAP_MMIO
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.
2019-01-22 11:14:26 +00:00
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.
2012-03-16 16:56:38 +08:00
config SND_SOC_FSL_SSI
2015-04-09 15:32:09 -03:00
tristate "Synchronous Serial Interface module (SSI) support"
2014-04-29 21:36:22 +02:00
select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
2014-06-03 14:11:56 +02:00
select SND_SOC_IMX_PCM_FIQ if SND_IMX_SOC != n && (MXC_TZIC || MXC_AVIC)
2014-05-27 10:24:25 +02:00
select REGMAP_MMIO
2014-03-16 08:21:35 +04:00
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.
2008-07-29 11:42:28 +01:00
2013-08-21 11:13:16 +08:00
config SND_SOC_FSL_SPDIF
2015-04-09 15:32:09 -03:00
tristate "Sony/Philips Digital Interface (S/PDIF) module support"
2014-02-11 10:47:04 +08:00
select REGMAP_MMIO
2014-04-29 21:36:22 +02:00
select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
2014-06-03 14:11:56 +02:00
select SND_SOC_IMX_PCM_FIQ if SND_IMX_SOC != n && (MXC_TZIC || MXC_AVIC)
2016-11-05 16:16:32 -07:00
select BITREVERSE
2014-03-16 08:21:35 +04:00
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.
2013-08-21 11:13:16 +08:00
2014-01-10 17:54:06 +08:00
config SND_SOC_FSL_ESAI
2014-04-30 18:10:06 +08:00
tristate "Enhanced Serial Audio Interface (ESAI) module support"
2014-02-11 10:47:04 +08:00
select REGMAP_MMIO
2014-06-03 14:11:56 +02:00
select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
2014-04-30 18:10:06 +08:00
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.
2014-01-10 17:54:06 +08:00
2019-01-04 09:17:38 +00:00
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
help
Say Y if you want to add Pulse Density Modulation microphone
interface (MICFIL) support for NXP.
2020-04-16 20:25:37 +08:00
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.
2020-10-13 15:17:32 +03:00
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
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.
2020-11-02 09:52:27 +08:00
config SND_SOC_FSL_AUD2HTX
tristate "AUDIO TO HDMI TX module support"
2020-11-26 14:14:53 +08:00
depends on ARCH_MXC || COMPILE_TEST
2021-01-03 14:53:17 +01:00
select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
2020-11-02 09:52:27 +08:00
help
Say Y if you want to add AUDIO TO HDMI TX support for NXP.
2012-03-16 16:56:40 +08:00
config SND_SOC_FSL_UTILS
2009-01-19 11:57:46 -06:00
tristate
2012-03-16 16:56:40 +08:00
2021-03-12 10:38:41 +08:00
config SND_SOC_FSL_RPMSG
tristate "NXP Audio Base On RPMSG support"
depends on COMMON_CLK
depends on RPMSG
2021-05-14 23:31:14 +02:00
depends on SND_IMX_SOC || SND_IMX_SOC = n
2021-03-12 10:38:41 +08:00
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.
2014-03-16 08:21:34 +04:00
config SND_SOC_IMX_PCM_DMA
tristate
select SND_SOC_GENERIC_DMAENGINE_PCM
2021-03-12 10:38:43 +08:00
config SND_SOC_IMX_AUDIO_RPMSG
tristate
depends on RPMSG
ASoC: imx-pcm-rpmsg: Add platform driver for audio base on rpmsg
Platform driver based on rpmsg is the interface for sending and
receiving rpmsg to and from M core. It will tell the Cortex-M core
sound format/rate/channel, where is the data buffer, where is
the period size, when to start, when to stop and when suspend
or resume happen, each this behavior there is defined rpmsg
command.
Especially we designed the low power audio case, that is to
allocate a large buffer and fill the data, then Cortex-A core can go
to sleep mode, Cortex-M core continue to play the sound, when the
buffer is consumed, Cortex-M core will trigger the Cortex-A core to
wake up.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Link: https://lore.kernel.org/r/1615516725-4975-6-git-send-email-shengjiu.wang@nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2021-03-12 10:38:44 +08:00
config SND_SOC_IMX_PCM_RPMSG
tristate
depends on SND_SOC_IMX_AUDIO_RPMSG
select SND_SOC_GENERIC_DMAENGINE_PCM
2014-03-16 08:21:34 +04:00
config SND_SOC_IMX_AUDMUX
2014-03-16 08:21:35 +04:00
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.
2014-03-16 08:21:34 +04:00
config SND_POWERPC_SOC
2012-03-16 16:56:38 +08:00
tristate "SoC Audio for Freescale PowerPC CPUs"
2012-09-20 10:36:43 -04:00
depends on FSL_SOC || PPC_MPC52xx
2012-03-16 16:56:38 +08:00
help
Say Y or M if you want to add support for codecs attached to
the PowerPC CPUs.
2014-03-16 08:21:34 +04:00
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.
2012-03-16 16:56:38 +08:00
if SND_POWERPC_SOC
2009-05-23 19:12:59 -04:00
config SND_MPC52xx_DMA
tristate
2008-07-29 11:42:28 +01:00
2012-03-16 16:56:37 +08:00
config SND_SOC_POWERPC_DMA
2009-01-19 11:57:46 -06:00
tristate
2008-01-11 18:15:26 +01:00
2014-03-16 08:21:34 +04:00
comment "SoC Audio support for Freescale PPC boards:"
2008-01-11 18:15:26 +01:00
config SND_SOC_MPC8610_HPCD
2009-01-19 11:57:46 -06:00
tristate "ALSA SoC support for the Freescale MPC8610 HPCD board"
2009-01-22 18:23:39 -06:00
# I2C is necessary for the CS4270 driver
depends on MPC8610_HPCD && I2C
2012-03-16 16:56:37 +08:00
select SND_SOC_FSL_SSI
2012-03-16 16:56:40 +08:00
select SND_SOC_FSL_UTILS
2012-03-16 16:56:37 +08:00
select SND_SOC_POWERPC_DMA
2008-01-11 18:15:26 +01:00
select SND_SOC_CS4270
select SND_SOC_CS4270_VD33_ERRATA
default y if MPC8610_HPCD
help
Say Y if you want to enable audio on the Freescale MPC8610 HPCD.
2008-07-29 11:42:30 +01:00
2010-08-19 17:11:40 -05:00
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
2012-03-16 16:56:37 +08:00
select SND_SOC_FSL_SSI
2012-03-16 16:56:40 +08:00
select SND_SOC_FSL_UTILS
2012-03-16 16:56:37 +08:00
select SND_SOC_POWERPC_DMA
2010-08-19 17:11:40 -05:00
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.
2012-10-12 14:09:18 -05:00
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.
2008-07-29 11:42:30 +01:00
config SND_SOC_MPC5200_I2S
tristate "Freescale MPC5200 PSC in I2S mode driver"
2009-05-04 16:03:21 +02:00
depends on PPC_MPC52xx && PPC_BESTCOMM
2009-05-23 19:12:59 -04:00
select SND_MPC52xx_DMA
2008-11-14 05:19:00 -07:00
select PPC_BESTCOMM_GEN_BD
2008-07-29 11:42:30 +01:00
help
Say Y here to support the MPC5200 PSCs in I2S mode.
2009-05-26 08:34:10 -04:00
config SND_SOC_MPC5200_AC97
tristate "Freescale MPC5200 PSC in AC97 mode driver"
depends on PPC_MPC52xx && PPC_BESTCOMM
2009-06-28 01:41:52 -06:00
select SND_SOC_AC97_BUS
2009-05-26 08:34:10 -04:00
select SND_MPC52xx_DMA
select PPC_BESTCOMM_GEN_BD
help
Say Y here to support the MPC5200 PSCs in AC97 mode.
2009-05-26 08:34:12 -04:00
config SND_MPC52xx_SOC_PCM030
tristate "SoC AC97 Audio support for Phytec pcm030 and WM9712"
2009-06-28 01:42:06 -06:00
depends on PPC_MPC5200_SIMPLE
2009-05-26 08:34:12 -04:00
select SND_SOC_MPC5200_AC97
select SND_SOC_WM9712
help
2009-05-26 21:14:59 +01:00
Say Y if you want to add support for sound on the Phytec pcm030
baseboard.
2009-05-26 08:34:10 -04:00
2009-05-26 08:34:14 -04:00
config SND_MPC52xx_SOC_EFIKA
tristate "SoC AC97 Audio support for bbplan Efika and STAC9766"
2009-06-28 01:42:06 -06:00
depends on PPC_EFIKA
2009-05-26 08:34:14 -04:00
select SND_SOC_MPC5200_AC97
select SND_SOC_STAC9766
help
Say Y if you want to add support for sound on the Efika.
2012-03-16 16:56:38 +08:00
endif # SND_POWERPC_SOC
2019-04-16 15:12:23 +02:00
config SND_SOC_IMX_PCM_FIQ
tristate
2020-11-10 17:39:37 -03:00
default y if (SND_SOC_FSL_SSI=m || SND_SOC_FSL_SPDIF=m) && (MXC_TZIC || MXC_AVIC)
2019-04-16 15:12:23 +02:00
select FIQ
2012-03-16 16:56:38 +08:00
if SND_IMX_SOC
2014-03-16 08:21:34 +04:00
comment "SoC Audio support for Freescale i.MX boards:"
2012-03-16 16:56:38 +08:00
config SND_SOC_EUKREA_TLV320
tristate "Eukrea TLV320"
2018-12-13 00:08:38 -02:00
depends on ARCH_MXC && !ARM64 && I2C
2014-03-06 14:04:42 +04:00
select SND_SOC_TLV320AIC23_I2C
2012-03-16 16:56:38 +08:00
select SND_SOC_IMX_AUDMUX
2014-01-15 18:23:25 +01:00
select SND_SOC_FSL_SSI
select SND_SOC_IMX_PCM_DMA
2012-03-16 16:56:38 +08:00
help
Enable I2S based access to the TLV320AIC23B codec attached
to the SSI interface
2014-07-31 10:43:37 +08:00
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.
2012-03-16 16:56:44 +08:00
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.
2013-08-28 12:04:46 +08:00
config SND_SOC_IMX_SPDIF
tristate "SoC Audio support for i.MX boards with S/PDIF"
select SND_SOC_IMX_PCM_DMA
select SND_SOC_FSL_SPDIF
help
SoC Audio support for i.MX boards with S/PDIF
Say Y if you want to add support for SoC audio on an i.MX board with
a S/DPDIF.
2014-08-19 17:36:41 +08:00
config SND_SOC_FSL_ASOC_CARD
tristate "Generic ASoC Sound Card with ASRC support"
depends on OF && I2C
2015-11-24 23:21:10 +01:00
# enforce SND_SOC_FSL_ASOC_CARD=m if SND_AC97_CODEC=m:
depends on SND_AC97_CODEC || SND_AC97_CODEC=n
2020-07-15 22:09:39 +08:00
select SND_SIMPLE_CARD_UTILS
2014-08-19 17:36:41 +08:00
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
2021-03-17 21:05:02 +08:00
select SND_SOC_WM8994
select MFD_WM8994
2014-08-19 17:36:41 +08:00
help
ALSA SoC Audio support with ASRC feature for Freescale SoCs that have
2016-01-29 11:01:00 +00:00
ESAI/SAI/SSI and connect with external CODECs such as WM8962, CS42888,
2020-08-21 09:11:53 +02:00
CS4271, CS4272, SGTL5000 and TLV320AIC32x4.
2014-08-19 17:36:41 +08:00
Say Y if you want to add support for Freescale Generic ASoC Sound Card.
2019-01-22 11:14:30 +00:00
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.
2020-12-06 18:41:59 +08:00
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.
2021-03-12 10:38:45 +08:00
config SND_SOC_IMX_RPMSG
tristate "SoC Audio support for i.MX boards with rpmsg"
depends on RPMSG
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.
2021-05-17 18:31:28 +08:00
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.
2012-03-16 16:56:38 +08:00
endif # SND_IMX_SOC
2014-03-16 08:21:34 +04:00
endmenu