Signed-off-by: Paul Mundt <lethal@linux-sh.org>
#include <linux/init.h>
#include <linux/module.h>
#include <linux/proc_fs.h>
+#include <linux/io.h>
#include <asm/uaccess.h>
#include <asm/pgtable.h>
void machine_power_off(void)
{
- extern void enter_deep_standby(void);
+#if 0
+ /* Disable watchdog timer */
+ ctrl_outl(0xa5000000, WTCSR);
+ /* Configure deep standby on sleep */
+ ctrl_outl(0x03, STBCR);
+#endif
+
+ __asm__ __volatile__ (
+ "sleep\n\t"
+ "synci\n\t"
+ "nop;nop;nop;nop\n\t"
+ );
- enter_deep_standby();
+ panic("Unexpected wakeup!\n");
}
void (*pm_power_off)(void) = machine_power_off;