brcm2708: update linux 4.9 patches to latest version
[oweals/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/sound-arm-bcm2835
9   TITLE:=BCM2835 ALSA driver
10   KCONFIG:= \
11         CONFIG_SND_ARM=y \
12         CONFIG_SND_BCM2835 \
13         CONFIG_SND_ARMAACI=n
14   FILES:= \
15         $(LINUX_DIR)/sound/arm/snd-bcm2835.ko
16   AUTOLOAD:=$(call AutoLoad,68,snd-bcm2835)
17   DEPENDS:=@TARGET_brcm2708
18   $(call AddDepends/sound)
19 endef
20
21 define KernelPackage/sound-arm-bcm2835/description
22   This package contains the BCM2835 ALSA pcm card driver
23 endef
24
25 $(eval $(call KernelPackage,sound-arm-bcm2835))
26
27
28 define KernelPackage/sound-soc-bcm2835-i2s
29   TITLE:=SoC Audio support for the Broadcom 2835 I2S module
30   KCONFIG:= \
31         CONFIG_SND_BCM2835_SOC_I2S \
32         CONFIG_SND_SOC_DMAENGINE_PCM=y \
33         CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
34   FILES:= \
35         $(LINUX_DIR)/sound/soc/bcm/snd-soc-bcm2835-i2s.ko
36   AUTOLOAD:=$(call AutoLoad,68,snd-soc-bcm2835-i2s)
37   DEPENDS:=@TARGET_brcm2708 +kmod-regmap +kmod-sound-soc-core
38   $(call AddDepends/sound)
39 endef
40
41 define KernelPackage/sound-soc-bcm2835-i2s/description
42   This package contains support for codecs attached to the Broadcom 2835 I2S interface
43 endef
44
45 $(eval $(call KernelPackage,sound-soc-bcm2835-i2s))
46
47 define KernelPackage/sound-soc-adau1977-adc
48   TITLE:=Support for ADAU1977 ADC
49   KCONFIG:= \
50         CONFIG_SND_BCM2708_SOC_ADAU1977_ADC \
51         CONFIG_SND_SOC_ADAU1977 \
52         CONFIG_SND_SOC_ADAU1977_I2C
53   FILES:= \
54         $(LINUX_DIR)/sound/soc/bcm/snd-soc-adau1977-adc.ko \
55         $(LINUX_DIR)/sound/soc/codecs/snd-soc-adau1977.ko \
56         $(LINUX_DIR)/sound/soc/codecs/snd-soc-adau1977-i2c.ko
57   AUTOLOAD:=$(call AutoLoad,68,snd-soc-adau1977 snd-soc-adau1977-i2c \
58         snd-soc-adau1977-adc)
59   DEPENDS:= \
60         kmod-sound-soc-bcm2835-i2s \
61         +kmod-i2c-bcm2708
62   $(call AddDepends/sound)
63 endef
64
65 define KernelPackage/sound-soc-adau1977-adc/description
66   This package contains support for ADAU1977 ADC
67 endef
68
69 $(eval $(call KernelPackage,sound-soc-adau1977-adc))
70
71 define KernelPackage/sound-soc-allo-piano-dac
72   TITLE:=Support for Allo Piano DAC
73   KCONFIG:= \
74         CONFIG_SND_BCM2708_SOC_ALLO_PIANO_DAC \
75         CONFIG_SND_SOC_PCM512x \
76         CONFIG_SND_SOC_PCM512x_I2C
77   FILES:= \
78         $(LINUX_DIR)/sound/soc/bcm/snd-soc-allo-piano-dac.ko \
79         $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
80         $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko
81   AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x-i2c snd-soc-pcm512x \
82         snd-soc-allo-piano-dac)
83   DEPENDS:= \
84         kmod-sound-soc-bcm2835-i2s \
85         +kmod-i2c-bcm2708
86   $(call AddDepends/sound)
87 endef
88
89 define KernelPackage/sound-soc-allo-piano-dac/description
90   This package contains support for Allo Piano DAC
91 endef
92
93 $(eval $(call KernelPackage,sound-soc-allo-piano-dac))
94
95 define KernelPackage/sound-soc-audioinjector-pi-soundcard
96   TITLE:=Support for AudioInjector Pi soundcard
97   KCONFIG:= \
98         CONFIG_SND_AUDIOINJECTOR_PI_SOUNDCARD \
99         CONFIG_SND_SOC_WM8731
100   FILES:= \
101         $(LINUX_DIR)/sound/soc/bcm/snd-soc-audioinjector-pi-soundcard.ko \
102         $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8731.ko
103   AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8731 \
104         snd-soc-audioinjector-pi-soundcard)
105   DEPENDS:= \
106         kmod-sound-soc-bcm2835-i2s \
107         +kmod-i2c-bcm2708
108   $(call AddDepends/sound)
109 endef
110
111 define KernelPackage/sound-soc-audioinjector-pi-soundcard/description
112   This package contains support for AudioInjector Pi soundcard
113 endef
114
115 $(eval $(call KernelPackage,sound-soc-audioinjector-pi-soundcard))
116
117 define KernelPackage/sound-soc-digidac1-soundcard
118   TITLE:=Support for RRA DigiDAC1
119   KCONFIG:= \
120         CONFIG_SND_DIGIDAC1_SOUNDCARD \
121         CONFIG_SND_SOC_WM8741 \
122         CONFIG_SND_SOC_WM8804 \
123         CONFIG_SND_SOC_WM8804_I2C
124   FILES:= \
125         $(LINUX_DIR)/sound/soc/bcm/snd-soc-digidac1-soundcard.ko \
126         $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8741.ko \
127         $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko \
128         $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804-i2c.ko
129   AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8741 \
130         snd-soc-wm8804 snd-soc-wm8804-i2c \
131         snd-soc-digidac1-soundcard)
132   DEPENDS:= \
133         kmod-sound-soc-bcm2835-i2s \
134         +kmod-i2c-bcm2708
135   $(call AddDepends/sound)
136 endef
137
138 define KernelPackage/sound-soc-digidac1-soundcard/description
139   This package contains support for RRA DigiDAC1
140 endef
141
142 $(eval $(call KernelPackage,sound-soc-digidac1-soundcard))
143
144 define KernelPackage/sound-soc-dionaudio-loco
145   TITLE:=Support for Dion Audio LOCO DAC-AMP
146   KCONFIG:= \
147         CONFIG_SND_BCM2708_SOC_DIONAUDIO_LOCO \
148         CONFIG_SND_SOC_PCM5102A
149   FILES:= \
150         $(LINUX_DIR)/sound/soc/bcm/snd-soc-dionaudio-loco.ko \
151         $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm5102a.ko
152   AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm5102a \
153         snd-soc-dionaudio-loco)
154   DEPENDS:= \
155         kmod-sound-soc-bcm2835-i2s
156   $(call AddDepends/sound)
157 endef
158
159 define KernelPackage/sound-soc-dionaudio-loco/description
160   This package contains support for Dion Audio LOCO DAC-AMP
161 endef
162
163 $(eval $(call KernelPackage,sound-soc-dionaudio-loco))
164
165 define KernelPackage/sound-soc-dionaudio-loco-v2
166   TITLE:=Support for Dion Audio LOCO-V2 DAC-AMP
167   KCONFIG:= \
168         CONFIG_SND_BCM2708_SOC_DIONAUDIO_LOCO_V2 \
169         CONFIG_SND_SOC_PCM512x \
170         CONFIG_SND_SOC_PCM512x_I2C
171   FILES:= \
172         $(LINUX_DIR)/sound/soc/bcm/snd-soc-dionaudio-loco.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 snd-soc-pcm512x-i2c \
176         snd-soc-dionaudio-loco)
177   DEPENDS:= \
178         kmod-sound-soc-bcm2835-i2s
179   $(call AddDepends/sound)
180 endef
181
182 define KernelPackage/sound-soc-dionaudio-loco-v2/description
183   This package contains support for Dion Audio LOCO-V2 DAC-AMP
184 endef
185
186 $(eval $(call KernelPackage,sound-soc-dionaudio-loco-v2))
187
188 define KernelPackage/sound-soc-fe-pi
189   TITLE:=Support for Fe-Pi Audio Sound Card
190   KCONFIG:= \
191         CONFIG_SND_BCM2708_SOC_FE_PI_AUDIO \
192         CONFIG_SND_SOC_SGTL5000
193   FILES:= \
194         $(LINUX_DIR)/sound/soc/bcm/snd-soc-fe-pi-audio.ko \
195         $(LINUX_DIR)/sound/soc/codecs/snd-soc-sgtl5000.ko
196   AUTOLOAD:=$(call AutoLoad,68,snd-soc-sgtl5000 \
197         snd-soc-fe-pi-audio)
198   DEPENDS:= \
199         kmod-sound-soc-bcm2835-i2s
200   $(call AddDepends/sound)
201 endef
202
203 define KernelPackage/sound-soc-fe-pi/description
204   This package contains support for Fe-Pi Audio Sound Card
205 endef
206
207 $(eval $(call KernelPackage,sound-soc-fe-pi))
208
209 define KernelPackage/sound-soc-hifiberry-dac
210   TITLE:=Support for HifiBerry DAC
211   KCONFIG:= \
212         CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC \
213         CONFIG_SND_SOC_PCM5102A
214   FILES:= \
215         $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-dac.ko \
216         $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm5102a.ko
217   AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm5102a snd-soc-hifiberry-dac)
218   DEPENDS:= \
219         kmod-sound-soc-bcm2835-i2s \
220         +kmod-i2c-bcm2708
221   $(call AddDepends/sound)
222 endef
223
224 define KernelPackage/sound-soc-hifiberry-dac/description
225   This package contains support for HifiBerry DAC
226 endef
227
228 $(eval $(call KernelPackage,sound-soc-hifiberry-dac))
229
230 define KernelPackage/sound-soc-hifiberry-dacplus
231   TITLE:=Support for HifiBerry DAC+ / DAC+ Pro
232   KCONFIG:= \
233         CONFIG_SND_BCM2708_SOC_HIFIBERRY_DACPLUS \
234         CONFIG_SND_SOC_PCM512x
235   FILES:= \
236         $(LINUX_DIR)/drivers/clk/clk-hifiberry-dacpro.ko \
237         $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-dacplus.ko \
238         $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko
239   AUTOLOAD:=$(call AutoLoad,68,clk-hifiberry-dacpro snd-soc-pcm512x \
240         snd-soc-hifiberry-dacplus)
241   DEPENDS:= \
242         kmod-sound-soc-bcm2835-i2s \
243         +kmod-i2c-bcm2708
244   $(call AddDepends/sound)
245 endef
246
247 define KernelPackage/sound-soc-hifiberry-dacplus/description
248   This package contains support for HifiBerry DAC+ / DAC+ Pro
249 endef
250
251 $(eval $(call KernelPackage,sound-soc-hifiberry-dacplus))
252
253 define KernelPackage/sound-soc-hifiberry-digi
254   TITLE:=Support for HifiBerry Digi / Digi+ / Digi+ Pro
255   KCONFIG:= \
256         CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI \
257         CONFIG_SND_SOC_WM8804
258   FILES:= \
259         $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-digi.ko \
260         $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko
261   AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8804 snd-soc-hifiberry-digi)
262   DEPENDS:= \
263         kmod-sound-soc-bcm2835-i2s \
264         +kmod-i2c-bcm2708
265   $(call AddDepends/sound)
266 endef
267
268 define KernelPackage/sound-soc-hifiberry-digi/description
269   This package contains support for HifiBerry Digi
270 endef
271
272 $(eval $(call KernelPackage,sound-soc-hifiberry-digi))
273
274 define KernelPackage/sound-soc-hifiberry-amp
275   TITLE:=Support for HifiBerry Amp
276   KCONFIG:= \
277         CONFIG_SND_BCM2708_SOC_HIFIBERRY_AMP \
278         CONFIG_SND_SOC_TAS5713
279   FILES:= \
280         $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-amp.ko \
281         $(LINUX_DIR)/sound/soc/codecs/snd-soc-tas5713.ko
282   AUTOLOAD:=$(call AutoLoad,68,snd-soc-tas5713 snd-soc-hifiberry-amp)
283   DEPENDS:= \
284         kmod-sound-soc-bcm2835-i2s \
285         +kmod-i2c-bcm2708
286   $(call AddDepends/sound)
287 endef
288
289 define KernelPackage/sound-soc-hifiberry-amp/description
290   This package contains support for HifiBerry Amp
291 endef
292
293 $(eval $(call KernelPackage,sound-soc-hifiberry-amp))
294
295 define KernelPackage/sound-soc-iqaudio-dac
296   TITLE:=Support for IQaudIO-DAC
297   KCONFIG:= \
298         CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC \
299         CONFIG_SND_SOC_PCM512x \
300         CONFIG_SND_SOC_PCM512x_I2C
301   FILES:= \
302         $(LINUX_DIR)/sound/soc/bcm/snd-soc-iqaudio-dac.ko \
303         $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
304         $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko
305   AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-pcm512x-i2c \
306         snd-soc-iqaudio-dac)
307   DEPENDS:= \
308         kmod-sound-soc-bcm2835-i2s \
309         +kmod-i2c-bcm2708
310   $(call AddDepends/sound)
311 endef
312
313 define KernelPackage/sound-soc-iqaudio-dac/description
314   This package contains support for IQaudIO-DAC
315 endef
316
317 $(eval $(call KernelPackage,sound-soc-iqaudio-dac))
318
319 define KernelPackage/sound-soc-iqaudio-digi
320   TITLE:=Support for IQaudIO-DIGI
321   KCONFIG:= \
322         CONFIG_SND_BCM2708_SOC_IQAUDIO_DIGI \
323         CONFIG_SND_SOC_WM8804 \
324         CONFIG_SND_SOC_WM8804_I2C
325   FILES:= \
326         $(LINUX_DIR)/sound/soc/bcm/snd-soc-iqaudio-digi.ko \
327         $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko \
328         $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804-i2c.ko
329   AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8804 snd-soc-wm8804-i2c \
330         snd-soc-iqaudio-digi)
331   DEPENDS:= \
332         kmod-sound-soc-bcm2835-i2s \
333         +kmod-i2c-bcm2708
334   $(call AddDepends/sound)
335 endef
336
337 define KernelPackage/sound-soc-iqaudio-digi/description
338   This package contains support for IQaudIO-DIGI
339 endef
340
341 $(eval $(call KernelPackage,sound-soc-iqaudio-digi))
342
343 define KernelPackage/sound-soc-justboom-dac
344   TITLE:=Support for JustBoom DAC
345   KCONFIG:= \
346         CONFIG_SND_BCM2708_SOC_JUSTBOOM_DAC \
347         CONFIG_SND_SOC_PCM512x
348   FILES:= \
349         $(LINUX_DIR)/sound/soc/bcm/snd-soc-justboom-dac.ko \
350         $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko
351   AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-justboom-dac)
352   DEPENDS:= \
353         kmod-sound-soc-bcm2835-i2s \
354         +kmod-i2c-bcm2708
355   $(call AddDepends/sound)
356 endef
357
358 define KernelPackage/sound-soc-justboom-dac/description
359   This package contains support for JustBoom DAC
360 endef
361
362 $(eval $(call KernelPackage,sound-soc-justboom-dac))
363
364 define KernelPackage/sound-soc-justboom-digi
365   TITLE:=Support for JustBoom Digi
366   KCONFIG:= \
367         CONFIG_SND_BCM2708_SOC_JUSTBOOM_DIGI \
368         CONFIG_SND_SOC_WM8804
369   FILES:= \
370         $(LINUX_DIR)/sound/soc/bcm/snd-soc-justboom-digi.ko \
371         $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko
372   AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8804 snd-soc-justboom-digi)
373   DEPENDS:= \
374         kmod-sound-soc-bcm2835-i2s \
375         +kmod-i2c-bcm2708
376   $(call AddDepends/sound)
377 endef
378
379 define KernelPackage/sound-soc-justboom-digi/description
380   This package contains support for JustBoom Digi
381 endef
382
383 $(eval $(call KernelPackage,sound-soc-justboom-digi))
384
385 define KernelPackage/sound-soc-pisound
386   TITLE:=Support for Blokas Labs PiSound
387   KCONFIG:= \
388         CONFIG_SND_PISOUND \
389         CONFIG_SND_SOC_PCM5102A
390   FILES:= \
391         $(LINUX_DIR)/sound/soc/bcm/snd-soc-pisound.ko \
392         $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm5102a.ko
393   AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm5102a snd-soc-pisound)
394   DEPENDS:= \
395         kmod-sound-soc-bcm2835-i2s
396   $(call AddDepends/sound)
397 endef
398
399 define KernelPackage/sound-soc-pisound/description
400   This package contains support for Blokas Labs PiSound
401 endef
402
403 $(eval $(call KernelPackage,sound-soc-pisound))
404
405 define KernelPackage/sound-soc-raspidac3
406   TITLE:=Support for RaspiDAC Rev.3x
407   KCONFIG:= \
408         CONFIG_SND_BCM2708_SOC_RASPIDAC3 \
409         CONFIG_SND_SOC_PCM512x \
410         CONFIG_SND_SOC_PCM512x_I2C \
411         CONFIG_SND_SOC_TPA6130A2
412   FILES:= \
413         $(LINUX_DIR)/sound/soc/bcm/snd-soc-raspidac3.ko \
414         $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
415         $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko \
416         $(LINUX_DIR)/sound/soc/codecs/snd-soc-tpa6130a2.ko
417   AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-pcm512x-i2c \
418         snd-soc-tpa6130a2 snd-soc-raspidac3)
419   DEPENDS:= \
420         kmod-sound-soc-bcm2835-i2s \
421         +kmod-i2c-bcm2708
422   $(call AddDepends/sound)
423 endef
424
425 define KernelPackage/sound-soc-raspidac3/description
426   This package contains support for RaspiDAC Rev.3x
427 endef
428
429 $(eval $(call KernelPackage,sound-soc-raspidac3))
430
431 define KernelPackage/sound-soc-rpi-dac
432   TITLE:=Support for RPi-DAC
433   KCONFIG:= \
434         CONFIG_SND_BCM2708_SOC_RPI_DAC \
435         CONFIG_SND_SOC_PCM1794A
436   FILES:= \
437         $(LINUX_DIR)/sound/soc/bcm/snd-soc-rpi-dac.ko \
438         $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm1794a.ko
439   AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm1794a snd-soc-rpi-dac)
440   DEPENDS:= \
441         kmod-sound-soc-bcm2835-i2s \
442         +kmod-i2c-bcm2708
443   $(call AddDepends/sound)
444 endef
445
446 define KernelPackage/sound-soc-rpi-dac/description
447   This package contains support for RPi-DAC
448 endef
449
450 $(eval $(call KernelPackage,sound-soc-rpi-dac))
451
452 define KernelPackage/sound-soc-rpi-proto
453   TITLE:=Support for RPi-PROTO
454   KCONFIG:= \
455         CONFIG_SND_BCM2708_SOC_RPI_PROTO \
456         CONFIG_SND_SOC_WM8731
457   FILES:= \
458         $(LINUX_DIR)/sound/soc/bcm/snd-soc-rpi-proto.ko \
459         $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8731.ko
460   AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8731 snd-soc-rpi-proto)
461   DEPENDS:= \
462         kmod-sound-soc-bcm2835-i2s \
463         +kmod-i2c-bcm2708
464   $(call AddDepends/sound)
465 endef
466
467 define KernelPackage/sound-soc-rpi-proto/description
468   This package contains support for RPi-PROTO
469 endef
470
471 $(eval $(call KernelPackage,sound-soc-rpi-proto))
472
473
474 define KernelPackage/random-bcm2835
475   SUBMENU:=$(OTHER_MENU)
476   TITLE:=BCM2835 HW Random Number Generator
477   KCONFIG:=CONFIG_HW_RANDOM_BCM2835
478   FILES:=$(LINUX_DIR)/drivers/char/hw_random/bcm2835-rng.ko
479   AUTOLOAD:=$(call AutoLoad,11,bcm2835-rng)
480   DEPENDS:=@TARGET_brcm2708 +kmod-random-core
481 endef
482
483 define KernelPackage/random-bcm2835/description
484   This package contains the Broadcom 2835 HW random number generator driver
485 endef
486
487 $(eval $(call KernelPackage,random-bcm2835))
488
489
490 define KernelPackage/smi-bcm2835
491   SUBMENU:=$(OTHER_MENU)
492   TITLE:=BCM2835 SMI driver
493   KCONFIG:=CONFIG_BCM2835_SMI
494   FILES:=$(LINUX_DIR)/drivers/misc/bcm2835_smi.ko
495   AUTOLOAD:=$(call AutoLoad,20,bcm2835_smi)
496   DEPENDS:=@TARGET_brcm2708
497 endef
498
499 define KernelPackage/smi-bcm2835/description
500   This package contains the Character device driver for Broadcom Secondary
501   Memory Interface
502 endef
503
504 $(eval $(call KernelPackage,smi-bcm2835))
505
506 define KernelPackage/smi-bcm2835-dev
507   SUBMENU:=$(OTHER_MENU)
508   TITLE:=BCM2835 SMI device driver
509   KCONFIG:=CONFIG_BCM2835_SMI_DEV
510   FILES:=$(LINUX_DIR)/drivers/char/broadcom/bcm2835_smi_dev.ko
511   AUTOLOAD:=$(call AutoLoad,21,bcm2835_smi_dev)
512   DEPENDS:=@TARGET_brcm2708 +kmod-smi-bcm2835
513 endef
514
515 define KernelPackage/smi-bcm2835-dev/description
516   This driver provides a character device interface (ioctl + read/write) to
517   Broadcom's Secondary Memory interface. The low-level functionality is provided
518   by the SMI driver itself.
519 endef
520
521 $(eval $(call KernelPackage,smi-bcm2835-dev))
522
523
524 define KernelPackage/spi-bcm2835
525   SUBMENU:=$(SPI_MENU)
526   TITLE:=BCM2835 SPI controller driver
527   KCONFIG:=\
528     CONFIG_SPI=y \
529     CONFIG_SPI_BCM2835 \
530     CONFIG_SPI_MASTER=y
531   FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2835.ko
532   AUTOLOAD:=$(call AutoLoad,89,spi-bcm2835)
533   DEPENDS:=@TARGET_brcm2708
534 endef
535
536 define KernelPackage/spi-bcm2835/description
537   This package contains the Broadcom 2835 SPI master controller driver
538 endef
539
540 $(eval $(call KernelPackage,spi-bcm2835))
541
542 define KernelPackage/spi-bcm2835-aux
543   SUBMENU:=$(SPI_MENU)
544   TITLE:=BCM2835 Aux SPI controller driver
545   KCONFIG:=\
546     CONFIG_SPI=y \
547     CONFIG_SPI_BCM2835AUX \
548     CONFIG_SPI_MASTER=y
549   FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2835aux.ko
550   AUTOLOAD:=$(call AutoLoad,89,spi-bcm2835aux)
551   DEPENDS:=@TARGET_brcm2708
552 endef
553
554 define KernelPackage/spi-bcm2835-aux/description
555   This package contains the Broadcom 2835 Aux SPI master controller driver
556 endef
557
558 $(eval $(call KernelPackage,spi-bcm2835-aux))
559
560
561 define KernelPackage/hwmon-bcm2835
562   TITLE:=BCM2835 HWMON driver
563   KCONFIG:=CONFIG_SENSORS_BCM2835
564   FILES:=$(LINUX_DIR)/drivers/hwmon/bcm2835-hwmon.ko
565   AUTOLOAD:=$(call AutoLoad,60,bcm2835-hwmon)
566   $(call AddDepends/hwmon,@TARGET_brcm2708)
567 endef
568
569 define KernelPackage/hwmon-bcm2835/description
570   Kernel module for BCM2835 thermal monitor chip
571 endef
572
573 $(eval $(call KernelPackage,hwmon-bcm2835))
574
575
576 I2C_BCM2708_MODULES:=\
577   CONFIG_I2C_BCM2708:drivers/i2c/busses/i2c-bcm2708
578
579 define KernelPackage/i2c-bcm2708
580   $(call i2c_defaults,$(I2C_BCM2708_MODULES),59)
581   TITLE:=Broadcom BCM2708 I2C master controller driver
582   KCONFIG+= \
583         CONFIG_I2C_BCM2708_BAUDRATE=100000
584   DEPENDS:=@TARGET_brcm2708 +kmod-i2c-core
585 endef
586
587 define KernelPackage/i2c-bcm2708/description
588   This package contains the Broadcom 2708 I2C master controller driver
589 endef
590
591 $(eval $(call KernelPackage,i2c-bcm2708))
592
593 I2C_BCM2835_MODULES:=\
594   CONFIG_I2C_BCM2835:drivers/i2c/busses/i2c-bcm2835
595
596 define KernelPackage/i2c-bcm2835
597   $(call i2c_defaults,$(I2C_BCM2835_MODULES),59)
598   TITLE:=Broadcom BCM2835 I2C master controller driver
599   DEPENDS:=@TARGET_brcm2708 +kmod-i2c-core
600 endef
601
602 define KernelPackage/i2c-bcm2835/description
603   This package contains the Broadcom 2835 I2C master controller driver
604 endef
605
606 $(eval $(call KernelPackage,i2c-bcm2835))
607
608
609 define KernelPackage/video-bcm2835
610   TITLE:=Broadcom BCM2835 camera interface driver
611   KCONFIG:= \
612         CONFIG_VIDEO_BCM2835=y \
613         CONFIG_VIDEO_BCM2835_MMAL
614   FILES:= $(LINUX_DIR)/drivers/media/platform/bcm2835/bcm2835-v4l2.ko
615   AUTOLOAD:=$(call AutoLoad,65,bcm2835-v4l2)
616   $(call AddDepends/video,@TARGET_brcm2708 +kmod-video-videobuf2)
617 endef
618
619 define KernelPackage/video-bcm2835/description
620   This is a V4L2 driver for the Broadcom 2835 MMAL camera host interface
621 endef
622
623 $(eval $(call KernelPackage,video-bcm2835))