This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

SOFT Reset hangs sometimes in ARM926ej

Hi,



I am working on PC205 having ARM926ej as a processor in it along with DSPs included in it.
Now, I am facing an issue regarding SOFTWARE REBOOT/RESET of the ARM processor as i don't have any WATCHDOG circuit on my board. I got that "When we make PC(program counter) points to ARM's Interrupt vector address base address which lies at 0xFFFF0000 or NOR flash base address (0x20000000 in my case)-- ARM gets rebooted". I have tried this using Assembly code (mov pc, [0x20000000] ) and equivalent kernel API (cpu_reset(0x20000000)) by making sure that interrupts are disabled, MMU is disabled and 1 to 1 memory mapping is been done before releasing.

With the mentioned scheme (mov pc, [0x20000000]) -- Reboot works fine sometimes but get hung few times at three stages as below cases:

1) At the point where i am using "mov pc, [0x20000000] / cpu_reset(0x20000000)" itself.
2) System reboots and boot loader starts post reboot and hangs when starting kernel.. print arrives
3) System reboots and boot loader starts post reboot and hangs when kernel is being uncompressed...

So, Please help me out in this context as i have no other choice but make this soft reset works consistently at the moment. Any hint of help is greatly appreciated and very handy for me indeed.

I have also gone through a query where they suggested "the CPU PLL register to fire a hardware reset." I got relative register named as SYS_RESETCTL-Reset Control Register but i am unable to use this register in ARM926ej processor.

Thanks in advance,
Krishna K
krishna57k@gmail.com