hex <<= 4;
}
}
+
+#ifdef CONFIG_ARM
void rk_sram_suspend(void)
{
RKPM_DDR_FUN(regs_pread);
}
int cpu_suspend(unsigned long arg, int (*fn)(unsigned long));
+#endif /* CONFIG_ARM */
+
static int rkpm_enter(suspend_state_t state)
{
//static u32 test_count=0;
rkpm_ddr_printch('5');
+#ifdef CONFIG_ARM
if(rkpm_chk_jdg_ctrbits(RKPM_CTRBITS_SOC_DLPMD))
{
if(cpu_suspend(0,rk_lpmode_enter)==0)
dsb();
wfi();
}
+#else
+ flush_cache_all();
+ cpu_suspend(1);
+#endif
rkpm_ddr_printch('5');
return;
}
+#ifndef CONFIG_ARM
+static int __init rockchip_init_suspend(void)
+{
+ suspend_set_ops(&rockchip_suspend_ops);
+ return 0;
+}
+late_initcall_sync(rockchip_init_suspend);
+#endif /* CONFIG_ARM */
+
static enum rockchip_pm_policy pm_policy;
static BLOCKING_NOTIFIER_HEAD(policy_notifier_list);