diff options
Diffstat (limited to 'arch/mips/include/asm/time.h')
| -rw-r--r-- | arch/mips/include/asm/time.h | 35 |
1 files changed, 22 insertions, 13 deletions
diff --git a/arch/mips/include/asm/time.h b/arch/mips/include/asm/time.h index 9601ea95054..8f3047d611e 100644 --- a/arch/mips/include/asm/time.h +++ b/arch/mips/include/asm/time.h @@ -6,8 +6,8 @@ * include/asm-mips/time.h * header file for the new style time.c file and time services. * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the * Free Software Foundation; either version 2 of the License, or (at your * option) any later version. */ @@ -50,30 +50,39 @@ extern int (*perf_irq)(void); /* * Initialize the calling CPU's compare interrupt as clockevent device */ -#ifdef CONFIG_CEVT_R4K -extern int mips_clockevent_init(void); extern unsigned int __weak get_c0_compare_int(void); -#else +extern int r4k_clockevent_init(void); +extern int gic_clockevent_init(void); + static inline int mips_clockevent_init(void) { +#if defined(CONFIG_CEVT_GIC) + return (gic_clockevent_init() | r4k_clockevent_init()); +#elif defined(CONFIG_CEVT_R4K) + return r4k_clockevent_init(); +#else return -ENXIO; -} #endif +} /* * Initialize the count register as a clocksource */ -#ifdef CONFIG_CSRC_R4K -extern int init_mips_clocksource(void); -#else +extern int init_r4k_clocksource(void); + static inline int init_mips_clocksource(void) { +#ifdef CONFIG_CSRC_R4K + return init_r4k_clocksource(); +#else return 0; -} #endif +} -extern void clocksource_set_clock(struct clocksource *cs, unsigned int clock); -extern void clockevent_set_clock(struct clock_event_device *cd, - unsigned int clock); +static inline void clockevent_set_clock(struct clock_event_device *cd, + unsigned int clock) +{ + clockevents_calc_mult_shift(cd, clock, 4); +} #endif /* _ASM_TIME_H */ |
