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-allo-piano-dac
72 TITLE
:=Support for Allo Piano DAC
74 CONFIG_SND_BCM2708_SOC_ALLO_PIANO_DAC \
75 CONFIG_SND_SOC_PCM512x \
76 CONFIG_SND_SOC_PCM512x_I2C
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
)
84 kmod-sound-soc-bcm2835-i2s \
86 $(call AddDepends
/sound
)
89 define KernelPackage
/sound-soc-allo-piano-dac
/description
90 This package contains support for Allo Piano DAC
93 $(eval
$(call KernelPackage
,sound-soc-allo-piano-dac
))
95 define KernelPackage
/sound-soc-audioinjector-pi-soundcard
96 TITLE
:=Support for AudioInjector Pi soundcard
98 CONFIG_SND_AUDIOINJECTOR_PI_SOUNDCARD \
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
)
106 kmod-sound-soc-bcm2835-i2s \
108 $(call AddDepends
/sound
)
111 define KernelPackage
/sound-soc-audioinjector-pi-soundcard
/description
112 This package contains support for AudioInjector Pi soundcard
115 $(eval
$(call KernelPackage
,sound-soc-audioinjector-pi-soundcard
))
117 define KernelPackage
/sound-soc-digidac1-soundcard
118 TITLE
:=Support for RRA DigiDAC1
120 CONFIG_SND_DIGIDAC1_SOUNDCARD \
121 CONFIG_SND_SOC_WM8741 \
122 CONFIG_SND_SOC_WM8804 \
123 CONFIG_SND_SOC_WM8804_I2C
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-snd-soc-wm8741 \
130 snd-soc-snd-soc-wm8804 snd-soc-snd-soc-wm8804-i2c \
131 snd-soc-digidac1-soundcard
)
133 kmod-sound-soc-bcm2835-i2s \
135 $(call AddDepends
/sound
)
138 define KernelPackage
/sound-soc-digidac1-soundcard
/description
139 This package contains support for RRA DigiDAC1
142 $(eval
$(call KernelPackage
,sound-soc-digidac1-soundcard
))
144 define KernelPackage
/sound-soc-dionaudio-loco
145 TITLE
:=Support for Dion Audio LOCO DAC-AMP
147 CONFIG_SND_BCM2708_SOC_DIONAUDIO_LOCO \
148 CONFIG_SND_SOC_PCM5102A
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-snd-soc-pcm5102a \
153 snd-soc-dionaudio-loco
)
155 kmod-sound-soc-bcm2835-i2s
156 $(call AddDepends
/sound
)
159 define KernelPackage
/sound-soc-dionaudio-loco
/description
160 This package contains support for Dion Audio LOCO DAC-AMP
163 $(eval
$(call KernelPackage
,sound-soc-dionaudio-loco
))
165 define KernelPackage
/sound-soc-hifiberry-dac
166 TITLE
:=Support for HifiBerry DAC
168 CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC \
169 CONFIG_SND_SOC_PCM5102A
171 $(LINUX_DIR
)/sound
/soc
/bcm
/snd-soc-hifiberry-dac.ko \
172 $(LINUX_DIR
)/sound
/soc
/codecs
/snd-soc-pcm5102a.ko
173 AUTOLOAD
:=$(call AutoLoad
,68,snd-soc-pcm5102a snd-soc-hifiberry-dac
)
175 kmod-sound-soc-bcm2835-i2s \
177 $(call AddDepends
/sound
)
180 define KernelPackage
/sound-soc-hifiberry-dac
/description
181 This package contains support for HifiBerry DAC
184 $(eval
$(call KernelPackage
,sound-soc-hifiberry-dac
))
186 define KernelPackage
/sound-soc-hifiberry-dacplus
187 TITLE
:=Support for HifiBerry DAC
+ / DAC
+ Pro
189 CONFIG_SND_BCM2708_SOC_HIFIBERRY_DACPLUS \
190 CONFIG_SND_SOC_PCM512x
192 $(LINUX_DIR
)/drivers
/clk
/clk-hifiberry-dacpro.ko \
193 $(LINUX_DIR
)/sound
/soc
/bcm
/snd-soc-hifiberry-dacplus.ko \
194 $(LINUX_DIR
)/sound
/soc
/codecs
/snd-soc-pcm512x.ko
195 AUTOLOAD
:=$(call AutoLoad
,68,clk-hifiberry-dacpro snd-soc-pcm512x \
196 snd-soc-hifiberry-dacplus
)
198 kmod-sound-soc-bcm2835-i2s \
200 $(call AddDepends
/sound
)
203 define KernelPackage
/sound-soc-hifiberry-dacplus
/description
204 This package contains support for HifiBerry DAC
+ / DAC
+ Pro
207 $(eval
$(call KernelPackage
,sound-soc-hifiberry-dacplus
))
209 define KernelPackage
/sound-soc-hifiberry-digi
210 TITLE
:=Support for HifiBerry Digi
/ Digi
+ / Digi
+ Pro
212 CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI \
213 CONFIG_SND_SOC_WM8804
215 $(LINUX_DIR
)/sound
/soc
/bcm
/snd-soc-hifiberry-digi.ko \
216 $(LINUX_DIR
)/sound
/soc
/codecs
/snd-soc-wm8804.ko
217 AUTOLOAD
:=$(call AutoLoad
,68,snd-soc-wm8804 snd-soc-hifiberry-digi
)
219 kmod-sound-soc-bcm2835-i2s \
221 $(call AddDepends
/sound
)
224 define KernelPackage
/sound-soc-hifiberry-digi
/description
225 This package contains support for HifiBerry Digi
228 $(eval
$(call KernelPackage
,sound-soc-hifiberry-digi
))
230 define KernelPackage
/sound-soc-hifiberry-amp
231 TITLE
:=Support for HifiBerry Amp
233 CONFIG_SND_BCM2708_SOC_HIFIBERRY_AMP \
234 CONFIG_SND_SOC_TAS5713
236 $(LINUX_DIR
)/sound
/soc
/bcm
/snd-soc-hifiberry-amp.ko \
237 $(LINUX_DIR
)/sound
/soc
/codecs
/snd-soc-tas5713.ko
238 AUTOLOAD
:=$(call AutoLoad
,68,snd-soc-tas5713 snd-soc-hifiberry-amp
)
240 kmod-sound-soc-bcm2835-i2s \
242 $(call AddDepends
/sound
)
245 define KernelPackage
/sound-soc-hifiberry-amp
/description
246 This package contains support for HifiBerry Amp
249 $(eval
$(call KernelPackage
,sound-soc-hifiberry-amp
))
251 define KernelPackage
/sound-soc-iqaudio-dac
252 TITLE
:=Support for IQaudIO-DAC
254 CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC \
255 CONFIG_SND_SOC_PCM512x \
256 CONFIG_SND_SOC_PCM512x_I2C
258 $(LINUX_DIR
)/sound
/soc
/bcm
/snd-soc-iqaudio-dac.ko \
259 $(LINUX_DIR
)/sound
/soc
/codecs
/snd-soc-pcm512x.ko \
260 $(LINUX_DIR
)/sound
/soc
/codecs
/snd-soc-pcm512x-i2c.ko
261 AUTOLOAD
:=$(call AutoLoad
,68,snd-soc-pcm512x snd-soc-pcm512x-i2c \
264 kmod-sound-soc-bcm2835-i2s \
266 $(call AddDepends
/sound
)
269 define KernelPackage
/sound-soc-iqaudio-dac
/description
270 This package contains support for IQaudIO-DAC
273 $(eval
$(call KernelPackage
,sound-soc-iqaudio-dac
))
275 define KernelPackage
/sound-soc-iqaudio-digi
276 TITLE
:=Support for IQaudIO-DIGI
278 CONFIG_SND_BCM2708_SOC_IQAUDIO_DIGI \
279 CONFIG_SND_SOC_WM8804 \
280 CONFIG_SND_SOC_WM8804_I2C
282 $(LINUX_DIR
)/sound
/soc
/bcm
/snd-soc-iqaudio-digi.ko \
283 $(LINUX_DIR
)/sound
/soc
/codecs
/snd-soc-wm8804.ko \
284 $(LINUX_DIR
)/sound
/soc
/codecs
/snd-soc-wm8804-i2c.ko
285 AUTOLOAD
:=$(call AutoLoad
,68,snd-soc-wm8804 snd-soc-wm8804-i2c \
286 snd-soc-iqaudio-digi
)
288 kmod-sound-soc-bcm2835-i2s \
290 $(call AddDepends
/sound
)
293 define KernelPackage
/sound-soc-iqaudio-digi
/description
294 This package contains support for IQaudIO-DIGI
297 $(eval
$(call KernelPackage
,sound-soc-iqaudio-digi
))
299 define KernelPackage
/sound-soc-justboom-dac
300 TITLE
:=Support for JustBoom DAC
302 CONFIG_SND_BCM2708_SOC_JUSTBOOM_DAC \
303 CONFIG_SND_SOC_PCM512x
305 $(LINUX_DIR
)/sound
/soc
/bcm
/snd-soc-justboom-dac.ko \
306 $(LINUX_DIR
)/sound
/soc
/codecs
/snd-soc-pcm512x.ko
307 AUTOLOAD
:=$(call AutoLoad
,68,snd-soc-pcm512x snd-soc-justboom-dac
)
309 kmod-sound-soc-bcm2835-i2s \
311 $(call AddDepends
/sound
)
314 define KernelPackage
/sound-soc-justboom-dac
/description
315 This package contains support for JustBoom DAC
318 $(eval
$(call KernelPackage
,sound-soc-justboom-dac
))
320 define KernelPackage
/sound-soc-justboom-digi
321 TITLE
:=Support for JustBoom Digi
323 CONFIG_SND_BCM2708_SOC_JUSTBOOM_DIGI \
324 CONFIG_SND_SOC_WM8804
326 $(LINUX_DIR
)/sound
/soc
/bcm
/snd-soc-justboom-digi.ko \
327 $(LINUX_DIR
)/sound
/soc
/codecs
/snd-soc-wm8804.ko
328 AUTOLOAD
:=$(call AutoLoad
,68,snd-soc-wm8804 snd-soc-justboom-digi
)
330 kmod-sound-soc-bcm2835-i2s \
332 $(call AddDepends
/sound
)
335 define KernelPackage
/sound-soc-justboom-digi
/description
336 This package contains support for JustBoom Digi
339 $(eval
$(call KernelPackage
,sound-soc-justboom-digi
))
341 define KernelPackage
/sound-soc-pisound
342 TITLE
:=Support for Blokas Labs PiSound
345 CONFIG_SND_SOC_PCM5102A
347 $(LINUX_DIR
)/sound
/soc
/bcm
/snd-soc-pisound.ko \
348 $(LINUX_DIR
)/sound
/soc
/codecs
/snd-soc-pcm5102a.ko
349 AUTOLOAD
:=$(call AutoLoad
,68,snd-soc-pcm5102a snd-soc-pisound
)
351 kmod-sound-soc-bcm2835-i2s
352 $(call AddDepends
/sound
)
355 define KernelPackage
/sound-soc-pisound
/description
356 This package contains support for Blokas Labs PiSound
359 $(eval
$(call KernelPackage
,sound-soc-pisound
))
361 define KernelPackage
/sound-soc-raspidac3
362 TITLE
:=Support for RaspiDAC Rev
.3x
364 CONFIG_SND_BCM2708_SOC_RASPIDAC3 \
365 CONFIG_SND_SOC_PCM512x \
366 CONFIG_SND_SOC_PCM512x_I2C \
367 CONFIG_SND_SOC_TPA6130A2
369 $(LINUX_DIR
)/sound
/soc
/bcm
/snd-soc-raspidac3.ko \
370 $(LINUX_DIR
)/sound
/soc
/codecs
/snd-soc-pcm512x.ko \
371 $(LINUX_DIR
)/sound
/soc
/codecs
/snd-soc-pcm512x-i2c.ko \
372 $(LINUX_DIR
)/sound
/soc
/codecs
/snd-soc-tpa6130a2.ko
373 AUTOLOAD
:=$(call AutoLoad
,68,snd-soc-pcm512x snd-soc-pcm512x-i2c \
374 snd-soc-tpa6130a2 snd-soc-raspidac3
)
376 kmod-sound-soc-bcm2835-i2s \
378 $(call AddDepends
/sound
)
381 define KernelPackage
/sound-soc-raspidac3
/description
382 This package contains support for RaspiDAC Rev
.3x
385 $(eval
$(call KernelPackage
,sound-soc-raspidac3
))
387 define KernelPackage
/sound-soc-rpi-dac
388 TITLE
:=Support for RPi-DAC
390 CONFIG_SND_BCM2708_SOC_RPI_DAC \
391 CONFIG_SND_SOC_PCM1794A
393 $(LINUX_DIR
)/sound
/soc
/bcm
/snd-soc-rpi-dac.ko \
394 $(LINUX_DIR
)/sound
/soc
/codecs
/snd-soc-pcm1794a.ko
395 AUTOLOAD
:=$(call AutoLoad
,68,snd-soc-pcm1794a snd-soc-rpi-dac
)
397 kmod-sound-soc-bcm2835-i2s \
399 $(call AddDepends
/sound
)
402 define KernelPackage
/sound-soc-rpi-dac
/description
403 This package contains support for RPi-DAC
406 $(eval
$(call KernelPackage
,sound-soc-rpi-dac
))
408 define KernelPackage
/sound-soc-rpi-proto
409 TITLE
:=Support for RPi-PROTO
411 CONFIG_SND_BCM2708_SOC_RPI_PROTO \
412 CONFIG_SND_SOC_WM8731
414 $(LINUX_DIR
)/sound
/soc
/bcm
/snd-soc-rpi-proto.ko \
415 $(LINUX_DIR
)/sound
/soc
/codecs
/snd-soc-wm8731.ko
416 AUTOLOAD
:=$(call AutoLoad
,68,snd-soc-wm8731 snd-soc-rpi-proto
)
418 kmod-sound-soc-bcm2835-i2s \
420 $(call AddDepends
/sound
)
423 define KernelPackage
/sound-soc-rpi-proto
/description
424 This package contains support for RPi-PROTO
427 $(eval
$(call KernelPackage
,sound-soc-rpi-proto
))
430 define KernelPackage
/random-bcm2835
431 SUBMENU
:=$(OTHER_MENU
)
432 TITLE
:=BCM2835 HW Random Number Generator
433 KCONFIG
:=CONFIG_HW_RANDOM_BCM2835
434 FILES
:=$(LINUX_DIR
)/drivers
/char
/hw_random
/bcm2835-rng.ko
435 AUTOLOAD
:=$(call AutoLoad
,11,bcm2835-rng
)
436 DEPENDS
:=@TARGET_brcm2708
+kmod-random-core
439 define KernelPackage
/random-bcm2835
/description
440 This package contains the Broadcom
2835 HW random number generator driver
443 $(eval
$(call KernelPackage
,random-bcm2835
))
446 define KernelPackage
/smi-bcm2835
447 SUBMENU
:=$(OTHER_MENU
)
448 TITLE
:=BCM2835 SMI driver
449 KCONFIG
:=CONFIG_BCM2835_SMI
450 FILES
:=$(LINUX_DIR
)/drivers
/misc
/bcm2835_smi.ko
451 AUTOLOAD
:=$(call AutoLoad
,20,bcm2835_smi
)
452 DEPENDS
:=@TARGET_brcm2708
455 define KernelPackage
/smi-bcm2835
/description
456 This package contains the Character device driver for Broadcom Secondary
460 $(eval
$(call KernelPackage
,smi-bcm2835
))
462 define KernelPackage
/smi-bcm2835-dev
463 SUBMENU
:=$(OTHER_MENU
)
464 TITLE
:=BCM2835 SMI device driver
465 KCONFIG
:=CONFIG_BCM2835_SMI_DEV
466 FILES
:=$(LINUX_DIR
)/drivers
/char
/broadcom
/bcm2835_smi_dev.ko
467 AUTOLOAD
:=$(call AutoLoad
,21,bcm2835_smi_dev
)
468 DEPENDS
:=@TARGET_brcm2708
+kmod-smi-bcm2835
471 define KernelPackage
/smi-bcm2835-dev
/description
472 This driver provides a character device interface
(ioctl
+ read
/write
) to
473 Broadcom
's Secondary Memory interface. The low-level functionality is provided
474 by the SMI driver itself.
477 $(eval $(call KernelPackage,smi-bcm2835-dev))
480 define KernelPackage/spi-bcm2835
482 TITLE:=BCM2835 SPI controller driver
487 FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2835.ko
488 AUTOLOAD:=$(call AutoLoad,89,spi-bcm2835)
489 DEPENDS:=@TARGET_brcm2708
492 define KernelPackage/spi-bcm2835/description
493 This package contains the Broadcom 2835 SPI master controller driver
496 $(eval $(call KernelPackage,spi-bcm2835))
498 define KernelPackage/spi-bcm2835-aux
500 TITLE:=BCM2835 Aux SPI controller driver
503 CONFIG_SPI_BCM2835AUX \
505 FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2835aux.ko
506 AUTOLOAD:=$(call AutoLoad,89,spi-bcm2835aux)
507 DEPENDS:=@TARGET_brcm2708
510 define KernelPackage/spi-bcm2835-aux/description
511 This package contains the Broadcom 2835 Aux SPI master controller driver
514 $(eval $(call KernelPackage,spi-bcm2835-aux))
517 define KernelPackage/hwmon-bcm2835
518 TITLE:=BCM2835 HWMON driver
519 KCONFIG:=CONFIG_SENSORS_BCM2835
520 FILES:=$(LINUX_DIR)/drivers/hwmon/bcm2835-hwmon.ko
521 AUTOLOAD:=$(call AutoLoad,60,bcm2835-hwmon)
522 $(call AddDepends/hwmon,@TARGET_brcm2708)
525 define KernelPackage/hwmon-bcm2835/description
526 Kernel module for BCM2835 thermal monitor chip
529 $(eval $(call KernelPackage,hwmon-bcm2835))
532 I2C_BCM2708_MODULES:=\
533 CONFIG_I2C_BCM2708:drivers/i2c/busses/i2c-bcm2708
535 define KernelPackage/i2c-bcm2708
536 $(call i2c_defaults,$(I2C_BCM2708_MODULES),59)
537 TITLE:=Broadcom BCM2708 I2C master controller driver
539 CONFIG_I2C_BCM2708_BAUDRATE=100000
540 DEPENDS:=@TARGET_brcm2708 +kmod-i2c-core
543 define KernelPackage/i2c-bcm2708/description
544 This package contains the Broadcom 2708 I2C master controller driver
547 $(eval $(call KernelPackage,i2c-bcm2708))
549 I2C_BCM2835_MODULES:=\
550 CONFIG_I2C_BCM2835:drivers/i2c/busses/i2c-bcm2835
552 define KernelPackage/i2c-bcm2835
553 $(call i2c_defaults,$(I2C_BCM2835_MODULES),59)
554 TITLE:=Broadcom BCM2835 I2C master controller driver
555 DEPENDS:=@TARGET_brcm2708 +kmod-i2c-core
558 define KernelPackage/i2c-bcm2835/description
559 This package contains the Broadcom 2835 I2C master controller driver
562 $(eval $(call KernelPackage,i2c-bcm2835))
565 define KernelPackage/video-bcm2835
566 TITLE:=Broadcom BCM2835 camera interface driver
568 CONFIG_VIDEO_BCM2835=y \
569 CONFIG_VIDEO_BCM2835_MMAL
570 FILES:= $(LINUX_DIR)/drivers/media/platform/bcm2835/bcm2835-v4l2.ko
571 AUTOLOAD:=$(call AutoLoad,65,bcm2835-v4l2)
572 $(call AddDepends/video,@TARGET_brcm2708 +kmod-video-videobuf2)
575 define KernelPackage/video-bcm2835/description
576 This is a V4L2 driver for the Broadcom 2835 MMAL camera host interface
579 $(eval $(call KernelPackage,video-bcm2835))