modules: iio-mxs-lradc: build on mxs only
[oweals/openwrt.git] / package / kernel / linux / modules / sound.mk
1 #
2 # Copyright (C) 2006-2013 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 SOUND_MENU:=Sound Support
9
10 # allow targets to override the soundcore stuff
11 SOUNDCORE_LOAD ?= \
12         soundcore \
13         snd \
14         snd-hwdep \
15         snd-seq-device \
16         snd-rawmidi \
17         snd-timer \
18         snd-pcm \
19         snd-mixer-oss \
20         snd-pcm-oss \
21         snd-compress
22
23 SOUNDCORE_FILES ?= \
24         $(LINUX_DIR)/sound/soundcore.ko \
25         $(LINUX_DIR)/sound/core/snd.ko \
26         $(LINUX_DIR)/sound/core/snd-hwdep.ko \
27         $(LINUX_DIR)/sound/core/seq/snd-seq-device.ko@lt4.13 \
28         $(LINUX_DIR)/sound/core/snd-seq-device.ko@ge4.13 \
29         $(LINUX_DIR)/sound/core/snd-rawmidi.ko \
30         $(LINUX_DIR)/sound/core/snd-timer.ko \
31         $(LINUX_DIR)/sound/core/snd-pcm.ko \
32         $(LINUX_DIR)/sound/core/oss/snd-mixer-oss.ko \
33         $(LINUX_DIR)/sound/core/oss/snd-pcm-oss.ko \
34         $(LINUX_DIR)/sound/core/snd-compress.ko
35
36 SOUNDCORE_LOAD += \
37         $(if $(CONFIG_SND_DMAENGINE_PCM),snd-pcm-dmaengine)
38
39 SOUNDCORE_FILES += \
40         $(if $(CONFIG_SND_DMAENGINE_PCM),$(LINUX_DIR)/sound/core/snd-pcm-dmaengine.ko)
41
42 define KernelPackage/sound-core
43   SUBMENU:=$(SOUND_MENU)
44   TITLE:=Sound support
45   DEPENDS:=@AUDIO_SUPPORT +kmod-input-core
46   KCONFIG:= \
47         CONFIG_SOUND \
48         CONFIG_SND \
49         CONFIG_SND_HWDEP \
50         CONFIG_SND_RAWMIDI \
51         CONFIG_SND_TIMER \
52         CONFIG_SND_PCM \
53         CONFIG_SND_PCM_TIMER=y \
54         CONFIG_SND_SEQUENCER \
55         CONFIG_SND_VIRMIDI \
56         CONFIG_SND_SEQ_DUMMY \
57         CONFIG_SND_SEQUENCER_OSS=y \
58         CONFIG_HOSTAUDIO \
59         CONFIG_SND_PCM_OSS \
60         CONFIG_SND_MIXER_OSS \
61         CONFIG_SOUND_OSS_CORE_PRECLAIM=y \
62         CONFIG_SND_COMPRESS_OFFLOAD
63   FILES:=$(SOUNDCORE_FILES)
64   AUTOLOAD:=$(call AutoLoad,30,$(SOUNDCORE_LOAD))
65 endef
66
67 define KernelPackage/sound-core/uml
68   FILES:= \
69         $(LINUX_DIR)/sound/soundcore.ko \
70         $(LINUX_DIR)/arch/um/drivers/hostaudio.ko
71   AUTOLOAD+=$(call AutoLoad,30,soundcore hostaudio)
72 endef
73
74 define KernelPackage/sound-core/description
75  Kernel modules for sound support
76 endef
77
78 $(eval $(call KernelPackage,sound-core))
79
80
81 define AddDepends/sound
82   SUBMENU:=$(SOUND_MENU)
83   DEPENDS+=kmod-sound-core $(1) @!TARGET_uml
84 endef
85
86
87 define KernelPackage/ac97
88   TITLE:=ac97 controller
89   KCONFIG:=CONFIG_SND_AC97_CODEC
90   FILES:= \
91         $(LINUX_DIR)/sound/ac97_bus.ko \
92         $(LINUX_DIR)/sound/pci/ac97/snd-ac97-codec.ko
93   AUTOLOAD:=$(call AutoLoad,35,ac97_bus snd-ac97-codec)
94   $(call AddDepends/sound)
95 endef
96
97 define KernelPackage/ac97/description
98  The ac97 controller
99 endef
100
101 $(eval $(call KernelPackage,ac97))
102
103
104 define KernelPackage/sound-mpu401
105   TITLE:=MPU-401 uart driver
106   KCONFIG:=CONFIG_SND_MPU401_UART
107   FILES:= \
108         $(LINUX_DIR)/sound/drivers/mpu401/snd-mpu401-uart.ko
109   AUTOLOAD:=$(call AutoLoad,35,snd-mpu401-uart)
110   $(call AddDepends/sound)
111 endef
112
113 define KernelPackage/sound-mpu401/description
114  support for MIDI ports compatible with the Roland MPU-401
115  interface in UART mode.
116 endef
117
118 $(eval $(call KernelPackage,sound-mpu401))
119
120
121 define KernelPackage/sound-seq
122   TITLE:=Sequencer support
123   FILES:= \
124         $(LINUX_DIR)/sound/core/seq/snd-seq.ko \
125         $(LINUX_DIR)/sound/core/seq/snd-seq-midi-event.ko \
126         $(LINUX_DIR)/sound/core/seq/snd-seq-midi.ko
127   AUTOLOAD:=$(call AutoLoad,35,snd-seq snd-seq-midi-event snd-seq-midi)
128   $(call AddDepends/sound)
129 endef
130
131 define KernelPackage/sound-seq/description
132  Kernel modules for sequencer support
133 endef
134
135 $(eval $(call KernelPackage,sound-seq))
136
137
138 define KernelPackage/sound-i8x0
139   TITLE:=Intel/SiS/nVidia/AMD/ALi AC97 Controller
140   DEPENDS:=+kmod-ac97
141   KCONFIG:=CONFIG_SND_INTEL8X0
142   FILES:=$(LINUX_DIR)/sound/pci/snd-intel8x0.ko
143   AUTOLOAD:=$(call AutoLoad,36,snd-intel8x0)
144   $(call AddDepends/sound)
145 endef
146
147 define KernelPackage/sound-i8x0/description
148  support for the integrated AC97 sound device on motherboards
149  with Intel/SiS/nVidia/AMD chipsets, or ALi chipsets using
150  the M5455 Audio Controller.
151 endef
152
153 $(eval $(call KernelPackage,sound-i8x0))
154
155
156 define KernelPackage/sound-via82xx
157   TITLE:=VIA 82xx AC97 Controller
158   DEPENDS:=+kmod-ac97 +kmod-sound-mpu401
159   KCONFIG:=CONFIG_SND_VIA82XX
160   FILES:=$(LINUX_DIR)/sound/pci/snd-via82xx.ko
161   AUTOLOAD:=$(call AutoLoad,36,snd-via82xx)
162   $(call AddDepends/sound)
163 endef
164
165 define KernelPackage/sound-via82xx/description
166  support for the integrated AC97 sound device on motherboards
167  with VIA chipsets.
168 endef
169
170 $(eval $(call KernelPackage,sound-via82xx))
171
172
173 define KernelPackage/sound-soc-core
174   TITLE:=SoC sound support
175   DEPENDS:=+kmod-regmap +kmod-ac97
176   KCONFIG:= \
177         CONFIG_SND_SOC \
178         CONFIG_SND_SOC_DMAENGINE_PCM=y \
179         CONFIG_SND_SOC_ALL_CODECS=n
180   FILES:=$(LINUX_DIR)/sound/soc/snd-soc-core.ko
181   AUTOLOAD:=$(call AutoLoad,55, snd-soc-core)
182   $(call AddDepends/sound)
183 endef
184
185 $(eval $(call KernelPackage,sound-soc-core))
186
187
188 define KernelPackage/sound-soc-ac97
189   TITLE:=AC97 Codec support
190   KCONFIG:=CONFIG_SND_SOC_AC97_CODEC
191   FILES:=$(LINUX_DIR)/sound/soc/codecs/snd-soc-ac97.ko
192   AUTOLOAD:=$(call AutoLoad,57,snd-soc-ac97)
193   DEPENDS:=+kmod-ac97 +kmod-sound-soc-core
194   $(call AddDepends/sound)
195 endef
196
197 $(eval $(call KernelPackage,sound-soc-ac97))
198
199
200 define KernelPackage/sound-soc-imx
201   TITLE:=IMX SoC support
202   KCONFIG:=\
203         CONFIG_SND_IMX_SOC \
204         CONFIG_SND_SOC_IMX_AUDMUX \
205         CONFIG_SND_SOC_FSL_SSI \
206         CONFIG_SND_SOC_IMX_PCM_DMA
207   FILES:= \
208         $(LINUX_DIR)/sound/soc/fsl/snd-soc-imx-audmux.ko \
209         $(LINUX_DIR)/sound/soc/fsl/snd-soc-fsl-ssi.ko \
210         $(LINUX_DIR)/sound/soc/fsl/imx-pcm-dma.ko
211   AUTOLOAD:=$(call AutoLoad,56,snd-soc-imx-audmux snd-soc-fsl-ssi snd-soc-imx-pcm)
212   DEPENDS:=@TARGET_imx6 +kmod-sound-soc-core
213   $(call AddDepends/sound)
214 endef
215
216 define KernelPackage/sound-soc-imx/description
217  Support for i.MX6 Platform sound (ssi/audmux/pcm)
218 endef
219
220 $(eval $(call KernelPackage,sound-soc-imx))
221
222
223 define KernelPackage/sound-soc-imx-sgtl5000
224   TITLE:=IMX SoC support for SGTL5000
225   KCONFIG:=CONFIG_SND_SOC_IMX_SGTL5000
226   FILES:=\
227         $(LINUX_DIR)/sound/soc/codecs/snd-soc-sgtl5000.ko \
228         $(LINUX_DIR)/sound/soc/fsl/snd-soc-imx-sgtl5000.ko
229   AUTOLOAD:=$(call AutoLoad,57,snd-soc-sgtl5000 snd-soc-imx-sgtl5000)
230   DEPENDS:=@TARGET_imx6 +kmod-sound-soc-imx
231   $(call AddDepends/sound)
232 endef
233
234 define KernelPackage/sound-soc-imx-sgtl5000/description
235  Support for i.MX6 Platform sound SGTL5000 codec
236 endef
237
238 $(eval $(call KernelPackage,sound-soc-imx-sgtl5000))
239
240
241 define KernelPackage/sound-soc-gw_avila
242   TITLE:=Gateworks Avila SoC sound support
243   KCONFIG:= \
244         CONFIG_SND_GW_AVILA_SOC \
245         CONFIG_SND_GW_AVILA_SOC_PCM \
246         CONFIG_SND_GW_AVILA_SOC_HSS
247   FILES:= \
248         $(LINUX_DIR)/sound/soc/codecs/snd-soc-tlv320aic3x.ko \
249         $(LINUX_DIR)/sound/soc/gw-avila/snd-soc-gw-avila.ko \
250         $(LINUX_DIR)/sound/soc/gw-avila/snd-soc-gw-avila-pcm.ko \
251         $(LINUX_DIR)/sound/soc/gw-avila/snd-soc-gw-avila-hss.ko
252   AUTOLOAD:=$(call AutoLoad,65,snd-soc-tlv320aic3x snd-soc-gw-avila snd-soc-gw-avila-pcm snd-soc-gw-avila-hss)
253   DEPENDS:=@TARGET_ixp4xx +kmod-sound-soc-core
254   $(call AddDepends/sound)
255 endef
256
257 $(eval $(call KernelPackage,sound-soc-gw_avila))
258
259
260 define KernelPackage/pcspkr
261   DEPENDS:=@TARGET_x86 +kmod-input-core
262   TITLE:=PC speaker support
263   KCONFIG:= \
264         CONFIG_SND_PCSP
265   FILES:= \
266         $(LINUX_DIR)/sound/drivers/pcsp/snd-pcsp.ko
267   AUTOLOAD:=$(call AutoLoad,50,snd-pcsp)
268   $(call AddDepends/sound)
269 endef
270
271 define KernelPackage/pcspkr/description
272  This enables sounds (tones) through the pc speaker
273 endef
274
275 $(eval $(call KernelPackage,pcspkr))
276
277 define KernelPackage/sound-dummy
278   $(call AddDepends/sound)
279   TITLE:=Null sound output driver (sink)
280   KCONFIG:= \
281         CONFIG_SND_DUMMY
282   FILES:= \
283         $(LINUX_DIR)/sound/drivers/snd-dummy.ko
284   AUTOLOAD:=$(call AutoLoad,32,snd-dummy)
285 endef
286
287 define KernelPackage/sound_dummy/description
288  Dummy sound device for Alsa when no hardware present
289 endef
290
291 $(eval $(call KernelPackage,sound-dummy))
292
293 define KernelPackage/sound-hda-core
294   SUBMENU:=$(SOUND_MENU)
295   TITLE:=HD Audio Sound Core Support
296   KCONFIG:= \
297         CONFIG_SND_HDA_CORE@ge4.1 \
298         CONFIG_SND_HDA_HWDEP=y \
299         CONFIG_SND_HDA_RECONFIG=n \
300         CONFIG_SND_HDA_INPUT_BEEP=n \
301         CONFIG_SND_HDA_PATCH_LOADER=n \
302         CONFIG_SND_HDA_GENERIC
303   FILES:= \
304         $(LINUX_DIR)/sound/hda/snd-hda-core.ko@ge4.1 \
305         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec.ko \
306         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-generic.ko
307   AUTOLOAD:=$(call AutoProbe,snd-hda-core@ge4.1 snd-hda-codec snd-hda-codec-generic)
308   $(call AddDepends/sound,+kmod-regmap)
309 endef
310
311 define KernelPackage/sound-hda-core/description
312  Kernel modules for HD Audio sound support
313 endef
314
315 $(eval $(call KernelPackage,sound-hda-core))
316
317 define KernelPackage/sound-hda-codec-realtek
318   SUBMENU:=$(SOUND_MENU)
319   TITLE:= HD Audio Realtek Codec
320   KCONFIG:= \
321         CONFIG_SND_HDA_CODEC_REALTEK
322   FILES:= \
323         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-realtek.ko
324   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-realtek)
325   $(call AddDepends/sound,kmod-sound-hda-core)
326 endef
327
328 define KernelPackage/sound-hda-codec-realtek/description
329  Kernel modules for Intel HDA Realtek codec support
330 endef
331
332 $(eval $(call KernelPackage,sound-hda-codec-realtek))
333
334 define KernelPackage/sound-hda-codec-cmedia
335   SUBMENU:=$(SOUND_MENU)
336   TITLE:=HD Audio C-Media Codec
337   KCONFIG:= \
338         CONFIG_SND_HDA_CODEC_CMEDIA
339   FILES:= \
340         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-cmedia.ko
341   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-cmedia)
342   $(call AddDepends/sound,kmod-sound-hda-core)
343 endef
344
345 define KernelPackage/sound-hda-codec-cmedia/description
346  Kernel modules for HD Audio C-Media codec support
347 endef
348
349 $(eval $(call KernelPackage,sound-hda-codec-cmedia))
350
351 define KernelPackage/sound-hda-codec-analog
352   SUBMENU:=$(SOUND_MENU)
353   TITLE:=HD Audio Analog Devices Codec
354   KCONFIG:= \
355         CONFIG_SND_HDA_CODEC_ANALOG
356   FILES:= \
357         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-analog.ko
358   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-analog)
359   $(call AddDepends/sound,kmod-sound-hda-core)
360 endef
361
362 define KernelPackage/sound-hda-codec-analog/description
363  Kernel modules for HD Audio Analog Devices codec support
364 endef
365
366 $(eval $(call KernelPackage,sound-hda-codec-analog))
367
368 define KernelPackage/sound-hda-codec-idt
369   SUBMENU:=$(SOUND_MENU)
370   TITLE:=HD Audio Sigmatel IDT Codec
371   KCONFIG:= \
372         CONFIG_SND_HDA_CODEC_SIGMATEL
373   FILES:= \
374         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-idt.ko
375   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-idt)
376   $(call AddDepends/sound,kmod-sound-hda-core)
377 endef
378
379 define KernelPackage/sound-hda-codec-idt/description
380  Kernel modules for HD Audio Sigmatel IDT codec support
381 endef
382
383 $(eval $(call KernelPackage,sound-hda-codec-idt))
384
385 define KernelPackage/sound-hda-codec-si3054
386   SUBMENU:=$(SOUND_MENU)
387   TITLE:=HD Audio Silicon Labs 3054 Codec
388   KCONFIG:= \
389         CONFIG_SND_HDA_CODEC_SI3054
390   FILES:= \
391         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-si3054.ko
392   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-si3054)
393   $(call AddDepends/sound,kmod-sound-hda-core)
394 endef
395
396 define KernelPackage/sound-hda-codec-si3054/description
397  Kernel modules for HD Audio Silicon Labs 3054 codec support
398 endef
399
400 $(eval $(call KernelPackage,sound-hda-codec-si3054))
401
402 define KernelPackage/sound-hda-codec-cirrus
403   SUBMENU:=$(SOUND_MENU)
404   TITLE:=HD Audio Cirrus Logic Codec
405   KCONFIG:= \
406         CONFIG_SND_HDA_CODEC_CIRRUS
407   FILES:= \
408         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-cirrus.ko
409   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-cirrus)
410   $(call AddDepends/sound,kmod-sound-hda-core)
411 endef
412
413 define KernelPackage/sound-hda-codec-cirrus/description
414  Kernel modules for HD Audio Cirrus Logic codec support
415 endef
416
417 $(eval $(call KernelPackage,sound-hda-codec-cirrus))
418
419 define KernelPackage/sound-hda-codec-ca0110
420   SUBMENU:=$(SOUND_MENU)
421   TITLE:=HD Audio Creative CA0110 Codec
422   KCONFIG:= \
423         CONFIG_SND_HDA_CODEC_CA0110
424   FILES:= \
425         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-ca0110.ko
426   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-ca0110)
427   $(call AddDepends/sound,kmod-sound-hda-core)
428 endef
429
430 define KernelPackage/sound-hda-codec-ca0110/description
431  Kernel modules for HD Audio Creative CA0110 codec support
432 endef
433
434 $(eval $(call KernelPackage,sound-hda-codec-ca0110))
435
436 define KernelPackage/sound-hda-codec-ca0132
437   SUBMENU:=$(SOUND_MENU)
438   TITLE:=HD Audio Creative CA0132 Codec
439   KCONFIG:= \
440         CONFIG_SND_HDA_CODEC_CA0132 \
441         CONFIG_SND_HDA_CODEC_CA0132_DSP=n
442   FILES:= \
443         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-ca0132.ko
444   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-ca0132)
445   $(call AddDepends/sound,kmod-sound-hda-core)
446 endef
447
448 define KernelPackage/sound-hda-codec-ca0132/description
449  Kernel modules for HD Audio Creative CA0132 codec support
450 endef
451
452 $(eval $(call KernelPackage,sound-hda-codec-ca0132))
453
454 define KernelPackage/sound-hda-codec-conexant
455   SUBMENU:=$(SOUND_MENU)
456   TITLE:=HD Audio Conexant Codec
457   KCONFIG:= \
458         CONFIG_SND_HDA_CODEC_CONEXANT
459   FILES:= \
460         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-conexant.ko
461   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-conexant)
462   $(call AddDepends/sound,kmod-sound-hda-core)
463 endef
464
465 define KernelPackage/sound-hda-codec-conexant/description
466  Kernel modules for HD Audio Conexant codec support
467 endef
468
469 $(eval $(call KernelPackage,sound-hda-codec-conexant))
470
471 define KernelPackage/sound-hda-codec-via
472   SUBMENU:=$(SOUND_MENU)
473   TITLE:=HD Audio Via Codec
474   KCONFIG:= \
475         CONFIG_SND_HDA_CODEC_VIA
476   FILES:= \
477         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-via.ko
478   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-via)
479   $(call AddDepends/sound,kmod-sound-hda-core)
480 endef
481
482 define KernelPackage/sound-hda-codec-via/description
483  Kernel modules for HD Audio VIA codec support
484 endef
485
486 $(eval $(call KernelPackage,sound-hda-codec-via))
487
488 define KernelPackage/sound-hda-codec-hdmi
489   SUBMENU:=$(SOUND_MENU)
490   TITLE:=HD Audio HDMI/DisplayPort Codec
491   KCONFIG:= \
492         CONFIG_SND_HDA_CODEC_HDMI
493   FILES:= \
494         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-hdmi.ko
495   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-hdmi)
496   $(call AddDepends/sound,kmod-sound-hda-core)
497 endef
498
499 define KernelPackage/sound-hda-codec-hdmi/description
500  Kernel modules for HD Audio HDMI codec support
501 endef
502
503 $(eval $(call KernelPackage,sound-hda-codec-hdmi))
504
505 define KernelPackage/sound-hda-intel
506   SUBMENU:=$(SOUND_MENU)
507   TITLE:=HD Audio Intel Driver
508   KCONFIG:= \
509         CONFIG_SOUND_PCI \
510         CONFIG_SND_HDA_INTEL
511   FILES:= \
512         $(LINUX_DIR)/sound/pci/hda/snd-hda-intel.ko \
513         $(LINUX_DIR)/sound/pci/hda/snd-hda-controller.ko@lt4.4
514   AUTOLOAD:=$(call AutoProbe,snd-hda-controller@lt4.4 snd-hda-intel)
515   $(call AddDepends/sound,kmod-sound-hda-core)
516 endef
517
518 define KernelPackage/sound-hda-intel/description
519  Kernel modules for HD Audio Intel driver support
520 endef
521
522 $(eval $(call KernelPackage,sound-hda-intel))