Linux Sound subsystem development
 help / color / mirror / Atom feed
* [PATCH 00/13] ASoC: codecs: Fix Wolfson control definitions that write another control's bits
@ 2026-10-14  6:32 HyeongJun An
  2026-10-14  6:32 ` [PATCH 01/13] ASoC: codecs: wm8990: Fix definition of right input PGA controls HyeongJun An
                   ` (12 more replies)
  0 siblings, 13 replies; 27+ messages in thread
From: HyeongJun An @ 2026-10-14  6:32 UTC (permalink / raw)
  To: broonie; +Cc: lgirdwood, ckeepax, patches, linux-sound, linux-kernel

These are more fixes found by the overlap scan from the first series
[1]. In each driver a control writes bits that belong to another
control, or writes the left channel bits for a right channel control.

[1] https://lore.kernel.org/all/20261008130953.2446692-1-sammiee5311@gmail.com/


HyeongJun An (13):
  ASoC: codecs: wm8990: Fix definition of right input PGA controls
  ASoC: codecs: wm8990: Fix definition of LOMIX AINLMUX Bypass Volume
    control
  ASoC: codecs: wm8991: Fix definition of right input PGA controls
  ASoC: codecs: wm8991: Fix definition of LOMIX AINLMUX Bypass Volume
    control
  ASoC: codecs: wm8983: Fix definition of ADC 128x Oversampling control
  ASoC: codecs: wm8985: Fix definition of ADC 128x Oversampling control
  ASoC: codecs: wm8994: Fix definition of WM8958 noise gate hold time
    controls
  ASoC: codecs: wm8955: Fix definition of Treble Cutoff control
  ASoC: codecs: wm_hubs: Fix definition of MIXINR to MIXOUTR volume
    control
  ASoC: codecs: wm8737: Fix definition of zero cross switches
  ASoC: codecs: wm5100: Fix definition of EQ3 Band 1 Volume control
  ASoC: codecs: wm8750: Fix definition of ALC Capture NG Type control
  ASoC: codecs: wm8510: Fix definition of ADC Inversion Switch control

 sound/soc/codecs/wm5100.c  |  2 +-
 sound/soc/codecs/wm8510.c  |  2 +-
 sound/soc/codecs/wm8737.c  |  8 ++++----
 sound/soc/codecs/wm8750.c  |  2 +-
 sound/soc/codecs/wm8955.c  |  2 +-
 sound/soc/codecs/wm8983.c  |  2 +-
 sound/soc/codecs/wm8985.c  |  2 +-
 sound/soc/codecs/wm8990.c  | 10 +++++-----
 sound/soc/codecs/wm8991.c  | 10 +++++-----
 sound/soc/codecs/wm8994.c  |  6 +++---
 sound/soc/codecs/wm_hubs.c |  2 +-
 11 files changed, 24 insertions(+), 24 deletions(-)

-- 
2.43.0


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH 01/13] ASoC: codecs: wm8990: Fix definition of right input PGA controls
  2026-10-14  6:32 [PATCH 00/13] ASoC: codecs: Fix Wolfson control definitions that write another control's bits HyeongJun An
@ 2026-10-14  6:32 ` HyeongJun An
  2026-10-14  9:32   ` Charles Keepax
  2026-10-14  6:32 ` [PATCH 02/13] ASoC: codecs: wm8990: Fix definition of LOMIX AINLMUX Bypass Volume control HyeongJun An
                   ` (11 subsequent siblings)
  12 siblings, 1 reply; 27+ messages in thread
From: HyeongJun An @ 2026-10-14  6:32 UTC (permalink / raw)
  To: broonie; +Cc: lgirdwood, ckeepax, patches, linux-sound, linux-kernel

The right input PGA boost (R12MNBST, R34MNBST) and routing (R12MNB,
R34MNB) bits are in Input Mixer4 (R42), not in Input Mixer3 (R41),
where these controls write the left channel bits.

Fixes: f10485e79882 ("[ALSA] ASoC: Add WM8990 driver")
Assisted-by: Claude:claude-opus-5-5
Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
---
 sound/soc/codecs/wm8990.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/sound/soc/codecs/wm8990.c b/sound/soc/codecs/wm8990.c
index 11dfbbbdcd92..a3843094866b 100644
--- a/sound/soc/codecs/wm8990.c
+++ b/sound/soc/codecs/wm8990.c
@@ -97,8 +97,8 @@ static const struct snd_kcontrol_new wm8990_snd_controls[] = {
 SOC_SINGLE("LIN12 PGA Boost", WM8990_INPUT_MIXER3, WM8990_L12MNBST_BIT, 1, 0),
 SOC_SINGLE("LIN34 PGA Boost", WM8990_INPUT_MIXER3, WM8990_L34MNBST_BIT, 1, 0),
 /* INMIXR */
-SOC_SINGLE("RIN12 PGA Boost", WM8990_INPUT_MIXER3, WM8990_R12MNBST_BIT, 1, 0),
-SOC_SINGLE("RIN34 PGA Boost", WM8990_INPUT_MIXER3, WM8990_R34MNBST_BIT, 1, 0),
+SOC_SINGLE("RIN12 PGA Boost", WM8990_INPUT_MIXER4, WM8990_R12MNBST_BIT, 1, 0),
+SOC_SINGLE("RIN34 PGA Boost", WM8990_INPUT_MIXER4, WM8990_R34MNBST_BIT, 1, 0),
 
 /* LOMIX */
 SOC_SINGLE_TLV("LOMIX LIN3 Bypass Volume", WM8990_OUTPUT_MIXER3,
@@ -377,9 +377,9 @@ SOC_DAPM_SINGLE_TLV("Record Right Volume", WM8990_INPUT_MIXER4,
 	WM8990_RDBVOL_SHIFT, WM8990_RDBVOL_MASK, 0, in_mix_tlv),
 SOC_DAPM_SINGLE_TLV("RIN2 Volume", WM8990_INPUT_MIXER6, WM8990_RI2BVOL_SHIFT,
 	7, 0, in_mix_tlv),
-SOC_DAPM_SINGLE("RINPGA12 Switch", WM8990_INPUT_MIXER3, WM8990_L12MNB_BIT,
+SOC_DAPM_SINGLE("RINPGA12 Switch", WM8990_INPUT_MIXER4, WM8990_R12MNB_BIT,
 	1, 0),
-SOC_DAPM_SINGLE("RINPGA34 Switch", WM8990_INPUT_MIXER3, WM8990_L34MNB_BIT,
+SOC_DAPM_SINGLE("RINPGA34 Switch", WM8990_INPUT_MIXER4, WM8990_R34MNB_BIT,
 	1, 0),
 };
 
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 02/13] ASoC: codecs: wm8990: Fix definition of LOMIX AINLMUX Bypass Volume control
  2026-10-14  6:32 [PATCH 00/13] ASoC: codecs: Fix Wolfson control definitions that write another control's bits HyeongJun An
  2026-10-14  6:32 ` [PATCH 01/13] ASoC: codecs: wm8990: Fix definition of right input PGA controls HyeongJun An
@ 2026-10-14  6:32 ` HyeongJun An
  2026-10-14  9:32   ` Charles Keepax
  2026-10-14  6:32 ` [PATCH 03/13] ASoC: codecs: wm8991: Fix definition of right input PGA controls HyeongJun An
                   ` (10 subsequent siblings)
  12 siblings, 1 reply; 27+ messages in thread
From: HyeongJun An @ 2026-10-14  6:32 UTC (permalink / raw)
  To: broonie; +Cc: lgirdwood, ckeepax, patches, linux-sound, linux-kernel

The LOMIX AINLMUX bypass volume (LLBLOVOL) is at bits 2:0 of Output
Mixer5, not at bits 5:3, which hold the AINRMUX bypass volume
(LRBLOVOL).

Fixes: f10485e79882 ("[ALSA] ASoC: Add WM8990 driver")
Assisted-by: Claude:claude-opus-5-5
Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
---
 sound/soc/codecs/wm8990.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/codecs/wm8990.c b/sound/soc/codecs/wm8990.c
index a3843094866b..5674d97fcd84 100644
--- a/sound/soc/codecs/wm8990.c
+++ b/sound/soc/codecs/wm8990.c
@@ -112,7 +112,7 @@ SOC_SINGLE_TLV("LOMIX RIN3 Bypass Volume", WM8990_OUTPUT_MIXER5,
 SOC_SINGLE_TLV("LOMIX AINRMUX Bypass Volume", WM8990_OUTPUT_MIXER5,
 	WM8990_LRBLOVOL_SHIFT, WM8990_LRBLOVOL_MASK, 1, out_mix_tlv),
 SOC_SINGLE_TLV("LOMIX AINLMUX Bypass Volume", WM8990_OUTPUT_MIXER5,
-	WM8990_LRBLOVOL_SHIFT, WM8990_LRBLOVOL_MASK, 1, out_mix_tlv),
+	WM8990_LLBLOVOL_SHIFT, WM8990_LLBLOVOL_MASK, 1, out_mix_tlv),
 
 /* ROMIX */
 SOC_SINGLE_TLV("ROMIX RIN3 Bypass Volume", WM8990_OUTPUT_MIXER4,
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 03/13] ASoC: codecs: wm8991: Fix definition of right input PGA controls
  2026-10-14  6:32 [PATCH 00/13] ASoC: codecs: Fix Wolfson control definitions that write another control's bits HyeongJun An
  2026-10-14  6:32 ` [PATCH 01/13] ASoC: codecs: wm8990: Fix definition of right input PGA controls HyeongJun An
  2026-10-14  6:32 ` [PATCH 02/13] ASoC: codecs: wm8990: Fix definition of LOMIX AINLMUX Bypass Volume control HyeongJun An
@ 2026-10-14  6:32 ` HyeongJun An
  2026-10-14  9:35   ` Charles Keepax
  2026-10-14  6:32 ` [PATCH 04/13] ASoC: codecs: wm8991: Fix definition of LOMIX AINLMUX Bypass Volume control HyeongJun An
                   ` (9 subsequent siblings)
  12 siblings, 1 reply; 27+ messages in thread
From: HyeongJun An @ 2026-10-14  6:32 UTC (permalink / raw)
  To: broonie; +Cc: lgirdwood, ckeepax, patches, linux-sound, linux-kernel

The right input PGA boost (R12MNBST, R34MNBST) and routing (R12MNB,
R34MNB) bits are in Input Mixer4 (R42), not in Input Mixer3 (R41),
where these controls write the left channel bits.

Fixes: 203db220718c ("ASoC: WM8991: Add initial WM8991 driver")
Assisted-by: Claude:claude-opus-5-5
Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
---
 sound/soc/codecs/wm8991.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/sound/soc/codecs/wm8991.c b/sound/soc/codecs/wm8991.c
index 225c235d3d89..157b48f02451 100644
--- a/sound/soc/codecs/wm8991.c
+++ b/sound/soc/codecs/wm8991.c
@@ -169,8 +169,8 @@ static const struct snd_kcontrol_new wm8991_snd_controls[] = {
 	SOC_SINGLE("LIN12 PGA Boost", WM8991_INPUT_MIXER3, WM8991_L12MNBST_BIT, 1, 0),
 	SOC_SINGLE("LIN34 PGA Boost", WM8991_INPUT_MIXER3, WM8991_L34MNBST_BIT, 1, 0),
 	/* INMIXR */
-	SOC_SINGLE("RIN12 PGA Boost", WM8991_INPUT_MIXER3, WM8991_R12MNBST_BIT, 1, 0),
-	SOC_SINGLE("RIN34 PGA Boost", WM8991_INPUT_MIXER3, WM8991_R34MNBST_BIT, 1, 0),
+	SOC_SINGLE("RIN12 PGA Boost", WM8991_INPUT_MIXER4, WM8991_R12MNBST_BIT, 1, 0),
+	SOC_SINGLE("RIN34 PGA Boost", WM8991_INPUT_MIXER4, WM8991_R34MNBST_BIT, 1, 0),
 
 	/* LOMIX */
 	SOC_SINGLE_TLV("LOMIX LIN3 Bypass Volume", WM8991_OUTPUT_MIXER3,
@@ -446,9 +446,9 @@ static const struct snd_kcontrol_new wm8991_dapm_inmixr_controls[] = {
 		WM8991_RDBVOL_SHIFT, WM8991_RDBVOL_MASK, 0, in_mix_tlv),
 	SOC_DAPM_SINGLE_TLV("RIN2 Volume", WM8991_INPUT_MIXER6, WM8991_RI2BVOL_SHIFT,
 		7, 0, in_mix_tlv),
-	SOC_DAPM_SINGLE("RINPGA12 Switch", WM8991_INPUT_MIXER3, WM8991_L12MNB_BIT,
+	SOC_DAPM_SINGLE("RINPGA12 Switch", WM8991_INPUT_MIXER4, WM8991_R12MNB_BIT,
 		1, 0),
-	SOC_DAPM_SINGLE("RINPGA34 Switch", WM8991_INPUT_MIXER3, WM8991_L34MNB_BIT,
+	SOC_DAPM_SINGLE("RINPGA34 Switch", WM8991_INPUT_MIXER4, WM8991_R34MNB_BIT,
 		1, 0),
 };
 
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 04/13] ASoC: codecs: wm8991: Fix definition of LOMIX AINLMUX Bypass Volume control
  2026-10-14  6:32 [PATCH 00/13] ASoC: codecs: Fix Wolfson control definitions that write another control's bits HyeongJun An
                   ` (2 preceding siblings ...)
  2026-10-14  6:32 ` [PATCH 03/13] ASoC: codecs: wm8991: Fix definition of right input PGA controls HyeongJun An
@ 2026-10-14  6:32 ` HyeongJun An
  2026-10-14  9:35   ` Charles Keepax
  2026-10-14  6:32 ` [PATCH 05/13] ASoC: codecs: wm8983: Fix definition of ADC 128x Oversampling control HyeongJun An
                   ` (8 subsequent siblings)
  12 siblings, 1 reply; 27+ messages in thread
From: HyeongJun An @ 2026-10-14  6:32 UTC (permalink / raw)
  To: broonie; +Cc: lgirdwood, ckeepax, patches, linux-sound, linux-kernel

The LOMIX AINLMUX bypass volume (LLBLOVOL) is at bits 2:0 of Output
Mixer5, not at bits 5:3, which hold the AINRMUX bypass volume
(LRBLOVOL).

Fixes: 203db220718c ("ASoC: WM8991: Add initial WM8991 driver")
Assisted-by: Claude:claude-opus-5-5
Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
---
 sound/soc/codecs/wm8991.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/codecs/wm8991.c b/sound/soc/codecs/wm8991.c
index 157b48f02451..471310257123 100644
--- a/sound/soc/codecs/wm8991.c
+++ b/sound/soc/codecs/wm8991.c
@@ -184,7 +184,7 @@ static const struct snd_kcontrol_new wm8991_snd_controls[] = {
 	SOC_SINGLE_TLV("LOMIX AINRMUX Bypass Volume", WM8991_OUTPUT_MIXER5,
 		WM8991_LRBLOVOL_SHIFT, WM8991_LRBLOVOL_MASK, 1, out_mix_tlv),
 	SOC_SINGLE_TLV("LOMIX AINLMUX Bypass Volume", WM8991_OUTPUT_MIXER5,
-		WM8991_LRBLOVOL_SHIFT, WM8991_LRBLOVOL_MASK, 1, out_mix_tlv),
+		WM8991_LLBLOVOL_SHIFT, WM8991_LLBLOVOL_MASK, 1, out_mix_tlv),
 
 	/* ROMIX */
 	SOC_SINGLE_TLV("ROMIX RIN3 Bypass Volume", WM8991_OUTPUT_MIXER4,
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 05/13] ASoC: codecs: wm8983: Fix definition of ADC 128x Oversampling control
  2026-10-14  6:32 [PATCH 00/13] ASoC: codecs: Fix Wolfson control definitions that write another control's bits HyeongJun An
                   ` (3 preceding siblings ...)
  2026-10-14  6:32 ` [PATCH 04/13] ASoC: codecs: wm8991: Fix definition of LOMIX AINLMUX Bypass Volume control HyeongJun An
@ 2026-10-14  6:32 ` HyeongJun An
  2026-10-14  9:39   ` Charles Keepax
  2026-10-14  6:32 ` [PATCH 06/13] ASoC: codecs: wm8985: " HyeongJun An
                   ` (7 subsequent siblings)
  12 siblings, 1 reply; 27+ messages in thread
From: HyeongJun An @ 2026-10-14  6:32 UTC (permalink / raw)
  To: broonie; +Cc: lgirdwood, ckeepax, patches, linux-sound, linux-kernel

ADC 128x oversampling (ADCOSR128) is at bit 3 of ADC Control, not at
bit 8, which is the high pass filter enable (HPFEN).

Fixes: 6b3860b0a20a ("ASoC: WM8983: Initial driver")
Assisted-by: Claude:claude-opus-5-5
Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
---
 sound/soc/codecs/wm8983.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/codecs/wm8983.c b/sound/soc/codecs/wm8983.c
index fab25f35fd14..5639dad90405 100644
--- a/sound/soc/codecs/wm8983.c
+++ b/sound/soc/codecs/wm8983.c
@@ -234,7 +234,7 @@ static const struct snd_kcontrol_new wm8983_snd_controls[] = {
 			 8, 1, 0, pga_boost_tlv),
 
 	SOC_DOUBLE("ADC Inversion Switch", WM8983_ADC_CONTROL, 0, 1, 1, 0),
-	SOC_SINGLE("ADC 128x Oversampling Switch", WM8983_ADC_CONTROL, 8, 1, 0),
+	SOC_SINGLE("ADC 128x Oversampling Switch", WM8983_ADC_CONTROL, 3, 1, 0),
 
 	SOC_DOUBLE_R_TLV("Playback Volume", WM8983_LEFT_DAC_DIGITAL_VOL,
 			 WM8983_RIGHT_DAC_DIGITAL_VOL, 0, 255, 0, dac_tlv),
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 06/13] ASoC: codecs: wm8985: Fix definition of ADC 128x Oversampling control
  2026-10-14  6:32 [PATCH 00/13] ASoC: codecs: Fix Wolfson control definitions that write another control's bits HyeongJun An
                   ` (4 preceding siblings ...)
  2026-10-14  6:32 ` [PATCH 05/13] ASoC: codecs: wm8983: Fix definition of ADC 128x Oversampling control HyeongJun An
@ 2026-10-14  6:32 ` HyeongJun An
  2026-10-14  9:41   ` Charles Keepax
  2026-10-14  6:32 ` [PATCH 07/13] ASoC: codecs: wm8994: Fix definition of WM8958 noise gate hold time controls HyeongJun An
                   ` (6 subsequent siblings)
  12 siblings, 1 reply; 27+ messages in thread
From: HyeongJun An @ 2026-10-14  6:32 UTC (permalink / raw)
  To: broonie; +Cc: lgirdwood, ckeepax, patches, linux-sound, linux-kernel

ADC 128x oversampling (ADCOSR128) is at bit 3 of ADC Control, not at
bit 8, which is the high pass filter enable (HPFEN).

Fixes: 6d6f8b832705 ("ASoC: WM8985: Initial driver")
Assisted-by: Claude:claude-opus-5-5
Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
---
 sound/soc/codecs/wm8985.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/codecs/wm8985.c b/sound/soc/codecs/wm8985.c
index 2a64d5a851da..f400f528321d 100644
--- a/sound/soc/codecs/wm8985.c
+++ b/sound/soc/codecs/wm8985.c
@@ -327,7 +327,7 @@ static const struct snd_kcontrol_new wm8985_common_snd_controls[] = {
 		8, 1, 0, pga_boost_tlv),
 
 	SOC_DOUBLE("ADC Inversion Switch", WM8985_ADC_CONTROL, 0, 1, 1, 0),
-	SOC_SINGLE("ADC 128x Oversampling Switch", WM8985_ADC_CONTROL, 8, 1, 0),
+	SOC_SINGLE("ADC 128x Oversampling Switch", WM8985_ADC_CONTROL, 3, 1, 0),
 
 	SOC_DOUBLE_R_TLV("Playback Volume", WM8985_LEFT_DAC_DIGITAL_VOL,
 		WM8985_RIGHT_DAC_DIGITAL_VOL, 0, 255, 0, dac_tlv),
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 07/13] ASoC: codecs: wm8994: Fix definition of WM8958 noise gate hold time controls
  2026-10-14  6:32 [PATCH 00/13] ASoC: codecs: Fix Wolfson control definitions that write another control's bits HyeongJun An
                   ` (5 preceding siblings ...)
  2026-10-14  6:32 ` [PATCH 06/13] ASoC: codecs: wm8985: " HyeongJun An
@ 2026-10-14  6:32 ` HyeongJun An
  2026-10-14  9:46   ` Charles Keepax
  2026-10-14  6:32 ` [PATCH 08/13] ASoC: codecs: wm8955: Fix definition of Treble Cutoff control HyeongJun An
                   ` (5 subsequent siblings)
  12 siblings, 1 reply; 27+ messages in thread
From: HyeongJun An @ 2026-10-14  6:32 UTC (permalink / raw)
  To: broonie; +Cc: lgirdwood, ckeepax, patches, linux-sound, linux-kernel

The noise gate hold time (NG_HLD) is at bits 6:5 of each WM8958 DAC
noise gate register, not at bits 3:1, which hold the threshold
(NG_THR).

Fixes: 1ddc07d0f13a ("ASoC: Add WM8958 noise gate support")
Assisted-by: Claude:claude-opus-5-5
Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
---
 sound/soc/codecs/wm8994.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/sound/soc/codecs/wm8994.c b/sound/soc/codecs/wm8994.c
index 8bf58a6a8af7..c1f388189b2e 100644
--- a/sound/soc/codecs/wm8994.c
+++ b/sound/soc/codecs/wm8994.c
@@ -701,17 +701,17 @@ static const char *wm8958_ng_text[] = {
 
 static SOC_ENUM_SINGLE_DECL(wm8958_aif1dac1_ng_hold,
 			    WM8958_AIF1_DAC1_NOISE_GATE,
-			    WM8958_AIF1DAC1_NG_THR_SHIFT,
+			    WM8958_AIF1DAC1_NG_HLD_SHIFT,
 			    wm8958_ng_text);
 
 static SOC_ENUM_SINGLE_DECL(wm8958_aif1dac2_ng_hold,
 			    WM8958_AIF1_DAC2_NOISE_GATE,
-			    WM8958_AIF1DAC2_NG_THR_SHIFT,
+			    WM8958_AIF1DAC2_NG_HLD_SHIFT,
 			    wm8958_ng_text);
 
 static SOC_ENUM_SINGLE_DECL(wm8958_aif2dac_ng_hold,
 			    WM8958_AIF2_DAC_NOISE_GATE,
-			    WM8958_AIF2DAC_NG_THR_SHIFT,
+			    WM8958_AIF2DAC_NG_HLD_SHIFT,
 			    wm8958_ng_text);
 
 static const struct snd_kcontrol_new wm8958_snd_controls[] = {
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 08/13] ASoC: codecs: wm8955: Fix definition of Treble Cutoff control
  2026-10-14  6:32 [PATCH 00/13] ASoC: codecs: Fix Wolfson control definitions that write another control's bits HyeongJun An
                   ` (6 preceding siblings ...)
  2026-10-14  6:32 ` [PATCH 07/13] ASoC: codecs: wm8994: Fix definition of WM8958 noise gate hold time controls HyeongJun An
@ 2026-10-14  6:32 ` HyeongJun An
  2026-10-14  9:51   ` Charles Keepax
  2026-10-14  6:32 ` [PATCH 09/13] ASoC: codecs: wm_hubs: Fix definition of MIXINR to MIXOUTR volume control HyeongJun An
                   ` (4 subsequent siblings)
  12 siblings, 1 reply; 27+ messages in thread
From: HyeongJun An @ 2026-10-14  6:32 UTC (permalink / raw)
  To: broonie; +Cc: lgirdwood, ckeepax, patches, linux-sound, linux-kernel

Treble cutoff (TC) is at bit 6 of Treble Control, not at bit 2, which
is part of the treble volume (TRBL[3:0]).

Fixes: 54db41c116c3 ("ASoC: wm8955: Use SOC_ENUM_SINGLE_DECL()")
Assisted-by: Claude:claude-opus-5-5
Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
---
 sound/soc/codecs/wm8955.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/codecs/wm8955.c b/sound/soc/codecs/wm8955.c
index c897a9ab764d..d872d4e00529 100644
--- a/sound/soc/codecs/wm8955.c
+++ b/sound/soc/codecs/wm8955.c
@@ -426,7 +426,7 @@ static const char *treble_cutoff_text[] = {
 	"High", "Low"
 };
 
-static SOC_ENUM_SINGLE_DECL(treble_cutoff, WM8955_TREBLE_CONTROL, 2,
+static SOC_ENUM_SINGLE_DECL(treble_cutoff, WM8955_TREBLE_CONTROL, 6,
 			    treble_cutoff_text);
 
 static const DECLARE_TLV_DB_SCALE(digital_tlv, -12750, 50, 1);
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 09/13] ASoC: codecs: wm_hubs: Fix definition of MIXINR to MIXOUTR volume control
  2026-10-14  6:32 [PATCH 00/13] ASoC: codecs: Fix Wolfson control definitions that write another control's bits HyeongJun An
                   ` (7 preceding siblings ...)
  2026-10-14  6:32 ` [PATCH 08/13] ASoC: codecs: wm8955: Fix definition of Treble Cutoff control HyeongJun An
@ 2026-10-14  6:32 ` HyeongJun An
  2026-10-14  9:56   ` Charles Keepax
  2026-10-14  6:32 ` [PATCH 10/13] ASoC: codecs: wm8737: Fix definition of zero cross switches HyeongJun An
                   ` (3 subsequent siblings)
  12 siblings, 1 reply; 27+ messages in thread
From: HyeongJun An @ 2026-10-14  6:32 UTC (permalink / raw)
  To: broonie; +Cc: lgirdwood, ckeepax, patches, linux-sound, linux-kernel

The Right Output Mixer Right Input Volume (MIXINR_MIXOUTR_VOL) is at
bits 2:0 of Output Mixer6, not at bits 8:6, which hold the IN2LN volume
(IN2LN_MIXOUTR_VOL).

Fixes: 942c435ba79f ("ASoC: Add WM8993 CODEC driver")
Assisted-by: Claude:claude-opus-5-5
Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
---
 sound/soc/codecs/wm_hubs.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/codecs/wm_hubs.c b/sound/soc/codecs/wm_hubs.c
index f80dfc488e3c..ce16f2750979 100644
--- a/sound/soc/codecs/wm_hubs.c
+++ b/sound/soc/codecs/wm_hubs.c
@@ -427,7 +427,7 @@ SOC_SINGLE_TLV("Right Output Mixer IN2RP Volume",
 SOC_SINGLE_TLV("Right Output Mixer Left Input Volume",
 	       WM8993_OUTPUT_MIXER6, 3, 7, 1, outmix_tlv),
 SOC_SINGLE_TLV("Right Output Mixer Right Input Volume",
-	       WM8993_OUTPUT_MIXER6, 6, 7, 1, outmix_tlv),
+	       WM8993_OUTPUT_MIXER6, 0, 7, 1, outmix_tlv),
 SOC_SINGLE_TLV("Right Output Mixer DAC Volume",
 	       WM8993_OUTPUT_MIXER6, 9, 7, 1, outmix_tlv),
 
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 10/13] ASoC: codecs: wm8737: Fix definition of zero cross switches
  2026-10-14  6:32 [PATCH 00/13] ASoC: codecs: Fix Wolfson control definitions that write another control's bits HyeongJun An
                   ` (8 preceding siblings ...)
  2026-10-14  6:32 ` [PATCH 09/13] ASoC: codecs: wm_hubs: Fix definition of MIXINR to MIXOUTR volume control HyeongJun An
@ 2026-10-14  6:32 ` HyeongJun An
  2026-10-14  9:58   ` Charles Keepax
  2026-10-14  6:32 ` [PATCH 11/13] ASoC: codecs: wm5100: Fix definition of EQ3 Band 1 Volume control HyeongJun An
                   ` (2 subsequent siblings)
  12 siblings, 1 reply; 27+ messages in thread
From: HyeongJun An @ 2026-10-14  6:32 UTC (permalink / raw)
  To: broonie; +Cc: lgirdwood, ckeepax, patches, linux-sound, linux-kernel

The mic (xMZC) and PGA (xPZC) zero cross bits are bits 3 and 2 of each
channel's Audio Path register. SOC_DOUBLE takes one register and two
shifts, so both controls only write the left register. Use
SOC_DOUBLE_R, as the Mic Boost Switch next to them does.

Fixes: 2a9ae13a2641 ("ASoC: Add initial WM8737 driver")
Assisted-by: Claude:claude-opus-5-5
Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
---
 sound/soc/codecs/wm8737.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/sound/soc/codecs/wm8737.c b/sound/soc/codecs/wm8737.c
index 33a3f88fffb3..0734f6032c8d 100644
--- a/sound/soc/codecs/wm8737.c
+++ b/sound/soc/codecs/wm8737.c
@@ -148,13 +148,13 @@ SOC_DOUBLE_R_TLV("Mic Boost Volume", WM8737_AUDIO_PATH_L, WM8737_AUDIO_PATH_R,
 		 6, 3, 0, micboost_tlv),
 SOC_DOUBLE_R("Mic Boost Switch", WM8737_AUDIO_PATH_L, WM8737_AUDIO_PATH_R,
 	     4, 1, 0),
-SOC_DOUBLE("Mic ZC Switch", WM8737_AUDIO_PATH_L, WM8737_AUDIO_PATH_R,
-	   3, 1, 0),
+SOC_DOUBLE_R("Mic ZC Switch", WM8737_AUDIO_PATH_L, WM8737_AUDIO_PATH_R,
+	     3, 1, 0),
 
 SOC_DOUBLE_R_TLV("Capture Volume", WM8737_LEFT_PGA_VOLUME,
 		 WM8737_RIGHT_PGA_VOLUME, 0, 255, 0, pga_tlv),
-SOC_DOUBLE("Capture ZC Switch", WM8737_AUDIO_PATH_L, WM8737_AUDIO_PATH_R,
-	   2, 1, 0),
+SOC_DOUBLE_R("Capture ZC Switch", WM8737_AUDIO_PATH_L, WM8737_AUDIO_PATH_R,
+	     2, 1, 0),
 
 SOC_DOUBLE("INPUT1 DC Bias Switch", WM8737_MISC_BIAS_CONTROL, 0, 1, 1, 0),
 
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 11/13] ASoC: codecs: wm5100: Fix definition of EQ3 Band 1 Volume control
  2026-10-14  6:32 [PATCH 00/13] ASoC: codecs: Fix Wolfson control definitions that write another control's bits HyeongJun An
                   ` (9 preceding siblings ...)
  2026-10-14  6:32 ` [PATCH 10/13] ASoC: codecs: wm8737: Fix definition of zero cross switches HyeongJun An
@ 2026-10-14  6:32 ` HyeongJun An
  2026-10-14  9:59   ` Charles Keepax
  2026-10-14  6:32 ` [PATCH 12/13] ASoC: codecs: wm8750: Fix definition of ALC Capture NG Type control HyeongJun An
  2026-10-14  6:32 ` [PATCH 13/13] ASoC: codecs: wm8510: Fix definition of ADC Inversion Switch control HyeongJun An
  12 siblings, 1 reply; 27+ messages in thread
From: HyeongJun An @ 2026-10-14  6:32 UTC (permalink / raw)
  To: broonie; +Cc: lgirdwood, ckeepax, patches, linux-sound, linux-kernel

The EQ3 band 1 gain is in WM5100_EQ3_1, not in WM5100_EQ1_1, which
holds the EQ1 band 1 gain.

Fixes: 6d4baf084f4d ("ASoC: Add WM5100 driver")
Assisted-by: Claude:claude-opus-5-5
Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
---
 sound/soc/codecs/wm5100.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/codecs/wm5100.c b/sound/soc/codecs/wm5100.c
index 2fe937a93026..d0f5c4e89556 100644
--- a/sound/soc/codecs/wm5100.c
+++ b/sound/soc/codecs/wm5100.c
@@ -658,7 +658,7 @@ SOC_SINGLE_TLV("EQ2 Band 4 Volume", WM5100_EQ2_2, WM5100_EQ2_B4_GAIN_SHIFT,
 SOC_SINGLE_TLV("EQ2 Band 5 Volume", WM5100_EQ2_2, WM5100_EQ2_B5_GAIN_SHIFT,
 	       24, 0, eq_tlv),
 
-SOC_SINGLE_TLV("EQ3 Band 1 Volume", WM5100_EQ1_1, WM5100_EQ3_B1_GAIN_SHIFT,
+SOC_SINGLE_TLV("EQ3 Band 1 Volume", WM5100_EQ3_1, WM5100_EQ3_B1_GAIN_SHIFT,
 	       24, 0, eq_tlv),
 SOC_SINGLE_TLV("EQ3 Band 2 Volume", WM5100_EQ3_1, WM5100_EQ3_B2_GAIN_SHIFT,
 	       24, 0, eq_tlv),
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 12/13] ASoC: codecs: wm8750: Fix definition of ALC Capture NG Type control
  2026-10-14  6:32 [PATCH 00/13] ASoC: codecs: Fix Wolfson control definitions that write another control's bits HyeongJun An
                   ` (10 preceding siblings ...)
  2026-10-14  6:32 ` [PATCH 11/13] ASoC: codecs: wm5100: Fix definition of EQ3 Band 1 Volume control HyeongJun An
@ 2026-10-14  6:32 ` HyeongJun An
  2026-10-14 10:01   ` Charles Keepax
  2026-10-14  6:32 ` [PATCH 13/13] ASoC: codecs: wm8510: Fix definition of ADC Inversion Switch control HyeongJun An
  12 siblings, 1 reply; 27+ messages in thread
From: HyeongJun An @ 2026-10-14  6:32 UTC (permalink / raw)
  To: broonie; +Cc: lgirdwood, ckeepax, patches, linux-sound, linux-kernel

The noise gate type is wm8750_enum[7], bit 1 of WM8750_NGATE, not
wm8750_enum[4], which is the 3D upper cut-off.

Fixes: abadfc928a27 ("[ALSA] ASoC codecs: WM8750 support")
Assisted-by: Claude:claude-opus-5-5
Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
---
 sound/soc/codecs/wm8750.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/codecs/wm8750.c b/sound/soc/codecs/wm8750.c
index d3f1178c2d34..df49d813aa4c 100644
--- a/sound/soc/codecs/wm8750.c
+++ b/sound/soc/codecs/wm8750.c
@@ -171,7 +171,7 @@ SOC_SINGLE("ALC Capture Hold Time", WM8750_ALC2, 0, 15, 0),
 SOC_SINGLE("ALC Capture Decay Time", WM8750_ALC3, 4, 15, 0),
 SOC_SINGLE("ALC Capture Attack Time", WM8750_ALC3, 0, 15, 0),
 SOC_SINGLE("ALC Capture NG Threshold", WM8750_NGATE, 3, 31, 0),
-SOC_ENUM("ALC Capture NG Type", wm8750_enum[4]),
+SOC_ENUM("ALC Capture NG Type", wm8750_enum[7]),
 SOC_SINGLE("ALC Capture NG Switch", WM8750_NGATE, 0, 1, 0),
 
 SOC_SINGLE("Left ADC Capture Volume", WM8750_LADC, 0, 255, 0),
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 13/13] ASoC: codecs: wm8510: Fix definition of ADC Inversion Switch control
  2026-10-14  6:32 [PATCH 00/13] ASoC: codecs: Fix Wolfson control definitions that write another control's bits HyeongJun An
                   ` (11 preceding siblings ...)
  2026-10-14  6:32 ` [PATCH 12/13] ASoC: codecs: wm8750: Fix definition of ALC Capture NG Type control HyeongJun An
@ 2026-10-14  6:32 ` HyeongJun An
  2026-10-14 10:04   ` Charles Keepax
  12 siblings, 1 reply; 27+ messages in thread
From: HyeongJun An @ 2026-10-14  6:32 UTC (permalink / raw)
  To: broonie; +Cc: lgirdwood, ckeepax, patches, linux-sound, linux-kernel

ADC polarity is bit 0 of WM8510_ADC, not bit 0 of WM8510_COMP, which
is the loopback enable. wm8974, which has the same register layout,
already uses WM8974_ADC for this control.

Fixes: 5d421516670e ("[ALSA] ASoC: Add WM8510 driver")
Assisted-by: Claude:claude-opus-5-5
Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
---
 sound/soc/codecs/wm8510.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/codecs/wm8510.c b/sound/soc/codecs/wm8510.c
index 137dcd3d7487..c611eaf0ef5d 100644
--- a/sound/soc/codecs/wm8510.c
+++ b/sound/soc/codecs/wm8510.c
@@ -134,7 +134,7 @@ SOC_SINGLE("Master Playback Volume", WM8510_DACVOL, 0, 127, 0),
 
 SOC_SINGLE("High Pass Filter Switch", WM8510_ADC, 8, 1, 0),
 SOC_SINGLE("High Pass Cut Off", WM8510_ADC, 4, 7, 0),
-SOC_SINGLE("ADC Inversion Switch", WM8510_COMP, 0, 1, 0),
+SOC_SINGLE("ADC Inversion Switch", WM8510_ADC, 0, 1, 0),
 
 SOC_SINGLE("Capture Volume", WM8510_ADCVOL,  0, 127, 0),
 
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* Re: [PATCH 01/13] ASoC: codecs: wm8990: Fix definition of right input PGA controls
  2026-10-14  6:32 ` [PATCH 01/13] ASoC: codecs: wm8990: Fix definition of right input PGA controls HyeongJun An
@ 2026-10-14  9:32   ` Charles Keepax
  0 siblings, 0 replies; 27+ messages in thread
From: Charles Keepax @ 2026-10-14  9:32 UTC (permalink / raw)
  To: HyeongJun An; +Cc: broonie, lgirdwood, patches, linux-sound, linux-kernel

On Wed, Oct 14, 2026 at 03:32:28PM +0900, HyeongJun An wrote:
> The right input PGA boost (R12MNBST, R34MNBST) and routing (R12MNB,
> R34MNB) bits are in Input Mixer4 (R42), not in Input Mixer3 (R41),
> where these controls write the left channel bits.
> 
> Fixes: f10485e79882 ("[ALSA] ASoC: Add WM8990 driver")
> Assisted-by: Claude:claude-opus-5-5
> Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
> ---

Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>

Worth noting we don't seem to still have the datasheet for this
part internally, but this looks correct as per the header file
for the part.

Thanks,
Charles

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 02/13] ASoC: codecs: wm8990: Fix definition of LOMIX AINLMUX Bypass Volume control
  2026-10-14  6:32 ` [PATCH 02/13] ASoC: codecs: wm8990: Fix definition of LOMIX AINLMUX Bypass Volume control HyeongJun An
@ 2026-10-14  9:32   ` Charles Keepax
  0 siblings, 0 replies; 27+ messages in thread
From: Charles Keepax @ 2026-10-14  9:32 UTC (permalink / raw)
  To: HyeongJun An; +Cc: broonie, lgirdwood, patches, linux-sound, linux-kernel

On Wed, Oct 14, 2026 at 03:32:29PM +0900, HyeongJun An wrote:
> The LOMIX AINLMUX bypass volume (LLBLOVOL) is at bits 2:0 of Output
> Mixer5, not at bits 5:3, which hold the AINRMUX bypass volume
> (LRBLOVOL).
> 
> Fixes: f10485e79882 ("[ALSA] ASoC: Add WM8990 driver")
> Assisted-by: Claude:claude-opus-5-5
> Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
> ---

Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>

Thanks,
Charles

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 03/13] ASoC: codecs: wm8991: Fix definition of right input PGA controls
  2026-10-14  6:32 ` [PATCH 03/13] ASoC: codecs: wm8991: Fix definition of right input PGA controls HyeongJun An
@ 2026-10-14  9:35   ` Charles Keepax
  0 siblings, 0 replies; 27+ messages in thread
From: Charles Keepax @ 2026-10-14  9:35 UTC (permalink / raw)
  To: HyeongJun An; +Cc: broonie, lgirdwood, patches, linux-sound, linux-kernel

On Wed, Oct 14, 2026 at 03:32:30PM +0900, HyeongJun An wrote:
> The right input PGA boost (R12MNBST, R34MNBST) and routing (R12MNB,
> R34MNB) bits are in Input Mixer4 (R42), not in Input Mixer3 (R41),
> where these controls write the left channel bits.
> 
> Fixes: 203db220718c ("ASoC: WM8991: Add initial WM8991 driver")
> Assisted-by: Claude:claude-opus-5-5
> Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
> ---

Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>

Again makes sense as per the headers.

Thanks,
Charles

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 04/13] ASoC: codecs: wm8991: Fix definition of LOMIX AINLMUX Bypass Volume control
  2026-10-14  6:32 ` [PATCH 04/13] ASoC: codecs: wm8991: Fix definition of LOMIX AINLMUX Bypass Volume control HyeongJun An
@ 2026-10-14  9:35   ` Charles Keepax
  0 siblings, 0 replies; 27+ messages in thread
From: Charles Keepax @ 2026-10-14  9:35 UTC (permalink / raw)
  To: HyeongJun An; +Cc: broonie, lgirdwood, patches, linux-sound, linux-kernel

On Wed, Oct 14, 2026 at 03:32:31PM +0900, HyeongJun An wrote:
> The LOMIX AINLMUX bypass volume (LLBLOVOL) is at bits 2:0 of Output
> Mixer5, not at bits 5:3, which hold the AINRMUX bypass volume
> (LRBLOVOL).
> 
> Fixes: 203db220718c ("ASoC: WM8991: Add initial WM8991 driver")
> Assisted-by: Claude:claude-opus-5-5
> Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
> ---

Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>

Thanks,
Charles

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 05/13] ASoC: codecs: wm8983: Fix definition of ADC 128x Oversampling control
  2026-10-14  6:32 ` [PATCH 05/13] ASoC: codecs: wm8983: Fix definition of ADC 128x Oversampling control HyeongJun An
@ 2026-10-14  9:39   ` Charles Keepax
  0 siblings, 0 replies; 27+ messages in thread
From: Charles Keepax @ 2026-10-14  9:39 UTC (permalink / raw)
  To: HyeongJun An; +Cc: broonie, lgirdwood, patches, linux-sound, linux-kernel

On Wed, Oct 14, 2026 at 03:32:32PM +0900, HyeongJun An wrote:
> ADC 128x oversampling (ADCOSR128) is at bit 3 of ADC Control, not at
> bit 8, which is the high pass filter enable (HPFEN).
> 
> Fixes: 6b3860b0a20a ("ASoC: WM8983: Initial driver")
> Assisted-by: Claude:claude-opus-5-5
> Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
> ---

Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>

Thanks,
Charles

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 06/13] ASoC: codecs: wm8985: Fix definition of ADC 128x Oversampling control
  2026-10-14  6:32 ` [PATCH 06/13] ASoC: codecs: wm8985: " HyeongJun An
@ 2026-10-14  9:41   ` Charles Keepax
  0 siblings, 0 replies; 27+ messages in thread
From: Charles Keepax @ 2026-10-14  9:41 UTC (permalink / raw)
  To: HyeongJun An; +Cc: broonie, lgirdwood, patches, linux-sound, linux-kernel

On Wed, Oct 14, 2026 at 03:32:33PM +0900, HyeongJun An wrote:
> ADC 128x oversampling (ADCOSR128) is at bit 3 of ADC Control, not at
> bit 8, which is the high pass filter enable (HPFEN).
> 
> Fixes: 6d6f8b832705 ("ASoC: WM8985: Initial driver")
> Assisted-by: Claude:claude-opus-5-5
> Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
> ---

Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>

Thanks,
Charles

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 07/13] ASoC: codecs: wm8994: Fix definition of WM8958 noise gate hold time controls
  2026-10-14  6:32 ` [PATCH 07/13] ASoC: codecs: wm8994: Fix definition of WM8958 noise gate hold time controls HyeongJun An
@ 2026-10-14  9:46   ` Charles Keepax
  0 siblings, 0 replies; 27+ messages in thread
From: Charles Keepax @ 2026-10-14  9:46 UTC (permalink / raw)
  To: HyeongJun An; +Cc: broonie, lgirdwood, patches, linux-sound, linux-kernel

On Wed, Oct 14, 2026 at 03:32:34PM +0900, HyeongJun An wrote:
> The noise gate hold time (NG_HLD) is at bits 6:5 of each WM8958 DAC
> noise gate register, not at bits 3:1, which hold the threshold
> (NG_THR).
> 
> Fixes: 1ddc07d0f13a ("ASoC: Add WM8958 noise gate support")
> Assisted-by: Claude:claude-opus-5-5
> Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
> ---

Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>

Thanks,
Charles

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 08/13] ASoC: codecs: wm8955: Fix definition of Treble Cutoff control
  2026-10-14  6:32 ` [PATCH 08/13] ASoC: codecs: wm8955: Fix definition of Treble Cutoff control HyeongJun An
@ 2026-10-14  9:51   ` Charles Keepax
  0 siblings, 0 replies; 27+ messages in thread
From: Charles Keepax @ 2026-10-14  9:51 UTC (permalink / raw)
  To: HyeongJun An; +Cc: broonie, lgirdwood, patches, linux-sound, linux-kernel

On Wed, Oct 14, 2026 at 03:32:35PM +0900, HyeongJun An wrote:
> Treble cutoff (TC) is at bit 6 of Treble Control, not at bit 2, which
> is part of the treble volume (TRBL[3:0]).
> 
> Fixes: 54db41c116c3 ("ASoC: wm8955: Use SOC_ENUM_SINGLE_DECL()")
> Assisted-by: Claude:claude-opus-5-5
> Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
> ---

Also struggling to find the datasheet for this one, but looks
probably good from the headers, certainly the current value looks
wrong :-)

Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>

Thanks,
Charles

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 09/13] ASoC: codecs: wm_hubs: Fix definition of MIXINR to MIXOUTR volume control
  2026-10-14  6:32 ` [PATCH 09/13] ASoC: codecs: wm_hubs: Fix definition of MIXINR to MIXOUTR volume control HyeongJun An
@ 2026-10-14  9:56   ` Charles Keepax
  0 siblings, 0 replies; 27+ messages in thread
From: Charles Keepax @ 2026-10-14  9:56 UTC (permalink / raw)
  To: HyeongJun An; +Cc: broonie, lgirdwood, patches, linux-sound, linux-kernel

On Wed, Oct 14, 2026 at 03:32:36PM +0900, HyeongJun An wrote:
> The Right Output Mixer Right Input Volume (MIXINR_MIXOUTR_VOL) is at
> bits 2:0 of Output Mixer6, not at bits 8:6, which hold the IN2LN volume
> (IN2LN_MIXOUTR_VOL).
> 
> Fixes: 942c435ba79f ("ASoC: Add WM8993 CODEC driver")
> Assisted-by: Claude:claude-opus-5-5
> Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
> ---

Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>

Thanks,
Charles

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 10/13] ASoC: codecs: wm8737: Fix definition of zero cross switches
  2026-10-14  6:32 ` [PATCH 10/13] ASoC: codecs: wm8737: Fix definition of zero cross switches HyeongJun An
@ 2026-10-14  9:58   ` Charles Keepax
  0 siblings, 0 replies; 27+ messages in thread
From: Charles Keepax @ 2026-10-14  9:58 UTC (permalink / raw)
  To: HyeongJun An; +Cc: broonie, lgirdwood, patches, linux-sound, linux-kernel

On Wed, Oct 14, 2026 at 03:32:37PM +0900, HyeongJun An wrote:
> The mic (xMZC) and PGA (xPZC) zero cross bits are bits 3 and 2 of each
> channel's Audio Path register. SOC_DOUBLE takes one register and two
> shifts, so both controls only write the left register. Use
> SOC_DOUBLE_R, as the Mic Boost Switch next to them does.
> 
> Fixes: 2a9ae13a2641 ("ASoC: Add initial WM8737 driver")
> Assisted-by: Claude:claude-opus-5-5
> Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
> ---

Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>

Thanks,
Charles

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 11/13] ASoC: codecs: wm5100: Fix definition of EQ3 Band 1 Volume control
  2026-10-14  6:32 ` [PATCH 11/13] ASoC: codecs: wm5100: Fix definition of EQ3 Band 1 Volume control HyeongJun An
@ 2026-10-14  9:59   ` Charles Keepax
  0 siblings, 0 replies; 27+ messages in thread
From: Charles Keepax @ 2026-10-14  9:59 UTC (permalink / raw)
  To: HyeongJun An; +Cc: broonie, lgirdwood, patches, linux-sound, linux-kernel

On Wed, Oct 14, 2026 at 03:32:38PM +0900, HyeongJun An wrote:
> The EQ3 band 1 gain is in WM5100_EQ3_1, not in WM5100_EQ1_1, which
> holds the EQ1 band 1 gain.
> 
> Fixes: 6d4baf084f4d ("ASoC: Add WM5100 driver")
> Assisted-by: Claude:claude-opus-5-5
> Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
> ---

Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>

Thanks,
Charles

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 12/13] ASoC: codecs: wm8750: Fix definition of ALC Capture NG Type control
  2026-10-14  6:32 ` [PATCH 12/13] ASoC: codecs: wm8750: Fix definition of ALC Capture NG Type control HyeongJun An
@ 2026-10-14 10:01   ` Charles Keepax
  0 siblings, 0 replies; 27+ messages in thread
From: Charles Keepax @ 2026-10-14 10:01 UTC (permalink / raw)
  To: HyeongJun An; +Cc: broonie, lgirdwood, patches, linux-sound, linux-kernel

On Wed, Oct 14, 2026 at 03:32:39PM +0900, HyeongJun An wrote:
> The noise gate type is wm8750_enum[7], bit 1 of WM8750_NGATE, not
> wm8750_enum[4], which is the 3D upper cut-off.
> 
> Fixes: abadfc928a27 ("[ALSA] ASoC codecs: WM8750 support")
> Assisted-by: Claude:claude-opus-5-5
> Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
> ---

Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>

Thanks,
Charles

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH 13/13] ASoC: codecs: wm8510: Fix definition of ADC Inversion Switch control
  2026-10-14  6:32 ` [PATCH 13/13] ASoC: codecs: wm8510: Fix definition of ADC Inversion Switch control HyeongJun An
@ 2026-10-14 10:04   ` Charles Keepax
  0 siblings, 0 replies; 27+ messages in thread
From: Charles Keepax @ 2026-10-14 10:04 UTC (permalink / raw)
  To: HyeongJun An; +Cc: broonie, lgirdwood, patches, linux-sound, linux-kernel

On Wed, Oct 14, 2026 at 03:32:40PM +0900, HyeongJun An wrote:
> ADC polarity is bit 0 of WM8510_ADC, not bit 0 of WM8510_COMP, which
> is the loopback enable. wm8974, which has the same register layout,
> already uses WM8974_ADC for this control.
> 
> Fixes: 5d421516670e ("[ALSA] ASoC: Add WM8510 driver")
> Assisted-by: Claude:claude-opus-5-5
> Signed-off-by: HyeongJun An <sammiee5311@gmail.com>
> ---

Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>

Thanks,
Charles

^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2026-10-14 10:04 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-14  6:32 [PATCH 00/13] ASoC: codecs: Fix Wolfson control definitions that write another control's bits HyeongJun An
2026-10-14  6:32 ` [PATCH 01/13] ASoC: codecs: wm8990: Fix definition of right input PGA controls HyeongJun An
2026-10-14  9:32   ` Charles Keepax
2026-10-14  6:32 ` [PATCH 02/13] ASoC: codecs: wm8990: Fix definition of LOMIX AINLMUX Bypass Volume control HyeongJun An
2026-10-14  9:32   ` Charles Keepax
2026-10-14  6:32 ` [PATCH 03/13] ASoC: codecs: wm8991: Fix definition of right input PGA controls HyeongJun An
2026-10-14  9:35   ` Charles Keepax
2026-10-14  6:32 ` [PATCH 04/13] ASoC: codecs: wm8991: Fix definition of LOMIX AINLMUX Bypass Volume control HyeongJun An
2026-10-14  9:35   ` Charles Keepax
2026-10-14  6:32 ` [PATCH 05/13] ASoC: codecs: wm8983: Fix definition of ADC 128x Oversampling control HyeongJun An
2026-10-14  9:39   ` Charles Keepax
2026-10-14  6:32 ` [PATCH 06/13] ASoC: codecs: wm8985: " HyeongJun An
2026-10-14  9:41   ` Charles Keepax
2026-10-14  6:32 ` [PATCH 07/13] ASoC: codecs: wm8994: Fix definition of WM8958 noise gate hold time controls HyeongJun An
2026-10-14  9:46   ` Charles Keepax
2026-10-14  6:32 ` [PATCH 08/13] ASoC: codecs: wm8955: Fix definition of Treble Cutoff control HyeongJun An
2026-10-14  9:51   ` Charles Keepax
2026-10-14  6:32 ` [PATCH 09/13] ASoC: codecs: wm_hubs: Fix definition of MIXINR to MIXOUTR volume control HyeongJun An
2026-10-14  9:56   ` Charles Keepax
2026-10-14  6:32 ` [PATCH 10/13] ASoC: codecs: wm8737: Fix definition of zero cross switches HyeongJun An
2026-10-14  9:58   ` Charles Keepax
2026-10-14  6:32 ` [PATCH 11/13] ASoC: codecs: wm5100: Fix definition of EQ3 Band 1 Volume control HyeongJun An
2026-10-14  9:59   ` Charles Keepax
2026-10-14  6:32 ` [PATCH 12/13] ASoC: codecs: wm8750: Fix definition of ALC Capture NG Type control HyeongJun An
2026-10-14 10:01   ` Charles Keepax
2026-10-14  6:32 ` [PATCH 13/13] ASoC: codecs: wm8510: Fix definition of ADC Inversion Switch control HyeongJun An
2026-10-14 10:04   ` Charles Keepax

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox