Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0-only
0002 menu "SoC Audio for Freescale CPUs"
0003 
0004 comment "Common SoC Audio options for Freescale CPUs:"
0005 
0006 config SND_SOC_FSL_ASRC
0007         tristate "Asynchronous Sample Rate Converter (ASRC) module support"
0008         depends on HAS_DMA
0009         select REGMAP_MMIO
0010         select SND_SOC_GENERIC_DMAENGINE_PCM
0011         help
0012           Say Y if you want to add Asynchronous Sample Rate Converter (ASRC)
0013           support for the Freescale CPUs.
0014           This option is only useful for out-of-tree drivers since
0015           in-tree drivers select it automatically.
0016 
0017 config SND_SOC_FSL_SAI
0018         tristate "Synchronous Audio Interface (SAI) module support"
0019         select REGMAP_MMIO
0020         select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
0021         select SND_SOC_GENERIC_DMAENGINE_PCM
0022         select SND_SOC_FSL_UTILS
0023         help
0024           Say Y if you want to add Synchronous Audio Interface (SAI)
0025           support for the Freescale CPUs.
0026           This option is only useful for out-of-tree drivers since
0027           in-tree drivers select it automatically.
0028 
0029 config SND_SOC_FSL_MQS
0030         tristate "Medium Quality Sound (MQS) module support"
0031         depends on SND_SOC_FSL_SAI
0032         select REGMAP_MMIO
0033         help
0034           Say Y if you want to add Medium Quality Sound (MQS)
0035           support for the Freescale CPUs.
0036           This option is only useful for out-of-tree drivers since
0037           in-tree drivers select it automatically.
0038 
0039 config SND_SOC_FSL_AUDMIX
0040         tristate "Audio Mixer (AUDMIX) module support"
0041         select REGMAP_MMIO
0042         help
0043           Say Y if you want to add Audio Mixer (AUDMIX)
0044           support for the NXP iMX CPUs.
0045 
0046 config SND_SOC_FSL_SSI
0047         tristate "Synchronous Serial Interface module (SSI) support"
0048         select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
0049         select SND_SOC_IMX_PCM_FIQ if SND_IMX_SOC != n && (MXC_TZIC || MXC_AVIC)
0050         select REGMAP_MMIO
0051         help
0052           Say Y if you want to add Synchronous Serial Interface (SSI)
0053           support for the Freescale CPUs.
0054           This option is only useful for out-of-tree drivers since
0055           in-tree drivers select it automatically.
0056 
0057 config SND_SOC_FSL_SPDIF
0058         tristate "Sony/Philips Digital Interface (S/PDIF) module support"
0059         select REGMAP_MMIO
0060         select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
0061         select SND_SOC_IMX_PCM_FIQ if SND_IMX_SOC != n && (MXC_TZIC || MXC_AVIC)
0062         select BITREVERSE
0063         select SND_SOC_FSL_UTILS
0064         help
0065           Say Y if you want to add Sony/Philips Digital Interface (SPDIF)
0066           support for the Freescale CPUs.
0067           This option is only useful for out-of-tree drivers since
0068           in-tree drivers select it automatically.
0069 
0070 config SND_SOC_FSL_ESAI
0071         tristate "Enhanced Serial Audio Interface (ESAI) module support"
0072         select REGMAP_MMIO
0073         select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
0074         help
0075           Say Y if you want to add Enhanced Synchronous Audio Interface
0076           (ESAI) support for the Freescale CPUs.
0077           This option is only useful for out-of-tree drivers since
0078           in-tree drivers select it automatically.
0079 
0080 config SND_SOC_FSL_MICFIL
0081         tristate "Pulse Density Modulation Microphone Interface (MICFIL) module support"
0082         select REGMAP_MMIO
0083         select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
0084         select SND_SOC_GENERIC_DMAENGINE_PCM
0085         select SND_SOC_FSL_UTILS
0086         help
0087           Say Y if you want to add Pulse Density Modulation microphone
0088           interface (MICFIL) support for NXP.
0089 
0090 config SND_SOC_FSL_EASRC
0091         tristate "Enhanced Asynchronous Sample Rate Converter (EASRC) module support"
0092         depends on SND_SOC_FSL_ASRC
0093         select REGMAP_MMIO
0094         select SND_SOC_GENERIC_DMAENGINE_PCM
0095         help
0096           Say Y if you want to add Enhanced ASRC support for NXP. The ASRC is
0097           a digital module that converts audio from a source sample rate to a
0098           destination sample rate. It is a new design module compare with the
0099           old ASRC.
0100 
0101 config SND_SOC_FSL_XCVR
0102         tristate "NXP Audio Transceiver (XCVR) module support"
0103         select REGMAP_MMIO
0104         select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
0105         select SND_SOC_GENERIC_DMAENGINE_PCM
0106         help
0107           Say Y if you want to add Audio Transceiver (XCVR) support for NXP
0108           iMX CPUs. XCVR is a digital module that supports HDMI2.1 eARC,
0109           HDMI1.4 ARC and SPDIF.
0110 
0111 config SND_SOC_FSL_AUD2HTX
0112         tristate "AUDIO TO HDMI TX module support"
0113         depends on ARCH_MXC || COMPILE_TEST
0114         select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
0115         help
0116           Say Y if you want to add AUDIO TO HDMI TX support for NXP.
0117 
0118 config SND_SOC_FSL_UTILS
0119         tristate
0120 
0121 config SND_SOC_FSL_RPMSG
0122         tristate "NXP Audio Base On RPMSG support"
0123         depends on COMMON_CLK
0124         depends on RPMSG
0125         depends on SND_IMX_SOC || SND_IMX_SOC = n
0126         select SND_SOC_IMX_RPMSG if SND_IMX_SOC != n
0127         help
0128           Say Y if you want to add rpmsg audio support for the Freescale CPUs.
0129           This option is only useful for out-of-tree drivers since
0130           in-tree drivers select it automatically.
0131 
0132 config SND_SOC_IMX_PCM_DMA
0133         tristate
0134         select SND_SOC_GENERIC_DMAENGINE_PCM
0135 
0136 config SND_SOC_IMX_AUDIO_RPMSG
0137         tristate
0138         depends on RPMSG
0139 
0140 config SND_SOC_IMX_PCM_RPMSG
0141         tristate
0142         depends on SND_SOC_IMX_AUDIO_RPMSG
0143         select SND_SOC_GENERIC_DMAENGINE_PCM
0144 
0145 config SND_SOC_IMX_AUDMUX
0146         tristate "Digital Audio Mux module support"
0147         help
0148           Say Y if you want to add Digital Audio Mux (AUDMUX) support
0149           for the ARM i.MX CPUs.
0150           This option is only useful for out-of-tree drivers since
0151           in-tree drivers select it automatically.
0152 
0153 config SND_POWERPC_SOC
0154         tristate "SoC Audio for Freescale PowerPC CPUs"
0155         depends on FSL_SOC || PPC_MPC52xx
0156         help
0157           Say Y or M if you want to add support for codecs attached to
0158           the PowerPC CPUs.
0159 
0160 config SND_IMX_SOC
0161         tristate "SoC Audio for Freescale i.MX CPUs"
0162         depends on ARCH_MXC || COMPILE_TEST
0163         help
0164           Say Y or M if you want to add support for codecs attached to
0165           the i.MX CPUs.
0166 
0167 if SND_POWERPC_SOC
0168 
0169 config SND_MPC52xx_DMA
0170         tristate
0171 
0172 config SND_SOC_POWERPC_DMA
0173         tristate
0174 
0175 comment "SoC Audio support for Freescale PPC boards:"
0176 
0177 config SND_SOC_MPC8610_HPCD
0178         tristate "ALSA SoC support for the Freescale MPC8610 HPCD board"
0179         # I2C is necessary for the CS4270 driver
0180         depends on MPC8610_HPCD && I2C
0181         select SND_SOC_FSL_SSI
0182         select SND_SOC_FSL_UTILS
0183         select SND_SOC_POWERPC_DMA
0184         select SND_SOC_CS4270
0185         select SND_SOC_CS4270_VD33_ERRATA
0186         default y if MPC8610_HPCD
0187         help
0188           Say Y if you want to enable audio on the Freescale MPC8610 HPCD.
0189 
0190 config SND_SOC_P1022_DS
0191         tristate "ALSA SoC support for the Freescale P1022 DS board"
0192         # I2C is necessary for the WM8776 driver
0193         depends on P1022_DS && I2C
0194         select SND_SOC_FSL_SSI
0195         select SND_SOC_FSL_UTILS
0196         select SND_SOC_POWERPC_DMA
0197         select SND_SOC_WM8776
0198         default y if P1022_DS
0199         help
0200           Say Y if you want to enable audio on the Freescale P1022 DS board.
0201           This will also include the Wolfson Microelectronics WM8776 codec
0202           driver.
0203 
0204 config SND_SOC_P1022_RDK
0205         tristate "ALSA SoC support for the Freescale / iVeia P1022 RDK board"
0206         # I2C is necessary for the WM8960 driver
0207         depends on P1022_RDK && I2C
0208         select SND_SOC_FSL_SSI
0209         select SND_SOC_FSL_UTILS
0210         select SND_SOC_POWERPC_DMA
0211         select SND_SOC_WM8960
0212         default y if P1022_RDK
0213         help
0214           Say Y if you want to enable audio on the Freescale / iVeia
0215           P1022 RDK board.  This will also include the Wolfson
0216           Microelectronics WM8960 codec driver.
0217 
0218 config SND_SOC_MPC5200_I2S
0219         tristate "Freescale MPC5200 PSC in I2S mode driver"
0220         depends on PPC_MPC52xx && PPC_BESTCOMM
0221         select SND_MPC52xx_DMA
0222         select PPC_BESTCOMM_GEN_BD
0223         help
0224           Say Y here to support the MPC5200 PSCs in I2S mode.
0225 
0226 config SND_SOC_MPC5200_AC97
0227         tristate "Freescale MPC5200 PSC in AC97 mode driver"
0228         depends on PPC_MPC52xx && PPC_BESTCOMM
0229         select SND_SOC_AC97_BUS
0230         select SND_MPC52xx_DMA
0231         select PPC_BESTCOMM_GEN_BD
0232         help
0233           Say Y here to support the MPC5200 PSCs in AC97 mode.
0234 
0235 config SND_MPC52xx_SOC_PCM030
0236         tristate "SoC AC97 Audio support for Phytec pcm030 and WM9712"
0237         depends on PPC_MPC5200_SIMPLE
0238         select SND_SOC_MPC5200_AC97
0239         select SND_SOC_WM9712
0240         help
0241           Say Y if you want to add support for sound on the Phytec pcm030
0242           baseboard.
0243 
0244 config SND_MPC52xx_SOC_EFIKA
0245         tristate "SoC AC97 Audio support for bbplan Efika and STAC9766"
0246         depends on PPC_EFIKA
0247         select SND_SOC_MPC5200_AC97
0248         select SND_SOC_STAC9766
0249         help
0250           Say Y if you want to add support for sound on the Efika.
0251 
0252 endif # SND_POWERPC_SOC
0253 
0254 config SND_SOC_IMX_PCM_FIQ
0255         tristate
0256         default y if (SND_SOC_FSL_SSI=m || SND_SOC_FSL_SPDIF=m) && (MXC_TZIC || MXC_AVIC)
0257         select FIQ
0258 
0259 if SND_IMX_SOC
0260 
0261 comment "SoC Audio support for Freescale i.MX boards:"
0262 
0263 config SND_SOC_EUKREA_TLV320
0264         tristate "Eukrea TLV320"
0265         depends on ARCH_MXC && !ARM64 && I2C
0266         select SND_SOC_TLV320AIC23_I2C
0267         select SND_SOC_IMX_AUDMUX
0268         select SND_SOC_FSL_SSI
0269         select SND_SOC_IMX_PCM_DMA
0270         help
0271           Enable I2S based access to the TLV320AIC23B codec attached
0272           to the SSI interface
0273 
0274 config SND_SOC_IMX_ES8328
0275         tristate "SoC Audio support for i.MX boards with the ES8328 codec"
0276         depends on OF && (I2C || SPI)
0277         select SND_SOC_ES8328_I2C if I2C
0278         select SND_SOC_ES8328_SPI if SPI_MASTER
0279         select SND_SOC_IMX_PCM_DMA
0280         select SND_SOC_IMX_AUDMUX
0281         select SND_SOC_FSL_SSI
0282         help
0283           Say Y if you want to add support for the ES8328 audio codec connected
0284           via SSI/I2S over either SPI or I2C.
0285 
0286 config SND_SOC_IMX_SGTL5000
0287         tristate "SoC Audio support for i.MX boards with sgtl5000"
0288         depends on OF && I2C
0289         select SND_SOC_SGTL5000
0290         select SND_SOC_IMX_PCM_DMA
0291         select SND_SOC_IMX_AUDMUX
0292         select SND_SOC_FSL_SSI
0293         help
0294           Say Y if you want to add support for SoC audio on an i.MX board with
0295           a sgtl5000 codec.
0296 
0297 config SND_SOC_IMX_SPDIF
0298         tristate "SoC Audio support for i.MX boards with S/PDIF"
0299         select SND_SOC_IMX_PCM_DMA
0300         select SND_SOC_FSL_SPDIF
0301         help
0302           SoC Audio support for i.MX boards with S/PDIF
0303           Say Y if you want to add support for SoC audio on an i.MX board with
0304           a S/DPDIF.
0305 
0306 config SND_SOC_FSL_ASOC_CARD
0307         tristate "Generic ASoC Sound Card with ASRC support"
0308         depends on OF && I2C
0309         # enforce SND_SOC_FSL_ASOC_CARD=m if SND_AC97_CODEC=m:
0310         depends on SND_AC97_CODEC || SND_AC97_CODEC=n
0311         select SND_SIMPLE_CARD_UTILS
0312         select SND_SOC_IMX_AUDMUX
0313         select SND_SOC_IMX_PCM_DMA
0314         select SND_SOC_FSL_ESAI
0315         select SND_SOC_FSL_SAI
0316         select SND_SOC_FSL_SSI
0317         select SND_SOC_TLV320AIC31XX
0318         select SND_SOC_WM8994
0319         select MFD_WM8994
0320         help
0321          ALSA SoC Audio support with ASRC feature for Freescale SoCs that have
0322          ESAI/SAI/SSI and connect with external CODECs such as WM8962, CS42888,
0323          CS4271, CS4272, SGTL5000 and TLV320AIC32x4.
0324          Say Y if you want to add support for Freescale Generic ASoC Sound Card.
0325 
0326 config SND_SOC_IMX_AUDMIX
0327         tristate "SoC Audio support for i.MX boards with AUDMIX"
0328         select SND_SOC_FSL_AUDMIX
0329         select SND_SOC_FSL_SAI
0330         help
0331           SoC Audio support for i.MX boards with Audio Mixer
0332           Say Y if you want to add support for SoC audio on an i.MX board with
0333           an Audio Mixer.
0334 
0335 config SND_SOC_IMX_HDMI
0336         tristate "SoC Audio support for i.MX boards with HDMI port"
0337         select SND_SOC_FSL_SAI
0338         select SND_SOC_FSL_AUD2HTX
0339         select SND_SOC_HDMI_CODEC
0340         help
0341           ALSA SoC Audio support with HDMI feature for Freescale SoCs that have
0342           SAI/AUD2HTX and connect with internal HDMI IP or external module
0343           SII902X.
0344           Say Y if you want to add support for SoC audio on an i.MX board with
0345           IMX HDMI.
0346 
0347 config SND_SOC_IMX_RPMSG
0348         tristate "SoC Audio support for i.MX boards with rpmsg"
0349         depends on RPMSG
0350         select SND_SOC_IMX_PCM_RPMSG
0351         select SND_SOC_IMX_AUDIO_RPMSG
0352         help
0353           SoC Audio support for i.MX boards with rpmsg.
0354           There should be rpmsg devices defined in other core (M core)
0355           Say Y if you want to add support for SoC audio on an i.MX board with
0356           a rpmsg devices.
0357 
0358 config SND_SOC_IMX_CARD
0359         tristate "SoC Audio Graph Sound Card support for i.MX boards"
0360         depends on OF && I2C
0361         select SND_SOC_AK4458
0362         select SND_SOC_AK5558
0363         select SND_SOC_IMX_PCM_DMA
0364         select SND_SOC_FSL_SAI
0365         select SND_SIMPLE_CARD_UTILS
0366         help
0367           This option enables audio sound card support for i.MX boards
0368           with OF-graph DT bindings.
0369           It also support DPCM of single CPU multi Codec ststem.
0370 
0371 endif # SND_IMX_SOC
0372 
0373 endmenu