forked from Minki/linux
ixp4xx: timer and clocks cleanups
This patch does a few simple cleanups of the ixp4xx timer and clocksource/clockevent code in mach-ixp4xx/common.c: - ixp4xx_clocksource_init() is static and always returns 0, which is ignored by its only caller: make it return void - ixp4xx_clockevent_init(): ditto - ixp4xx_get_cycles() is only referenced locally: make it static - use the ixp4xx_timer_irq.dev_id field to pass &clockevent_ixp4xx to ixp4xx_timer_interrupt() via its dev_id parameter, allowing the code in ixp4xx_timer_interrupt() to be smaller and faster Tested on an ixp420 machine (ds101). Signed-off-by: Mikael Pettersson <mikpe@it.uu.se> Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
This commit is contained in:
parent
43c1266ce4
commit
ceb69a899f
@ -41,8 +41,8 @@
|
||||
#include <asm/mach/irq.h>
|
||||
#include <asm/mach/time.h>
|
||||
|
||||
static int __init ixp4xx_clocksource_init(void);
|
||||
static int __init ixp4xx_clockevent_init(void);
|
||||
static void __init ixp4xx_clocksource_init(void);
|
||||
static void __init ixp4xx_clockevent_init(void);
|
||||
static struct clock_event_device clockevent_ixp4xx;
|
||||
|
||||
/*************************************************************************
|
||||
@ -267,7 +267,7 @@ void __init ixp4xx_init_irq(void)
|
||||
|
||||
static irqreturn_t ixp4xx_timer_interrupt(int irq, void *dev_id)
|
||||
{
|
||||
struct clock_event_device *evt = &clockevent_ixp4xx;
|
||||
struct clock_event_device *evt = dev_id;
|
||||
|
||||
/* Clear Pending Interrupt by writing '1' to it */
|
||||
*IXP4XX_OSST = IXP4XX_OSST_TIMER_1_PEND;
|
||||
@ -281,6 +281,7 @@ static struct irqaction ixp4xx_timer_irq = {
|
||||
.name = "timer1",
|
||||
.flags = IRQF_DISABLED | IRQF_TIMER | IRQF_IRQPOLL,
|
||||
.handler = ixp4xx_timer_interrupt,
|
||||
.dev_id = &clockevent_ixp4xx,
|
||||
};
|
||||
|
||||
void __init ixp4xx_timer_init(void)
|
||||
@ -401,7 +402,7 @@ void __init ixp4xx_sys_init(void)
|
||||
/*
|
||||
* clocksource
|
||||
*/
|
||||
cycle_t ixp4xx_get_cycles(struct clocksource *cs)
|
||||
static cycle_t ixp4xx_get_cycles(struct clocksource *cs)
|
||||
{
|
||||
return *IXP4XX_OSTS;
|
||||
}
|
||||
@ -417,14 +418,12 @@ static struct clocksource clocksource_ixp4xx = {
|
||||
|
||||
unsigned long ixp4xx_timer_freq = FREQ;
|
||||
EXPORT_SYMBOL(ixp4xx_timer_freq);
|
||||
static int __init ixp4xx_clocksource_init(void)
|
||||
static void __init ixp4xx_clocksource_init(void)
|
||||
{
|
||||
clocksource_ixp4xx.mult =
|
||||
clocksource_hz2mult(ixp4xx_timer_freq,
|
||||
clocksource_ixp4xx.shift);
|
||||
clocksource_register(&clocksource_ixp4xx);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
@ -480,7 +479,7 @@ static struct clock_event_device clockevent_ixp4xx = {
|
||||
.set_next_event = ixp4xx_set_next_event,
|
||||
};
|
||||
|
||||
static int __init ixp4xx_clockevent_init(void)
|
||||
static void __init ixp4xx_clockevent_init(void)
|
||||
{
|
||||
clockevent_ixp4xx.mult = div_sc(FREQ, NSEC_PER_SEC,
|
||||
clockevent_ixp4xx.shift);
|
||||
@ -491,5 +490,4 @@ static int __init ixp4xx_clockevent_init(void)
|
||||
clockevent_ixp4xx.cpumask = cpumask_of(0);
|
||||
|
||||
clockevents_register_device(&clockevent_ixp4xx);
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user