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: Claudiu Beznea <claudiu.beznea@microchip.com> Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
03ffbf9c08
commit
b5ebba46e6
|
@ -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);
|
||||
|
||||
|
|
Loading…
Reference in New Issue