diff mbox

ASoC: tpa61xx: add back chip name to the controls

Message ID 20171017095729.6032-1-l.stach@pengutronix.de (mailing list archive)
State New, archived
Headers show

Commit Message

Lucas Stach Oct. 17, 2017, 9:57 a.m. UTC
Commit cb7e62256e99( ASoC: tpa6130a2: Register component) removed the chip
name from the controls, which causes issues as the TPA61xx is not a
standalone codec, but a headphone amplifier, which may be connected to the
line out of a codec which already exposes a "Headphone Playback Volume"
control. In that case we end up with duplicate controls, causing the
the probe of the soundcard to be aborted.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
---
 sound/soc/codecs/tpa6130a2.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Mark Brown Oct. 17, 2017, 10:14 a.m. UTC | #1
On Tue, Oct 17, 2017 at 11:57:29AM +0200, Lucas Stach wrote:
> Commit cb7e62256e99( ASoC: tpa6130a2: Register component) removed the chip
> name from the controls, which causes issues as the TPA61xx is not a
> standalone codec, but a headphone amplifier, which may be connected to the
> line out of a codec which already exposes a "Headphone Playback Volume"
> control. In that case we end up with duplicate controls, causing the
> the probe of the soundcard to be aborted.

In this case the intention is that the machine driver should add a
prefix via name_prefix in a struct snd_soc_codec_conf.
Lucas Stach Oct. 17, 2017, 10:59 a.m. UTC | #2
Am Dienstag, den 17.10.2017, 11:14 +0100 schrieb Mark Brown:
> On Tue, Oct 17, 2017 at 11:57:29AM +0200, Lucas Stach wrote:
> > Commit cb7e62256e99( ASoC: tpa6130a2: Register component) removed
> > the chip
> > name from the controls, which causes issues as the TPA61xx is not a
> > standalone codec, but a headphone amplifier, which may be connected
> > to the
> > line out of a codec which already exposes a "Headphone Playback
> > Volume"
> > control. In that case we end up with duplicate controls, causing
> > the
> > the probe of the soundcard to be aborted.
> 
> In this case the intention is that the machine driver should add a
> prefix via name_prefix in a struct snd_soc_codec_conf.

Thanks for the pointer.

In my case the machine driver is the simple-card. I'll have a look at
how I can get the prefix hooked up there.

Regards,
Lucas
diff mbox

Patch

diff --git a/sound/soc/codecs/tpa6130a2.c b/sound/soc/codecs/tpa6130a2.c
index 2e014c80d113..abca7eedb6be 100644
--- a/sound/soc/codecs/tpa6130a2.c
+++ b/sound/soc/codecs/tpa6130a2.c
@@ -136,7 +136,7 @@  static const DECLARE_TLV_DB_RANGE(tpa6130_tlv,
 );
 
 static const struct snd_kcontrol_new tpa6130a2_controls[] = {
-	SOC_SINGLE_TLV("Headphone Playback Volume",
+	SOC_SINGLE_TLV("TPA6130A2 Headphone Playback Volume",
 		       TPA6130A2_REG_VOL_MUTE, 0, 0x3f, 0,
 		       tpa6130_tlv),
 };
@@ -148,7 +148,7 @@  static const DECLARE_TLV_DB_RANGE(tpa6140_tlv,
 );
 
 static const struct snd_kcontrol_new tpa6140a2_controls[] = {
-	SOC_SINGLE_TLV("Headphone Playback Volume",
+	SOC_SINGLE_TLV("TPA6140A2 Headphone Playback Volume",
 		       TPA6130A2_REG_VOL_MUTE, 1, 0x1f, 0,
 		       tpa6140_tlv),
 };