summaryrefslogtreecommitdiff
path: root/plat/rockchip/common/plat_pm.c
diff options
context:
space:
mode:
Diffstat (limited to 'plat/rockchip/common/plat_pm.c')
-rw-r--r--plat/rockchip/common/plat_pm.c14
1 files changed, 11 insertions, 3 deletions
diff --git a/plat/rockchip/common/plat_pm.c b/plat/rockchip/common/plat_pm.c
index fcd47a8c..d20a683b 100644
--- a/plat/rockchip/common/plat_pm.c
+++ b/plat/rockchip/common/plat_pm.c
@@ -52,7 +52,6 @@ static struct rockchip_pm_ops_cb *rockchip_ops;
static void plat_rockchip_sys_pwr_domain_resume(void)
{
- plat_rockchip_gic_init();
if (rockchip_ops && rockchip_ops->sys_pwr_dm_resume)
rockchip_ops->sys_pwr_dm_resume();
}
@@ -62,8 +61,6 @@ static void plat_rockchip_cores_pwr_domain_resume(void)
if (rockchip_ops && rockchip_ops->cores_pwr_dm_resume)
rockchip_ops->cores_pwr_dm_resume();
- /* Enable the gic cpu interface */
- plat_rockchip_gic_pcpu_init();
/* Program the gic per-cpu distributor or re-distributor interface */
plat_rockchip_gic_cpuif_enable();
}
@@ -256,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.
@@ -268,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
};