brcm2708: override disabled device tree module status from config.txt
[openwrt.git] / target / linux / brcm2708 / modules.mk
1 #
2 # Copyright (C) 2012 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-bcm2708-i2s
29   TITLE:=SoC Audio support for the Broadcom 2708 I2S module
30   KCONFIG:= \
31         CONFIG_SND_BCM2708_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-bcm2708-i2s.ko
36   AUTOLOAD:=$(call AutoLoad,68,snd-soc-bcm2708-i2s)
37   DEPENDS:=@TARGET_brcm2708 +kmod-regmap +kmod-sound-soc-core
38   $(call AddDepends/sound)
39 endef
40
41 define KernelPackage/sound-soc-bcm2708-i2s/description
42   This package contains support for codecs attached to the Broadcom 2708 I2S interface
43 endef
44
45 $(eval $(call KernelPackage,sound-soc-bcm2708-i2s))
46
47 define KernelPackage/sound-soc-hifiberry-dac
48   TITLE:=Support for HifiBerry DAC
49   KCONFIG:= \
50         CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC \
51         CONFIG_SND_SOC_PCM5102A
52   FILES:= \
53         $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-dac.ko \
54         $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm5102a.ko
55   AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm5102a snd-soc-hifiberry-dac)
56   DEPENDS:=kmod-sound-soc-bcm2708-i2s
57   $(call AddDepends/sound)
58 endef
59
60 define KernelPackage/sound-soc-hifiberry-dac/description
61   This package contains support for HifiBerry DAC
62 endef
63
64 $(eval $(call KernelPackage,sound-soc-hifiberry-dac))
65
66 define KernelPackage/sound-soc-hifiberry-dacplus
67   TITLE:=Support for HifiBerry DAC+
68   KCONFIG:= \
69         CONFIG_SND_BCM2708_SOC_HIFIBERRY_DACPLUS \
70         CONFIG_SND_SOC_PCM512x
71   FILES:= \
72         $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-dacplus.ko \
73         $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko
74   AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-hifiberry-dacplus)
75   DEPENDS:=kmod-sound-soc-bcm2708-i2s
76   $(call AddDepends/sound)
77 endef
78
79 define KernelPackage/sound-soc-hifiberry-dacplus/description
80   This package contains support for HifiBerry DAC+
81 endef
82
83 $(eval $(call KernelPackage,sound-soc-hifiberry-dacplus))
84
85 define KernelPackage/sound-soc-hifiberry-digi
86   TITLE:=Support for HifiBerry Digi
87   KCONFIG:= \
88         CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI \
89         CONFIG_SND_SOC_WM8804
90   FILES:= \
91         $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-digi.ko \
92         $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8804.ko
93   AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8804 snd-soc-hifiberry-digi)
94   DEPENDS:=kmod-sound-soc-bcm2708-i2s
95   $(call AddDepends/sound)
96 endef
97
98 define KernelPackage/sound-soc-hifiberry-digi/description
99   This package contains support for HifiBerry Digi
100 endef
101
102 $(eval $(call KernelPackage,sound-soc-hifiberry-digi))
103
104 define KernelPackage/sound-soc-hifiberry-amp
105   TITLE:=Support for HifiBerry Amp
106   KCONFIG:= \
107         CONFIG_SND_BCM2708_SOC_HIFIBERRY_AMP \
108         CONFIG_SND_SOC_TAS5713
109   FILES:= \
110         $(LINUX_DIR)/sound/soc/bcm/snd-soc-hifiberry-amp.ko \
111         $(LINUX_DIR)/sound/soc/codecs/snd-soc-tas5713.ko
112   AUTOLOAD:=$(call AutoLoad,68,snd-soc-tas5713 snd-soc-hifiberry-amp)
113   DEPENDS:=kmod-sound-soc-bcm2708-i2s
114   $(call AddDepends/sound)
115 endef
116
117 define KernelPackage/sound-soc-hifiberry-amp/description
118   This package contains support for HifiBerry Amp
119 endef
120
121 $(eval $(call KernelPackage,sound-soc-hifiberry-amp))
122
123 define KernelPackage/sound-soc-rpi-dac
124   TITLE:=Support for RPi-DAC
125   KCONFIG:= \
126         CONFIG_SND_BCM2708_SOC_RPI_DAC \
127         CONFIG_SND_SOC_PCM1794A
128   FILES:= \
129         $(LINUX_DIR)/sound/soc/bcm/snd-soc-rpi-dac.ko \
130         $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm1794a.ko
131   AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm1794a snd-soc-rpi-dac)
132   DEPENDS:=kmod-sound-soc-bcm2708-i2s
133   $(call AddDepends/sound)
134 endef
135
136 define KernelPackage/sound-soc-rpi-dac/description
137   This package contains support for RPi-DAC
138 endef
139
140 $(eval $(call KernelPackage,sound-soc-rpi-dac))
141
142 define KernelPackage/sound-soc-rpi-proto
143   TITLE:=Support for RPi-PROTO
144   KCONFIG:= \
145         CONFIG_SND_BCM2708_SOC_RPI_PROTO \
146         CONFIG_SND_SOC_WM8731
147   FILES:= \
148         $(LINUX_DIR)/sound/soc/bcm/snd-soc-rpi-proto.ko \
149         $(LINUX_DIR)/sound/soc/codecs/snd-soc-wm8731.ko
150   AUTOLOAD:=$(call AutoLoad,68,snd-soc-wm8731 snd-soc-rpi-proto)
151   DEPENDS:=kmod-sound-soc-bcm2708-i2s
152   $(call AddDepends/sound)
153 endef
154
155 define KernelPackage/sound-soc-rpi-proto/description
156   This package contains support for RPi-PROTO
157 endef
158
159 $(eval $(call KernelPackage,sound-soc-rpi-proto))
160
161 define KernelPackage/sound-soc-iqaudio-dac
162   TITLE:=Support for IQaudIO-DAC
163   KCONFIG:= \
164         CONFIG_SND_BCM2708_SOC_IQAUDIO_DAC \
165         CONFIG_SND_SOC_PCM512x \
166         CONFIG_SND_SOC_PCM512x_I2C
167   FILES:= \
168         $(LINUX_DIR)/sound/soc/bcm/snd-soc-iqaudio-dac.ko \
169         $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
170         $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko
171   AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-pcm512x-i2c snd-soc-iqaudio-dac)
172   DEPENDS:=kmod-sound-soc-bcm2708-i2s
173   $(call AddDepends/sound)
174 endef
175
176 define KernelPackage/sound-soc-iqaudio-dac/description
177   This package contains support for IQaudIO-DAC
178 endef
179
180 $(eval $(call KernelPackage,sound-soc-iqaudio-dac))
181
182
183 define KernelPackage/random-bcm2708
184   SUBMENU:=$(OTHER_MENU)
185   TITLE:=BCM2708 HW Random Number Generator
186   KCONFIG:=CONFIG_HW_RANDOM_BCM2708
187   FILES:=$(LINUX_DIR)/drivers/char/hw_random/bcm2708-rng.ko
188   AUTOLOAD:=$(call AutoLoad,11,bcm2708-rng)
189   DEPENDS:=@TARGET_brcm2708 +kmod-random-core
190 endef
191
192 define KernelPackage/random-bcm2708/description
193   This package contains the Broadcom 2708 HW random number generator driver
194 endef
195
196 $(eval $(call KernelPackage,random-bcm2708))
197
198 define KernelPackage/random-bcm2835
199   SUBMENU:=$(OTHER_MENU)
200   TITLE:=BCM2835 HW Random Number Generator
201   KCONFIG:=CONFIG_HW_RANDOM_BCM2835
202   FILES:=$(LINUX_DIR)/drivers/char/hw_random/bcm2835-rng.ko
203   AUTOLOAD:=$(call AutoLoad,11,bcm2835-rng)
204   DEPENDS:=@TARGET_brcm2708 +kmod-random-core
205 endef
206
207 define KernelPackage/random-bcm2835/description
208   This package contains the Broadcom 2835 HW random number generator driver
209 endef
210
211 $(eval $(call KernelPackage,random-bcm2835))
212
213
214 define KernelPackage/spi-bcm2708
215   SUBMENU:=$(SPI_MENU)
216   TITLE:=BCM2708 SPI controller driver
217   KCONFIG:= \
218     CONFIG_BCM2708_SPIDEV=n \
219     CONFIG_SPI=y \
220     CONFIG_SPI_BCM2708 \
221     CONFIG_SPI_MASTER=y
222   FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2708.ko
223   AUTOLOAD:=$(call AutoLoad,89,spi-bcm2708)
224   DEPENDS:=@TARGET_brcm2708
225 endef
226
227 define KernelPackage/spi-bcm2708/description
228   This package contains the Broadcom 2708 SPI master controller driver
229 endef
230
231 $(eval $(call KernelPackage,spi-bcm2708))
232
233 define KernelPackage/spi-bcm2835
234   SUBMENU:=$(SPI_MENU)
235   TITLE:=BCM2835 SPI controller driver
236   KCONFIG:=\
237     CONFIG_BCM2708_SPIDEV=n \
238     CONFIG_SPI=y \
239     CONFIG_SPI_BCM2835 \
240     CONFIG_SPI_MASTER=y
241   FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2835.ko
242   AUTOLOAD:=$(call AutoLoad,89,spi-bcm2835)
243   DEPENDS:=@TARGET_brcm2708
244 endef
245
246 define KernelPackage/spi-bcm2835/description
247   This package contains the Broadcom 2835 SPI master controller driver
248 endef
249
250 $(eval $(call KernelPackage,spi-bcm2835))
251
252
253 define KernelPackage/hwmon-bcm2835
254   TITLE:=BCM2835 HWMON driver
255   KCONFIG:=CONFIG_SENSORS_BCM2835
256   FILES:=$(LINUX_DIR)/drivers/hwmon/bcm2835-hwmon.ko
257   AUTOLOAD:=$(call AutoLoad,60,bcm2835-hwmon)
258   $(call AddDepends/hwmon,@TARGET_brcm2708)
259 endef
260
261 define KernelPackage/hwmon-bcm2835/description
262   Kernel module for BCM2835 thermal monitor chip
263 endef
264
265 $(eval $(call KernelPackage,hwmon-bcm2835))
266
267
268 I2C_BCM2708_MODULES:=\
269   CONFIG_I2C_BCM2708:drivers/i2c/busses/i2c-bcm2708
270
271 define KernelPackage/i2c-bcm2708
272   $(call i2c_defaults,$(I2C_BCM2708_MODULES),59)
273   TITLE:=Broadcom BCM2708 I2C master controller driver
274   KCONFIG+= \
275         CONFIG_I2C_BCM2708_BAUDRATE=100000 \
276         CONFIG_MFD_RPISENSE_CORE=n
277   DEPENDS:=@TARGET_brcm2708 +kmod-i2c-core
278 endef
279
280 define KernelPackage/i2c-bcm2708/description
281   This package contains the Broadcom 2708 I2C master controller driver
282 endef
283
284 $(eval $(call KernelPackage,i2c-bcm2708))
285
286 I2C_BCM2835_MODULES:=\
287   CONFIG_I2C_BCM2835:drivers/i2c/busses/i2c-bcm2835
288
289 define KernelPackage/i2c-bcm2835
290   $(call i2c_defaults,$(I2C_BCM2835_MODULES),59)
291   TITLE:=Broadcom BCM2835 I2C master controller driver
292   KCONFIG+= \
293         CONFIG_MFD_RPISENSE_CORE=n
294   DEPENDS:=@TARGET_brcm2708 +kmod-i2c-core
295 endef
296
297 define KernelPackage/i2c-bcm2835/description
298   This package contains the Broadcom 2835 I2C master controller driver
299 endef
300
301 $(eval $(call KernelPackage,i2c-bcm2835))
302
303
304 define KernelPackage/video-bcm2835
305   TITLE:=Broadcom BCM2835 camera interface driver
306   KCONFIG:= \
307         CONFIG_VIDEO_BCM2835=y \
308         CONFIG_VIDEO_BCM2835_MMAL
309   FILES:= $(LINUX_DIR)/drivers/media/platform/bcm2835/bcm2835-v4l2.ko
310   AUTOLOAD:=$(call AutoLoad,65,bcm2835-v4l2)
311   $(call AddDepends/video,@TARGET_brcm2708 +kmod-video-videobuf2)
312 endef
313
314 define KernelPackage/video-bcm2835/description
315   This is a V4L2 driver for the Broadcom 2835 MMAL camera host interface
316 endef
317
318 $(eval $(call KernelPackage,video-bcm2835))