mirror of https://gitee.com/openkylin/linux.git
clocksource/drivers/moxart: Refactor enable/disable
This patch abstracts the enable and disable register writes into their own functions in preparation for future changes to use SoC specific values for the writes. Signed-off-by: Joel Stanley <joel@jms.id.au> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
This commit is contained in:
parent
950d8381d9
commit
7016474278
|
@ -58,15 +58,25 @@
|
|||
static void __iomem *base;
|
||||
static unsigned int clock_count_per_tick;
|
||||
|
||||
static int moxart_shutdown(struct clock_event_device *evt)
|
||||
static inline void moxart_disable(struct clock_event_device *evt)
|
||||
{
|
||||
writel(TIMER1_DISABLE, base + TIMER_CR);
|
||||
}
|
||||
|
||||
static inline void moxart_enable(struct clock_event_device *evt)
|
||||
{
|
||||
writel(TIMER1_ENABLE, base + TIMER_CR);
|
||||
}
|
||||
|
||||
static int moxart_shutdown(struct clock_event_device *evt)
|
||||
{
|
||||
moxart_disable(evt);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int moxart_set_oneshot(struct clock_event_device *evt)
|
||||
{
|
||||
writel(TIMER1_DISABLE, base + TIMER_CR);
|
||||
moxart_disable(evt);
|
||||
writel(~0, base + TIMER1_BASE + REG_LOAD);
|
||||
return 0;
|
||||
}
|
||||
|
@ -74,21 +84,21 @@ static int moxart_set_oneshot(struct clock_event_device *evt)
|
|||
static int moxart_set_periodic(struct clock_event_device *evt)
|
||||
{
|
||||
writel(clock_count_per_tick, base + TIMER1_BASE + REG_LOAD);
|
||||
writel(TIMER1_ENABLE, base + TIMER_CR);
|
||||
moxart_enable(evt);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int moxart_clkevt_next_event(unsigned long cycles,
|
||||
struct clock_event_device *unused)
|
||||
struct clock_event_device *evt)
|
||||
{
|
||||
u32 u;
|
||||
|
||||
writel(TIMER1_DISABLE, base + TIMER_CR);
|
||||
moxart_disable(evt);
|
||||
|
||||
u = readl(base + TIMER1_BASE + REG_COUNT) - cycles;
|
||||
writel(u, base + TIMER1_BASE + REG_MATCH1);
|
||||
|
||||
writel(TIMER1_ENABLE, base + TIMER_CR);
|
||||
moxart_enable(evt);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue