summaryrefslogtreecommitdiff
path: root/drivers/soundwire/qcom.c
diff options
context:
space:
mode:
authorKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>2023-07-28 13:28:47 +0200
committerVinod Koul <vkoul@kernel.org>2023-09-21 11:32:05 +0200
commit5d78c7d684192e42241593a936ee60003d8ac064 (patch)
tree554336aa8a5e445ef16e63ef0f9af811066a1b13 /drivers/soundwire/qcom.c
parent0bb80ecc33a8fb5a682236443c1e740d5c917d1d (diff)
downloadlwn-5d78c7d684192e42241593a936ee60003d8ac064.tar.gz
lwn-5d78c7d684192e42241593a936ee60003d8ac064.zip
soundwire: qcom: use newer link status tregister on v2.0.0
Soundwire v2.0.0 comes with a new register LINK_STATUS for the FRAME_GEN_ENABLED field (bit indicating that an active frame is running). The old register COMP_STATUS is still there and still works, although the new one is preferred in downstream sources. Probably because it allows to choose Soundwire instance per CPU. Most of the code allowing to use new register for Soundwire v2.0.0 was already there as part of commit 312355a6a9f6 ("soundwire: qcom: add support for v2.0.0 controller"), so switch to it in swrm_wait_for_frame_gen_enabled() function. This should not have functional impact, because the old register still behaves correctly. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20230728112848.67092-1-krzysztof.kozlowski@linaro.org Signed-off-by: Vinod Koul <vkoul@kernel.org>
Diffstat (limited to 'drivers/soundwire/qcom.c')
-rw-r--r--drivers/soundwire/qcom.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/soundwire/qcom.c b/drivers/soundwire/qcom.c
index 55be9f4b8d59..3f40e348f6fb 100644
--- a/drivers/soundwire/qcom.c
+++ b/drivers/soundwire/qcom.c
@@ -801,8 +801,8 @@ static bool swrm_wait_for_frame_gen_enabled(struct qcom_swrm_ctrl *ctrl)
int comp_sts;
do {
- ctrl->reg_read(ctrl, SWRM_COMP_STATUS, &comp_sts);
-
+ ctrl->reg_read(ctrl, ctrl->reg_layout[SWRM_REG_FRAME_GEN_ENABLED],
+ &comp_sts);
if (comp_sts & SWRM_FRM_GEN_ENABLED)
return true;