diff options
author | Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> | 2023-07-28 13:28:47 +0200 |
---|---|---|
committer | Vinod Koul <vkoul@kernel.org> | 2023-09-21 11:32:05 +0200 |
commit | 5d78c7d684192e42241593a936ee60003d8ac064 (patch) | |
tree | 554336aa8a5e445ef16e63ef0f9af811066a1b13 | |
parent | 0bb80ecc33a8fb5a682236443c1e740d5c917d1d (diff) | |
download | lwn-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>
-rw-r--r-- | drivers/soundwire/qcom.c | 4 |
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; |