1# SPDX-License-Identifier: GPL-2.0-only
2#
3# SoC audio configuration
4#
5
6menuconfig SND_SOC
7	tristate "ALSA for SoC audio support"
8	select SND_PCM
9	select AC97_BUS if SND_SOC_AC97_BUS
10	select SND_JACK
11	select REGMAP_I2C if I2C
12	select REGMAP_SPI if SPI_MASTER
13	help
14
15	  If you want ASoC support, you should say Y here and also to the
16	  specific driver for your SoC platform below.
17
18	  ASoC provides power efficient ALSA support for embedded battery powered
19	  SoC based systems like PDA's, Phones and Personal Media Players.
20
21	  This ASoC audio support can also be built as a module.  If so, the module
22	  will be called snd-soc-core.
23
24if SND_SOC
25
26config SND_SOC_AC97_BUS
27	bool
28
29config SND_SOC_GENERIC_DMAENGINE_PCM
30	bool
31	select SND_DMAENGINE_PCM
32
33config SND_SOC_COMPRESS
34	bool
35	select SND_COMPRESS_OFFLOAD
36
37config SND_SOC_TOPOLOGY
38	bool
39	select SND_DYNAMIC_MINORS
40
41config SND_SOC_TOPOLOGY_BUILD
42	bool "Build topology core"
43	select SND_SOC_TOPOLOGY
44	depends on KUNIT
45	help
46	  This option exists to facilitate running the KUnit tests for
47	  the topology core, KUnit is frequently tested in virtual
48	  environments with minimal drivers enabled but the topology
49	  core is usually selected by drivers.  There is little reason
50	  to enable it if not doing a KUnit build.
51
52config SND_SOC_TOPOLOGY_KUNIT_TEST
53	tristate "KUnit tests for SoC topology"
54	depends on KUNIT
55	depends on SND_SOC_TOPOLOGY
56	default KUNIT_ALL_TESTS
57	help
58	  If you want to perform tests on ALSA SoC topology support say Y here.
59
60	  This builds a module which can be later manually loaded to run KUNIT
61	  test cases against soc-topology.c API. This should be primarily used
62	  by developers to test their changes to ASoC.
63
64	  Do note that it creates fake playback devices which do not interact
65	  well with userspace. When running tests one may want to disable
66	  userspace applications such as pulseaudio, to prevent unnecessary
67	  problems.
68
69config SND_SOC_UTILS_KUNIT_TEST
70	tristate "KUnit tests for SoC utils"
71	depends on KUNIT
72	default KUNIT_ALL_TESTS
73	help
74	  If you want to perform tests on ALSA SoC utils library say Y here.
75
76config SND_SOC_ACPI
77	tristate
78
79# All the supported SoCs
80source "sound/soc/adi/Kconfig"
81source "sound/soc/amd/Kconfig"
82source "sound/soc/apple/Kconfig"
83source "sound/soc/atmel/Kconfig"
84source "sound/soc/au1x/Kconfig"
85source "sound/soc/bcm/Kconfig"
86source "sound/soc/cirrus/Kconfig"
87source "sound/soc/dwc/Kconfig"
88source "sound/soc/fsl/Kconfig"
89source "sound/soc/google/Kconfig"
90source "sound/soc/hisilicon/Kconfig"
91source "sound/soc/jz4740/Kconfig"
92source "sound/soc/kirkwood/Kconfig"
93source "sound/soc/loongson/Kconfig"
94source "sound/soc/img/Kconfig"
95source "sound/soc/intel/Kconfig"
96source "sound/soc/mediatek/Kconfig"
97source "sound/soc/meson/Kconfig"
98source "sound/soc/mxs/Kconfig"
99source "sound/soc/pxa/Kconfig"
100source "sound/soc/qcom/Kconfig"
101source "sound/soc/rockchip/Kconfig"
102source "sound/soc/samsung/Kconfig"
103source "sound/soc/sh/Kconfig"
104source "sound/soc/sof/Kconfig"
105source "sound/soc/spear/Kconfig"
106source "sound/soc/sprd/Kconfig"
107source "sound/soc/starfive/Kconfig"
108source "sound/soc/sti/Kconfig"
109source "sound/soc/stm/Kconfig"
110source "sound/soc/sunxi/Kconfig"
111source "sound/soc/tegra/Kconfig"
112source "sound/soc/ti/Kconfig"
113source "sound/soc/uniphier/Kconfig"
114source "sound/soc/ux500/Kconfig"
115source "sound/soc/xilinx/Kconfig"
116source "sound/soc/xtensa/Kconfig"
117
118# Supported codecs
119source "sound/soc/codecs/Kconfig"
120
121# generic frame-work
122source "sound/soc/generic/Kconfig"
123
124endif	# SND_SOC
125
126