Commit d6cbce2c authored by Dmitry Baryshkov's avatar Dmitry Baryshkov Committed by Bjorn Andersson

soc: qcom: pmic_glink: notify clients about the current state

In case the client is registered after the pmic-glink recived a response
from the Protection Domain mapper, it is going to miss the notification
about the state. Notify clients about the current state upon
registration.

Fixes: 58ef4ece ("soc: qcom: pmic_glink: Introduce base PMIC GLINK driver")
Reviewed-by: default avatarAndrew Halaney <ahalaney@redhat.com>
Signed-off-by: default avatarDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: default avatarMukesh Ojha <quic_mojha@quicinc.com>
Tested-by: Xilin Wu <wuxilin123@gmail.com> # on QCS8550 AYN Odin 2
Link: https://lore.kernel.org/r/20240403-pmic-glink-fix-clients-v2-2-aed4e02baacc@linaro.orgSigned-off-by: default avatarBjorn Andersson <andersson@kernel.org>
parent 635ce0db
...@@ -83,9 +83,14 @@ struct pmic_glink_client *devm_pmic_glink_register_client(struct device *dev, ...@@ -83,9 +83,14 @@ struct pmic_glink_client *devm_pmic_glink_register_client(struct device *dev,
client->pdr_notify = pdr; client->pdr_notify = pdr;
client->priv = priv; client->priv = priv;
mutex_lock(&pg->state_lock);
mutex_lock(&pg->client_lock); mutex_lock(&pg->client_lock);
list_add(&client->node, &pg->clients); list_add(&client->node, &pg->clients);
client->pdr_notify(client->priv, pg->client_state);
mutex_unlock(&pg->client_lock); mutex_unlock(&pg->client_lock);
mutex_unlock(&pg->state_lock);
devres_add(dev, client); devres_add(dev, client);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment