mbox series

[0/3] ASoC: tlv320aic32x4: Add support for TAS2505

Message ID 20210615094933.3076392-1-ch@denx.de
Headers show
Series ASoC: tlv320aic32x4: Add support for TAS2505 | expand

Message

Claudius Heine June 15, 2021, 9:49 a.m. UTC
Hi,

this is an early patchset that provides support for the TAS2505 by the
tlv320aic32x4 driver.

Playback with aplay and the right mixer settings seems to be working, but some
mixer settings either cause distortions or popping. Any input on how to prevent
that is welcome.

Also with this change TAS2505 is compiled in unconditionally whenever
SND_SOC_TLV320AIC32X4_I2C is enabled. Maybe an additional option for the TAS2505
should be added, but then we probably also need a setting to provide only
support for the TAS2505 and not the TLV320AIC32X4. Not sure how to set that up
in the best way.

This is my first time working with the sound subsystem, so expect stupidity and
obvious mistakes.

regards,
Claudius

Claudius Heine (3):
  ASoC: tlv320aic32x4: prepare driver for different device variants
  ASoC: tlv320aic32x4: add support for TAS2505
  ASoC: tlv320aic32x4: dt-bindings: add TAS2505 to compatible

 .../bindings/sound/tlv320aic32x4.txt          |   1 +
 sound/soc/codecs/tlv320aic32x4-i2c.c          |  22 ++-
 sound/soc/codecs/tlv320aic32x4-spi.c          |  23 ++-
 sound/soc/codecs/tlv320aic32x4.c              | 173 +++++++++++++++++-
 sound/soc/codecs/tlv320aic32x4.h              |  10 +
 5 files changed, 219 insertions(+), 10 deletions(-)


base-commit: 009c9aa5be652675a06d5211e1640e02bbb1c33d

Comments

Mark Brown June 15, 2021, 12:30 p.m. UTC | #1
On Tue, Jun 15, 2021 at 02:06:30PM +0200, Claudius Heine wrote:
> On 2021-06-15 13:54, Mark Brown wrote:
> > On Tue, Jun 15, 2021 at 11:49:30AM +0200, Claudius Heine wrote:

> > > With this change it will be possible to add different code paths for
> > > similar devices.

> > > -	{ "tlv320aic32x4", 0 },
> > > -	{ "tlv320aic32x6", 1 },
> > > +	{ "tlv320aic32x4", (kernel_ulong_t)AIC32X4_TYPE_AIC32X4 },
> > > +	{ "tlv320aic32x6", (kernel_ulong_t)AIC32X4_TYPE_AIC32X6 },
> > >   	{ /* sentinel */ }

> > It appears that the device already supports multiple variants?

> Those values aren't used anywhere as far as I can see.

The point here is that you need a better changelog, the driver clearly
already supports multiple devices so we need a few more words to explain
what this is doing.