Dear all,
I have problem on implementing software reset on Davinci.
I made modification to my boot loader to implement reset..
basically using watch dog timer..
So, I use this code:
do_reset()
{
disable_interrupts ();
// watchdog timer enabling sequence
wdt_timer->tgcr = 0xB; // timmode = 2h, tim12rs = 1h, tim34rs
= 1h
wdt_timer->wdtcr = 0xA5C64000; // WDEN = 1, wdkey = A5C6h
wdt_timer->wdtcr = 0xDA7E4000; // WDEN = 1, wdkey = DA7Eh
while (1); // loop until reboot
/* will not reach this line */
return (0);
}
It seemed ok at first, the board restart, but then the davinci will stuck on
waiting for power transition to finish (reading on PSC_PTSTAT register)..
More specifically, it's on the following line:
/* start the state transition for modules in ALWAYSON power domain
*/
*(volatile unsigned int*) PTCMD = 1;
/* Wait for PTSTAT.GOSTAT0 to clear to 0x0 */
while(! (((*(volatile unsigned int*) PTSTAT ) & 0x00000001) == 0));
// never stop..
Anybody has an idea? Is using watchdog timer to reset davinci will be a good
idea?
Many thanks,
Ari
_________________________________________________________________
Find singles online in your area with MSN Dating and Match.com!
http://match.sg.msn.com/match/mt.cfm?pg=channel&tcid=281203
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source