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

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.com


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 01ec57a4
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -70,6 +70,7 @@ config SND_SOC_ALL_CODECS
	select SND_SOC_CS43130 if I2C
	select SND_SOC_CS4341 if SND_SOC_I2C_AND_SPI
	select SND_SOC_CS4349 if I2C
	select SND_SOC_CS47L15 if MFD_CS47L15
	select SND_SOC_CS47L24 if MFD_CS47L24
	select SND_SOC_CS47L35 if MFD_CS47L35
	select SND_SOC_CS47L85 if MFD_CS47L85
@@ -581,6 +582,9 @@ config SND_SOC_CS4349
	tristate "Cirrus Logic CS4349 CODEC"
	depends on I2C

config SND_SOC_CS47L15
	tristate

config SND_SOC_CS47L24
	tristate

@@ -722,9 +726,11 @@ config SND_SOC_LOCHNAGAR_SC

config SND_SOC_MADERA
	tristate
	default y if SND_SOC_CS47L15=y
	default y if SND_SOC_CS47L35=y
	default y if SND_SOC_CS47L85=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_CS47L85=m
	default m if SND_SOC_CS47L90=m
+2 −0
Original line number Diff line number Diff line
@@ -64,6 +64,7 @@ snd-soc-cs42xx8-i2c-objs := cs42xx8-i2c.o
snd-soc-cs43130-objs := cs43130.o
snd-soc-cs4341-objs := cs4341.o
snd-soc-cs4349-objs := cs4349.o
snd-soc-cs47l15-objs := cs47l15.o
snd-soc-cs47l24-objs := cs47l24.o
snd-soc-cs47l35-objs := cs47l35.o
snd-soc-cs47l85-objs := cs47l85.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_CS4349)	+= snd-soc-cs4349.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_CS47L85)	+= snd-soc-cs47l85.o
obj-$(CONFIG_SND_SOC_CS47L90)	+= snd-soc-cs47l90.o
+1490 −0

File added.

Preview size limit exceeded, changes collapsed.

+4 −0
Original line number Diff line number Diff line
@@ -1041,6 +1041,10 @@ static void madera_configure_input_mode(struct madera *madera)
	int max_analogue_inputs, max_dmic_sup, i;

	switch (madera->type) {
	case CS47L15:
		max_analogue_inputs = 1;
		max_dmic_sup = 2;
		break;
	case CS47L35:
		max_analogue_inputs = 2;
		max_dmic_sup = 2;