Skip to content

Commit 85b57de

Browse files
committed
ASoC: Add support for CS35L41 in HDA systems
Merge series from Lucas Tanure <[email protected]>: Initial refactoring to support use of cs35l41 from the HDA driver stack.
2 parents 8b974c1 + e8e4fcc commit 85b57de

File tree

8 files changed

+1109
-1096
lines changed

8 files changed

+1109
-1096
lines changed

include/sound/cs35l41.h

Lines changed: 739 additions & 0 deletions
Large diffs are not rendered by default.

sound/soc/codecs/Kconfig

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -624,21 +624,24 @@ config SND_SOC_CS35L36
624624
tristate "Cirrus Logic CS35L36 CODEC"
625625
depends on I2C
626626

627+
config SND_SOC_CS35L41_LIB
628+
tristate
629+
627630
config SND_SOC_CS35L41
628631
tristate
629-
default y if SND_SOC_CS35L41_SPI=y
630-
default y if SND_SOC_CS35L41_I2C=y
631-
default m if SND_SOC_CS35L41_SPI=m
632-
default m if SND_SOC_CS35L41_I2C=m
633632

634633
config SND_SOC_CS35L41_SPI
635634
tristate "Cirrus Logic CS35L41 CODEC (SPI)"
636635
depends on SPI_MASTER
636+
select SND_SOC_CS35L41_LIB
637+
select SND_SOC_CS35L41
637638
select REGMAP_SPI
638639

639640
config SND_SOC_CS35L41_I2C
640641
tristate "Cirrus Logic CS35L41 CODEC (I2C)"
641642
depends on I2C
643+
select SND_SOC_CS35L41_LIB
644+
select SND_SOC_CS35L41
642645
select REGMAP_I2C
643646

644647
config SND_SOC_CS42L42

sound/soc/codecs/Makefile

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,8 @@ snd-soc-cs35l33-objs := cs35l33.o
5555
snd-soc-cs35l34-objs := cs35l34.o
5656
snd-soc-cs35l35-objs := cs35l35.o
5757
snd-soc-cs35l36-objs := cs35l36.o
58-
snd-soc-cs35l41-objs := cs35l41.o cs35l41-tables.o
58+
snd-soc-cs35l41-lib-objs := cs35l41-lib.o
59+
snd-soc-cs35l41-objs := cs35l41.o
5960
snd-soc-cs35l41-spi-objs := cs35l41-spi.o
6061
snd-soc-cs35l41-i2c-objs := cs35l41-i2c.o
6162
snd-soc-cs42l42-objs := cs42l42.o
@@ -396,6 +397,7 @@ obj-$(CONFIG_SND_SOC_CS35L34) += snd-soc-cs35l34.o
396397
obj-$(CONFIG_SND_SOC_CS35L35) += snd-soc-cs35l35.o
397398
obj-$(CONFIG_SND_SOC_CS35L36) += snd-soc-cs35l36.o
398399
obj-$(CONFIG_SND_SOC_CS35L41) += snd-soc-cs35l41.o
400+
obj-$(CONFIG_SND_SOC_CS35L41_LIB) += snd-soc-cs35l41-lib.o
399401
obj-$(CONFIG_SND_SOC_CS35L41_SPI) += snd-soc-cs35l41-spi.o
400402
obj-$(CONFIG_SND_SOC_CS35L41_I2C) += snd-soc-cs35l41-i2c.o
401403
obj-$(CONFIG_SND_SOC_CS42L42) += snd-soc-cs42l42.o

sound/soc/codecs/cs35l41-i2c.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
#include <linux/platform_device.h>
1818
#include <linux/slab.h>
1919

20-
#include <sound/cs35l41.h>
2120
#include "cs35l41.h"
2221

2322
static const struct i2c_device_id cs35l41_id_i2c[] = {

0 commit comments

Comments
 (0)