OMAP3: PM: Erratum i581 support: dll kick strategy
authorPeter 'p2' De Schrijver <peter.de-schrijver@nokia.com>
Mon, 20 Dec 2010 20:05:04 +0000 (14:05 -0600)
committerKevin Hilman <khilman@deeprootsystems.com>
Tue, 21 Dec 2010 22:45:49 +0000 (14:45 -0800)
commit9d93b8a2c8c78972f0a3d15a820288dbb3968bf2
treea48ab8699155f9ba2006ca90699ba8563ae05fce
parent0bd40535365c318e331f5e872030a710d5746167
OMAP3: PM: Erratum i581 support: dll kick strategy

Erratum i581 impacts OMAP3 platforms.
PRCM DPLL control FSM removes SDRC_IDLEREQ before DPLL3 locks causing
the DPLL not to be locked at times.

IMPORTANT:
*) This is not a complete workaround implementation as recommended
by the silicon erratum. This is a support logic for detecting lockups and
attempting to recover where possible and is known to provide stability
in multiple platforms.
*) This code is mostly important for inactive and retention. The ROM code
waits for the maximum DLL lock time when resuming from off mode. So for
off mode this code isn't really needed.
*) counters are introduced here for eventual export to userspace once the
cleanups are completed.

This should eventually get refactored as part of cleanups to sleep34xx.S

Cc: Kevin Hilman <khilman@deeprootsystems.com>
Cc: Tony Lindgren <tony@atomide.com>
Signed-off-by: Peter 'p2' De Schrijver <peter.de-schrijver@nokia.com>
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
arch/arm/mach-omap2/sleep34xx.S