ARM926 Software reset problems
Russell King - ARM Linux
linux at arm.linux.org.uk
Fri Nov 13 07:20:45 EST 2009
On Fri, Nov 13, 2009 at 12:32:16PM +0100, Ricardo Martínez wrote:
> I'm using
> cpu_arm926_reset(ulong address) function which:
> - flushes I/D caches
> - jumps to "address", whose value in my case is NOR flash base
> address where U-Boot stays (after remapping).
You should not be using this directly. Software rebooting has a specific
sequence, and the above is the very last step.
> But it sometimes work, but most times hangs. Can this be caused by MMU
> not being switched off?
cpu_arm926_reset() turns the MMU and caches off.
> Is there any other prefered method to soft reboot ARM926 from Linux? I've
> taken a look at some PXA, OMAP & AT91 code about soft rebooting. It seems
> they use Watchdog timer to reset, but my CPU does not have a watchdog.
Don't call cpu_arm926_reset() directly. Use kernel_restart() instead,
or even better the reboot syscall from userspace.
More information about the linux-arm-kernel
mailing list