* [PATCH] ASoC: codecs: peb2466: Change the +/- 6dB switch to a volume
@ 2026-03-09 11:46 Christophe Leroy (CS GROUP)
2026-03-09 12:05 ` Herve Codina
2026-03-09 19:45 ` Mark Brown
0 siblings, 2 replies; 3+ messages in thread
From: Christophe Leroy (CS GROUP) @ 2026-03-09 11:46 UTC (permalink / raw)
To: Herve Codina, Liam Girdwood, Mark Brown, Jaroslav Kysela,
Takashi Iwai
Cc: Christophe Leroy (CS GROUP), linux-sound, linux-kernel
In addition to the digital volume adjustment, infineon peb2466 codec
has an analog adjustment which can be set to either 0dB or +/-6dB.
At the time being it is defined as a switch and appears in 'alsamixer'
like a 'mute'.
This adjustment isn't a mute, change it to a 'volume' with an
associated dB range.
With this change, this adjustment now appears in 'alsamixer' as a
standard volume slider which can have two positions.
Signed-off-by: Christophe Leroy (CS GROUP) <chleroy@kernel.org>
---
sound/soc/codecs/peb2466.c | 19 +++++++++++--------
1 file changed, 11 insertions(+), 8 deletions(-)
diff --git a/sound/soc/codecs/peb2466.c b/sound/soc/codecs/peb2466.c
index f1ee42af264b..2d5163c15d0d 100644
--- a/sound/soc/codecs/peb2466.c
+++ b/sound/soc/codecs/peb2466.c
@@ -517,18 +517,21 @@ static const struct snd_kcontrol_new peb2466_ch3_out_mix_controls[] = {
SOC_DAPM_SINGLE("Voice Switch", PEB2466_CR2(3), 0, 1, 0)
};
+static const SNDRV_CTL_TLVD_DECLARE_DB_MINMAX(peb2466_gain_p_tlv, -600, 0);
+static const SNDRV_CTL_TLVD_DECLARE_DB_MINMAX(peb2466_gain_c_tlv, 0, 600);
+
static const struct snd_kcontrol_new peb2466_controls[] = {
/* Attenuators */
- SOC_SINGLE("DAC0 -6dB Playback Switch", PEB2466_CR3(0), 2, 1, 0),
- SOC_SINGLE("DAC1 -6dB Playback Switch", PEB2466_CR3(1), 2, 1, 0),
- SOC_SINGLE("DAC2 -6dB Playback Switch", PEB2466_CR3(2), 2, 1, 0),
- SOC_SINGLE("DAC3 -6dB Playback Switch", PEB2466_CR3(3), 2, 1, 0),
+ SOC_SINGLE_TLV("DAC0 -6dB Playback Volume", PEB2466_CR3(0), 2, 1, 1, peb2466_gain_p_tlv),
+ SOC_SINGLE_TLV("DAC1 -6dB Playback Volume", PEB2466_CR3(1), 2, 1, 1, peb2466_gain_p_tlv),
+ SOC_SINGLE_TLV("DAC2 -6dB Playback Volume", PEB2466_CR3(2), 2, 1, 1, peb2466_gain_p_tlv),
+ SOC_SINGLE_TLV("DAC3 -6dB Playback Volume", PEB2466_CR3(3), 2, 1, 1, peb2466_gain_p_tlv),
/* Amplifiers */
- SOC_SINGLE("ADC0 +6dB Capture Switch", PEB2466_CR3(0), 3, 1, 0),
- SOC_SINGLE("ADC1 +6dB Capture Switch", PEB2466_CR3(1), 3, 1, 0),
- SOC_SINGLE("ADC2 +6dB Capture Switch", PEB2466_CR3(2), 3, 1, 0),
- SOC_SINGLE("ADC3 +6dB Capture Switch", PEB2466_CR3(3), 3, 1, 0),
+ SOC_SINGLE_TLV("ADC0 +6dB Capture Volume", PEB2466_CR3(0), 3, 1, 0, peb2466_gain_c_tlv),
+ SOC_SINGLE_TLV("ADC1 +6dB Capture Volume", PEB2466_CR3(1), 3, 1, 0, peb2466_gain_c_tlv),
+ SOC_SINGLE_TLV("ADC2 +6dB Capture Volume", PEB2466_CR3(2), 3, 1, 0, peb2466_gain_c_tlv),
+ SOC_SINGLE_TLV("ADC3 +6dB Capture Volume", PEB2466_CR3(3), 3, 1, 0, peb2466_gain_c_tlv),
/* Tone generators */
SOC_ENUM_EXT("DAC0 TG1 Freq", peb2466_tg_freq[0][0],
--
2.49.0
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [PATCH] ASoC: codecs: peb2466: Change the +/- 6dB switch to a volume
2026-03-09 11:46 [PATCH] ASoC: codecs: peb2466: Change the +/- 6dB switch to a volume Christophe Leroy (CS GROUP)
@ 2026-03-09 12:05 ` Herve Codina
2026-03-09 19:45 ` Mark Brown
1 sibling, 0 replies; 3+ messages in thread
From: Herve Codina @ 2026-03-09 12:05 UTC (permalink / raw)
To: Christophe Leroy (CS GROUP)
Cc: Liam Girdwood, Mark Brown, Jaroslav Kysela, Takashi Iwai,
linux-sound, linux-kernel
Hi Christophe,
On Mon, 9 Mar 2026 12:46:49 +0100
"Christophe Leroy (CS GROUP)" <chleroy@kernel.org> wrote:
> In addition to the digital volume adjustment, infineon peb2466 codec
> has an analog adjustment which can be set to either 0dB or +/-6dB.
> At the time being it is defined as a switch and appears in 'alsamixer'
> like a 'mute'.
>
> This adjustment isn't a mute, change it to a 'volume' with an
> associated dB range.
>
> With this change, this adjustment now appears in 'alsamixer' as a
> standard volume slider which can have two positions.
>
> Signed-off-by: Christophe Leroy (CS GROUP) <chleroy@kernel.org>
> ---
> sound/soc/codecs/peb2466.c | 19 +++++++++++--------
> 1 file changed, 11 insertions(+), 8 deletions(-)
Acked-by: Herve Codina <herve.codina@bootlin.com>
Best regards,
Hervé
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] ASoC: codecs: peb2466: Change the +/- 6dB switch to a volume
2026-03-09 11:46 [PATCH] ASoC: codecs: peb2466: Change the +/- 6dB switch to a volume Christophe Leroy (CS GROUP)
2026-03-09 12:05 ` Herve Codina
@ 2026-03-09 19:45 ` Mark Brown
1 sibling, 0 replies; 3+ messages in thread
From: Mark Brown @ 2026-03-09 19:45 UTC (permalink / raw)
To: Herve Codina, Liam Girdwood, Jaroslav Kysela, Takashi Iwai,
Christophe Leroy (CS GROUP)
Cc: linux-sound, linux-kernel
On Mon, 09 Mar 2026 12:46:49 +0100, Christophe Leroy (CS GROUP) wrote:
> In addition to the digital volume adjustment, infineon peb2466 codec
> has an analog adjustment which can be set to either 0dB or +/-6dB.
> At the time being it is defined as a switch and appears in 'alsamixer'
> like a 'mute'.
>
> This adjustment isn't a mute, change it to a 'volume' with an
> associated dB range.
>
> [...]
Applied to
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
Thanks!
[1/1] ASoC: codecs: peb2466: Change the +/- 6dB switch to a volume
commit: eae0946b2485109a9f24f46853497f5b1983ab79
All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.
You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.
If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.
Please add any relevant lists and maintainers to the CCs when replying
to this mail.
Thanks,
Mark
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-03-09 19:45 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-09 11:46 [PATCH] ASoC: codecs: peb2466: Change the +/- 6dB switch to a volume Christophe Leroy (CS GROUP)
2026-03-09 12:05 ` Herve Codina
2026-03-09 19:45 ` Mark Brown
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox