OMAP3 clock: add a short delay when lowering CORE clk rate
authorPaul Walmsley <paul@pwsan.com>
Sat, 20 Jun 2009 01:08:26 +0000 (19:08 -0600)
committerpaul <paul@twilight.(none)>
Sat, 20 Jun 2009 01:09:31 +0000 (19:09 -0600)
commitc9812d042a21eb492a36cfabf9f41107f5ecee3d
treef9443de1d4534b0b56bd1b0ff56bfc6d78eb698d
parent2f135eaf182761bb9a5cbd5138a447b0ad2a1fef
OMAP3 clock: add a short delay when lowering CORE clk rate

When changing the SDRAM clock from 166MHz to 83MHz via the CORE DPLL M2
divider, add a short delay before returning to SDRAM to allow the SDRC
time to stabilize.  Without this delay, the system is prone to random
panics upon re-entering SDRAM.

This time delay varies based on MPU frequency.  At 500MHz MPU frequency at
room temperature, 64 loops seems to work okay; so add another 32 loops for
environmental and process variation.

Signed-off-by: Paul Walmsley <paul@pwsan.com>
arch/arm/mach-omap2/clock34xx.c
arch/arm/mach-omap2/sram34xx.S
arch/arm/plat-omap/include/mach/sram.h
arch/arm/plat-omap/sram.c