ARM omap: Make timer base runtime configurable
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
parent
e412cb7805
commit
b9fd320cb3
|
@ -47,8 +47,4 @@
|
|||
/* Enable sys_clk NO-prescale /1 */
|
||||
#define GPT_EN ((0 << 2) | (0x1 << 1) | (0x1 << 0))
|
||||
|
||||
/** Sync 32Khz Timer registers */
|
||||
#define S32K_CR (OMAP_32KTIMER_BASE + 0x10)
|
||||
#define S32K_FREQUENCY 32768
|
||||
|
||||
#endif /*__ASM_ARCH_GPT_H */
|
||||
|
|
|
@ -34,10 +34,13 @@
|
|||
#include <io.h>
|
||||
#include <mach/silicon.h>
|
||||
#include <mach/clocks.h>
|
||||
#include <mach/omap3-clock.h>
|
||||
#include <mach/timers.h>
|
||||
#include <mach/sys_info.h>
|
||||
#include <mach/syslib.h>
|
||||
|
||||
#define S32K_CR (OMAP_32KTIMER_BASE + 0x10)
|
||||
|
||||
/* Following functions are exported from omap3_clock_core.S */
|
||||
/* Helper functions */
|
||||
static u32 get_osc_clk_speed(void);
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
#include <mach/syslib.h>
|
||||
#include <mach/silicon.h>
|
||||
#include <mach/clocks.h>
|
||||
#include <mach/omap4-clock.h>
|
||||
|
||||
#define LDELAY 12000000
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#include <common.h>
|
||||
#include <init.h>
|
||||
#include <io.h>
|
||||
#include <mach/clocks.h>
|
||||
#include <mach/omap4-clock.h>
|
||||
#include <mach/silicon.h>
|
||||
#include <mach/omap4-mux.h>
|
||||
#include <mach/syslib.h>
|
||||
|
|
|
@ -31,6 +31,12 @@
|
|||
#include <mach/sys_info.h>
|
||||
#include <mach/syslib.h>
|
||||
|
||||
/** Sync 32Khz Timer registers */
|
||||
#define S32K_CR 0x10
|
||||
#define S32K_FREQUENCY 32768
|
||||
|
||||
static void __iomem *timerbase;
|
||||
|
||||
/**
|
||||
* @brief Provide a simple clock read
|
||||
*
|
||||
|
@ -41,7 +47,7 @@
|
|||
*/
|
||||
static uint64_t s32k_clocksource_read(void)
|
||||
{
|
||||
return readl(S32K_CR);
|
||||
return readl(timerbase + S32K_CR);
|
||||
}
|
||||
|
||||
/* A bit obvious isn't it? */
|
||||
|
@ -62,6 +68,8 @@ static struct clocksource s32k_cs = {
|
|||
*/
|
||||
static int s32k_clocksource_init(void)
|
||||
{
|
||||
timerbase = (void *)OMAP_32KTIMER_BASE;
|
||||
|
||||
s32k_cs.mult = clocksource_hz2mult(S32K_FREQUENCY, s32k_cs.shift);
|
||||
|
||||
return init_clock(&s32k_cs);
|
||||
|
|
Loading…
Reference in New Issue