Commit 9cba2d6a authored by Richard Fitzgerald's avatar Richard Fitzgerald Committed by Mark Brown

ASoC: cs47l15: Add codec driver for Cirrus Logic CS47L15

Adds the codec driver for the CS47L15 SmartCodec. This is a
multi-functional codec based on the Cirrus Logic Madera platform.
Signed-off-by: default avatarRichard Fitzgerald <rf@opensource.wolfsonmicro.com>
Signed-off-by: default avatarJaswinder Jassal <jjassal@opensource.wolfsonmicro.com>
Signed-off-by: default avatarCharles Keepax <ckeepax@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20190725163931.24964-2-ckeepax@opensource.cirrus.comSigned-off-by: default avatarMark Brown <broonie@kernel.org>
parent 01ec57a4
...@@ -70,6 +70,7 @@ config SND_SOC_ALL_CODECS ...@@ -70,6 +70,7 @@ config SND_SOC_ALL_CODECS
select SND_SOC_CS43130 if I2C select SND_SOC_CS43130 if I2C
select SND_SOC_CS4341 if SND_SOC_I2C_AND_SPI select SND_SOC_CS4341 if SND_SOC_I2C_AND_SPI
select SND_SOC_CS4349 if I2C select SND_SOC_CS4349 if I2C
select SND_SOC_CS47L15 if MFD_CS47L15
select SND_SOC_CS47L24 if MFD_CS47L24 select SND_SOC_CS47L24 if MFD_CS47L24
select SND_SOC_CS47L35 if MFD_CS47L35 select SND_SOC_CS47L35 if MFD_CS47L35
select SND_SOC_CS47L85 if MFD_CS47L85 select SND_SOC_CS47L85 if MFD_CS47L85
...@@ -581,6 +582,9 @@ config SND_SOC_CS4349 ...@@ -581,6 +582,9 @@ config SND_SOC_CS4349
tristate "Cirrus Logic CS4349 CODEC" tristate "Cirrus Logic CS4349 CODEC"
depends on I2C depends on I2C
config SND_SOC_CS47L15
tristate
config SND_SOC_CS47L24 config SND_SOC_CS47L24
tristate tristate
...@@ -722,9 +726,11 @@ config SND_SOC_LOCHNAGAR_SC ...@@ -722,9 +726,11 @@ config SND_SOC_LOCHNAGAR_SC
config SND_SOC_MADERA config SND_SOC_MADERA
tristate tristate
default y if SND_SOC_CS47L15=y
default y if SND_SOC_CS47L35=y default y if SND_SOC_CS47L35=y
default y if SND_SOC_CS47L85=y default y if SND_SOC_CS47L85=y
default y if SND_SOC_CS47L90=y default y if SND_SOC_CS47L90=y
default m if SND_SOC_CS47L15=m
default m if SND_SOC_CS47L35=m default m if SND_SOC_CS47L35=m
default m if SND_SOC_CS47L85=m default m if SND_SOC_CS47L85=m
default m if SND_SOC_CS47L90=m default m if SND_SOC_CS47L90=m
......
...@@ -64,6 +64,7 @@ snd-soc-cs42xx8-i2c-objs := cs42xx8-i2c.o ...@@ -64,6 +64,7 @@ snd-soc-cs42xx8-i2c-objs := cs42xx8-i2c.o
snd-soc-cs43130-objs := cs43130.o snd-soc-cs43130-objs := cs43130.o
snd-soc-cs4341-objs := cs4341.o snd-soc-cs4341-objs := cs4341.o
snd-soc-cs4349-objs := cs4349.o snd-soc-cs4349-objs := cs4349.o
snd-soc-cs47l15-objs := cs47l15.o
snd-soc-cs47l24-objs := cs47l24.o snd-soc-cs47l24-objs := cs47l24.o
snd-soc-cs47l35-objs := cs47l35.o snd-soc-cs47l35-objs := cs47l35.o
snd-soc-cs47l85-objs := cs47l85.o snd-soc-cs47l85-objs := cs47l85.o
...@@ -346,6 +347,7 @@ obj-$(CONFIG_SND_SOC_CS43130) += snd-soc-cs43130.o ...@@ -346,6 +347,7 @@ obj-$(CONFIG_SND_SOC_CS43130) += snd-soc-cs43130.o
obj-$(CONFIG_SND_SOC_CS4341) += snd-soc-cs4341.o obj-$(CONFIG_SND_SOC_CS4341) += snd-soc-cs4341.o
obj-$(CONFIG_SND_SOC_CS4349) += snd-soc-cs4349.o obj-$(CONFIG_SND_SOC_CS4349) += snd-soc-cs4349.o
obj-$(CONFIG_SND_SOC_CS47L24) += snd-soc-cs47l24.o obj-$(CONFIG_SND_SOC_CS47L24) += snd-soc-cs47l24.o
obj-$(CONFIG_SND_SOC_CS47L15) += snd-soc-cs47l15.o
obj-$(CONFIG_SND_SOC_CS47L35) += snd-soc-cs47l35.o obj-$(CONFIG_SND_SOC_CS47L35) += snd-soc-cs47l35.o
obj-$(CONFIG_SND_SOC_CS47L85) += snd-soc-cs47l85.o obj-$(CONFIG_SND_SOC_CS47L85) += snd-soc-cs47l85.o
obj-$(CONFIG_SND_SOC_CS47L90) += snd-soc-cs47l90.o obj-$(CONFIG_SND_SOC_CS47L90) += snd-soc-cs47l90.o
......
This diff is collapsed.
...@@ -1041,6 +1041,10 @@ static void madera_configure_input_mode(struct madera *madera) ...@@ -1041,6 +1041,10 @@ static void madera_configure_input_mode(struct madera *madera)
int max_analogue_inputs, max_dmic_sup, i; int max_analogue_inputs, max_dmic_sup, i;
switch (madera->type) { switch (madera->type) {
case CS47L15:
max_analogue_inputs = 1;
max_dmic_sup = 2;
break;
case CS47L35: case CS47L35:
max_analogue_inputs = 2; max_analogue_inputs = 2;
max_dmic_sup = 2; max_dmic_sup = 2;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment