brcm2708: add kmod-sound-soc-allo-piano-dac-plus
[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-audioinjector-pi-soundcard
217 TITLE:=Support for AudioInjector Pi soundcard
218 KCONFIG:= \
219 CONFIG_SND_AUDIOINJECTOR_PI_SOUNDCARD \
220 CONFIG_SND_SOC_WM8731
221 FILES:= \
222 $(LINUX_DIR)/sound/soc/bcm/snd-soc-audioinjector-pi-soundcard.ko \
223 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8731.ko
224 AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8731 \
225 snd-soc-audioinjector-pi-soundcard)
226 DEPENDS:= \
227 kmod-sound-soc-bcm2835-i2s \
228 +kmod-i2c-bcm2708
229 $(call AddDepends/sound)
230 endef
231
232 define KernelPackage/sound-soc-audioinjector-pi-soundcard/description
233 This package contains support for AudioInjector Pi soundcard
234 endef
235
236 $(eval $(call KernelPackage,sound-soc-audioinjector-pi-soundcard))
237
238 define KernelPackage/sound-soc-digidac1-soundcard
239 TITLE:=Support for RRA DigiDAC1
240 KCONFIG:= \
241 CONFIG_SND_DIGIDAC1_SOUNDCARD \
242 CONFIG_SND_SOC_WM8741 \
243 CONFIG_SND_SOC_WM8804 \
244 CONFIG_SND_SOC_WM8804_I2C
245 FILES:= \
246 $(LINUX_DIR)/sound/soc/bcm/snd-soc-digidac1-soundcard.ko \
247 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8741.ko \
248 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko \
249 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804-i2c.ko
250 AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8741 \
251 snd-soc-wm8804 snd-soc-wm8804-i2c \
252 snd-soc-digidac1-soundcard)
253 DEPENDS:= \
254 kmod-sound-soc-bcm2835-i2s \
255 +kmod-i2c-bcm2708
256 $(call AddDepends/sound)
257 endef
258
259 define KernelPackage/sound-soc-digidac1-soundcard/description
260 This package contains support for RRA DigiDAC1
261 endef
262
263 $(eval $(call KernelPackage,sound-soc-digidac1-soundcard))
264
265 define KernelPackage/sound-soc-dionaudio-loco
266 TITLE:=Support for Dion Audio LOCO DAC-AMP
267 KCONFIG:= \
268 CONFIG_SND_BCM2708_SOC_DIONAUDIO_LOCO \
269 CONFIG_SND_SOC_PCM5102A
270 FILES:= \
271 $(LINUX_DIR)/sound/soc/bcm/snd-soc-dionaudio-loco.ko \
272 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm5102a.ko
273 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm5102a \
274 snd-soc-dionaudio-loco)
275 DEPENDS:= \
276 kmod-sound-soc-bcm2835-i2s
277 $(call AddDepends/sound)
278 endef
279
280 define KernelPackage/sound-soc-dionaudio-loco/description
281 This package contains support for Dion Audio LOCO DAC-AMP
282 endef
283
284 $(eval $(call KernelPackage,sound-soc-dionaudio-loco))
285
286 define KernelPackage/sound-soc-dionaudio-loco-v2
287 TITLE:=Support for Dion Audio LOCO-V2 DAC-AMP
288 KCONFIG:= \
289 CONFIG_SND_BCM2708_SOC_DIONAUDIO_LOCO_V2 \
290 CONFIG_SND_SOC_PCM512x \
291 CONFIG_SND_SOC_PCM512x_I2C
292 FILES:= \
293 $(LINUX_DIR)/sound/soc/bcm/snd-soc-dionaudio-loco.ko \
294 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
295 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko
296 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-pcm512x-i2c \
297 snd-soc-dionaudio-loco)
298 DEPENDS:= \
299 kmod-sound-soc-bcm2835-i2s
300 $(call AddDepends/sound)
301 endef
302
303 define KernelPackage/sound-soc-dionaudio-loco-v2/description
304 This package contains support for Dion Audio LOCO-V2 DAC-AMP
305 endef
306
307 $(eval $(call KernelPackage,sound-soc-dionaudio-loco-v2))
308
309 define KernelPackage/sound-soc-fe-pi
310 TITLE:=Support for Fe-Pi Audio Sound Card
311 KCONFIG:= \
312 CONFIG_SND_BCM2708_SOC_FE_PI_AUDIO \
313 CONFIG_SND_SOC_SGTL5000
314 FILES:= \
315 $(LINUX_DIR)/sound/soc/bcm/snd-soc-fe-pi-audio.ko \
316 $(LINUX_DIR)/sound/soc/codecs/snd-soc-sgtl5000.ko
317 AUTOLOAD:=$(call AutoLoad,68,snd-soc-sgtl5000 \
318 snd-soc-fe-pi-audio)
319 DEPENDS:= \
320 kmod-sound-soc-bcm2835-i2s
321 $(call AddDepends/sound)
322 endef
323
324 define KernelPackage/sound-soc-fe-pi/description
325 This package contains support for Fe-Pi Audio Sound Card
326 endef
327
328 $(eval $(call KernelPackage,sound-soc-fe-pi))
329
330 define KernelPackage/sound-soc-hifiberry-dac
331 TITLE:=Support for HifiBerry DAC
332 KCONFIG:= \
333 CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC \
334 CONFIG_SND_SOC_PCM5102A
335 FILES:= \
336 $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-dac.ko \
337 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm5102a.ko
338 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm5102a snd-soc-hifiberry-dac)
339 DEPENDS:= \
340 kmod-sound-soc-bcm2835-i2s \
341 +kmod-i2c-bcm2708
342 $(call AddDepends/sound)
343 endef
344
345 define KernelPackage/sound-soc-hifiberry-dac/description
346 This package contains support for HifiBerry DAC
347 endef
348
349 $(eval $(call KernelPackage,sound-soc-hifiberry-dac))
350
351 define KernelPackage/sound-soc-hifiberry-dacplus
352 TITLE:=Support for HifiBerry DAC+ / DAC+ Pro
353 KCONFIG:= \
354 CONFIG_SND_BCM2708_SOC_HIFIBERRY_DACPLUS \
355 CONFIG_SND_SOC_PCM512x
356 FILES:= \
357 $(LINUX_DIR)/drivers/clk/clk-hifiberry-dacpro.ko \
358 $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-dacplus.ko \
359 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko
360 AUTOLOAD:=$(call AutoLoad,68,clk-hifiberry-dacpro snd-soc-pcm512x \
361 snd-soc-hifiberry-dacplus)
362 DEPENDS:= \
363 kmod-sound-soc-bcm2835-i2s \
364 +kmod-i2c-bcm2708
365 $(call AddDepends/sound)
366 endef
367
368 define KernelPackage/sound-soc-hifiberry-dacplus/description
369 This package contains support for HifiBerry DAC+ / DAC+ Pro
370 endef
371
372 $(eval $(call KernelPackage,sound-soc-hifiberry-dacplus))
373
374 define KernelPackage/sound-soc-hifiberry-digi
375 TITLE:=Support for HifiBerry Digi / Digi+ / Digi+ Pro
376 KCONFIG:= \
377 CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI \
378 CONFIG_SND_SOC_WM8804
379 FILES:= \
380 $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-digi.ko \
381 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko
382 AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8804 snd-soc-hifiberry-digi)
383 DEPENDS:= \
384 kmod-sound-soc-bcm2835-i2s \
385 +kmod-i2c-bcm2708
386 $(call AddDepends/sound)
387 endef
388
389 define KernelPackage/sound-soc-hifiberry-digi/description
390 This package contains support for HifiBerry Digi
391 endef
392
393 $(eval $(call KernelPackage,sound-soc-hifiberry-digi))
394
395 define KernelPackage/sound-soc-hifiberry-amp
396 TITLE:=Support for HifiBerry Amp
397 KCONFIG:= \
398 CONFIG_SND_BCM2708_SOC_HIFIBERRY_AMP \
399 CONFIG_SND_SOC_TAS5713
400 FILES:= \
401 $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-amp.ko \
402 $(LINUX_DIR)/sound/soc/codecs/snd-soc-tas5713.ko
403 AUTOLOAD:=$(call AutoLoad,68,snd-soc-tas5713 snd-soc-hifiberry-amp)
404 DEPENDS:= \
405 kmod-sound-soc-bcm2835-i2s \
406 +kmod-i2c-bcm2708
407 $(call AddDepends/sound)
408 endef
409
410 define KernelPackage/sound-soc-hifiberry-amp/description
411 This package contains support for HifiBerry Amp
412 endef
413
414 $(eval $(call KernelPackage,sound-soc-hifiberry-amp))
415
416 define KernelPackage/sound-soc-iqaudio-dac
417 TITLE:=Support for IQaudIO-DAC
418 KCONFIG:= \
419 CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC \
420 CONFIG_SND_SOC_PCM512x \
421 CONFIG_SND_SOC_PCM512x_I2C
422 FILES:= \
423 $(LINUX_DIR)/sound/soc/bcm/snd-soc-iqaudio-dac.ko \
424 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
425 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko
426 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-pcm512x-i2c \
427 snd-soc-iqaudio-dac)
428 DEPENDS:= \
429 kmod-sound-soc-bcm2835-i2s \
430 +kmod-i2c-bcm2708
431 $(call AddDepends/sound)
432 endef
433
434 define KernelPackage/sound-soc-iqaudio-dac/description
435 This package contains support for IQaudIO-DAC
436 endef
437
438 $(eval $(call KernelPackage,sound-soc-iqaudio-dac))
439
440 define KernelPackage/sound-soc-iqaudio-digi
441 TITLE:=Support for IQaudIO-DIGI
442 KCONFIG:= \
443 CONFIG_SND_BCM2708_SOC_IQAUDIO_DIGI \
444 CONFIG_SND_SOC_WM8804 \
445 CONFIG_SND_SOC_WM8804_I2C
446 FILES:= \
447 $(LINUX_DIR)/sound/soc/bcm/snd-soc-iqaudio-digi.ko \
448 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko \
449 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804-i2c.ko
450 AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8804 snd-soc-wm8804-i2c \
451 snd-soc-iqaudio-digi)
452 DEPENDS:= \
453 kmod-sound-soc-bcm2835-i2s \
454 +kmod-i2c-bcm2708
455 $(call AddDepends/sound)
456 endef
457
458 define KernelPackage/sound-soc-iqaudio-digi/description
459 This package contains support for IQaudIO-DIGI
460 endef
461
462 $(eval $(call KernelPackage,sound-soc-iqaudio-digi))
463
464 define KernelPackage/sound-soc-justboom-dac
465 TITLE:=Support for JustBoom DAC
466 KCONFIG:= \
467 CONFIG_SND_BCM2708_SOC_JUSTBOOM_DAC \
468 CONFIG_SND_SOC_PCM512x
469 FILES:= \
470 $(LINUX_DIR)/sound/soc/bcm/snd-soc-justboom-dac.ko \
471 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko
472 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-justboom-dac)
473 DEPENDS:= \
474 kmod-sound-soc-bcm2835-i2s \
475 +kmod-i2c-bcm2708
476 $(call AddDepends/sound)
477 endef
478
479 define KernelPackage/sound-soc-justboom-dac/description
480 This package contains support for JustBoom DAC
481 endef
482
483 $(eval $(call KernelPackage,sound-soc-justboom-dac))
484
485 define KernelPackage/sound-soc-justboom-digi
486 TITLE:=Support for JustBoom Digi
487 KCONFIG:= \
488 CONFIG_SND_BCM2708_SOC_JUSTBOOM_DIGI \
489 CONFIG_SND_SOC_WM8804
490 FILES:= \
491 $(LINUX_DIR)/sound/soc/bcm/snd-soc-justboom-digi.ko \
492 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko
493 AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8804 snd-soc-justboom-digi)
494 DEPENDS:= \
495 kmod-sound-soc-bcm2835-i2s \
496 +kmod-i2c-bcm2708
497 $(call AddDepends/sound)
498 endef
499
500 define KernelPackage/sound-soc-justboom-digi/description
501 This package contains support for JustBoom Digi
502 endef
503
504 $(eval $(call KernelPackage,sound-soc-justboom-digi))
505
506 define KernelPackage/sound-soc-pisound
507 TITLE:=Support for Blokas Labs PiSound
508 KCONFIG:= \
509 CONFIG_SND_PISOUND \
510 CONFIG_SND_SOC_PCM5102A
511 FILES:= \
512 $(LINUX_DIR)/sound/soc/bcm/snd-soc-pisound.ko \
513 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm5102a.ko
514 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm5102a snd-soc-pisound)
515 DEPENDS:= \
516 kmod-sound-soc-bcm2835-i2s
517 $(call AddDepends/sound)
518 endef
519
520 define KernelPackage/sound-soc-pisound/description
521 This package contains support for Blokas Labs PiSound
522 endef
523
524 $(eval $(call KernelPackage,sound-soc-pisound))
525
526 define KernelPackage/sound-soc-raspidac3
527 TITLE:=Support for RaspiDAC Rev.3x
528 KCONFIG:= \
529 CONFIG_SND_BCM2708_SOC_RASPIDAC3 \
530 CONFIG_SND_SOC_PCM512x \
531 CONFIG_SND_SOC_PCM512x_I2C \
532 CONFIG_SND_SOC_TPA6130A2
533 FILES:= \
534 $(LINUX_DIR)/sound/soc/bcm/snd-soc-raspidac3.ko \
535 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
536 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko \
537 $(LINUX_DIR)/sound/soc/codecs/snd-soc-tpa6130a2.ko
538 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-pcm512x-i2c \
539 snd-soc-tpa6130a2 snd-soc-raspidac3)
540 DEPENDS:= \
541 @LINUX_4_9 \
542 kmod-sound-soc-bcm2835-i2s \
543 +kmod-i2c-bcm2708
544 $(call AddDepends/sound)
545 endef
546
547 define KernelPackage/sound-soc-raspidac3/description
548 This package contains support for RaspiDAC Rev.3x
549 endef
550
551 $(eval $(call KernelPackage,sound-soc-raspidac3))
552
553 define KernelPackage/sound-soc-rpi-dac
554 TITLE:=Support for RPi-DAC
555 KCONFIG:= \
556 CONFIG_SND_BCM2708_SOC_RPI_DAC \
557 CONFIG_SND_SOC_PCM1794A
558 FILES:= \
559 $(LINUX_DIR)/sound/soc/bcm/snd-soc-rpi-dac.ko \
560 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm1794a.ko
561 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm1794a snd-soc-rpi-dac)
562 DEPENDS:= \
563 kmod-sound-soc-bcm2835-i2s \
564 +kmod-i2c-bcm2708
565 $(call AddDepends/sound)
566 endef
567
568 define KernelPackage/sound-soc-rpi-dac/description
569 This package contains support for RPi-DAC
570 endef
571
572 $(eval $(call KernelPackage,sound-soc-rpi-dac))
573
574 define KernelPackage/sound-soc-rpi-proto
575 TITLE:=Support for RPi-PROTO
576 KCONFIG:= \
577 CONFIG_SND_BCM2708_SOC_RPI_PROTO \
578 CONFIG_SND_SOC_WM8731
579 FILES:= \
580 $(LINUX_DIR)/sound/soc/bcm/snd-soc-rpi-proto.ko \
581 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8731.ko
582 AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8731 snd-soc-rpi-proto)
583 DEPENDS:= \
584 kmod-sound-soc-bcm2835-i2s \
585 +kmod-i2c-bcm2708
586 $(call AddDepends/sound)
587 endef
588
589 define KernelPackage/sound-soc-rpi-proto/description
590 This package contains support for RPi-PROTO
591 endef
592
593 $(eval $(call KernelPackage,sound-soc-rpi-proto))
594
595
596 define KernelPackage/random-bcm2835
597 SUBMENU:=$(OTHER_MENU)
598 TITLE:=BCM2835 HW Random Number Generator
599 KCONFIG:=CONFIG_HW_RANDOM_BCM2835
600 FILES:=$(LINUX_DIR)/drivers/char/hw_random/bcm2835-rng.ko
601 AUTOLOAD:=$(call AutoLoad,11,bcm2835-rng)
602 DEPENDS:=@TARGET_brcm2708 +kmod-random-core
603 endef
604
605 define KernelPackage/random-bcm2835/description
606 This package contains the Broadcom 2835 HW random number generator driver
607 endef
608
609 $(eval $(call KernelPackage,random-bcm2835))
610
611
612 define KernelPackage/smi-bcm2835
613 SUBMENU:=$(OTHER_MENU)
614 TITLE:=BCM2835 SMI driver
615 KCONFIG:=CONFIG_BCM2835_SMI
616 FILES:=$(LINUX_DIR)/drivers/misc/bcm2835_smi.ko
617 AUTOLOAD:=$(call AutoLoad,20,bcm2835_smi)
618 DEPENDS:=@TARGET_brcm2708
619 endef
620
621 define KernelPackage/smi-bcm2835/description
622 This package contains the Character device driver for Broadcom Secondary
623 Memory Interface
624 endef
625
626 $(eval $(call KernelPackage,smi-bcm2835))
627
628 define KernelPackage/smi-bcm2835-dev
629 SUBMENU:=$(OTHER_MENU)
630 TITLE:=BCM2835 SMI device driver
631 KCONFIG:=CONFIG_BCM2835_SMI_DEV
632 FILES:=$(LINUX_DIR)/drivers/char/broadcom/bcm2835_smi_dev.ko
633 AUTOLOAD:=$(call AutoLoad,21,bcm2835_smi_dev)
634 DEPENDS:=@TARGET_brcm2708 +kmod-smi-bcm2835
635 endef
636
637 define KernelPackage/smi-bcm2835-dev/description
638 This driver provides a character device interface (ioctl + read/write) to
639 Broadcom's Secondary Memory interface. The low-level functionality is provided
640 by the SMI driver itself.
641 endef
642
643 $(eval $(call KernelPackage,smi-bcm2835-dev))
644
645
646 define KernelPackage/spi-bcm2835
647 SUBMENU:=$(SPI_MENU)
648 TITLE:=BCM2835 SPI controller driver
649 KCONFIG:=\
650 CONFIG_SPI=y \
651 CONFIG_SPI_BCM2835 \
652 CONFIG_SPI_MASTER=y
653 FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2835.ko
654 AUTOLOAD:=$(call AutoLoad,89,spi-bcm2835)
655 DEPENDS:=@TARGET_brcm2708
656 endef
657
658 define KernelPackage/spi-bcm2835/description
659 This package contains the Broadcom 2835 SPI master controller driver
660 endef
661
662 $(eval $(call KernelPackage,spi-bcm2835))
663
664 define KernelPackage/spi-bcm2835-aux
665 SUBMENU:=$(SPI_MENU)
666 TITLE:=BCM2835 Aux SPI controller driver
667 KCONFIG:=\
668 CONFIG_SPI=y \
669 CONFIG_SPI_BCM2835AUX \
670 CONFIG_SPI_MASTER=y
671 FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2835aux.ko
672 AUTOLOAD:=$(call AutoLoad,89,spi-bcm2835aux)
673 DEPENDS:=@TARGET_brcm2708
674 endef
675
676 define KernelPackage/spi-bcm2835-aux/description
677 This package contains the Broadcom 2835 Aux SPI master controller driver
678 endef
679
680 $(eval $(call KernelPackage,spi-bcm2835-aux))
681
682
683 define KernelPackage/hwmon-bcm2835
684 TITLE:=BCM2835 HWMON driver
685 KCONFIG:=CONFIG_SENSORS_BCM2835
686 FILES:=$(LINUX_DIR)/drivers/hwmon/bcm2835-hwmon.ko
687 AUTOLOAD:=$(call AutoLoad,60,bcm2835-hwmon)
688 $(call AddDepends/hwmon,@TARGET_brcm2708)
689 endef
690
691 define KernelPackage/hwmon-bcm2835/description
692 Kernel module for BCM2835 thermal monitor chip
693 endef
694
695 $(eval $(call KernelPackage,hwmon-bcm2835))
696
697
698 I2C_BCM2708_MODULES:=\
699 CONFIG_I2C_BCM2708:drivers/i2c/busses/i2c-bcm2708
700
701 define KernelPackage/i2c-bcm2708
702 $(call i2c_defaults,$(I2C_BCM2708_MODULES),59)
703 TITLE:=Broadcom BCM2708 I2C master controller driver
704 KCONFIG+= \
705 CONFIG_I2C_BCM2708_BAUDRATE=100000
706 DEPENDS:=@TARGET_brcm2708 +kmod-i2c-core
707 endef
708
709 define KernelPackage/i2c-bcm2708/description
710 This package contains the Broadcom 2708 I2C master controller driver
711 endef
712
713 $(eval $(call KernelPackage,i2c-bcm2708))
714
715 I2C_BCM2835_MODULES:=\
716 CONFIG_I2C_BCM2835:drivers/i2c/busses/i2c-bcm2835
717
718 define KernelPackage/i2c-bcm2835
719 $(call i2c_defaults,$(I2C_BCM2835_MODULES),59)
720 TITLE:=Broadcom BCM2835 I2C master controller driver
721 DEPENDS:=@TARGET_brcm2708 +kmod-i2c-core
722 endef
723
724 define KernelPackage/i2c-bcm2835/description
725 This package contains the Broadcom 2835 I2C master controller driver
726 endef
727
728 $(eval $(call KernelPackage,i2c-bcm2835))
729
730
731 define KernelPackage/video-bcm2835
732 TITLE:=Broadcom BCM2835 camera interface driver
733 KCONFIG:= \
734 CONFIG_VIDEO_BCM2835$(if $(CONFIG_LINUX_4_9),=y) \
735 CONFIG_VIDEO_BCM2835_MMAL
736 FILES:= \
737 $(LINUX_DIR)/drivers/media/platform/bcm2835/bcm2835-v4l2.ko@lt4.12 \
738 $(LINUX_DIR)/drivers/staging/vc04_services/bcm2835-camera/bcm2835-v4l2.ko@ge4.12
739 AUTOLOAD:=$(call AutoLoad,65,bcm2835-v4l2)
740 $(call AddDepends/video,@TARGET_brcm2708 +kmod-video-videobuf2)
741 endef
742
743 define KernelPackage/video-bcm2835/description
744 This is a V4L2 driver for the Broadcom 2835 MMAL camera host interface
745 endef
746
747 $(eval $(call KernelPackage,video-bcm2835))