diff options
author | Caesar Wang <wxt@rock-chips.com> | 2016-05-25 19:05:19 +0800 |
---|---|---|
committer | Caesar Wang <wxt@rock-chips.com> | 2016-05-27 09:39:56 +0800 |
commit | 86c253e450a6506a95d4fa846945b769026cf72c (patch) | |
tree | 6547dcd0bd2e2850e21dacc51f738f26155e145c /plat/rockchip/common/plat_pm.c | |
parent | 8867299f0518f9cdd658d3eaf6e7e744618ad217 (diff) |
rockchip: support system off function for rk3399
if define power off gpio, BL31 will do system power off through
gpio control.
Diffstat (limited to 'plat/rockchip/common/plat_pm.c')
-rw-r--r-- | plat/rockchip/common/plat_pm.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/plat/rockchip/common/plat_pm.c b/plat/rockchip/common/plat_pm.c index 43558b65..d20a683b 100644 --- a/plat/rockchip/common/plat_pm.c +++ b/plat/rockchip/common/plat_pm.c @@ -253,6 +253,16 @@ static void __dead2 rockchip_system_reset(void) } /******************************************************************************* + * RockChip handlers to power off the system + ******************************************************************************/ +static void __dead2 rockchip_system_poweroff(void) +{ + assert(rockchip_ops && rockchip_ops->system_off); + + rockchip_ops->system_off(); +} + +/******************************************************************************* * Export the platform handlers via plat_rockchip_psci_pm_ops. The rockchip * standard * platform layer will take care of registering the handlers with PSCI. @@ -265,6 +275,7 @@ const plat_psci_ops_t plat_rockchip_psci_pm_ops = { .pwr_domain_on_finish = rockchip_pwr_domain_on_finish, .pwr_domain_suspend_finish = rockchip_pwr_domain_suspend_finish, .system_reset = rockchip_system_reset, + .system_off = rockchip_system_poweroff, .validate_power_state = rockchip_validate_power_state, .get_sys_suspend_power_state = rockchip_get_sys_suspend_power_state }; |