v1.5 branch refresh based upon upstream master @ c8677ca89e53e3be7988d54280fce166cc894a7e
[librecmc/librecmc.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-ens1371
139   TITLE:=(Creative) Ensoniq AudioPCI 1371
140   KCONFIG:=CONFIG_SND_ENS1371
141   DEPENDS:=@PCI_SUPPORT +kmod-ac97
142   FILES:=$(LINUX_DIR)/sound/pci/snd-ens1371.ko
143   AUTOLOAD:=$(call AutoLoad,36,snd-ens1371)
144   $(call AddDepends/sound)
145 endef
146
147 define KernelPackage/sound-ens1371/description
148  support for (Creative) Ensoniq AudioPCI 1371 chips
149 endef
150
151 $(eval $(call KernelPackage,sound-ens1371))
152
153
154 define KernelPackage/sound-i8x0
155   TITLE:=Intel/SiS/nVidia/AMD/ALi AC97 Controller
156   DEPENDS:=+kmod-ac97
157   KCONFIG:=CONFIG_SND_INTEL8X0
158   FILES:=$(LINUX_DIR)/sound/pci/snd-intel8x0.ko
159   AUTOLOAD:=$(call AutoLoad,36,snd-intel8x0)
160   $(call AddDepends/sound)
161 endef
162
163 define KernelPackage/sound-i8x0/description
164  support for the integrated AC97 sound device on motherboards
165  with Intel/SiS/nVidia/AMD chipsets, or ALi chipsets using
166  the M5455 Audio Controller.
167 endef
168
169 $(eval $(call KernelPackage,sound-i8x0))
170
171
172 define KernelPackage/sound-via82xx
173   TITLE:=VIA 82xx AC97 Controller
174   DEPENDS:=+kmod-ac97 +kmod-sound-mpu401
175   KCONFIG:=CONFIG_SND_VIA82XX
176   FILES:=$(LINUX_DIR)/sound/pci/snd-via82xx.ko
177   AUTOLOAD:=$(call AutoLoad,36,snd-via82xx)
178   $(call AddDepends/sound)
179 endef
180
181 define KernelPackage/sound-via82xx/description
182  support for the integrated AC97 sound device on motherboards
183  with VIA chipsets.
184 endef
185
186 $(eval $(call KernelPackage,sound-via82xx))
187
188
189 define KernelPackage/sound-soc-core
190   TITLE:=SoC sound support
191   DEPENDS:=+kmod-regmap +kmod-ac97
192   KCONFIG:= \
193         CONFIG_SND_SOC \
194         CONFIG_SND_SOC_DMAENGINE_PCM=y \
195         CONFIG_SND_SOC_ALL_CODECS=n
196   FILES:=$(LINUX_DIR)/sound/soc/snd-soc-core.ko
197   AUTOLOAD:=$(call AutoLoad,55, snd-soc-core)
198   $(call AddDepends/sound)
199 endef
200
201 $(eval $(call KernelPackage,sound-soc-core))
202
203
204 define KernelPackage/sound-soc-ac97
205   TITLE:=AC97 Codec support
206   KCONFIG:=CONFIG_SND_SOC_AC97_CODEC
207   FILES:=$(LINUX_DIR)/sound/soc/codecs/snd-soc-ac97.ko
208   AUTOLOAD:=$(call AutoLoad,57,snd-soc-ac97)
209   DEPENDS:=+kmod-ac97 +kmod-sound-soc-core
210   $(call AddDepends/sound)
211 endef
212
213 $(eval $(call KernelPackage,sound-soc-ac97))
214
215
216 define KernelPackage/sound-soc-imx
217   TITLE:=IMX SoC support
218   KCONFIG:=\
219         CONFIG_SND_IMX_SOC \
220         CONFIG_SND_SOC_IMX_AUDMUX \
221         CONFIG_SND_SOC_FSL_SSI \
222         CONFIG_SND_SOC_IMX_PCM_DMA
223   FILES:= \
224         $(LINUX_DIR)/sound/soc/fsl/snd-soc-imx-audmux.ko \
225         $(LINUX_DIR)/sound/soc/fsl/snd-soc-fsl-ssi.ko \
226         $(LINUX_DIR)/sound/soc/fsl/imx-pcm-dma.ko
227   AUTOLOAD:=$(call AutoLoad,56,snd-soc-imx-audmux snd-soc-fsl-ssi snd-soc-imx-pcm)
228   DEPENDS:=@TARGET_imx6 +kmod-sound-soc-core
229   $(call AddDepends/sound)
230 endef
231
232 define KernelPackage/sound-soc-imx/description
233  Support for i.MX6 Platform sound (ssi/audmux/pcm)
234 endef
235
236 $(eval $(call KernelPackage,sound-soc-imx))
237
238
239 define KernelPackage/sound-soc-imx-sgtl5000
240   TITLE:=IMX SoC support for SGTL5000
241   KCONFIG:=CONFIG_SND_SOC_IMX_SGTL5000
242   FILES:=\
243         $(LINUX_DIR)/sound/soc/codecs/snd-soc-sgtl5000.ko \
244         $(LINUX_DIR)/sound/soc/fsl/snd-soc-imx-sgtl5000.ko
245   AUTOLOAD:=$(call AutoLoad,57,snd-soc-sgtl5000 snd-soc-imx-sgtl5000)
246   DEPENDS:=@TARGET_imx6 +kmod-sound-soc-imx
247   $(call AddDepends/sound)
248 endef
249
250 define KernelPackage/sound-soc-imx-sgtl5000/description
251  Support for i.MX6 Platform sound SGTL5000 codec
252 endef
253
254 $(eval $(call KernelPackage,sound-soc-imx-sgtl5000))
255
256
257 define KernelPackage/sound-soc-gw_avila
258   TITLE:=Gateworks Avila SoC sound support
259   KCONFIG:= \
260         CONFIG_SND_GW_AVILA_SOC \
261         CONFIG_SND_GW_AVILA_SOC_PCM \
262         CONFIG_SND_GW_AVILA_SOC_HSS
263   FILES:= \
264         $(LINUX_DIR)/sound/soc/codecs/snd-soc-tlv320aic3x.ko \
265         $(LINUX_DIR)/sound/soc/gw-avila/snd-soc-gw-avila.ko \
266         $(LINUX_DIR)/sound/soc/gw-avila/snd-soc-gw-avila-pcm.ko \
267         $(LINUX_DIR)/sound/soc/gw-avila/snd-soc-gw-avila-hss.ko
268   AUTOLOAD:=$(call AutoLoad,65,snd-soc-tlv320aic3x snd-soc-gw-avila snd-soc-gw-avila-pcm snd-soc-gw-avila-hss)
269   DEPENDS:=@TARGET_ixp4xx +kmod-sound-soc-core
270   $(call AddDepends/sound)
271 endef
272
273 $(eval $(call KernelPackage,sound-soc-gw_avila))
274
275
276 define KernelPackage/pcspkr
277   DEPENDS:=@TARGET_x86 +kmod-input-core
278   TITLE:=PC speaker support
279   KCONFIG:= \
280         CONFIG_SND_PCSP
281   FILES:= \
282         $(LINUX_DIR)/sound/drivers/pcsp/snd-pcsp.ko
283   AUTOLOAD:=$(call AutoLoad,50,snd-pcsp)
284   $(call AddDepends/sound)
285 endef
286
287 define KernelPackage/pcspkr/description
288  This enables sounds (tones) through the pc speaker
289 endef
290
291 $(eval $(call KernelPackage,pcspkr))
292
293 define KernelPackage/sound-dummy
294   $(call AddDepends/sound)
295   TITLE:=Null sound output driver (sink)
296   KCONFIG:= \
297         CONFIG_SND_DUMMY
298   FILES:= \
299         $(LINUX_DIR)/sound/drivers/snd-dummy.ko
300   AUTOLOAD:=$(call AutoLoad,32,snd-dummy)
301 endef
302
303 define KernelPackage/sound_dummy/description
304  Dummy sound device for Alsa when no hardware present
305 endef
306
307 $(eval $(call KernelPackage,sound-dummy))
308
309 define KernelPackage/sound-hda-core
310   SUBMENU:=$(SOUND_MENU)
311   TITLE:=HD Audio Sound Core Support
312   KCONFIG:= \
313         CONFIG_SND_HDA_CORE@ge4.1 \
314         CONFIG_SND_HDA_HWDEP=y \
315         CONFIG_SND_HDA_RECONFIG=n \
316         CONFIG_SND_HDA_INPUT_BEEP=n \
317         CONFIG_SND_HDA_PATCH_LOADER=n \
318         CONFIG_SND_HDA_GENERIC
319   FILES:= \
320         $(LINUX_DIR)/sound/hda/snd-hda-core.ko@ge4.1 \
321         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec.ko \
322         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-generic.ko
323   AUTOLOAD:=$(call AutoProbe,snd-hda-core@ge4.1 snd-hda-codec snd-hda-codec-generic)
324   $(call AddDepends/sound,+kmod-regmap)
325 endef
326
327 define KernelPackage/sound-hda-core/description
328  Kernel modules for HD Audio sound support
329 endef
330
331 $(eval $(call KernelPackage,sound-hda-core))
332
333 define KernelPackage/sound-hda-codec-realtek
334   SUBMENU:=$(SOUND_MENU)
335   TITLE:= HD Audio Realtek Codec
336   KCONFIG:= \
337         CONFIG_SND_HDA_CODEC_REALTEK
338   FILES:= \
339         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-realtek.ko
340   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-realtek)
341   $(call AddDepends/sound,kmod-sound-hda-core)
342 endef
343
344 define KernelPackage/sound-hda-codec-realtek/description
345  Kernel modules for Intel HDA Realtek codec support
346 endef
347
348 $(eval $(call KernelPackage,sound-hda-codec-realtek))
349
350 define KernelPackage/sound-hda-codec-cmedia
351   SUBMENU:=$(SOUND_MENU)
352   TITLE:=HD Audio C-Media Codec
353   KCONFIG:= \
354         CONFIG_SND_HDA_CODEC_CMEDIA
355   FILES:= \
356         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-cmedia.ko
357   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-cmedia)
358   $(call AddDepends/sound,kmod-sound-hda-core)
359 endef
360
361 define KernelPackage/sound-hda-codec-cmedia/description
362  Kernel modules for HD Audio C-Media codec support
363 endef
364
365 $(eval $(call KernelPackage,sound-hda-codec-cmedia))
366
367 define KernelPackage/sound-hda-codec-analog
368   SUBMENU:=$(SOUND_MENU)
369   TITLE:=HD Audio Analog Devices Codec
370   KCONFIG:= \
371         CONFIG_SND_HDA_CODEC_ANALOG
372   FILES:= \
373         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-analog.ko
374   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-analog)
375   $(call AddDepends/sound,kmod-sound-hda-core)
376 endef
377
378 define KernelPackage/sound-hda-codec-analog/description
379  Kernel modules for HD Audio Analog Devices codec support
380 endef
381
382 $(eval $(call KernelPackage,sound-hda-codec-analog))
383
384 define KernelPackage/sound-hda-codec-idt
385   SUBMENU:=$(SOUND_MENU)
386   TITLE:=HD Audio Sigmatel IDT Codec
387   KCONFIG:= \
388         CONFIG_SND_HDA_CODEC_SIGMATEL
389   FILES:= \
390         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-idt.ko
391   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-idt)
392   $(call AddDepends/sound,kmod-sound-hda-core)
393 endef
394
395 define KernelPackage/sound-hda-codec-idt/description
396  Kernel modules for HD Audio Sigmatel IDT codec support
397 endef
398
399 $(eval $(call KernelPackage,sound-hda-codec-idt))
400
401 define KernelPackage/sound-hda-codec-si3054
402   SUBMENU:=$(SOUND_MENU)
403   TITLE:=HD Audio Silicon Labs 3054 Codec
404   KCONFIG:= \
405         CONFIG_SND_HDA_CODEC_SI3054
406   FILES:= \
407         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-si3054.ko
408   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-si3054)
409   $(call AddDepends/sound,kmod-sound-hda-core)
410 endef
411
412 define KernelPackage/sound-hda-codec-si3054/description
413  Kernel modules for HD Audio Silicon Labs 3054 codec support
414 endef
415
416 $(eval $(call KernelPackage,sound-hda-codec-si3054))
417
418 define KernelPackage/sound-hda-codec-cirrus
419   SUBMENU:=$(SOUND_MENU)
420   TITLE:=HD Audio Cirrus Logic Codec
421   KCONFIG:= \
422         CONFIG_SND_HDA_CODEC_CIRRUS
423   FILES:= \
424         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-cirrus.ko
425   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-cirrus)
426   $(call AddDepends/sound,kmod-sound-hda-core)
427 endef
428
429 define KernelPackage/sound-hda-codec-cirrus/description
430  Kernel modules for HD Audio Cirrus Logic codec support
431 endef
432
433 $(eval $(call KernelPackage,sound-hda-codec-cirrus))
434
435 define KernelPackage/sound-hda-codec-ca0110
436   SUBMENU:=$(SOUND_MENU)
437   TITLE:=HD Audio Creative CA0110 Codec
438   KCONFIG:= \
439         CONFIG_SND_HDA_CODEC_CA0110
440   FILES:= \
441         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-ca0110.ko
442   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-ca0110)
443   $(call AddDepends/sound,kmod-sound-hda-core)
444 endef
445
446 define KernelPackage/sound-hda-codec-ca0110/description
447  Kernel modules for HD Audio Creative CA0110 codec support
448 endef
449
450 $(eval $(call KernelPackage,sound-hda-codec-ca0110))
451
452 define KernelPackage/sound-hda-codec-ca0132
453   SUBMENU:=$(SOUND_MENU)
454   TITLE:=HD Audio Creative CA0132 Codec
455   KCONFIG:= \
456         CONFIG_SND_HDA_CODEC_CA0132 \
457         CONFIG_SND_HDA_CODEC_CA0132_DSP=n
458   FILES:= \
459         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-ca0132.ko
460   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-ca0132)
461   $(call AddDepends/sound,kmod-sound-hda-core)
462 endef
463
464 define KernelPackage/sound-hda-codec-ca0132/description
465  Kernel modules for HD Audio Creative CA0132 codec support
466 endef
467
468 $(eval $(call KernelPackage,sound-hda-codec-ca0132))
469
470 define KernelPackage/sound-hda-codec-conexant
471   SUBMENU:=$(SOUND_MENU)
472   TITLE:=HD Audio Conexant Codec
473   KCONFIG:= \
474         CONFIG_SND_HDA_CODEC_CONEXANT
475   FILES:= \
476         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-conexant.ko
477   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-conexant)
478   $(call AddDepends/sound,kmod-sound-hda-core)
479 endef
480
481 define KernelPackage/sound-hda-codec-conexant/description
482  Kernel modules for HD Audio Conexant codec support
483 endef
484
485 $(eval $(call KernelPackage,sound-hda-codec-conexant))
486
487 define KernelPackage/sound-hda-codec-via
488   SUBMENU:=$(SOUND_MENU)
489   TITLE:=HD Audio Via Codec
490   KCONFIG:= \
491         CONFIG_SND_HDA_CODEC_VIA
492   FILES:= \
493         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-via.ko
494   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-via)
495   $(call AddDepends/sound,kmod-sound-hda-core)
496 endef
497
498 define KernelPackage/sound-hda-codec-via/description
499  Kernel modules for HD Audio VIA codec support
500 endef
501
502 $(eval $(call KernelPackage,sound-hda-codec-via))
503
504 define KernelPackage/sound-hda-codec-hdmi
505   SUBMENU:=$(SOUND_MENU)
506   TITLE:=HD Audio HDMI/DisplayPort Codec
507   KCONFIG:= \
508         CONFIG_SND_HDA_CODEC_HDMI
509   FILES:= \
510         $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-hdmi.ko
511   AUTOLOAD:=$(call AutoProbe,snd-hda-codec-hdmi)
512   $(call AddDepends/sound,kmod-sound-hda-core)
513 endef
514
515 define KernelPackage/sound-hda-codec-hdmi/description
516  Kernel modules for HD Audio HDMI codec support
517 endef
518
519 $(eval $(call KernelPackage,sound-hda-codec-hdmi))
520
521 define KernelPackage/sound-hda-intel
522   SUBMENU:=$(SOUND_MENU)
523   TITLE:=HD Audio Intel Driver
524   KCONFIG:= \
525         CONFIG_SOUND_PCI \
526         CONFIG_SND_HDA_INTEL
527   FILES:= \
528         $(LINUX_DIR)/sound/pci/hda/snd-hda-intel.ko \
529         $(LINUX_DIR)/sound/pci/hda/snd-hda-controller.ko@lt4.4
530   AUTOLOAD:=$(call AutoProbe,snd-hda-controller@lt4.4 snd-hda-intel)
531   $(call AddDepends/sound,kmod-sound-hda-core)
532 endef
533
534 define KernelPackage/sound-hda-intel/description
535  Kernel modules for HD Audio Intel driver support
536 endef
537
538 $(eval $(call KernelPackage,sound-hda-intel))