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