2 # Copyright (C) 2012-2016 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 define KernelPackage/sound-arm-bcm2835
9 TITLE:=BCM2835 ALSA driver
15 $(LINUX_DIR)/sound/arm/snd-bcm2835.ko
16 AUTOLOAD:=$(call AutoLoad,68,snd-bcm2835)
17 DEPENDS:=@TARGET_brcm2708
18 $(call AddDepends/sound)
21 define KernelPackage/sound-arm-bcm2835/description
22 This package contains the BCM2835 ALSA pcm card driver
25 $(eval $(call KernelPackage,sound-arm-bcm2835))
28 define KernelPackage/sound-soc-bcm2835-i2s
29 TITLE:=SoC Audio support for the Broadcom 2835 I2S module
31 CONFIG_SND_BCM2835_SOC_I2S \
32 CONFIG_SND_SOC_DMAENGINE_PCM=y \
33 CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
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)
41 define KernelPackage/sound-soc-bcm2835-i2s/description
42 This package contains support for codecs attached to the Broadcom 2835 I2S interface
45 $(eval $(call KernelPackage,sound-soc-bcm2835-i2s))
47 define KernelPackage/sound-soc-adau1977-adc
48 TITLE:=Support for ADAU1977 ADC
50 CONFIG_SND_BCM2708_SOC_ADAU1977_ADC \
51 CONFIG_SND_SOC_ADAU1977 \
52 CONFIG_SND_SOC_ADAU1977_I2C
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 \
60 kmod-sound-soc-bcm2835-i2s \
62 $(call AddDepends/sound)
65 define KernelPackage/sound-soc-adau1977-adc/description
66 This package contains support for ADAU1977 ADC
69 $(eval $(call KernelPackage,sound-soc-adau1977-adc))
71 define KernelPackage/sound-soc-audioinjector-pi-soundcard
72 TITLE:=Support for AudioInjector Pi soundcard
74 CONFIG_SND_AUDIOINJECTOR_PI_SOUNDCARD \
77 $(LINUX_DIR)/sound/soc/bcm/snd-soc-audioinjector-pi-soundcard.ko \
78 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8731.ko
79 AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8731 \
80 snd-soc-audioinjector-pi-soundcard)
82 kmod-sound-soc-bcm2835-i2s \
84 $(call AddDepends/sound)
87 define KernelPackage/sound-soc-audioinjector-pi-soundcard/description
88 This package contains support for AudioInjector Pi soundcard
91 $(eval $(call KernelPackage,sound-soc-audioinjector-pi-soundcard))
93 define KernelPackage/sound-soc-digidac1-soundcard
94 TITLE:=Support for RRA DigiDAC1
96 CONFIG_SND_DIGIDAC1_SOUNDCARD \
97 CONFIG_SND_SOC_WM8741 \
98 CONFIG_SND_SOC_WM8804 \
99 CONFIG_SND_SOC_WM8804_I2C
101 $(LINUX_DIR)/sound/soc/bcm/snd-soc-digidac1-soundcard.ko \
102 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8741.ko \
103 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko \
104 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804-i2c.ko
105 AUTOLOAD:=$(call AutoLoad,68,snd-soc-snd-soc-wm8741 \
106 snd-soc-snd-soc-wm8804 snd-soc-snd-soc-wm8804-i2c \
107 snd-soc-digidac1-soundcard)
109 kmod-sound-soc-bcm2835-i2s \
111 $(call AddDepends/sound)
114 define KernelPackage/sound-soc-digidac1-soundcard/description
115 This package contains support for RRA DigiDAC1
118 $(eval $(call KernelPackage,sound-soc-digidac1-soundcard))
120 define KernelPackage/sound-soc-dionaudio-loco
121 TITLE:=Support for Dion Audio LOCO DAC-AMP
123 CONFIG_SND_BCM2708_SOC_DIONAUDIO_LOCO \
124 CONFIG_SND_SOC_PCM5102A
126 $(LINUX_DIR)/sound/soc/bcm/snd-soc-dionaudio-loco.ko \
127 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm5102a.ko
128 AUTOLOAD:=$(call AutoLoad,68,snd-soc-snd-soc-pcm5102a \
129 snd-soc-dionaudio-loco)
131 kmod-sound-soc-bcm2835-i2s
132 $(call AddDepends/sound)
135 define KernelPackage/sound-soc-dionaudio-loco/description
136 This package contains support for Dion Audio LOCO DAC-AMP
139 $(eval $(call KernelPackage,sound-soc-dionaudio-loco))
141 define KernelPackage/sound-soc-hifiberry-dac
142 TITLE:=Support for HifiBerry DAC
144 CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC \
145 CONFIG_SND_SOC_PCM5102A
147 $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-dac.ko \
148 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm5102a.ko
149 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm5102a snd-soc-hifiberry-dac)
151 kmod-sound-soc-bcm2835-i2s \
153 $(call AddDepends/sound)
156 define KernelPackage/sound-soc-hifiberry-dac/description
157 This package contains support for HifiBerry DAC
160 $(eval $(call KernelPackage,sound-soc-hifiberry-dac))
162 define KernelPackage/sound-soc-hifiberry-dacplus
163 TITLE:=Support for HifiBerry DAC+ / DAC+ Pro
165 CONFIG_SND_BCM2708_SOC_HIFIBERRY_DACPLUS \
166 CONFIG_SND_SOC_PCM512x
168 $(LINUX_DIR)/drivers/clk/clk-hifiberry-dacpro.ko \
169 $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-dacplus.ko \
170 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko
171 AUTOLOAD:=$(call AutoLoad,68,clk-hifiberry-dacpro snd-soc-pcm512x \
172 snd-soc-hifiberry-dacplus)
174 kmod-sound-soc-bcm2835-i2s \
176 $(call AddDepends/sound)
179 define KernelPackage/sound-soc-hifiberry-dacplus/description
180 This package contains support for HifiBerry DAC+ / DAC+ Pro
183 $(eval $(call KernelPackage,sound-soc-hifiberry-dacplus))
185 define KernelPackage/sound-soc-hifiberry-digi
186 TITLE:=Support for HifiBerry Digi
188 CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI \
189 CONFIG_SND_SOC_WM8804
191 $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-digi.ko \
192 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko
193 AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8804 snd-soc-hifiberry-digi)
195 kmod-sound-soc-bcm2835-i2s \
197 $(call AddDepends/sound)
200 define KernelPackage/sound-soc-hifiberry-digi/description
201 This package contains support for HifiBerry Digi
204 $(eval $(call KernelPackage,sound-soc-hifiberry-digi))
206 define KernelPackage/sound-soc-hifiberry-amp
207 TITLE:=Support for HifiBerry Amp
209 CONFIG_SND_BCM2708_SOC_HIFIBERRY_AMP \
210 CONFIG_SND_SOC_TAS5713
212 $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-amp.ko \
213 $(LINUX_DIR)/sound/soc/codecs/snd-soc-tas5713.ko
214 AUTOLOAD:=$(call AutoLoad,68,snd-soc-tas5713 snd-soc-hifiberry-amp)
216 kmod-sound-soc-bcm2835-i2s \
218 $(call AddDepends/sound)
221 define KernelPackage/sound-soc-hifiberry-amp/description
222 This package contains support for HifiBerry Amp
225 $(eval $(call KernelPackage,sound-soc-hifiberry-amp))
227 define KernelPackage/sound-soc-iqaudio-dac
228 TITLE:=Support for IQaudIO-DAC
230 CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC \
231 CONFIG_SND_SOC_PCM512x \
232 CONFIG_SND_SOC_PCM512x_I2C
234 $(LINUX_DIR)/sound/soc/bcm/snd-soc-iqaudio-dac.ko \
235 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
236 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko
237 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-pcm512x-i2c \
240 kmod-sound-soc-bcm2835-i2s \
242 $(call AddDepends/sound)
245 define KernelPackage/sound-soc-iqaudio-dac/description
246 This package contains support for IQaudIO-DAC
249 $(eval $(call KernelPackage,sound-soc-iqaudio-dac))
251 define KernelPackage/sound-soc-iqaudio-digi
252 TITLE:=Support for IQaudIO-DIGI
254 CONFIG_SND_BCM2708_SOC_IQAUDIO_DIGI \
255 CONFIG_SND_SOC_WM8804 \
256 CONFIG_SND_SOC_WM8804_I2C
258 $(LINUX_DIR)/sound/soc/bcm/snd-soc-iqaudio-digi.ko \
259 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko \
260 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804-i2c.ko
261 AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8804 snd-soc-wm8804-i2c \
262 snd-soc-iqaudio-digi)
264 kmod-sound-soc-bcm2835-i2s \
266 $(call AddDepends/sound)
269 define KernelPackage/sound-soc-iqaudio-digi/description
270 This package contains support for IQaudIO-DIGI
273 $(eval $(call KernelPackage,sound-soc-iqaudio-digi))
275 define KernelPackage/sound-soc-justboom-dac
276 TITLE:=Support for JustBoom DAC
278 CONFIG_SND_BCM2708_SOC_JUSTBOOM_DAC \
279 CONFIG_SND_SOC_PCM512x
281 $(LINUX_DIR)/sound/soc/bcm/snd-soc-justboom-dac.ko \
282 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko
283 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-justboom-dac)
285 kmod-sound-soc-bcm2835-i2s \
287 $(call AddDepends/sound)
290 define KernelPackage/sound-soc-justboom-dac/description
291 This package contains support for JustBoom DAC
294 $(eval $(call KernelPackage,sound-soc-justboom-dac))
296 define KernelPackage/sound-soc-justboom-digi
297 TITLE:=Support for JustBoom Digi
299 CONFIG_SND_BCM2708_SOC_JUSTBOOM_DIGI \
300 CONFIG_SND_SOC_WM8804
302 $(LINUX_DIR)/sound/soc/bcm/snd-soc-justboom-digi.ko \
303 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko
304 AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8804 snd-soc-justboom-digi)
306 kmod-sound-soc-bcm2835-i2s \
308 $(call AddDepends/sound)
311 define KernelPackage/sound-soc-justboom-digi/description
312 This package contains support for JustBoom Digi
315 $(eval $(call KernelPackage,sound-soc-justboom-digi))
317 define KernelPackage/sound-soc-raspidac3
318 TITLE:=Support for RaspiDAC Rev.3x
320 CONFIG_SND_BCM2708_SOC_RASPIDAC3 \
321 CONFIG_SND_SOC_PCM512x \
322 CONFIG_SND_SOC_PCM512x_I2C \
323 CONFIG_SND_SOC_TPA6130A2
325 $(LINUX_DIR)/sound/soc/bcm/snd-soc-raspidac3.ko \
326 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
327 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko \
328 $(LINUX_DIR)/sound/soc/codecs/snd-soc-tpa6130a2.ko
329 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-pcm512x-i2c \
330 snd-soc-tpa6130a2 snd-soc-raspidac3)
332 kmod-sound-soc-bcm2835-i2s \
334 $(call AddDepends/sound)
337 define KernelPackage/sound-soc-raspidac3/description
338 This package contains support for RaspiDAC Rev.3x
341 $(eval $(call KernelPackage,sound-soc-raspidac3))
343 define KernelPackage/sound-soc-rpi-dac
344 TITLE:=Support for RPi-DAC
346 CONFIG_SND_BCM2708_SOC_RPI_DAC \
347 CONFIG_SND_SOC_PCM1794A
349 $(LINUX_DIR)/sound/soc/bcm/snd-soc-rpi-dac.ko \
350 $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm1794a.ko
351 AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm1794a snd-soc-rpi-dac)
353 kmod-sound-soc-bcm2835-i2s \
355 $(call AddDepends/sound)
358 define KernelPackage/sound-soc-rpi-dac/description
359 This package contains support for RPi-DAC
362 $(eval $(call KernelPackage,sound-soc-rpi-dac))
364 define KernelPackage/sound-soc-rpi-proto
365 TITLE:=Support for RPi-PROTO
367 CONFIG_SND_BCM2708_SOC_RPI_PROTO \
368 CONFIG_SND_SOC_WM8731
370 $(LINUX_DIR)/sound/soc/bcm/snd-soc-rpi-proto.ko \
371 $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8731.ko
372 AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8731 snd-soc-rpi-proto)
374 kmod-sound-soc-bcm2835-i2s \
376 $(call AddDepends/sound)
379 define KernelPackage/sound-soc-rpi-proto/description
380 This package contains support for RPi-PROTO
383 $(eval $(call KernelPackage,sound-soc-rpi-proto))
386 define KernelPackage/random-bcm2835
387 SUBMENU:=$(OTHER_MENU)
388 TITLE:=BCM2835 HW Random Number Generator
389 KCONFIG:=CONFIG_HW_RANDOM_BCM2835
390 FILES:=$(LINUX_DIR)/drivers/char/hw_random/bcm2835-rng.ko
391 AUTOLOAD:=$(call AutoLoad,11,bcm2835-rng)
392 DEPENDS:=@TARGET_brcm2708 +kmod-random-core
395 define KernelPackage/random-bcm2835/description
396 This package contains the Broadcom 2835 HW random number generator driver
399 $(eval $(call KernelPackage,random-bcm2835))
402 define KernelPackage/smi-bcm2835
403 SUBMENU:=$(OTHER_MENU)
404 TITLE:=BCM2835 SMI driver
405 KCONFIG:=CONFIG_BCM2835_SMI
406 FILES:=$(LINUX_DIR)/drivers/misc/bcm2835_smi.ko
407 AUTOLOAD:=$(call AutoLoad,20,bcm2835_smi)
408 DEPENDS:=@TARGET_brcm2708
411 define KernelPackage/smi-bcm2835/description
412 This package contains the Character device driver for Broadcom Secondary
416 $(eval $(call KernelPackage,smi-bcm2835))
418 define KernelPackage/smi-bcm2835-dev
419 SUBMENU:=$(OTHER_MENU)
420 TITLE:=BCM2835 SMI device driver
421 KCONFIG:=CONFIG_BCM2835_SMI_DEV
422 FILES:=$(LINUX_DIR)/drivers/char/broadcom/bcm2835_smi_dev.ko
423 AUTOLOAD:=$(call AutoLoad,21,bcm2835_smi_dev)
424 DEPENDS:=@TARGET_brcm2708 +kmod-smi-bcm2835
427 define KernelPackage/smi-bcm2835-dev/description
428 This driver provides a character device interface (ioctl + read/write) to
429 Broadcom's Secondary Memory interface. The low-level functionality is provided
430 by the SMI driver itself.
433 $(eval $(call KernelPackage,smi-bcm2835-dev))
436 define KernelPackage/spi-bcm2835
438 TITLE:=BCM2835 SPI controller driver
443 FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2835.ko
444 AUTOLOAD:=$(call AutoLoad,89,spi-bcm2835)
445 DEPENDS:=@TARGET_brcm2708
448 define KernelPackage/spi-bcm2835/description
449 This package contains the Broadcom 2835 SPI master controller driver
452 $(eval $(call KernelPackage,spi-bcm2835))
454 define KernelPackage/spi-bcm2835-aux
456 TITLE:=BCM2835 Aux SPI controller driver
459 CONFIG_SPI_BCM2835AUX \
461 FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2835aux.ko
462 AUTOLOAD:=$(call AutoLoad,89,spi-bcm2835aux)
463 DEPENDS:=@TARGET_brcm2708
466 define KernelPackage/spi-bcm2835-aux/description
467 This package contains the Broadcom 2835 Aux SPI master controller driver
470 $(eval $(call KernelPackage,spi-bcm2835-aux))
473 define KernelPackage/hwmon-bcm2835
474 TITLE:=BCM2835 HWMON driver
475 KCONFIG:=CONFIG_SENSORS_BCM2835
476 FILES:=$(LINUX_DIR)/drivers/hwmon/bcm2835-hwmon.ko
477 AUTOLOAD:=$(call AutoLoad,60,bcm2835-hwmon)
478 $(call AddDepends/hwmon,@TARGET_brcm2708)
481 define KernelPackage/hwmon-bcm2835/description
482 Kernel module for BCM2835 thermal monitor chip
485 $(eval $(call KernelPackage,hwmon-bcm2835))
488 I2C_BCM2708_MODULES:=\
489 CONFIG_I2C_BCM2708:drivers/i2c/busses/i2c-bcm2708
491 define KernelPackage/i2c-bcm2708
492 $(call i2c_defaults,$(I2C_BCM2708_MODULES),59)
493 TITLE:=Broadcom BCM2708 I2C master controller driver
495 CONFIG_I2C_BCM2708_BAUDRATE=100000
496 DEPENDS:=@TARGET_brcm2708 +kmod-i2c-core
499 define KernelPackage/i2c-bcm2708/description
500 This package contains the Broadcom 2708 I2C master controller driver
503 $(eval $(call KernelPackage,i2c-bcm2708))
505 I2C_BCM2835_MODULES:=\
506 CONFIG_I2C_BCM2835:drivers/i2c/busses/i2c-bcm2835
508 define KernelPackage/i2c-bcm2835
509 $(call i2c_defaults,$(I2C_BCM2835_MODULES),59)
510 TITLE:=Broadcom BCM2835 I2C master controller driver
511 DEPENDS:=@TARGET_brcm2708 +kmod-i2c-core
514 define KernelPackage/i2c-bcm2835/description
515 This package contains the Broadcom 2835 I2C master controller driver
518 $(eval $(call KernelPackage,i2c-bcm2835))
521 define KernelPackage/video-bcm2835
522 TITLE:=Broadcom BCM2835 camera interface driver
524 CONFIG_VIDEO_BCM2835=y \
525 CONFIG_VIDEO_BCM2835_MMAL
526 FILES:= $(LINUX_DIR)/drivers/media/platform/bcm2835/bcm2835-v4l2.ko
527 AUTOLOAD:=$(call AutoLoad,65,bcm2835-v4l2)
528 $(call AddDepends/video,@TARGET_brcm2708 +kmod-video-videobuf2)
531 define KernelPackage/video-bcm2835/description
532 This is a V4L2 driver for the Broadcom 2835 MMAL camera host interface
535 $(eval $(call KernelPackage,video-bcm2835))