brcm2708: update to latest patches from the RPi foundation
[openwrt/staging/lynxis.git] / target / linux / brcm2708 / patches-4.19 / 950-0087-ASoC-Add-Kconfig-and-Makefile-for-sound-soc-bcm.patch
1 From 3f31d54804aebb748f200841dafdc8ff1f05b7a7 Mon Sep 17 00:00:00 2001
2 From: popcornmix <popcornmix@gmail.com>
3 Date: Mon, 3 Sep 2018 17:00:36 +0100
4 Subject: [PATCH 087/725] ASoC: Add Kconfig and Makefile for sound/soc/bcm
5
6 Signed-off-by: popcornmix <popcornmix@gmail.com>
7 ---
8 sound/soc/bcm/Kconfig | 199 +++++++++++++++++++++++++++++++++++++++++
9 sound/soc/bcm/Makefile | 42 +++++++++
10 2 files changed, 241 insertions(+)
11
12 --- a/sound/soc/bcm/Kconfig
13 +++ b/sound/soc/bcm/Kconfig
14 @@ -16,3 +16,202 @@ config SND_SOC_CYGNUS
15 Cygnus chips (bcm958300, bcm958305, bcm911360)
16
17 If you don't know what to do here, say N.
18 +
19 +config SND_BCM2708_SOC_GOOGLEVOICEHAT_SOUNDCARD
20 + tristate "Support for Google voiceHAT soundcard"
21 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
22 + select SND_SOC_VOICEHAT
23 + select SND_RPI_SIMPLE_SOUNDCARD
24 + help
25 + Say Y or M if you want to add support for voiceHAT soundcard.
26 +
27 +config SND_BCM2708_SOC_HIFIBERRY_DAC
28 + tristate "Support for HifiBerry DAC"
29 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
30 + select SND_SOC_PCM5102A
31 + select SND_RPI_SIMPLE_SOUNDCARD
32 + help
33 + Say Y or M if you want to add support for HifiBerry DAC.
34 +
35 +config SND_BCM2708_SOC_HIFIBERRY_DACPLUS
36 + tristate "Support for HifiBerry DAC+"
37 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
38 + select SND_SOC_PCM512x
39 + help
40 + Say Y or M if you want to add support for HifiBerry DAC+.
41 +
42 +config SND_BCM2708_SOC_HIFIBERRY_DIGI
43 + tristate "Support for HifiBerry Digi"
44 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
45 + select SND_SOC_WM8804
46 + help
47 + Say Y or M if you want to add support for HifiBerry Digi S/PDIF output board.
48 +
49 +config SND_BCM2708_SOC_HIFIBERRY_AMP
50 + tristate "Support for the HifiBerry Amp"
51 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
52 + select SND_SOC_TAS5713
53 + select SND_RPI_SIMPLE_SOUNDCARD
54 + help
55 + Say Y or M if you want to add support for the HifiBerry Amp amplifier board.
56 +
57 +config SND_BCM2708_SOC_RPI_CIRRUS
58 + tristate "Support for Cirrus Logic Audio Card"
59 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
60 + select SND_SOC_WM5102
61 + select SND_SOC_WM8804
62 + help
63 + Say Y or M if you want to add support for the Wolfson and
64 + Cirrus Logic audio cards.
65 +
66 +config SND_BCM2708_SOC_RPI_DAC
67 + tristate "Support for RPi-DAC"
68 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
69 + select SND_SOC_PCM1794A
70 + select SND_RPI_SIMPLE_SOUNDCARD
71 + help
72 + Say Y or M if you want to add support for RPi-DAC.
73 +
74 +config SND_BCM2708_SOC_RPI_PROTO
75 + tristate "Support for Rpi-PROTO"
76 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
77 + select SND_SOC_WM8731
78 + help
79 + Say Y or M if you want to add support for Audio Codec Board PROTO (WM8731).
80 +
81 +config SND_BCM2708_SOC_JUSTBOOM_DAC
82 + tristate "Support for JustBoom DAC"
83 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
84 + select SND_SOC_PCM512x
85 + help
86 + Say Y or M if you want to add support for JustBoom DAC.
87 +
88 +config SND_BCM2708_SOC_JUSTBOOM_DIGI
89 + tristate "Support for JustBoom Digi"
90 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
91 + select SND_SOC_WM8804
92 + select SND_RPI_WM8804_SOUNDCARD
93 + help
94 + Say Y or M if you want to add support for JustBoom Digi.
95 +
96 +config SND_BCM2708_SOC_IQAUDIO_DAC
97 + tristate "Support for IQaudIO-DAC"
98 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
99 + select SND_SOC_PCM512x_I2C
100 + help
101 + Say Y or M if you want to add support for IQaudIO-DAC.
102 +
103 +config SND_BCM2708_SOC_IQAUDIO_DIGI
104 + tristate "Support for IQAudIO Digi"
105 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
106 + select SND_SOC_WM8804
107 + select SND_RPI_WM8804_SOUNDCARD
108 + help
109 + Say Y or M if you want to add support for IQAudIO Digital IO board.
110 +
111 +config SND_BCM2708_SOC_ADAU1977_ADC
112 + tristate "Support for ADAU1977 ADC"
113 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
114 + select SND_SOC_ADAU1977_I2C
115 + select SND_RPI_SIMPLE_SOUNDCARD
116 + help
117 + Say Y or M if you want to add support for ADAU1977 ADC.
118 +
119 +config SND_AUDIOINJECTOR_PI_SOUNDCARD
120 + tristate "Support for audioinjector.net Pi add on soundcard"
121 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
122 + select SND_SOC_WM8731
123 + help
124 + Say Y or M if you want to add support for audioinjector.net Pi Hat
125 +
126 +config SND_AUDIOINJECTOR_OCTO_SOUNDCARD
127 + tristate "Support for audioinjector.net Octo channel (Hat) soundcard"
128 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
129 + select SND_SOC_CS42XX8_I2C
130 + help
131 + Say Y or M if you want to add support for audioinjector.net octo add on
132 +
133 +config SND_DIGIDAC1_SOUNDCARD
134 + tristate "Support for Red Rocks Audio DigiDAC1"
135 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
136 + select SND_SOC_WM8804
137 + select SND_SOC_WM8741
138 + help
139 + Say Y or M if you want to add support for Red Rocks Audio DigiDAC1 board.
140 +
141 +config SND_BCM2708_SOC_DIONAUDIO_LOCO
142 + tristate "Support for Dion Audio LOCO DAC-AMP"
143 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
144 + select SND_SOC_PCM5102a
145 + help
146 + Say Y or M if you want to add support for Dion Audio LOCO.
147 +
148 +config SND_BCM2708_SOC_DIONAUDIO_LOCO_V2
149 + tristate "Support for Dion Audio LOCO-V2 DAC-AMP"
150 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
151 + select SND_SOC_PCM5122
152 + help
153 + Say Y or M if you want to add support for Dion Audio LOCO-V2.
154 +
155 +config SND_BCM2708_SOC_ALLO_PIANO_DAC
156 + tristate "Support for Allo Piano DAC"
157 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
158 + select SND_SOC_PCM512x_I2C
159 + help
160 + Say Y or M if you want to add support for Allo Piano DAC.
161 +
162 +config SND_BCM2708_SOC_ALLO_PIANO_DAC_PLUS
163 + tristate "Support for Allo Piano DAC Plus"
164 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
165 + select SND_SOC_PCM512x_I2C
166 + help
167 + Say Y or M if you want to add support for Allo Piano DAC Plus.
168 +
169 +config SND_BCM2708_SOC_ALLO_BOSS_DAC
170 + tristate "Support for Allo Boss DAC"
171 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
172 + select SND_SOC_PCM512x_I2C
173 + help
174 + Say Y or M if you want to add support for Allo Boss DAC.
175 +
176 +config SND_BCM2708_SOC_ALLO_DIGIONE
177 + tristate "Support for Allo DigiOne"
178 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
179 + select SND_SOC_WM8804
180 + select SND_RPI_WM8804_SOUNDCARD
181 + help
182 + Say Y or M if you want to add support for Allo DigiOne.
183 +
184 +config SND_BCM2708_SOC_ALLO_KATANA_DAC
185 + tristate "Support for Allo Katana DAC"
186 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
187 + depends on I2C
188 + select REGMAP_I2C
189 + select SND_AUDIO_GRAPH_CARD
190 + help
191 + Say Y or M if you want to add support for Allo Katana DAC.
192 +
193 +config SND_BCM2708_SOC_FE_PI_AUDIO
194 + tristate "Support for Fe-Pi-Audio"
195 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
196 + select SND_SOC_SGTL5000
197 + help
198 + Say Y or M if you want to add support for Fe-Pi-Audio.
199 +
200 +config SND_PISOUND
201 + tristate "Support for Blokas Labs pisound"
202 + depends on SND_BCM2708_SOC_I2S || SND_BCM2835_SOC_I2S
203 + select SND_RAWMIDI
204 + help
205 + Say Y or M if you want to add support for Blokas Labs pisound.
206 +
207 +config SND_RPI_SIMPLE_SOUNDCARD
208 + tristate "Support for Raspberry Pi simple soundcards"
209 + help
210 + Say Y or M if you want to add support Raspbery Pi simple soundcards
211 +
212 +config SND_RPI_WM8804_SOUNDCARD
213 + tristate "Support for Raspberry Pi generic WM8804 soundcards"
214 + help
215 + Say Y or M if you want to add support for the Raspberry Pi
216 + generic driver for WM8804 based soundcards.
217 --- a/sound/soc/bcm/Makefile
218 +++ b/sound/soc/bcm/Makefile
219 @@ -8,3 +8,45 @@ snd-soc-cygnus-objs := cygnus-pcm.o cygn
220
221 obj-$(CONFIG_SND_SOC_CYGNUS) += snd-soc-cygnus.o
222
223 +# Google voiceHAT custom codec support
224 +snd-soc-googlevoicehat-codec-objs := googlevoicehat-codec.o
225 +
226 +# BCM2708 Machine Support
227 +snd-soc-hifiberry-dacplus-objs := hifiberry_dacplus.o
228 +snd-soc-justboom-dac-objs := justboom-dac.o
229 +snd-soc-rpi-cirrus-objs := rpi-cirrus.o
230 +snd-soc-rpi-proto-objs := rpi-proto.o
231 +snd-soc-iqaudio-dac-objs := iqaudio-dac.o
232 +snd-soc-audioinjector-pi-soundcard-objs := audioinjector-pi-soundcard.o
233 +snd-soc-audioinjector-octo-soundcard-objs := audioinjector-octo-soundcard.o
234 +snd-soc-digidac1-soundcard-objs := digidac1-soundcard.o
235 +snd-soc-dionaudio-loco-objs := dionaudio_loco.o
236 +snd-soc-dionaudio-loco-v2-objs := dionaudio_loco-v2.o
237 +snd-soc-allo-boss-dac-objs := allo-boss-dac.o
238 +snd-soc-allo-piano-dac-objs := allo-piano-dac.o
239 +snd-soc-allo-piano-dac-plus-objs := allo-piano-dac-plus.o
240 +snd-soc-allo-katana-codec-objs := allo-katana-codec.o
241 +snd-soc-pisound-objs := pisound.o
242 +snd-soc-fe-pi-audio-objs := fe-pi-audio.o
243 +snd-soc-rpi-simple-soundcard-objs := rpi-simple-soundcard.o
244 +snd-soc-rpi-wm8804-soundcard-objs := rpi-wm8804-soundcard.o
245 +
246 +obj-$(CONFIG_SND_BCM2708_SOC_GOOGLEVOICEHAT_SOUNDCARD) += snd-soc-googlevoicehat-codec.o
247 +obj-$(CONFIG_SND_BCM2708_SOC_HIFIBERRY_DACPLUS) += snd-soc-hifiberry-dacplus.o
248 +obj-$(CONFIG_SND_BCM2708_SOC_JUSTBOOM_DAC) += snd-soc-justboom-dac.o
249 +obj-$(CONFIG_SND_BCM2708_SOC_RPI_CIRRUS) += snd-soc-rpi-cirrus.o
250 +obj-$(CONFIG_SND_BCM2708_SOC_RPI_PROTO) += snd-soc-rpi-proto.o
251 +obj-$(CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC) += snd-soc-iqaudio-dac.o
252 +obj-$(CONFIG_SND_AUDIOINJECTOR_PI_SOUNDCARD) += snd-soc-audioinjector-pi-soundcard.o
253 +obj-$(CONFIG_SND_AUDIOINJECTOR_OCTO_SOUNDCARD) += snd-soc-audioinjector-octo-soundcard.o
254 +obj-$(CONFIG_SND_DIGIDAC1_SOUNDCARD) += snd-soc-digidac1-soundcard.o
255 +obj-$(CONFIG_SND_BCM2708_SOC_DIONAUDIO_LOCO) += snd-soc-dionaudio-loco.o
256 +obj-$(CONFIG_SND_BCM2708_SOC_DIONAUDIO_LOCO_V2) += snd-soc-dionaudio-loco-v2.o
257 +obj-$(CONFIG_SND_BCM2708_SOC_ALLO_BOSS_DAC) += snd-soc-allo-boss-dac.o
258 +obj-$(CONFIG_SND_BCM2708_SOC_ALLO_PIANO_DAC) += snd-soc-allo-piano-dac.o
259 +obj-$(CONFIG_SND_BCM2708_SOC_ALLO_PIANO_DAC_PLUS) += snd-soc-allo-piano-dac-plus.o
260 +obj-$(CONFIG_SND_BCM2708_SOC_ALLO_KATANA_DAC) += snd-soc-allo-katana-codec.o
261 +obj-$(CONFIG_SND_PISOUND) += snd-soc-pisound.o
262 +obj-$(CONFIG_SND_BCM2708_SOC_FE_PI_AUDIO) += snd-soc-fe-pi-audio.o
263 +obj-$(CONFIG_SND_RPI_SIMPLE_SOUNDCARD) += snd-soc-rpi-simple-soundcard.o
264 +obj-$(CONFIG_SND_RPI_WM8804_SOUNDCARD) += snd-soc-rpi-wm8804-soundcard.o