Skip to content

Commit ef3bcde

Browse files
Shenghao Dingbroonie
authored andcommitted
ASoC: tas2781: Add tas2781 driver
Create tas2781 driver. Signed-off-by: Shenghao Ding <13916275206@139.com> Link: https://lore.kernel.org/r/20230618122819.23143-3-13916275206@139.com Signed-off-by: Mark Brown <broonie@kernel.org>
1 parent 915f5ea commit ef3bcde

4 files changed

Lines changed: 1328 additions & 0 deletions

File tree

sound/soc/codecs/Kconfig

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -237,6 +237,9 @@ config SND_SOC_ALL_CODECS
237237
imply SND_SOC_TAS2764
238238
imply SND_SOC_TAS2770
239239
imply SND_SOC_TAS2780
240+
imply SND_SOC_TAS2781_COMLIB
241+
imply SND_SOC_TAS2781_FMWLIB
242+
imply SND_SOC_TAS2781_I2C
240243
imply SND_SOC_TAS5086
241244
imply SND_SOC_TAS571X
242245
imply SND_SOC_TAS5720
@@ -1730,6 +1733,28 @@ config SND_SOC_TAS2780
17301733
Enable support for Texas Instruments TAS2780 high-efficiency
17311734
digital input mono Class-D audio power amplifiers.
17321735

1736+
config SND_SOC_TAS2781_COMLIB
1737+
depends on I2C
1738+
select CRC8
1739+
select REGMAP_I2C
1740+
tristate
1741+
1742+
config SND_SOC_TAS2781_FMWLIB
1743+
tristate
1744+
default n
1745+
1746+
config SND_SOC_TAS2781_I2C
1747+
tristate "Texas Instruments TAS2781 speaker amplifier based on I2C"
1748+
depends on I2C
1749+
select SND_SOC_TAS2781_COMLIB
1750+
select SND_SOC_TAS2781_FMWLIB
1751+
help
1752+
Enable support for Texas Instruments TAS2781 Smart Amplifier
1753+
Digital input mono Class-D and DSP-inside audio power amplifiers.
1754+
Note the TAS2781 driver implements a flexible and configurable
1755+
algo coefficient setting, for one, two or even multiple TAS2781
1756+
chips.
1757+
17331758
config SND_SOC_TAS5086
17341759
tristate "Texas Instruments TAS5086 speaker amplifier"
17351760
depends on I2C

sound/soc/codecs/Makefile

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -273,6 +273,9 @@ snd-soc-tas5805m-objs := tas5805m.o
273273
snd-soc-tas6424-objs := tas6424.o
274274
snd-soc-tda7419-objs := tda7419.o
275275
snd-soc-tas2770-objs := tas2770.o
276+
snd-soc-tas2781-comlib-objs := tas2781-comlib.o
277+
snd-soc-tas2781-fmwlib-objs := tas2781-fmwlib.o
278+
snd-soc-tas2781-i2c-objs := tas2781-i2c.o
276279
snd-soc-tfa9879-objs := tfa9879.o
277280
snd-soc-tfa989x-objs := tfa989x.o
278281
snd-soc-tlv320adc3xxx-objs := tlv320adc3xxx.o
@@ -641,6 +644,9 @@ obj-$(CONFIG_SND_SOC_TAS2552) += snd-soc-tas2552.o
641644
obj-$(CONFIG_SND_SOC_TAS2562) += snd-soc-tas2562.o
642645
obj-$(CONFIG_SND_SOC_TAS2764) += snd-soc-tas2764.o
643646
obj-$(CONFIG_SND_SOC_TAS2780) += snd-soc-tas2780.o
647+
obj-$(CONFIG_SND_SOC_TAS2781_COMLIB) += snd-soc-tas2781-comlib.o
648+
obj-$(CONFIG_SND_SOC_TAS2781_FMWLIB) += snd-soc-tas2781-fmwlib.o
649+
obj-$(CONFIG_SND_SOC_TAS2781_I2C) += snd-soc-tas2781-i2c.o
644650
obj-$(CONFIG_SND_SOC_TAS5086) += snd-soc-tas5086.o
645651
obj-$(CONFIG_SND_SOC_TAS571X) += snd-soc-tas571x.o
646652
obj-$(CONFIG_SND_SOC_TAS5720) += snd-soc-tas5720.o

0 commit comments

Comments
 (0)