diff options
author | Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> | 2022-11-18 09:52:43 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2022-11-23 21:45:33 +0300 |
commit | 319a538d618fea33434387c4502361bb8f047e11 (patch) | |
tree | 7ab1c5bc6b5cb716cdeb39d8490f434160ad61b6 | |
parent | 1d01bcb4659cfca87d92075b87cdadb0a9897d14 (diff) | |
download | linux-319a538d618fea33434387c4502361bb8f047e11.tar.xz |
slimbus: qcom-ngd-ctrl: reinit the reconf completion flag
Reinitialize the reconf completion flag when ngd registers are
not retainied or when enumeration is lost for ngd.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20221118065246.6835-10-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/slimbus/qcom-ngd-ctrl.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/slimbus/qcom-ngd-ctrl.c b/drivers/slimbus/qcom-ngd-ctrl.c index a6f3b6860d8f..77aa6d26476c 100644 --- a/drivers/slimbus/qcom-ngd-ctrl.c +++ b/drivers/slimbus/qcom-ngd-ctrl.c @@ -1205,6 +1205,12 @@ static int qcom_slim_ngd_power_up(struct qcom_slim_ngd_ctrl *ctrl) return 0; } + /* + * Reinitialize only when registers are not retained or when enumeration + * is lost for ngd. + */ + reinit_completion(&ctrl->reconf); + writel_relaxed(DEF_NGD_INT_MASK, ngd->base + NGD_INT_EN); rx_msgq = readl_relaxed(ngd->base + NGD_RX_MSGQ_CFG); |