You've already forked linux-rockchip
mirror of
https://github.com/armbian/linux-rockchip.git
synced 2026-01-06 11:08:10 -08:00
ASoC: wcd9335: add support to wcd9335 codec
Qualcomm WCD9335 Codec is a standalone Hi-Fi audio codec IC, It supports both I2S/I2C and SLIMbus audio interfaces. On slimbus interface it supports two data lanes; 16 Tx ports and 8 Rx ports. It has Seven DACs and nine dedicated interpolators, Seven (six audio ADCs, and one VBAT ADC), Multibutton headset control (MBHC), Active noise cancellation and Sidetone paths and processing. This patchset adds very basic support for playback and capture via the 9 interpolators and ADC respectively. Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Reviewed-by: Vinod Koul <vkoul@kernel.org> Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
committed by
Mark Brown
parent
262ff68fce
commit
20aedafdf4
@@ -188,6 +188,7 @@ config SND_SOC_ALL_CODECS
|
||||
select SND_SOC_TWL6040 if TWL6040_CORE
|
||||
select SND_SOC_UDA134X
|
||||
select SND_SOC_UDA1380 if I2C
|
||||
select SND_SOC_WCD9335 if SLIMBUS
|
||||
select SND_SOC_WL1273 if MFD_WL1273_CORE
|
||||
select SND_SOC_WM0010 if SPI_MASTER
|
||||
select SND_SOC_WM1250_EV1 if I2C
|
||||
@@ -1114,6 +1115,14 @@ config SND_SOC_UDA1380
|
||||
tristate
|
||||
depends on I2C
|
||||
|
||||
config SND_SOC_WCD9335
|
||||
tristate "WCD9335 Codec"
|
||||
select REGMAP_SLIMBUS
|
||||
help
|
||||
The WCD9335 is a standalone Hi-Fi audio CODEC IC, supports
|
||||
Qualcomm Technologies, Inc. (QTI) multimedia solutions,
|
||||
including the MSM8996, MSM8976, and MSM8956 chipsets.
|
||||
|
||||
config SND_SOC_WL1273
|
||||
tristate
|
||||
|
||||
|
||||
@@ -201,6 +201,7 @@ snd-soc-twl4030-objs := twl4030.o
|
||||
snd-soc-twl6040-objs := twl6040.o
|
||||
snd-soc-uda134x-objs := uda134x.o
|
||||
snd-soc-uda1380-objs := uda1380.o
|
||||
snd-soc-wcd9335-objs := wcd9335.o
|
||||
snd-soc-wl1273-objs := wl1273.o
|
||||
snd-soc-wm-adsp-objs := wm_adsp.o
|
||||
snd-soc-wm0010-objs := wm0010.o
|
||||
@@ -469,6 +470,7 @@ obj-$(CONFIG_SND_SOC_TWL4030) += snd-soc-twl4030.o
|
||||
obj-$(CONFIG_SND_SOC_TWL6040) += snd-soc-twl6040.o
|
||||
obj-$(CONFIG_SND_SOC_UDA134X) += snd-soc-uda134x.o
|
||||
obj-$(CONFIG_SND_SOC_UDA1380) += snd-soc-uda1380.o
|
||||
obj-$(CONFIG_SND_SOC_WCD9335) += snd-soc-wcd9335.o
|
||||
obj-$(CONFIG_SND_SOC_WL1273) += snd-soc-wl1273.o
|
||||
obj-$(CONFIG_SND_SOC_WM0010) += snd-soc-wm0010.o
|
||||
obj-$(CONFIG_SND_SOC_WM1250_EV1) += snd-soc-wm1250-ev1.o
|
||||
|
||||
1483
sound/soc/codecs/wcd9335.c
Normal file
1483
sound/soc/codecs/wcd9335.c
Normal file
File diff suppressed because it is too large
Load Diff
640
sound/soc/codecs/wcd9335.h
Normal file
640
sound/soc/codecs/wcd9335.h
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user