This patchset adds support to reading codec version and also adds support for v2.5 codec version in rx macro. LPASS 2.5 and up versions have changes in some of the rx blocks which are required to get headset functional correctly. Tested this on SM8450, X13s and x1e80100 crd. This changes also fixes issue with sm8450, sm8550, sm8660 and x1e80100. @Neil Armstrong can you pl test it on sm8650 @Krzysztof Kozlowski can you pl test it on sm8550 Thanks, Srini Changes since v2: - added some locking around version variable. - split 2.5 changes to a new patch. Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx> --- Srinivas Kandagatla (3): ASoC: codecs: lpass-macro: add helpers to get codec version ASoC: codec: lpass-rx-macro: prepare driver to accomdate new codec versions ASoC: codec: lpass-rx-macro: add support for 2.5 codec version sound/soc/codecs/lpass-macro-common.c | 23 ++ sound/soc/codecs/lpass-macro-common.h | 35 +++ sound/soc/codecs/lpass-rx-macro.c | 555 ++++++++++++++++++++++++---------- sound/soc/codecs/lpass-va-macro.c | 29 ++ 4 files changed, 490 insertions(+), 152 deletions(-) --- base-commit: 1613e604df0cd359cf2a7fbd9be7a0bcfacfabd0 change-id: 20240612-lpass-codec-v25-4e960abd661f Best regards, -- Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx>