Skip to content

Commit 4cc9bd8

Browse files
niranjanhytibroonie
authored andcommitted
ASoc: tas2783A: Add soundwire based codec driver
TAS2783 is mono digital input class-D Smart Amplifier based on MIPI Alliance Soundwire interface. The driver supports loading the algorithm coefficients for one or more tas2783 chips. Signed-off-by: Niranjan H Y <niranjan.hy@ti.com> Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com> Link: https://patch.msgid.link/20250912083624.804-2-niranjan.hy@ti.com Signed-off-by: Mark Brown <broonie@kernel.org>
1 parent a0ce874 commit 4cc9bd8

4 files changed

Lines changed: 1457 additions & 0 deletions

File tree

sound/soc/codecs/Kconfig

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -268,6 +268,7 @@ config SND_SOC_ALL_CODECS
268268
imply SND_SOC_TAS2770
269269
imply SND_SOC_TAS2780
270270
imply SND_SOC_TAS2781_I2C
271+
imply SND_SOC_TAS2783_SDW
271272
imply SND_SOC_TAS5086
272273
imply SND_SOC_TAS571X
273274
imply SND_SOC_TAS5720
@@ -2097,6 +2098,19 @@ config SND_SOC_TAS2781_I2C
20972098
algo coefficient setting, for one, two or even multiple TAS2781
20982099
chips.
20992100

2101+
config SND_SOC_TAS2783_SDW
2102+
tristate "Texas Instruments TAS2783 speaker amplifier (sdw)"
2103+
depends on SOUNDWIRE
2104+
depends on EFI
2105+
select REGMAP_SOUNDWIRE
2106+
select REGMAP_SOUNDWIRE_MBQ
2107+
select CRC32
2108+
help
2109+
Enable support for Texas Instruments TAS2783A Digital input
2110+
mono Class-D and DSP-inside audio power amplifiers. TAS2783
2111+
driver implements a flexible and configurable algorithm
2112+
cofficient setting, for one, two or multiple TAS2783 chips.
2113+
21002114
config SND_SOC_TAS5086
21012115
tristate "Texas Instruments TAS5086 speaker amplifier"
21022116
depends on I2C

sound/soc/codecs/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -319,6 +319,7 @@ snd-soc-tas2781-comlib-y := tas2781-comlib.o
319319
snd-soc-tas2781-comlib-i2c-y := tas2781-comlib-i2c.o
320320
snd-soc-tas2781-fmwlib-y := tas2781-fmwlib.o
321321
snd-soc-tas2781-i2c-y := tas2781-i2c.o
322+
snd-soc-tas2783-sdw-y := tas2783-sdw.o
322323
snd-soc-tfa9879-y := tfa9879.o
323324
snd-soc-tfa989x-y := tfa989x.o
324325
snd-soc-tlv320adc3xxx-y := tlv320adc3xxx.o
@@ -743,6 +744,7 @@ obj-$(CONFIG_SND_SOC_TAS2781_COMLIB) += snd-soc-tas2781-comlib.o
743744
obj-$(CONFIG_SND_SOC_TAS2781_COMLIB_I2C) += snd-soc-tas2781-comlib-i2c.o
744745
obj-$(CONFIG_SND_SOC_TAS2781_FMWLIB) += snd-soc-tas2781-fmwlib.o
745746
obj-$(CONFIG_SND_SOC_TAS2781_I2C) += snd-soc-tas2781-i2c.o
747+
obj-$(CONFIG_SND_SOC_TAS2783_SDW) += snd-soc-tas2783-sdw.o
746748
obj-$(CONFIG_SND_SOC_TAS5086) += snd-soc-tas5086.o
747749
obj-$(CONFIG_SND_SOC_TAS571X) += snd-soc-tas571x.o
748750
obj-$(CONFIG_SND_SOC_TAS5720) += snd-soc-tas5720.o

0 commit comments

Comments
 (0)