1
0
Fork 0
forked from len0rd/rockbox

Revert my previous commit disabling the internal ROM clock during normal

operation.

The interal ROM clock seems to be needed to reboot the player, so disabling
it is too dangerous.  Hopefully this will prevent problems where crashes during
the abort handler resulted in a stock player that needed the battery to drain
in order to reboot.

Change-Id: I7d1e64743dde15b64d718ad3255dada3d570736f
This commit is contained in:
Michael Giacomelli 2012-07-22 19:21:54 -04:00
parent 08238178d3
commit b61b14f5e8

View file

@ -272,7 +272,9 @@ void system_init(void)
CGU_PERI &= ~0x7f; /* pclk 24 MHz */
#endif
CGU_PERI &= ~CGU_ROM_ENABLE; /*disable built in boot rom clock*/
/*this saves a tiny bit of power but seems to leave the processor in
a bad state if it manages to reboot without the clock reenabled*/
/*CGU_PERI &= ~CGU_ROM_ENABLE;*/ /*disable built in boot rom clock*/
/* bits 31:30 should be set to 0 in arm926-ejs */
asm volatile(
@ -320,7 +322,7 @@ void system_init(void)
dma_init();
ascodec_init();
/* Initialize power management settings */
#ifdef HAVE_AS3543
/* PLL: disable audio PLL, we use MCLK already */
@ -364,8 +366,8 @@ void system_reboot(void)
disable_irq();
/* re-enable internal ROM */
CGU_PERI |= CGU_ROM_ENABLE;
/* re-enable internal ROM so that we don't hard lock on power up*/
CGU_PERI |= CGU_ROM_ENABLE; /*should always be on, but to be safe...*/
/* use watchdog to reset */
CGU_PERI |= (CGU_WDOCNT_CLOCK_ENABLE | CGU_WDOIF_CLOCK_ENABLE);