Merge "soc: qcom: pmic_glink: Use SERVREG_SERVICE_STATE_DOWN for handling PDR"

This commit is contained in:
qctecmdr 2021-05-11 07:02:58 -07:00 committed by Gerrit - the friendly Code Review server
commit ad3b681d1a

View File

@ -165,17 +165,11 @@ static void pmic_glink_pdr_notifier_cb(int state, char *service_name,
pr_debug("PDR state: %x\n", state); pr_debug("PDR state: %x\n", state);
switch (state) { switch (state) {
case SERVREG_SERVICE_STATE_EARLY_DOWN: case SERVREG_SERVICE_STATE_DOWN:
pr_debug("PD state down for %s\n", pgdev->pdr_service_name); pr_debug("PD state down for %s\n", pgdev->pdr_service_name);
pmic_glink_notify_clients(pgdev, PMIC_GLINK_STATE_DOWN); pmic_glink_notify_clients(pgdev, PMIC_GLINK_STATE_DOWN);
atomic_set(&pgdev->pdr_state, state); atomic_set(&pgdev->pdr_state, state);
break; break;
case SERVREG_SERVICE_STATE_DOWN:
/*
* PMIC Glink clients have been notified already. So do
* nothing here.
*/
break;
case SERVREG_SERVICE_STATE_UP: case SERVREG_SERVICE_STATE_UP:
/* /*
* Do not notify PMIC Glink clients here but rather from * Do not notify PMIC Glink clients here but rather from
@ -537,8 +531,7 @@ static void pmic_glink_init_work(struct work_struct *work)
struct device *dev = pgdev->dev; struct device *dev = pgdev->dev;
int rc; int rc;
if (atomic_read(&pgdev->pdr_state) == if (atomic_read(&pgdev->pdr_state) == SERVREG_SERVICE_STATE_DOWN ||
SERVREG_SERVICE_STATE_EARLY_DOWN ||
atomic_read(&pgdev->prev_state) == QCOM_SSR_BEFORE_SHUTDOWN) { atomic_read(&pgdev->prev_state) == QCOM_SSR_BEFORE_SHUTDOWN) {
pmic_glink_notify_clients(pgdev, PMIC_GLINK_STATE_UP); pmic_glink_notify_clients(pgdev, PMIC_GLINK_STATE_UP);
atomic_set(&pgdev->pdr_state, SERVREG_SERVICE_STATE_UP); atomic_set(&pgdev->pdr_state, SERVREG_SERVICE_STATE_UP);