| /* | |
| * linux/include/asm-arm/arch-ep93xx/system.h | |
| */ | |
| #include <asm/hardware.h> | |
| static inline void arch_idle(void) | |
| { | |
| cpu_do_idle(); | |
| } | |
| static inline void arch_reset(char mode) | |
| { | |
| u32 devicecfg; | |
| local_irq_disable(); | |
| devicecfg = __raw_readl(EP93XX_SYSCON_DEVICE_CONFIG); | |
| __raw_writel(0xaa, EP93XX_SYSCON_SWLOCK); | |
| __raw_writel(devicecfg | 0x80000000, EP93XX_SYSCON_DEVICE_CONFIG); | |
| __raw_writel(0xaa, EP93XX_SYSCON_SWLOCK); | |
| __raw_writel(devicecfg & ~0x80000000, EP93XX_SYSCON_DEVICE_CONFIG); | |
| while (1) | |
| ; | |
| } |