]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
ASoC: qcom: x1e80100: limit speaker volumes
authorTobias Heider <tobias.heider@canonical.com>
Wed, 22 Apr 2026 13:30:59 +0000 (15:30 +0200)
committerMark Brown <broonie@kernel.org>
Wed, 22 Apr 2026 14:44:05 +0000 (15:44 +0100)
commit0a5ee0e520eff98ee2b4568194562870877b050f
tree78a093e73ddb9af10620dc0409becfe025bee092
parentcec9d64c09c505c818e9a8093a012234051c2d14
ASoC: qcom: x1e80100: limit speaker volumes

Limit the digital gain and PA volumes to a combined -3 dB in the machine
driver to reduce the risk of speaker damage until we have active speaker
protection in place (or higher safe levels have been established).

Based on commit c481016bb4f8 ("ASoC: qcom: sc8280xp: limit speaker
volumes") which addressed the same issue on the sc8280x SoC with some
minor changes as explained below.

The Digital Volume behaves almost identical to sc8280x since both use
the same lpass-wsa-macro, but x1e80100 has two sets of controls prefixed
with WSA and WSA2.
For PA x1e80100 machines use wsa884x amplifiers which expose a linear
scale from -9 dB to 9 dB with a 1.5 dB step size giving us
0 dB = -9 dB + 6 * 1.5 dB.

On x1e80100 there are two different speaker topologies we need to handle:
  2-Speakers: SpkrLeft, Spkr Right
  4-Speakers: WooferLeft, WooferRight, TweeterLeft, TweeterRight

Signed-off-by: Tobias Heider <tobias.heider@canonical.com>
Tested-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
Link: https://patch.msgid.link/20260422-x1e80100-audio-limit-v2-1-333258b97697@canonical.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/qcom/x1e80100.c