Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e25db41d authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "soc: pinctrl-lpi: Suspend sooner if resume fails"

parents f72b01ce 5f59d6c9
Loading
Loading
Loading
Loading
+9 −2
Original line number Original line Diff line number Diff line
@@ -23,6 +23,7 @@
#include "pinctrl-utils.h"
#include "pinctrl-utils.h"


#define LPI_AUTO_SUSPEND_DELAY           100 /* delay in msec */
#define LPI_AUTO_SUSPEND_DELAY           100 /* delay in msec */
#define LPI_AUTO_SUSPEND_DELAY_ERROR     1   /* delay in msec */


#define LPI_ADDRESS_SIZE                 0x20000
#define LPI_ADDRESS_SIZE                 0x20000
#define LPI_SLEW_ADDRESS_SIZE            0x1000
#define LPI_SLEW_ADDRESS_SIZE            0x1000
@@ -824,13 +825,19 @@ int lpi_pinctrl_runtime_resume(struct device *dev)


	mutex_lock(&state->core_hw_vote_lock);
	mutex_lock(&state->core_hw_vote_lock);
	ret = clk_prepare_enable(state->lpass_core_hw_vote);
	ret = clk_prepare_enable(state->lpass_core_hw_vote);
	if (ret < 0)
	if (ret < 0) {
		pm_runtime_set_autosuspend_delay(dev,
						 LPI_AUTO_SUSPEND_DELAY_ERROR);
		dev_err(dev, "%s:lpass core hw island enable failed\n",
		dev_err(dev, "%s:lpass core hw island enable failed\n",
			__func__);
			__func__);
	else
		goto exit;
	} else {
		state->core_hw_vote_status = true;
		state->core_hw_vote_status = true;
	}


	pm_runtime_set_autosuspend_delay(dev, LPI_AUTO_SUSPEND_DELAY);
	pm_runtime_set_autosuspend_delay(dev, LPI_AUTO_SUSPEND_DELAY);

exit:
	mutex_unlock(&state->core_hw_vote_lock);
	mutex_unlock(&state->core_hw_vote_lock);
	return 0;
	return 0;
}
}