am335x: Enable RTC 32K OSC clock AM335XPSP_04.06.00.07 v2011.09_AM335xPSP_04.06.00.07
authorVaibhav Hiremath <hvaibhav@ti.com>
Thu, 8 Mar 2012 11:45:47 +0000 (17:15 +0530)
committerTom Rini <trini@ti.com>
Thu, 8 Mar 2012 15:47:17 +0000 (08:47 -0700)
commite3f1bbc6c38ffa1e0ea75c45e883a6771f731848
treefb4b36a16223491d3b1e04a7ebd3f167270fead2
parent1695466ccf32c19d0453f94724987cf063024b60
am335x: Enable RTC 32K OSC clock

In order to support low power state, you must source kernel
system timers to persistent clock, available across suspend/resume.
In case of AM335x device, the only source we have is, RTC32K, available
in wakeup/always-on domain.
Having said that, during validation it has been observed that, RTC clock
need couple of seconds delay to stabilize the RTC OSC clock;
and such a huge delay is not acceptable in kernel especially during
early init and also it will impact quick/fast boot use-cases.

So, RTC32k OSC enable dependency has been shifted to SPL/first-bootloader.

In Kernel, in order to support older u-boot version/releases we have
adopted fallback mechanism; where, if timer goes into bad state OR
becomes idle, then we again switch back to main/default sys_ck_in (24MHz).

Signed-off-by: Vaibhav Hiremath <hvaibhav@ti.com>
CC: Tom Rini <trini@ti.com>
arch/arm/include/asm/arch-ti81xx/cpu.h
arch/arm/include/asm/arch-ti81xx/hardware.h
board/ti/am335x/evm.c
board/ti/am335x/pll.c