* es8326, es8375: controls that write each other's bits
@ 2026-10-19 2:44 HyeongJun An
2026-10-19 3:09 ` 回复: " zhangyi
0 siblings, 1 reply; 3+ messages in thread
From: HyeongJun An @ 2026-10-19 2:44 UTC (permalink / raw)
To: zhangyi; +Cc: zhuning0077, Mark Brown, linux-sound
Hi Zhang Yi,
I am adding a check to ASoC that warns when two controls write
overlapping bits of one register. It warns on two Everest drivers, and
I cannot tell from the driver which field is right.
es8326: ALC Capture Recovery Level and ALC Capture Target Level are both
on ES8326_ALC_LEVEL (0x33), at bits 2:0 and 3:0. The DRC Recovery Level
sits on its own ES8326_DRC_RECOVERY register. Should the ALC one be on
ES8326_ALC_RECOVERY (0x32) the same way?
es8375: DMIC Volume has shift 2 and max 4, so it writes bits 4:2 of
ES8375_ADC1 (0x17). DMIC Polarity is bit 4 of the same register. Is the
DMIC gain field only bits 3:2?
If you can confirm, I will send the fixes.
Best Regards,
HyeongJun
^ permalink raw reply [flat|nested] 3+ messages in thread
* 回复: es8326, es8375: controls that write each other's bits
2026-10-19 2:44 es8326, es8375: controls that write each other's bits HyeongJun An
@ 2026-10-19 3:09 ` zhangyi
2026-10-19 5:10 ` HyeongJun An
0 siblings, 1 reply; 3+ messages in thread
From: zhangyi @ 2026-10-19 3:09 UTC (permalink / raw)
To: sammiee5311; +Cc: zhuning0077, 'Mark Brown', linux-sound
Hi
Thank you very much for pointing that out.
es8326:The ALC Capture Recovery Level should indeed be applied to bits [2:0] of reg0x32, not reg0x33.
es8375:The ES8375_DMIC_GAIN_MAX should be 0x03
Thank you again for your email. If possible, please let me fix these two issues this week.
Thanks and Best Regards
--------------------------------------------------------------------------------------
Everest Semiconductor Co., Ltd
张逸 应用工程师 / Michael FAE
18179079039
zhangyi@everest-semi.com
------------------------------------------------------------------
上海市徐家汇中山西路2368号华鼎大厦30楼C
-----邮件原件-----
发件人: sammiee5311@gmail.com <sammiee5311@gmail.com>
发送时间: 2026年10月19日 10:45
收件人: zhangyi@everest-semi.com
抄送: zhuning0077@gmail.com; Mark Brown <broonie@kernel.org>; linux-sound@vger.kernel.org
主题: es8326, es8375: controls that write each other's bits
Hi Zhang Yi,
I am adding a check to ASoC that warns when two controls write overlapping bits of one register. It warns on two Everest drivers, and I cannot tell from the driver which field is right.
es8326: ALC Capture Recovery Level and ALC Capture Target Level are both on ES8326_ALC_LEVEL (0x33), at bits 2:0 and 3:0. The DRC Recovery Level sits on its own ES8326_DRC_RECOVERY register. Should the ALC one be on ES8326_ALC_RECOVERY (0x32) the same way?
es8375: DMIC Volume has shift 2 and max 4, so it writes bits 4:2 of
ES8375_ADC1 (0x17). DMIC Polarity is bit 4 of the same register. Is the DMIC gain field only bits 3:2?
If you can confirm, I will send the fixes.
Best Regards,
HyeongJun
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: es8326, es8375: controls that write each other's bits
2026-10-19 3:09 ` 回复: " zhangyi
@ 2026-10-19 5:10 ` HyeongJun An
0 siblings, 0 replies; 3+ messages in thread
From: HyeongJun An @ 2026-10-19 5:10 UTC (permalink / raw)
To: zhangyi; +Cc: zhuning0077, Mark Brown, linux-sound
Hello Zhang Yi,
Sure, please go ahead. Thanks for the quick answer.
Best regards,
HyeongJun
On Mon, Oct 19, 2026 at 12:09 PM <zhangyi@everest-semi.com> wrote:
>
> Hi
>
> Thank you very much for pointing that out.
> es8326:The ALC Capture Recovery Level should indeed be applied to bits [2:0] of reg0x32, not reg0x33.
>
> es8375:The ES8375_DMIC_GAIN_MAX should be 0x03
>
> Thank you again for your email. If possible, please let me fix these two issues this week.
>
> Thanks and Best Regards
> --------------------------------------------------------------------------------------
> Everest Semiconductor Co., Ltd
> 张逸 应用工程师 / Michael FAE
> 18179079039
> zhangyi@everest-semi.com
> ------------------------------------------------------------------
> 上海市徐家汇中山西路2368号华鼎大厦30楼C
>
> -----邮件原件-----
> 发件人: sammiee5311@gmail.com <sammiee5311@gmail.com>
> 发送时间: 2026年10月19日 10:45
> 收件人: zhangyi@everest-semi.com
> 抄送: zhuning0077@gmail.com; Mark Brown <broonie@kernel.org>; linux-sound@vger.kernel.org
> 主题: es8326, es8375: controls that write each other's bits
>
> Hi Zhang Yi,
>
> I am adding a check to ASoC that warns when two controls write overlapping bits of one register. It warns on two Everest drivers, and I cannot tell from the driver which field is right.
>
> es8326: ALC Capture Recovery Level and ALC Capture Target Level are both on ES8326_ALC_LEVEL (0x33), at bits 2:0 and 3:0. The DRC Recovery Level sits on its own ES8326_DRC_RECOVERY register. Should the ALC one be on ES8326_ALC_RECOVERY (0x32) the same way?
>
> es8375: DMIC Volume has shift 2 and max 4, so it writes bits 4:2 of
> ES8375_ADC1 (0x17). DMIC Polarity is bit 4 of the same register. Is the DMIC gain field only bits 3:2?
>
> If you can confirm, I will send the fixes.
>
> Best Regards,
> HyeongJun
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-10-19 5:11 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-19 2:44 es8326, es8375: controls that write each other's bits HyeongJun An
2026-10-19 3:09 ` 回复: " zhangyi
2026-10-19 5:10 ` HyeongJun An
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox