xref: /linux/sound/soc/atmel/Kconfig (revision 177bf8620cf4ed290ee170a6c5966adc0924b336)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
2*4f30f84fSKuninori Morimotomenu "Atmel"
3153f5a18SJoachim Eastwood	depends on HAS_IOMEM
4fb67cdfbSAlexandre Belloni
592dfa619SBo Shenconfig SND_ATMEL_SOC_PDC
69437bfdaSArnd Bergmann	bool
792dfa619SBo Shen
83951e4aaSBo Shenconfig SND_ATMEL_SOC_DMA
99437bfdaSArnd Bergmann	bool
1095e0e07eSBo Shen	select SND_SOC_GENERIC_DMAENGINE_PCM
113951e4aaSBo Shen
126c742509SSedji Gaouaouconfig SND_ATMEL_SOC_SSC
136c742509SSedji Gaouaou	tristate
148fea7802SChen Zhou	select SND_ATMEL_SOC_DMA
158fea7802SChen Zhou	select SND_ATMEL_SOC_PDC
1618291410SMichał Mirosław
1718291410SMichał Mirosławconfig SND_ATMEL_SOC_SSC_PDC
1818291410SMichał Mirosław	tristate "SoC PCM DAI support for AT91 SSC controller using PDC"
1918291410SMichał Mirosław	depends on ATMEL_SSC
2018291410SMichał Mirosław	select SND_ATMEL_SOC_PDC
2118291410SMichał Mirosław	select SND_ATMEL_SOC_SSC
2218291410SMichał Mirosław	help
2318291410SMichał Mirosław	  Say Y or M if you want to add support for Atmel SSC interface
2418291410SMichał Mirosław	  in PDC mode configured using audio-graph-card in device-tree.
2518291410SMichał Mirosław
2618291410SMichał Mirosławconfig SND_ATMEL_SOC_SSC_DMA
2718291410SMichał Mirosław	tristate "SoC PCM DAI support for AT91 SSC controller using DMA"
2818291410SMichał Mirosław	depends on ATMEL_SSC
2918291410SMichał Mirosław	select SND_ATMEL_SOC_DMA
3018291410SMichał Mirosław	select SND_ATMEL_SOC_SSC
3118291410SMichał Mirosław	help
3218291410SMichał Mirosław	  Say Y or M if you want to add support for Atmel SSC interface
3318291410SMichał Mirosław	  in DMA mode configured using audio-graph-card in device-tree.
346c742509SSedji Gaouaou
356c742509SSedji Gaouaouconfig SND_AT91_SOC_SAM9G20_WM8731
366c742509SSedji Gaouaou	tristate "SoC Audio support for WM8731-based At91sam9g20 evaluation board"
37ada602b3SLars-Peter Clausen	depends on ARCH_AT91 || COMPILE_TEST
389dc15f81SMark Brown	depends on ATMEL_SSC && I2C
39061981ffSAlexandre Belloni	select SND_ATMEL_SOC_SSC_PDC
409dc15f81SMark Brown	select SND_SOC_WM8731_I2C
416c742509SSedji Gaouaou	help
426c742509SSedji Gaouaou	  Say Y if you want to add support for SoC audio on WM8731-based
436c742509SSedji Gaouaou	  AT91sam9g20 evaluation board.
446c742509SSedji Gaouaou
4552f19b14SBo Shenconfig SND_ATMEL_SOC_WM8904
4652f19b14SBo Shen	tristate "Atmel ASoC driver for boards using WM8904 codec"
47ada602b3SLars-Peter Clausen	depends on ARCH_AT91 || COMPILE_TEST
48fb67cdfbSAlexandre Belloni	depends on ATMEL_SSC && I2C
49061981ffSAlexandre Belloni	select SND_ATMEL_SOC_SSC_DMA
5052f19b14SBo Shen	select SND_SOC_WM8904
5152f19b14SBo Shen	help
5252f19b14SBo Shen	  Say Y if you want to add support for Atmel ASoC driver for boards using
5352f19b14SBo Shen	  WM8904 codec.
5452f19b14SBo Shen
55fdbcb3cbSNicolas Ferreconfig SND_AT91_SOC_SAM9X5_WM8731
56fdbcb3cbSNicolas Ferre	tristate "SoC Audio support for WM8731-based at91sam9x5 board"
57ada602b3SLars-Peter Clausen	depends on ARCH_AT91 || COMPILE_TEST
58fb67cdfbSAlexandre Belloni	depends on ATMEL_SSC && SND_SOC_I2C_AND_SPI
59061981ffSAlexandre Belloni	select SND_ATMEL_SOC_SSC_DMA
60fdbcb3cbSNicolas Ferre	select SND_SOC_WM8731
61fdbcb3cbSNicolas Ferre	help
62fdbcb3cbSNicolas Ferre	  Say Y if you want to add support for audio SoC on an
63fdbcb3cbSNicolas Ferre	  at91sam9x5 based board that is using WM8731 codec.
64e0a25b6dSSongjun Wu
65e0a25b6dSSongjun Wuconfig SND_ATMEL_SOC_CLASSD
66e0a25b6dSSongjun Wu	tristate "Atmel ASoC driver for boards using CLASSD"
67e0a25b6dSSongjun Wu	depends on ARCH_AT91 || COMPILE_TEST
680f0be40bSAlexandre Belloni	select SND_SOC_GENERIC_DMAENGINE_PCM
69e0a25b6dSSongjun Wu	select REGMAP_MMIO
70e0a25b6dSSongjun Wu	help
71e0a25b6dSSongjun Wu	  Say Y if you want to add support for Atmel ASoC driver for boards using
72e0a25b6dSSongjun Wu	  CLASSD.
73a7664ab2SSongjun Wu
74a7664ab2SSongjun Wuconfig SND_ATMEL_SOC_PDMIC
75a7664ab2SSongjun Wu	tristate "Atmel ASoC driver for boards using PDMIC"
76a7664ab2SSongjun Wu	depends on OF && (ARCH_AT91 || COMPILE_TEST)
77a7664ab2SSongjun Wu	select SND_SOC_GENERIC_DMAENGINE_PCM
78a7664ab2SSongjun Wu	select REGMAP_MMIO
79a7664ab2SSongjun Wu	help
80a7664ab2SSongjun Wu	  Say Y if you want to add support for Atmel ASoC driver for boards using
81a7664ab2SSongjun Wu	  PDMIC.
82aa431124SPeter Rosin
83aa431124SPeter Rosinconfig SND_ATMEL_SOC_TSE850_PCM5142
84aa431124SPeter Rosin	tristate "ASoC driver for the Axentia TSE-850"
85aa431124SPeter Rosin	depends on ARCH_AT91 && OF
86aa431124SPeter Rosin	depends on ATMEL_SSC && I2C
87aa431124SPeter Rosin	select SND_ATMEL_SOC_SSC_DMA
88aa431124SPeter Rosin	select SND_SOC_PCM512x_I2C
89aa431124SPeter Rosin	help
90aa431124SPeter Rosin	  Say Y if you want to add support for the ASoC driver for the
91aa431124SPeter Rosin	  Axentia TSE-850 with a PCM5142 codec.
92b543e467SCyrille Pitchen
93b543e467SCyrille Pitchenconfig SND_ATMEL_SOC_I2S
94b543e467SCyrille Pitchen	tristate "Atmel ASoC driver for boards using I2S"
95b543e467SCyrille Pitchen	depends on OF && (ARCH_AT91 || COMPILE_TEST)
96b543e467SCyrille Pitchen	select SND_SOC_GENERIC_DMAENGINE_PCM
97b543e467SCyrille Pitchen	select REGMAP_MMIO
98b543e467SCyrille Pitchen	help
99b543e467SCyrille Pitchen	  Say Y or M if you want to add support for Atmel ASoc driver for boards
100b543e467SCyrille Pitchen	  using I2S.
101a45f8853SCodrin Ciubotariu
102a45f8853SCodrin Ciubotariuconfig SND_SOC_MIKROE_PROTO
103a45f8853SCodrin Ciubotariu	tristate "Support for Mikroe-PROTO board"
104a45f8853SCodrin Ciubotariu	depends on OF
10553c156abSArnd Bergmann	depends on SND_SOC_I2C_AND_SPI
106a45f8853SCodrin Ciubotariu	select SND_SOC_WM8731
107a45f8853SCodrin Ciubotariu	help
108a45f8853SCodrin Ciubotariu	  Say Y or M if you want to add support for MikroElektronika PROTO Audio
109a45f8853SCodrin Ciubotariu	  Board. This board contains the WM8731 codec, which can be configured
110a45f8853SCodrin Ciubotariu	  using I2C over SDA (MPU Data Input) and SCL (MPU Clock Input) pins.
111a45f8853SCodrin Ciubotariu	  Both playback and capture are supported.
112a45f8853SCodrin Ciubotariu
113b87d37d0SCodrin Ciubotariuconfig SND_MCHP_SOC_I2S_MCC
114b87d37d0SCodrin Ciubotariu	tristate "Microchip ASoC driver for boards using I2S MCC"
115b87d37d0SCodrin Ciubotariu	depends on OF && (ARCH_AT91 || COMPILE_TEST)
116b87d37d0SCodrin Ciubotariu	select SND_SOC_GENERIC_DMAENGINE_PCM
117b87d37d0SCodrin Ciubotariu	select REGMAP_MMIO
118b87d37d0SCodrin Ciubotariu	help
119b87d37d0SCodrin Ciubotariu	  Say Y or M if you want to add support for I2S Multi-Channel ASoC
120b87d37d0SCodrin Ciubotariu	  driver on the following Microchip platforms:
121b87d37d0SCodrin Ciubotariu	  - sam9x60
12299ac2f8dSCodrin Ciubotariu	  - sama7g5
123b87d37d0SCodrin Ciubotariu
124b87d37d0SCodrin Ciubotariu	  The I2SMCC complies with the Inter-IC Sound (I2S) bus specification
125b87d37d0SCodrin Ciubotariu	  and supports a Time Division Multiplexed (TDM) interface with
126b87d37d0SCodrin Ciubotariu	  external multi-channel audio codecs.
12799ac2f8dSCodrin Ciubotariu	  Starting with sama7g5, I2S and Left-Justified multi-channel is
12899ac2f8dSCodrin Ciubotariu	  supported by using multiple data pins, output and input, without TDM.
129b87d37d0SCodrin Ciubotariu
13006ca24e9SCodrin Ciubotariuconfig SND_MCHP_SOC_SPDIFTX
13106ca24e9SCodrin Ciubotariu	tristate "Microchip ASoC driver for boards using S/PDIF TX"
13206ca24e9SCodrin Ciubotariu	depends on OF && (ARCH_AT91 || COMPILE_TEST)
13306ca24e9SCodrin Ciubotariu	select SND_SOC_GENERIC_DMAENGINE_PCM
13406ca24e9SCodrin Ciubotariu	select REGMAP_MMIO
13506ca24e9SCodrin Ciubotariu	help
13606ca24e9SCodrin Ciubotariu	  Say Y or M if you want to add support for Microchip S/PDIF TX ASoc
13706ca24e9SCodrin Ciubotariu	  driver on the following Microchip platforms:
13806ca24e9SCodrin Ciubotariu	  - sama7g5
13906ca24e9SCodrin Ciubotariu
14006ca24e9SCodrin Ciubotariu	  This S/PDIF TX driver is compliant with IEC-60958 standard and
14113733775SColin Ian King	  includes programmable User Data and Channel Status fields.
142ef265c55SCodrin Ciubotariu
143ef265c55SCodrin Ciubotariuconfig SND_MCHP_SOC_SPDIFRX
144ef265c55SCodrin Ciubotariu	tristate "Microchip ASoC driver for boards using S/PDIF RX"
145ef265c55SCodrin Ciubotariu	depends on OF && (ARCH_AT91 || COMPILE_TEST)
14629275309SArnd Bergmann	depends on COMMON_CLK
147ef265c55SCodrin Ciubotariu	select SND_SOC_GENERIC_DMAENGINE_PCM
148ef265c55SCodrin Ciubotariu	select REGMAP_MMIO
149ef265c55SCodrin Ciubotariu	help
150ef265c55SCodrin Ciubotariu	  Say Y or M if you want to add support for Microchip S/PDIF RX ASoc
151ef265c55SCodrin Ciubotariu	  driver on the following Microchip platforms:
152ef265c55SCodrin Ciubotariu	  - sama7g5
153ef265c55SCodrin Ciubotariu
154ef265c55SCodrin Ciubotariu	  This S/PDIF RX driver is compliant with IEC-60958 standard and
15513733775SColin Ian King	  includes programmable User Data and Channel Status fields.
15650291652SCodrin Ciubotariu
15750291652SCodrin Ciubotariuconfig SND_MCHP_SOC_PDMC
15850291652SCodrin Ciubotariu	tristate "Microchip ASoC driver for boards using PDMC"
15950291652SCodrin Ciubotariu	depends on OF && (ARCH_AT91 || COMPILE_TEST)
16050291652SCodrin Ciubotariu	select SND_SOC_GENERIC_DMAENGINE_PCM
16150291652SCodrin Ciubotariu	select REGMAP_MMIO
16250291652SCodrin Ciubotariu	help
16350291652SCodrin Ciubotariu	  Say Y or M if you want to add support for Microchip ASoC PDMC driver on the
16450291652SCodrin Ciubotariu	  following Microchip platforms:
16550291652SCodrin Ciubotariu	  - sama7g5
16650291652SCodrin Ciubotariu
16750291652SCodrin Ciubotariu	  The Pulse Density Microphone Controller (PDMC) interfaces up to 4 digital
16850291652SCodrin Ciubotariu	  microphones PDM outputs. It generates a single clock line and samples 1 or
16950291652SCodrin Ciubotariu	  2 data lines. The signal path includes an audio grade programmable
17050291652SCodrin Ciubotariu	  decimation filter and outputs 24-bit audio words.
17150291652SCodrin Ciubotariu
172*4f30f84fSKuninori Morimotoendmenu
173