mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-21 08:19:28 +00:00
ASoC: codecs: add wsa881x amplifier support
This patch adds support to WSA8810/WSA8815 Class-D Smart Speaker Amplifier. This Amplifier is primarily interfaced with SoundWire. One WSA is used for mono speaker configuration and second one would give stereo setup. This patch is tested on SDM845 based DragonBoard DB845c and Lenovo YOGA C630 Laptop based on SDM850 with WSA8815 speaker amplifiers. Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20200107135929.3267-3-srinivas.kandagatla@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
fbcdf32f6b
commit
a0aab9e140
3 changed files with 1197 additions and 0 deletions
|
@ -262,6 +262,7 @@ config SND_SOC_ALL_CODECS
|
|||
select SND_SOC_WM9705 if (SND_SOC_AC97_BUS || SND_SOC_AC97_BUS_NEW)
|
||||
select SND_SOC_WM9712 if (SND_SOC_AC97_BUS || SND_SOC_AC97_BUS_NEW)
|
||||
select SND_SOC_WM9713 if (SND_SOC_AC97_BUS || SND_SOC_AC97_BUS_NEW)
|
||||
select SND_SOC_WSA881X if SOUNDWIRE
|
||||
help
|
||||
Normally ASoC codec drivers are only built if a machine driver which
|
||||
uses them is also built since they are only usable with a machine
|
||||
|
@ -1481,6 +1482,15 @@ config SND_SOC_WM9713
|
|||
select REGMAP_AC97
|
||||
select AC97_BUS_COMPAT if AC97_BUS_NEW
|
||||
|
||||
config SND_SOC_WSA881X
|
||||
tristate "WSA881X Codec"
|
||||
depends on SOUNDWIRE
|
||||
select REGMAP_SOUNDWIRE
|
||||
tristate
|
||||
help
|
||||
This enables support for Qualcomm WSA8810/WSA8815 Class-D
|
||||
Smart Speaker Amplifier.
|
||||
|
||||
config SND_SOC_ZX_AUD96P22
|
||||
tristate "ZTE ZX AUD96P22 CODEC"
|
||||
depends on I2C
|
||||
|
|
|
@ -278,6 +278,7 @@ snd-soc-wm9705-objs := wm9705.o
|
|||
snd-soc-wm9712-objs := wm9712.o
|
||||
snd-soc-wm9713-objs := wm9713.o
|
||||
snd-soc-wm-hubs-objs := wm_hubs.o
|
||||
snd-soc-wsa881x-objs := wsa881x.o
|
||||
snd-soc-zx-aud96p22-objs := zx_aud96p22.o
|
||||
# Amp
|
||||
snd-soc-max9877-objs := max9877.o
|
||||
|
@ -568,6 +569,7 @@ obj-$(CONFIG_SND_SOC_WM9712) += snd-soc-wm9712.o
|
|||
obj-$(CONFIG_SND_SOC_WM9713) += snd-soc-wm9713.o
|
||||
obj-$(CONFIG_SND_SOC_WM_ADSP) += snd-soc-wm-adsp.o
|
||||
obj-$(CONFIG_SND_SOC_WM_HUBS) += snd-soc-wm-hubs.o
|
||||
obj-$(CONFIG_SND_SOC_WSA881X) += snd-soc-wsa881x.o
|
||||
obj-$(CONFIG_SND_SOC_ZX_AUD96P22) += snd-soc-zx-aud96p22.o
|
||||
|
||||
# Amp
|
||||
|
|
1185
sound/soc/codecs/wsa881x.c
Normal file
1185
sound/soc/codecs/wsa881x.c
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue