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