bf4bd5d7c0872359e1d1307543b562c1042e7ece
[openwrt/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-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-core +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-core)
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))