brcm2708: add kmod-sound-soc-rpi-cirrus
[openwrt/openwrt.git] / target / linux / brcm2708 / modules.mk
1 #
2 # Copyright (C) 2012-2016 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 define KernelPackage/drm-vc4
9 SUBMENU:=$(VIDEO_MENU)
10 TITLE:=Broadcom VC4 Graphics
11 DEPENDS:= \
12 @TARGET_brcm2708 +kmod-drm \
13 +LINUX_4_14:kmod-sound-core \
14 +LINUX_4_14:kmod-sound-soc-core
15 KCONFIG:= \
16 CONFIG_DRM_VC4 \
17 CONFIG_DRM_VC4_HDMI_CEC=n
18 FILES:= \
19 $(LINUX_DIR)/drivers/gpu/drm/vc4/vc4.ko \
20 $(LINUX_DIR)/drivers/gpu/drm/drm_kms_helper.ko
21 AUTOLOAD:=$(call AutoProbe,vc4)
22 endef
23
24 define KernelPackage/drm-vc4/description
25 Direct Rendering Manager (DRM) support for Broadcom VideoCore IV GPU
26 used in BCM2835, BCM2836 and BCM2837 SoCs (e.g. Raspberry Pi).
27 endef
28
29 $(eval $(call KernelPackage,drm-vc4))
30
31
32 define KernelPackage/hwmon-rpi-poe-fan
33 SUBMENU:=$(HWMON_MENU)
34 TITLE:=Raspberry Pi PoE HAT fan
35 DEPENDS:=@TARGET_brcm2708 @LINUX_4_14 +kmod-hwmon-core
36 KCONFIG:=CONFIG_SENSORS_RPI_POE_FAN
37 FILES:=$(LINUX_DIR)/drivers/hwmon/rpi-poe-fan.ko
38 AUTOLOAD:=$(call AutoProbe,rpi-poe-fan)
39 endef
40
41 define KernelPackage/hwmon-rpi-poe-fan/description
42 Raspberry Pi PoE HAT fan driver
43 endef
44
45 $(eval $(call KernelPackage,hwmon-rpi-poe-fan))
46
47
48 define KernelPackage/sound-arm-bcm2835
49 TITLE:=BCM2835 ALSA driver
50 KCONFIG:= \
51 CONFIG_SND_ARM=y \
52 CONFIG_SND_BCM2835 \
53 CONFIG_SND_ARMAACI=n
54 FILES:= \
55 $(LINUX_DIR)/drivers/staging/vc04_services/bcm2835-audio/snd-bcm2835.ko@ge4.12 \
56 $(LINUX_DIR)/sound/arm/snd-bcm2835.ko@lt4.12
57 AUTOLOAD:=$(call AutoLoad,68,snd-bcm2835)
58 DEPENDS:=@TARGET_brcm2708
59 $(call AddDepends/sound)
60 endef
61
62 define KernelPackage/sound-arm-bcm2835/description
63 This package contains the BCM2835 ALSA pcm card driver
64 endef
65
66 $(eval $(call KernelPackage,sound-arm-bcm2835))
67
68
69 define KernelPackage/sound-soc-bcm2835-i2s
70 TITLE:=SoC Audio support for the Broadcom 2835 I2S module
71 KCONFIG:= \
72 CONFIG_SND_BCM2835_SOC_I2S \
73 CONFIG_SND_SOC_DMAENGINE_PCM=y \
74 CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
75 FILES:= \
76 $(LINUX_DIR)/sound/soc/bcm/snd-soc-bcm2835-i2s.ko
77 AUTOLOAD:=$(call AutoLoad,68,snd-soc-bcm2835-i2s)
78 DEPENDS:=@TARGET_brcm2708 +kmod-regmap +kmod-sound-soc-core
79 $(call AddDepends/sound)
80 endef
81
82 define KernelPackage/sound-soc-bcm2835-i2s/description
83 This package contains support for codecs attached to the Broadcom 2835 I2S interface
84 endef
85
86 $(eval $(call KernelPackage,sound-soc-bcm2835-i2s))
87
88 define KernelPackage/sound-soc-adau1977-adc
89 TITLE:=Support for ADAU1977 ADC
90 KCONFIG:= \
91 CONFIG_SND_BCM2708_SOC_ADAU1977_ADC \
92 CONFIG_SND_SOC_ADAU1977 \
93 CONFIG_SND_SOC_ADAU1977_I2C
94 FILES:= \
95 $(LINUX_DIR)/sound/soc/bcm/snd-soc-adau1977-adc.ko \
96 $(LINUX_DIR)/sound/soc/codecs/snd-soc-adau1977.ko \
97 $(LINUX_DIR)/sound/soc/codecs/snd-soc-adau1977-i2c.ko
98 AUTOLOAD:=$(call AutoLoad,68,snd-soc-adau1977 snd-soc-adau1977-i2c \
99 snd-soc-adau1977-adc)
100 DEPENDS:= \
101 kmod-sound-soc-bcm2835-i2s \
102 +kmod-i2c-bcm2708
103 $(call AddDepends/sound)
104 endef
105
106 define KernelPackage/sound-soc-adau1977-adc/description
107 This package contains support for ADAU1977 ADC
108 endef
109
110 $(eval $(call KernelPackage,sound-soc-adau1977-adc))
111
112
113 define KernelPackage/sound-soc-allo-boss-dac
114 TITLE:=Support for Allo Boss DAC
115 KCONFIG:= \
116 CONFIG_SND_BCM2708_SOC_ALLO_BOSS_DAC \
117 CONFIG_SND_SOC_PCM512x \
118 CONFIG_SND_SOC_PCM512x_I2C
119 FILES:= \
120 $(LINUX_DIR)/sound/soc/bcm/snd-soc-allo-boss-dac.ko \
121 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
122 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko
123 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x-i2c snd-soc-pcm512x \
124 snd-soc-allo-boss-dac)
125 DEPENDS:= \
126 @LINUX_4_14 \
127 +kmod-i2c-bcm2708 \
128 kmod-sound-soc-bcm2835-i2s
129 $(call AddDepends/sound)
130 endef
131
132 define KernelPackage/sound-soc-allo-boss-dac/description
133 This package contains support for Allo Boss DAC
134 endef
135
136 $(eval $(call KernelPackage,sound-soc-allo-boss-dac))
137
138
139 define KernelPackage/sound-soc-allo-digione
140 TITLE:=Support for Allo Piano DigiOne
141 KCONFIG:= \
142 CONFIG_SND_BCM2708_SOC_ALLO_DIGIONE \
143 CONFIG_SND_SOC_PCM512x \
144 CONFIG_SND_SOC_PCM512x_I2C
145 FILES:= \
146 $(LINUX_DIR)/sound/soc/bcm/snd-soc-allo-digione.ko \
147 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
148 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko
149 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x-i2c snd-soc-pcm512x \
150 snd-soc-allo-digione)
151 DEPENDS:= \
152 @LINUX_4_14 \
153 +kmod-i2c-bcm2708 \
154 kmod-sound-soc-bcm2835-i2s
155 $(call AddDepends/sound)
156 endef
157
158 define KernelPackage/sound-soc-allo-digione/description
159 This package contains support for Allo DigiOne
160 endef
161
162 $(eval $(call KernelPackage,sound-soc-allo-digione))
163
164
165 define KernelPackage/sound-soc-allo-piano-dac
166 TITLE:=Support for Allo Piano DAC
167 KCONFIG:= \
168 CONFIG_SND_BCM2708_SOC_ALLO_PIANO_DAC \
169 CONFIG_SND_SOC_PCM512x \
170 CONFIG_SND_SOC_PCM512x_I2C
171 FILES:= \
172 $(LINUX_DIR)/sound/soc/bcm/snd-soc-allo-piano-dac.ko \
173 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
174 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko
175 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x-i2c snd-soc-pcm512x \
176 snd-soc-allo-piano-dac)
177 DEPENDS:= \
178 kmod-sound-soc-bcm2835-i2s \
179 +kmod-i2c-bcm2708
180 $(call AddDepends/sound)
181 endef
182
183 define KernelPackage/sound-soc-allo-piano-dac/description
184 This package contains support for Allo Piano DAC
185 endef
186
187 $(eval $(call KernelPackage,sound-soc-allo-piano-dac))
188
189
190 define KernelPackage/sound-soc-allo-piano-dac-plus
191 TITLE:=Support for Allo Piano DAC Plus
192 KCONFIG:= \
193 CONFIG_SND_BCM2708_SOC_ALLO_PIANO_DAC_PLUS \
194 CONFIG_SND_SOC_PCM512x \
195 CONFIG_SND_SOC_PCM512x_I2C
196 FILES:= \
197 $(LINUX_DIR)/sound/soc/bcm/snd-soc-allo-piano-dac-plus.ko \
198 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
199 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko
200 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x-i2c snd-soc-pcm512x \
201 snd-soc-allo-piano-dac-plus)
202 DEPENDS:= \
203 @LINUX_4_14 \
204 +kmod-i2c-bcm2708 \
205 kmod-sound-soc-bcm2835-i2s
206 $(call AddDepends/sound)
207 endef
208
209 define KernelPackage/sound-soc-allo-piano-dac-plus/description
210 This package contains support for Allo Piano DAC Plus
211 endef
212
213 $(eval $(call KernelPackage,sound-soc-allo-piano-dac-plus))
214
215
216 define KernelPackage/sound-soc-allo-katana-codec
217 TITLE:=Support for Allo Katana DAC
218 KCONFIG:= \
219 CONFIG_SND_AUDIO_GRAPH_CARD \
220 CONFIG_SND_BCM2708_SOC_ALLO_KATANA_DAC \
221 CONFIG_SND_SOC_PCM512x \
222 CONFIG_SND_SOC_PCM512x_I2C \
223 CONFIG_SND_SIMPLE_CARD_UTILS
224 FILES:= \
225 $(LINUX_DIR)/sound/soc/bcm/snd-soc-allo-katana-codec.ko \
226 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
227 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko
228 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x-i2c snd-soc-pcm512x \
229 snd-soc-allo-katana-codec)
230 DEPENDS:= \
231 @LINUX_4_14 \
232 +kmod-i2c-bcm2708 \
233 +kmod-regmap \
234 kmod-sound-soc-bcm2835-i2s
235 $(call AddDepends/sound)
236 endef
237
238 define KernelPackage/sound-soc-allo-katana-codec/description
239 This package contains support for Allo Katana DAC
240 endef
241
242 $(eval $(call KernelPackage,sound-soc-allo-katana-codec))
243
244
245 define KernelPackage/sound-soc-audioinjector-octo-soundcard
246 TITLE:=Support for AudioInjector Octo soundcard
247 KCONFIG:= \
248 CONFIG_SND_AUDIOINJECTOR_OCTO_SOUNDCARD \
249 CONFIG_SND_SOC_CS42XX8 \
250 CONFIG_SND_SOC_CS42XX8_I2C
251 FILES:= \
252 $(LINUX_DIR)/sound/soc/bcm/snd-soc-audioinjector-octo-soundcard.ko \
253 $(LINUX_DIR)/sound/soc/codecs/snd-soc-cs42xx8.ko \
254 $(LINUX_DIR)/sound/soc/codecs/snd-soc-cs42xx8-i2c.ko
255 AUTOLOAD:=$(call AutoLoad,68,snd-soc- \
256 snd-soc-audioinjector-octo-soundcard)
257 DEPENDS:= \
258 @LINUX_4_14 \
259 +kmod-i2c-bcm2708 \
260 kmod-sound-soc-bcm2835-i2s
261 $(call AddDepends/sound)
262 endef
263
264 define KernelPackage/sound-soc-audioinjector-octo-soundcard/description
265 This package contains support for AudioInjector Octo soundcard
266 endef
267
268 $(eval $(call KernelPackage,sound-soc-audioinjector-octo-soundcard))
269
270
271 define KernelPackage/sound-soc-audioinjector-pi-soundcard
272 TITLE:=Support for AudioInjector Pi soundcard
273 KCONFIG:= \
274 CONFIG_SND_AUDIOINJECTOR_PI_SOUNDCARD \
275 CONFIG_SND_SOC_WM8731
276 FILES:= \
277 $(LINUX_DIR)/sound/soc/bcm/snd-soc-audioinjector-pi-soundcard.ko \
278 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8731.ko
279 AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8731 \
280 snd-soc-audioinjector-pi-soundcard)
281 DEPENDS:= \
282 kmod-sound-soc-bcm2835-i2s \
283 +kmod-i2c-bcm2708
284 $(call AddDepends/sound)
285 endef
286
287 define KernelPackage/sound-soc-audioinjector-pi-soundcard/description
288 This package contains support for AudioInjector Pi soundcard
289 endef
290
291 $(eval $(call KernelPackage,sound-soc-audioinjector-pi-soundcard))
292
293 define KernelPackage/sound-soc-digidac1-soundcard
294 TITLE:=Support for RRA DigiDAC1
295 KCONFIG:= \
296 CONFIG_SND_DIGIDAC1_SOUNDCARD \
297 CONFIG_SND_SOC_WM8741 \
298 CONFIG_SND_SOC_WM8804 \
299 CONFIG_SND_SOC_WM8804_I2C
300 FILES:= \
301 $(LINUX_DIR)/sound/soc/bcm/snd-soc-digidac1-soundcard.ko \
302 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8741.ko \
303 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko \
304 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804-i2c.ko
305 AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8741 \
306 snd-soc-wm8804 snd-soc-wm8804-i2c \
307 snd-soc-digidac1-soundcard)
308 DEPENDS:= \
309 kmod-sound-soc-bcm2835-i2s \
310 +kmod-i2c-bcm2708
311 $(call AddDepends/sound)
312 endef
313
314 define KernelPackage/sound-soc-digidac1-soundcard/description
315 This package contains support for RRA DigiDAC1
316 endef
317
318 $(eval $(call KernelPackage,sound-soc-digidac1-soundcard))
319
320 define KernelPackage/sound-soc-dionaudio-loco
321 TITLE:=Support for Dion Audio LOCO DAC-AMP
322 KCONFIG:= \
323 CONFIG_SND_BCM2708_SOC_DIONAUDIO_LOCO \
324 CONFIG_SND_SOC_PCM5102A
325 FILES:= \
326 $(LINUX_DIR)/sound/soc/bcm/snd-soc-dionaudio-loco.ko \
327 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm5102a.ko
328 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm5102a \
329 snd-soc-dionaudio-loco)
330 DEPENDS:= \
331 kmod-sound-soc-bcm2835-i2s
332 $(call AddDepends/sound)
333 endef
334
335 define KernelPackage/sound-soc-dionaudio-loco/description
336 This package contains support for Dion Audio LOCO DAC-AMP
337 endef
338
339 $(eval $(call KernelPackage,sound-soc-dionaudio-loco))
340
341 define KernelPackage/sound-soc-dionaudio-loco-v2
342 TITLE:=Support for Dion Audio LOCO-V2 DAC-AMP
343 KCONFIG:= \
344 CONFIG_SND_BCM2708_SOC_DIONAUDIO_LOCO_V2 \
345 CONFIG_SND_SOC_PCM512x \
346 CONFIG_SND_SOC_PCM512x_I2C
347 FILES:= \
348 $(LINUX_DIR)/sound/soc/bcm/snd-soc-dionaudio-loco.ko \
349 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
350 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko
351 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-pcm512x-i2c \
352 snd-soc-dionaudio-loco)
353 DEPENDS:= \
354 kmod-sound-soc-bcm2835-i2s
355 $(call AddDepends/sound)
356 endef
357
358 define KernelPackage/sound-soc-dionaudio-loco-v2/description
359 This package contains support for Dion Audio LOCO-V2 DAC-AMP
360 endef
361
362 $(eval $(call KernelPackage,sound-soc-dionaudio-loco-v2))
363
364 define KernelPackage/sound-soc-fe-pi
365 TITLE:=Support for Fe-Pi Audio Sound Card
366 KCONFIG:= \
367 CONFIG_SND_BCM2708_SOC_FE_PI_AUDIO \
368 CONFIG_SND_SOC_SGTL5000
369 FILES:= \
370 $(LINUX_DIR)/sound/soc/bcm/snd-soc-fe-pi-audio.ko \
371 $(LINUX_DIR)/sound/soc/codecs/snd-soc-sgtl5000.ko
372 AUTOLOAD:=$(call AutoLoad,68,snd-soc-sgtl5000 \
373 snd-soc-fe-pi-audio)
374 DEPENDS:= \
375 kmod-sound-soc-bcm2835-i2s
376 $(call AddDepends/sound)
377 endef
378
379 define KernelPackage/sound-soc-fe-pi/description
380 This package contains support for Fe-Pi Audio Sound Card
381 endef
382
383 $(eval $(call KernelPackage,sound-soc-fe-pi))
384
385
386 define KernelPackage/sound-soc-googlevoicehat
387 TITLE:=Support for Google VoiceHAT Sound Card
388 KCONFIG:= \
389 CONFIG_SND_BCM2708_SOC_GOOGLEVOICEHAT_SOUNDCARD \
390 CONFIG_SND_SOC_VOICEHAT
391 FILES:= \
392 $(LINUX_DIR)/sound/soc/bcm/snd-soc-googlevoicehat-codec.ko \
393 $(LINUX_DIR)/sound/soc/bcm/snd-soc-googlevoicehat-soundcard.ko
394 AUTOLOAD:=$(call AutoLoad,68,snd-soc-googlevoicehat-codec \
395 snd-soc-googlevoicehat-soundcard)
396 DEPENDS:= \
397 @LINUX_4_14 \
398 kmod-sound-soc-bcm2835-i2s
399 $(call AddDepends/sound)
400 endef
401
402 define KernelPackage/sound-soc-googlevoicehat/description
403 This package contains support for Google VoiceHAT Sound Card
404 endef
405
406 $(eval $(call KernelPackage,sound-soc-googlevoicehat))
407
408
409 define KernelPackage/sound-soc-hifiberry-dac
410 TITLE:=Support for HifiBerry DAC
411 KCONFIG:= \
412 CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC \
413 CONFIG_SND_SOC_PCM5102A
414 FILES:= \
415 $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-dac.ko \
416 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm5102a.ko
417 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm5102a snd-soc-hifiberry-dac)
418 DEPENDS:= \
419 kmod-sound-soc-bcm2835-i2s \
420 +kmod-i2c-bcm2708
421 $(call AddDepends/sound)
422 endef
423
424 define KernelPackage/sound-soc-hifiberry-dac/description
425 This package contains support for HifiBerry DAC
426 endef
427
428 $(eval $(call KernelPackage,sound-soc-hifiberry-dac))
429
430 define KernelPackage/sound-soc-hifiberry-dacplus
431 TITLE:=Support for HifiBerry DAC+ / DAC+ Pro
432 KCONFIG:= \
433 CONFIG_SND_BCM2708_SOC_HIFIBERRY_DACPLUS \
434 CONFIG_SND_SOC_PCM512x
435 FILES:= \
436 $(LINUX_DIR)/drivers/clk/clk-hifiberry-dacpro.ko \
437 $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-dacplus.ko \
438 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko
439 AUTOLOAD:=$(call AutoLoad,68,clk-hifiberry-dacpro snd-soc-pcm512x \
440 snd-soc-hifiberry-dacplus)
441 DEPENDS:= \
442 kmod-sound-soc-bcm2835-i2s \
443 +kmod-i2c-bcm2708
444 $(call AddDepends/sound)
445 endef
446
447 define KernelPackage/sound-soc-hifiberry-dacplus/description
448 This package contains support for HifiBerry DAC+ / DAC+ Pro
449 endef
450
451 $(eval $(call KernelPackage,sound-soc-hifiberry-dacplus))
452
453 define KernelPackage/sound-soc-hifiberry-digi
454 TITLE:=Support for HifiBerry Digi / Digi+ / Digi+ Pro
455 KCONFIG:= \
456 CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI \
457 CONFIG_SND_SOC_WM8804
458 FILES:= \
459 $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-digi.ko \
460 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko
461 AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8804 snd-soc-hifiberry-digi)
462 DEPENDS:= \
463 kmod-sound-soc-bcm2835-i2s \
464 +kmod-i2c-bcm2708
465 $(call AddDepends/sound)
466 endef
467
468 define KernelPackage/sound-soc-hifiberry-digi/description
469 This package contains support for HifiBerry Digi
470 endef
471
472 $(eval $(call KernelPackage,sound-soc-hifiberry-digi))
473
474 define KernelPackage/sound-soc-hifiberry-amp
475 TITLE:=Support for HifiBerry Amp
476 KCONFIG:= \
477 CONFIG_SND_BCM2708_SOC_HIFIBERRY_AMP \
478 CONFIG_SND_SOC_TAS5713
479 FILES:= \
480 $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-amp.ko \
481 $(LINUX_DIR)/sound/soc/codecs/snd-soc-tas5713.ko
482 AUTOLOAD:=$(call AutoLoad,68,snd-soc-tas5713 snd-soc-hifiberry-amp)
483 DEPENDS:= \
484 kmod-sound-soc-bcm2835-i2s \
485 +kmod-i2c-bcm2708
486 $(call AddDepends/sound)
487 endef
488
489 define KernelPackage/sound-soc-hifiberry-amp/description
490 This package contains support for HifiBerry Amp
491 endef
492
493 $(eval $(call KernelPackage,sound-soc-hifiberry-amp))
494
495 define KernelPackage/sound-soc-iqaudio-dac
496 TITLE:=Support for IQaudIO-DAC
497 KCONFIG:= \
498 CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC \
499 CONFIG_SND_SOC_PCM512x \
500 CONFIG_SND_SOC_PCM512x_I2C
501 FILES:= \
502 $(LINUX_DIR)/sound/soc/bcm/snd-soc-iqaudio-dac.ko \
503 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
504 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko
505 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-pcm512x-i2c \
506 snd-soc-iqaudio-dac)
507 DEPENDS:= \
508 kmod-sound-soc-bcm2835-i2s \
509 +kmod-i2c-bcm2708
510 $(call AddDepends/sound)
511 endef
512
513 define KernelPackage/sound-soc-iqaudio-dac/description
514 This package contains support for IQaudIO-DAC
515 endef
516
517 $(eval $(call KernelPackage,sound-soc-iqaudio-dac))
518
519 define KernelPackage/sound-soc-iqaudio-digi
520 TITLE:=Support for IQaudIO-DIGI
521 KCONFIG:= \
522 CONFIG_SND_BCM2708_SOC_IQAUDIO_DIGI \
523 CONFIG_SND_SOC_WM8804 \
524 CONFIG_SND_SOC_WM8804_I2C
525 FILES:= \
526 $(LINUX_DIR)/sound/soc/bcm/snd-soc-iqaudio-digi.ko \
527 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko \
528 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804-i2c.ko
529 AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8804 snd-soc-wm8804-i2c \
530 snd-soc-iqaudio-digi)
531 DEPENDS:= \
532 kmod-sound-soc-bcm2835-i2s \
533 +kmod-i2c-bcm2708
534 $(call AddDepends/sound)
535 endef
536
537 define KernelPackage/sound-soc-iqaudio-digi/description
538 This package contains support for IQaudIO-DIGI
539 endef
540
541 $(eval $(call KernelPackage,sound-soc-iqaudio-digi))
542
543 define KernelPackage/sound-soc-justboom-dac
544 TITLE:=Support for JustBoom DAC
545 KCONFIG:= \
546 CONFIG_SND_BCM2708_SOC_JUSTBOOM_DAC \
547 CONFIG_SND_SOC_PCM512x
548 FILES:= \
549 $(LINUX_DIR)/sound/soc/bcm/snd-soc-justboom-dac.ko \
550 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko
551 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-justboom-dac)
552 DEPENDS:= \
553 kmod-sound-soc-bcm2835-i2s \
554 +kmod-i2c-bcm2708
555 $(call AddDepends/sound)
556 endef
557
558 define KernelPackage/sound-soc-justboom-dac/description
559 This package contains support for JustBoom DAC
560 endef
561
562 $(eval $(call KernelPackage,sound-soc-justboom-dac))
563
564 define KernelPackage/sound-soc-justboom-digi
565 TITLE:=Support for JustBoom Digi
566 KCONFIG:= \
567 CONFIG_SND_BCM2708_SOC_JUSTBOOM_DIGI \
568 CONFIG_SND_SOC_WM8804
569 FILES:= \
570 $(LINUX_DIR)/sound/soc/bcm/snd-soc-justboom-digi.ko \
571 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko
572 AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8804 snd-soc-justboom-digi)
573 DEPENDS:= \
574 kmod-sound-soc-bcm2835-i2s \
575 +kmod-i2c-bcm2708
576 $(call AddDepends/sound)
577 endef
578
579 define KernelPackage/sound-soc-justboom-digi/description
580 This package contains support for JustBoom Digi
581 endef
582
583 $(eval $(call KernelPackage,sound-soc-justboom-digi))
584
585 define KernelPackage/sound-soc-pisound
586 TITLE:=Support for Blokas Labs PiSound
587 KCONFIG:= \
588 CONFIG_SND_PISOUND \
589 CONFIG_SND_SOC_PCM5102A
590 FILES:= \
591 $(LINUX_DIR)/sound/soc/bcm/snd-soc-pisound.ko \
592 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm5102a.ko
593 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm5102a snd-soc-pisound)
594 DEPENDS:= \
595 kmod-sound-soc-bcm2835-i2s
596 $(call AddDepends/sound)
597 endef
598
599 define KernelPackage/sound-soc-pisound/description
600 This package contains support for Blokas Labs PiSound
601 endef
602
603 $(eval $(call KernelPackage,sound-soc-pisound))
604
605 define KernelPackage/sound-soc-raspidac3
606 TITLE:=Support for RaspiDAC Rev.3x
607 KCONFIG:= \
608 CONFIG_SND_BCM2708_SOC_RASPIDAC3 \
609 CONFIG_SND_SOC_PCM512x \
610 CONFIG_SND_SOC_PCM512x_I2C \
611 CONFIG_SND_SOC_TPA6130A2
612 FILES:= \
613 $(LINUX_DIR)/sound/soc/bcm/snd-soc-raspidac3.ko \
614 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
615 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko \
616 $(LINUX_DIR)/sound/soc/codecs/snd-soc-tpa6130a2.ko
617 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-pcm512x-i2c \
618 snd-soc-tpa6130a2 snd-soc-raspidac3)
619 DEPENDS:= \
620 @LINUX_4_9 \
621 kmod-sound-soc-bcm2835-i2s \
622 +kmod-i2c-bcm2708
623 $(call AddDepends/sound)
624 endef
625
626 define KernelPackage/sound-soc-raspidac3/description
627 This package contains support for RaspiDAC Rev.3x
628 endef
629
630 $(eval $(call KernelPackage,sound-soc-raspidac3))
631
632
633 define KernelPackage/sound-soc-rpi-cirrus
634 TITLE:=Support for Cirrus Logic Audio Card
635 KCONFIG:= \
636 CONFIG_GPIO_ARIZONA \
637 CONFIG_INPUT_ARIZONA_HAPTICS=n \
638 CONFIG_MFD_ARIZONA=y \
639 CONFIG_MFD_ARIZONA_I2C \
640 CONFIG_MFD_CS47L24=n \
641 CONFIG_MFD_WM5102=n \
642 CONFIG_MFD_WM5110=n \
643 CONFIG_MFD_WM8997=n \
644 CONFIG_MFD_WM8998=n \
645 CONFIG_REGULATOR_ARIZONA \
646 CONFIG_REGULATOR_ARIZONA_LDO1 \
647 CONFIG_REGULATOR_ARIZONA_MICSUPP \
648 CONFIG_SND_BCM2708_SOC_RPI_CIRRUS \
649 CONFIG_SND_SOC_ARIZONA \
650 CONFIG_SND_SOC_WM5102 \
651 CONFIG_SND_SOC_WM8804 \
652 CONFIG_SND_SOC_WM_ADSP
653 FILES:= \
654 $(LINUX_DIR)/sound/soc/bcm/snd-soc-rpi-cirrus.ko \
655 $(LINUX_DIR)/sound/soc/codecs/snd-soc-arizona.ko \
656 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm-adsp.ko \
657 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm5102.ko \
658 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko
659 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm1794a snd-soc-rpi-cirrus)
660 DEPENDS:= \
661 @LINUX_4_14 \
662 +kmod-i2c-bcm2708 \
663 kmod-sound-soc-bcm2835-i2s
664 $(call AddDepends/sound)
665 endef
666
667 define KernelPackage/sound-soc-rpi-cirrus/description
668 This package contains support for RPi-Cirrus
669 endef
670
671 $(eval $(call KernelPackage,sound-soc-rpi-cirrus))
672
673
674 define KernelPackage/sound-soc-rpi-dac
675 TITLE:=Support for RPi-DAC
676 KCONFIG:= \
677 CONFIG_SND_BCM2708_SOC_RPI_DAC \
678 CONFIG_SND_SOC_PCM1794A
679 FILES:= \
680 $(LINUX_DIR)/sound/soc/bcm/snd-soc-rpi-dac.ko \
681 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm1794a.ko
682 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm1794a snd-soc-rpi-dac)
683 DEPENDS:= \
684 kmod-sound-soc-bcm2835-i2s \
685 +kmod-i2c-bcm2708
686 $(call AddDepends/sound)
687 endef
688
689 define KernelPackage/sound-soc-rpi-dac/description
690 This package contains support for RPi-DAC
691 endef
692
693 $(eval $(call KernelPackage,sound-soc-rpi-dac))
694
695 define KernelPackage/sound-soc-rpi-proto
696 TITLE:=Support for RPi-PROTO
697 KCONFIG:= \
698 CONFIG_SND_BCM2708_SOC_RPI_PROTO \
699 CONFIG_SND_SOC_WM8731
700 FILES:= \
701 $(LINUX_DIR)/sound/soc/bcm/snd-soc-rpi-proto.ko \
702 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8731.ko
703 AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8731 snd-soc-rpi-proto)
704 DEPENDS:= \
705 kmod-sound-soc-bcm2835-i2s \
706 +kmod-i2c-bcm2708
707 $(call AddDepends/sound)
708 endef
709
710 define KernelPackage/sound-soc-rpi-proto/description
711 This package contains support for RPi-PROTO
712 endef
713
714 $(eval $(call KernelPackage,sound-soc-rpi-proto))
715
716
717 define KernelPackage/random-bcm2835
718 SUBMENU:=$(OTHER_MENU)
719 TITLE:=BCM2835 HW Random Number Generator
720 KCONFIG:=CONFIG_HW_RANDOM_BCM2835
721 FILES:=$(LINUX_DIR)/drivers/char/hw_random/bcm2835-rng.ko
722 AUTOLOAD:=$(call AutoLoad,11,bcm2835-rng)
723 DEPENDS:=@TARGET_brcm2708 +kmod-random-core
724 endef
725
726 define KernelPackage/random-bcm2835/description
727 This package contains the Broadcom 2835 HW random number generator driver
728 endef
729
730 $(eval $(call KernelPackage,random-bcm2835))
731
732
733 define KernelPackage/smi-bcm2835
734 SUBMENU:=$(OTHER_MENU)
735 TITLE:=BCM2835 SMI driver
736 KCONFIG:=CONFIG_BCM2835_SMI
737 FILES:=$(LINUX_DIR)/drivers/misc/bcm2835_smi.ko
738 AUTOLOAD:=$(call AutoLoad,20,bcm2835_smi)
739 DEPENDS:=@TARGET_brcm2708
740 endef
741
742 define KernelPackage/smi-bcm2835/description
743 This package contains the Character device driver for Broadcom Secondary
744 Memory Interface
745 endef
746
747 $(eval $(call KernelPackage,smi-bcm2835))
748
749 define KernelPackage/smi-bcm2835-dev
750 SUBMENU:=$(OTHER_MENU)
751 TITLE:=BCM2835 SMI device driver
752 KCONFIG:=CONFIG_BCM2835_SMI_DEV
753 FILES:=$(LINUX_DIR)/drivers/char/broadcom/bcm2835_smi_dev.ko
754 AUTOLOAD:=$(call AutoLoad,21,bcm2835_smi_dev)
755 DEPENDS:=@TARGET_brcm2708 +kmod-smi-bcm2835
756 endef
757
758 define KernelPackage/smi-bcm2835-dev/description
759 This driver provides a character device interface (ioctl + read/write) to
760 Broadcom's Secondary Memory interface. The low-level functionality is provided
761 by the SMI driver itself.
762 endef
763
764 $(eval $(call KernelPackage,smi-bcm2835-dev))
765
766
767 define KernelPackage/spi-bcm2835
768 SUBMENU:=$(SPI_MENU)
769 TITLE:=BCM2835 SPI controller driver
770 KCONFIG:=\
771 CONFIG_SPI=y \
772 CONFIG_SPI_BCM2835 \
773 CONFIG_SPI_MASTER=y
774 FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2835.ko
775 AUTOLOAD:=$(call AutoLoad,89,spi-bcm2835)
776 DEPENDS:=@TARGET_brcm2708
777 endef
778
779 define KernelPackage/spi-bcm2835/description
780 This package contains the Broadcom 2835 SPI master controller driver
781 endef
782
783 $(eval $(call KernelPackage,spi-bcm2835))
784
785 define KernelPackage/spi-bcm2835-aux
786 SUBMENU:=$(SPI_MENU)
787 TITLE:=BCM2835 Aux SPI controller driver
788 KCONFIG:=\
789 CONFIG_SPI=y \
790 CONFIG_SPI_BCM2835AUX \
791 CONFIG_SPI_MASTER=y
792 FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2835aux.ko
793 AUTOLOAD:=$(call AutoLoad,89,spi-bcm2835aux)
794 DEPENDS:=@TARGET_brcm2708
795 endef
796
797 define KernelPackage/spi-bcm2835-aux/description
798 This package contains the Broadcom 2835 Aux SPI master controller driver
799 endef
800
801 $(eval $(call KernelPackage,spi-bcm2835-aux))
802
803
804 define KernelPackage/hwmon-bcm2835
805 TITLE:=BCM2835 HWMON driver
806 KCONFIG:=CONFIG_SENSORS_BCM2835
807 FILES:=$(LINUX_DIR)/drivers/hwmon/bcm2835-hwmon.ko
808 AUTOLOAD:=$(call AutoLoad,60,bcm2835-hwmon)
809 $(call AddDepends/hwmon,@TARGET_brcm2708)
810 endef
811
812 define KernelPackage/hwmon-bcm2835/description
813 Kernel module for BCM2835 thermal monitor chip
814 endef
815
816 $(eval $(call KernelPackage,hwmon-bcm2835))
817
818
819 I2C_BCM2708_MODULES:=\
820 CONFIG_I2C_BCM2708:drivers/i2c/busses/i2c-bcm2708
821
822 define KernelPackage/i2c-bcm2708
823 $(call i2c_defaults,$(I2C_BCM2708_MODULES),59)
824 TITLE:=Broadcom BCM2708 I2C master controller driver
825 KCONFIG+= \
826 CONFIG_I2C_BCM2708_BAUDRATE=100000
827 DEPENDS:=@TARGET_brcm2708 +kmod-i2c-core
828 endef
829
830 define KernelPackage/i2c-bcm2708/description
831 This package contains the Broadcom 2708 I2C master controller driver
832 endef
833
834 $(eval $(call KernelPackage,i2c-bcm2708))
835
836 I2C_BCM2835_MODULES:=\
837 CONFIG_I2C_BCM2835:drivers/i2c/busses/i2c-bcm2835
838
839 define KernelPackage/i2c-bcm2835
840 $(call i2c_defaults,$(I2C_BCM2835_MODULES),59)
841 TITLE:=Broadcom BCM2835 I2C master controller driver
842 DEPENDS:=@TARGET_brcm2708 +kmod-i2c-core
843 endef
844
845 define KernelPackage/i2c-bcm2835/description
846 This package contains the Broadcom 2835 I2C master controller driver
847 endef
848
849 $(eval $(call KernelPackage,i2c-bcm2835))
850
851
852 define KernelPackage/video-bcm2835
853 TITLE:=Broadcom BCM2835 camera interface driver
854 KCONFIG:= \
855 CONFIG_VIDEO_BCM2835$(if $(CONFIG_LINUX_4_9),=y) \
856 CONFIG_VIDEO_BCM2835_MMAL
857 FILES:= \
858 $(LINUX_DIR)/drivers/media/platform/bcm2835/bcm2835-v4l2.ko@lt4.12 \
859 $(LINUX_DIR)/drivers/staging/vc04_services/bcm2835-camera/bcm2835-v4l2.ko@ge4.12
860 AUTOLOAD:=$(call AutoLoad,65,bcm2835-v4l2)
861 $(call AddDepends/video,@TARGET_brcm2708 +kmod-video-videobuf2)
862 endef
863
864 define KernelPackage/video-bcm2835/description
865 This is a V4L2 driver for the Broadcom 2835 MMAL camera host interface
866 endef
867
868 $(eval $(call KernelPackage,video-bcm2835))