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

Unverified Commit b5ebba46 authored by Claudiu Beznea's avatar Claudiu Beznea Committed by Mark Brown
Browse files

regulator: act8945a-regulator: add shutdown function

Implement shutdown method to make sure the PMIC will not enter the suspend
state when the system is shutdown.

This work is based on work done by Borris Brezillon on [1].

[1] https://www.spinics.net/lists/kernel/msg2942960.html



Signed-off-by: default avatarClaudiu Beznea <claudiu.beznea@microchip.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 03ffbf9c
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -339,12 +339,23 @@ static int act8945a_suspend(struct device *pdev)

SIMPLE_DEV_PM_OPS(act8945a_pm, act8945a_suspend, NULL);

static void act8945a_pmic_shutdown(struct platform_device *pdev)
{
	struct act8945a_pmic *act8945a = platform_get_drvdata(pdev);

	/*
	 * Ask the PMIC to shutdown everything on the next PWRHLD transition.
	 */
	regmap_write(act8945a->regmap, ACT8945A_SYS_CTRL, 0x0);
}

static struct platform_driver act8945a_pmic_driver = {
	.driver = {
		.name = "act8945a-regulator",
		.pm = &act8945a_pm,
	},
	.probe = act8945a_pmic_probe,
	.shutdown = act8945a_pmic_shutdown,
};
module_platform_driver(act8945a_pmic_driver);