xref: /openbmc/linux/sound/soc/atmel/Kconfig (revision 4f2c0a4acffbec01079c28f839422e64ddeff004)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
26c742509SSedji Gaouaouconfig SND_ATMEL_SOC
36c742509SSedji Gaouaou	tristate "SoC Audio for the Atmel System-on-Chip"
4153f5a18SJoachim Eastwood	depends on HAS_IOMEM
56c742509SSedji Gaouaou	help
66c742509SSedji Gaouaou	  Say Y or M if you want to add support for codecs attached to
76c742509SSedji Gaouaou	  the ATMEL SSC interface. You will also need
86c742509SSedji Gaouaou	  to select the audio interfaces to support below.
96c742509SSedji Gaouaou
10fb67cdfbSAlexandre Belloniif SND_ATMEL_SOC
11fb67cdfbSAlexandre Belloni
1292dfa619SBo Shenconfig SND_ATMEL_SOC_PDC
139437bfdaSArnd Bergmann	bool
1492dfa619SBo Shen
153951e4aaSBo Shenconfig SND_ATMEL_SOC_DMA
169437bfdaSArnd Bergmann	bool
1795e0e07eSBo Shen	select SND_SOC_GENERIC_DMAENGINE_PCM
183951e4aaSBo Shen
196c742509SSedji Gaouaouconfig SND_ATMEL_SOC_SSC
206c742509SSedji Gaouaou	tristate
218fea7802SChen Zhou	select SND_ATMEL_SOC_DMA
228fea7802SChen Zhou	select SND_ATMEL_SOC_PDC
2318291410SMichał Mirosław
2418291410SMichał Mirosławconfig SND_ATMEL_SOC_SSC_PDC
2518291410SMichał Mirosław	tristate "SoC PCM DAI support for AT91 SSC controller using PDC"
2618291410SMichał Mirosław	depends on ATMEL_SSC
2718291410SMichał Mirosław	select SND_ATMEL_SOC_PDC
2818291410SMichał Mirosław	select SND_ATMEL_SOC_SSC
2918291410SMichał Mirosław	help
3018291410SMichał Mirosław	  Say Y or M if you want to add support for Atmel SSC interface
3118291410SMichał Mirosław	  in PDC mode configured using audio-graph-card in device-tree.
3218291410SMichał Mirosław
3318291410SMichał Mirosławconfig SND_ATMEL_SOC_SSC_DMA
3418291410SMichał Mirosław	tristate "SoC PCM DAI support for AT91 SSC controller using DMA"
3518291410SMichał Mirosław	depends on ATMEL_SSC
3618291410SMichał Mirosław	select SND_ATMEL_SOC_DMA
3718291410SMichał Mirosław	select SND_ATMEL_SOC_SSC
3818291410SMichał Mirosław	help
3918291410SMichał Mirosław	  Say Y or M if you want to add support for Atmel SSC interface
4018291410SMichał Mirosław	  in DMA mode configured using audio-graph-card in device-tree.
416c742509SSedji Gaouaou
426c742509SSedji Gaouaouconfig SND_AT91_SOC_SAM9G20_WM8731
436c742509SSedji Gaouaou	tristate "SoC Audio support for WM8731-based At91sam9g20 evaluation board"
44ada602b3SLars-Peter Clausen	depends on ARCH_AT91 || COMPILE_TEST
45*9dc15f81SMark Brown	depends on ATMEL_SSC && I2C
46061981ffSAlexandre Belloni	select SND_ATMEL_SOC_SSC_PDC
47*9dc15f81SMark Brown	select SND_SOC_WM8731_I2C
486c742509SSedji Gaouaou	help
496c742509SSedji Gaouaou	  Say Y if you want to add support for SoC audio on WM8731-based
506c742509SSedji Gaouaou	  AT91sam9g20 evaluation board.
516c742509SSedji Gaouaou
5252f19b14SBo Shenconfig SND_ATMEL_SOC_WM8904
5352f19b14SBo Shen	tristate "Atmel ASoC driver for boards using WM8904 codec"
54ada602b3SLars-Peter Clausen	depends on ARCH_AT91 || COMPILE_TEST
55fb67cdfbSAlexandre Belloni	depends on ATMEL_SSC && I2C
56061981ffSAlexandre Belloni	select SND_ATMEL_SOC_SSC_DMA
5752f19b14SBo Shen	select SND_SOC_WM8904
5852f19b14SBo Shen	help
5952f19b14SBo Shen	  Say Y if you want to add support for Atmel ASoC driver for boards using
6052f19b14SBo Shen	  WM8904 codec.
6152f19b14SBo Shen
62fdbcb3cbSNicolas Ferreconfig SND_AT91_SOC_SAM9X5_WM8731
63fdbcb3cbSNicolas Ferre	tristate "SoC Audio support for WM8731-based at91sam9x5 board"
64ada602b3SLars-Peter Clausen	depends on ARCH_AT91 || COMPILE_TEST
65fb67cdfbSAlexandre Belloni	depends on ATMEL_SSC && SND_SOC_I2C_AND_SPI
66061981ffSAlexandre Belloni	select SND_ATMEL_SOC_SSC_DMA
67fdbcb3cbSNicolas Ferre	select SND_SOC_WM8731
68fdbcb3cbSNicolas Ferre	help
69fdbcb3cbSNicolas Ferre	  Say Y if you want to add support for audio SoC on an
70fdbcb3cbSNicolas Ferre	  at91sam9x5 based board that is using WM8731 codec.
71e0a25b6dSSongjun Wu
72e0a25b6dSSongjun Wuconfig SND_ATMEL_SOC_CLASSD
73e0a25b6dSSongjun Wu	tristate "Atmel ASoC driver for boards using CLASSD"
74e0a25b6dSSongjun Wu	depends on ARCH_AT91 || COMPILE_TEST
750f0be40bSAlexandre Belloni	select SND_SOC_GENERIC_DMAENGINE_PCM
76e0a25b6dSSongjun Wu	select REGMAP_MMIO
77e0a25b6dSSongjun Wu	help
78e0a25b6dSSongjun Wu	  Say Y if you want to add support for Atmel ASoC driver for boards using
79e0a25b6dSSongjun Wu	  CLASSD.
80a7664ab2SSongjun Wu
81a7664ab2SSongjun Wuconfig SND_ATMEL_SOC_PDMIC
82a7664ab2SSongjun Wu	tristate "Atmel ASoC driver for boards using PDMIC"
83a7664ab2SSongjun Wu	depends on OF && (ARCH_AT91 || COMPILE_TEST)
84a7664ab2SSongjun Wu	select SND_SOC_GENERIC_DMAENGINE_PCM
85a7664ab2SSongjun Wu	select REGMAP_MMIO
86a7664ab2SSongjun Wu	help
87a7664ab2SSongjun Wu	  Say Y if you want to add support for Atmel ASoC driver for boards using
88a7664ab2SSongjun Wu	  PDMIC.
89aa431124SPeter Rosin
90aa431124SPeter Rosinconfig SND_ATMEL_SOC_TSE850_PCM5142
91aa431124SPeter Rosin	tristate "ASoC driver for the Axentia TSE-850"
92aa431124SPeter Rosin	depends on ARCH_AT91 && OF
93aa431124SPeter Rosin	depends on ATMEL_SSC && I2C
94aa431124SPeter Rosin	select SND_ATMEL_SOC_SSC_DMA
95aa431124SPeter Rosin	select SND_SOC_PCM512x_I2C
96aa431124SPeter Rosin	help
97aa431124SPeter Rosin	  Say Y if you want to add support for the ASoC driver for the
98aa431124SPeter Rosin	  Axentia TSE-850 with a PCM5142 codec.
99b543e467SCyrille Pitchen
100b543e467SCyrille Pitchenconfig SND_ATMEL_SOC_I2S
101b543e467SCyrille Pitchen	tristate "Atmel ASoC driver for boards using I2S"
102b543e467SCyrille Pitchen	depends on OF && (ARCH_AT91 || COMPILE_TEST)
103b543e467SCyrille Pitchen	select SND_SOC_GENERIC_DMAENGINE_PCM
104b543e467SCyrille Pitchen	select REGMAP_MMIO
105b543e467SCyrille Pitchen	help
106b543e467SCyrille Pitchen	  Say Y or M if you want to add support for Atmel ASoc driver for boards
107b543e467SCyrille Pitchen	  using I2S.
108a45f8853SCodrin Ciubotariu
109a45f8853SCodrin Ciubotariuconfig SND_SOC_MIKROE_PROTO
110a45f8853SCodrin Ciubotariu	tristate "Support for Mikroe-PROTO board"
111a45f8853SCodrin Ciubotariu	depends on OF
11253c156abSArnd Bergmann	depends on SND_SOC_I2C_AND_SPI
113a45f8853SCodrin Ciubotariu	select SND_SOC_WM8731
114a45f8853SCodrin Ciubotariu	help
115a45f8853SCodrin Ciubotariu	  Say Y or M if you want to add support for MikroElektronika PROTO Audio
116a45f8853SCodrin Ciubotariu	  Board. This board contains the WM8731 codec, which can be configured
117a45f8853SCodrin Ciubotariu	  using I2C over SDA (MPU Data Input) and SCL (MPU Clock Input) pins.
118a45f8853SCodrin Ciubotariu	  Both playback and capture are supported.
119a45f8853SCodrin Ciubotariu
120b87d37d0SCodrin Ciubotariuconfig SND_MCHP_SOC_I2S_MCC
121b87d37d0SCodrin Ciubotariu	tristate "Microchip ASoC driver for boards using I2S MCC"
122b87d37d0SCodrin Ciubotariu	depends on OF && (ARCH_AT91 || COMPILE_TEST)
123b87d37d0SCodrin Ciubotariu	select SND_SOC_GENERIC_DMAENGINE_PCM
124b87d37d0SCodrin Ciubotariu	select REGMAP_MMIO
125b87d37d0SCodrin Ciubotariu	help
126b87d37d0SCodrin Ciubotariu	  Say Y or M if you want to add support for I2S Multi-Channel ASoC
127b87d37d0SCodrin Ciubotariu	  driver on the following Microchip platforms:
128b87d37d0SCodrin Ciubotariu	  - sam9x60
12999ac2f8dSCodrin Ciubotariu	  - sama7g5
130b87d37d0SCodrin Ciubotariu
131b87d37d0SCodrin Ciubotariu	  The I2SMCC complies with the Inter-IC Sound (I2S) bus specification
132b87d37d0SCodrin Ciubotariu	  and supports a Time Division Multiplexed (TDM) interface with
133b87d37d0SCodrin Ciubotariu	  external multi-channel audio codecs.
13499ac2f8dSCodrin Ciubotariu	  Starting with sama7g5, I2S and Left-Justified multi-channel is
13599ac2f8dSCodrin Ciubotariu	  supported by using multiple data pins, output and input, without TDM.
136b87d37d0SCodrin Ciubotariu
13706ca24e9SCodrin Ciubotariuconfig SND_MCHP_SOC_SPDIFTX
13806ca24e9SCodrin Ciubotariu	tristate "Microchip ASoC driver for boards using S/PDIF TX"
13906ca24e9SCodrin Ciubotariu	depends on OF && (ARCH_AT91 || COMPILE_TEST)
14006ca24e9SCodrin Ciubotariu	select SND_SOC_GENERIC_DMAENGINE_PCM
14106ca24e9SCodrin Ciubotariu	select REGMAP_MMIO
14206ca24e9SCodrin Ciubotariu	help
14306ca24e9SCodrin Ciubotariu	  Say Y or M if you want to add support for Microchip S/PDIF TX ASoc
14406ca24e9SCodrin Ciubotariu	  driver on the following Microchip platforms:
14506ca24e9SCodrin Ciubotariu	  - sama7g5
14606ca24e9SCodrin Ciubotariu
14706ca24e9SCodrin Ciubotariu	  This S/PDIF TX driver is compliant with IEC-60958 standard and
14813733775SColin Ian King	  includes programmable User Data and Channel Status fields.
149ef265c55SCodrin Ciubotariu
150ef265c55SCodrin Ciubotariuconfig SND_MCHP_SOC_SPDIFRX
151ef265c55SCodrin Ciubotariu	tristate "Microchip ASoC driver for boards using S/PDIF RX"
152ef265c55SCodrin Ciubotariu	depends on OF && (ARCH_AT91 || COMPILE_TEST)
15329275309SArnd Bergmann	depends on COMMON_CLK
154ef265c55SCodrin Ciubotariu	select SND_SOC_GENERIC_DMAENGINE_PCM
155ef265c55SCodrin Ciubotariu	select REGMAP_MMIO
156ef265c55SCodrin Ciubotariu	help
157ef265c55SCodrin Ciubotariu	  Say Y or M if you want to add support for Microchip S/PDIF RX ASoc
158ef265c55SCodrin Ciubotariu	  driver on the following Microchip platforms:
159ef265c55SCodrin Ciubotariu	  - sama7g5
160ef265c55SCodrin Ciubotariu
161ef265c55SCodrin Ciubotariu	  This S/PDIF RX driver is compliant with IEC-60958 standard and
16213733775SColin Ian King	  includes programmable User Data and Channel Status fields.
16350291652SCodrin Ciubotariu
16450291652SCodrin Ciubotariuconfig SND_MCHP_SOC_PDMC
16550291652SCodrin Ciubotariu	tristate "Microchip ASoC driver for boards using PDMC"
16650291652SCodrin Ciubotariu	depends on OF && (ARCH_AT91 || COMPILE_TEST)
16750291652SCodrin Ciubotariu	select SND_SOC_GENERIC_DMAENGINE_PCM
16850291652SCodrin Ciubotariu	select REGMAP_MMIO
16950291652SCodrin Ciubotariu	help
17050291652SCodrin Ciubotariu	  Say Y or M if you want to add support for Microchip ASoC PDMC driver on the
17150291652SCodrin Ciubotariu	  following Microchip platforms:
17250291652SCodrin Ciubotariu	  - sama7g5
17350291652SCodrin Ciubotariu
17450291652SCodrin Ciubotariu	  The Pulse Density Microphone Controller (PDMC) interfaces up to 4 digital
17550291652SCodrin Ciubotariu	  microphones PDM outputs. It generates a single clock line and samples 1 or
17650291652SCodrin Ciubotariu	  2 data lines. The signal path includes an audio grade programmable
17750291652SCodrin Ciubotariu	  decimation filter and outputs 24-bit audio words.
17850291652SCodrin Ciubotariu
179fb67cdfbSAlexandre Belloniendif
180