- /**
- * suspend_enter - Make the system enter the given sleep state.
- * @state: System sleep state to enter.
-@@ -211,6 +220,7 @@ static int suspend_enter(suspend_state_t state, bool *wakeup)
- }
-
- ftrace_stop();
-+ if(brcm_s3_cb) brcm_s3_cb();
- error = disable_nonboot_cpus();
- if (error || suspend_test(TEST_CPUS))
- goto Enable_cpus;
+ void brcm_machine_halt(void)
+ {
+ #ifdef CONFIG_BRCM_IRW_HALT
+@@ -939,6 +948,7 @@ void brcm_machine_halt(void)
+ BDEV_WR_F_RB(SUN_TOP_CTRL_GENERAL_CTRL_1, irw_top_sw_pwroff, 0);
+ BDEV_WR_F_RB(SUN_TOP_CTRL_GENERAL_CTRL_1, irw_top_sw_pwroff, 1);
+ #endif
++ if(brcm_s3_cb) brcm_s3_cb();
+ #ifdef CONFIG_BRCM_HAS_AON
+ /* may be S3 cold boot */
+ brcm_pm_s3_cold_boot();
+