On Tue, Jul 15, 2014 at 5:45 PM, Arnd Bergmann <arnd@xxxxxxxx> wrote: > On Tuesday 15 July 2014 16:45:46 Ley Foon Tan wrote: >> + >> +static inline void __delay(unsigned long loops) >> +{ >> + int dummy; >> + >> + __asm__ __volatile__( >> + "1:\n\t" >> + " beq %0,zero,2f\n\t" >> + " addi %0, %0, -1\n\t" >> + " br 1b\n\t" >> + "2:\n\t" >> + : "=r" (dummy) /* Need output for optimizer */ >> + : "0" (loops)); /* %0 Input */ >> +} > > Do you have a reliable clock source? If you do, it would be better > to replace the delay loop with an implementation that waits for > the exact time to pass instead. This will also avoid the loop > calibration during boot and give you better boot times. Okay, will change this to use timer instead. > >> +#ifndef _ASM_NIOS2_TIMEX_H >> +#define _ASM_NIOS2_TIMEX_H >> + >> +/* Supply dummy tick-rate. Real value will be read from devicetree */ >> +#define CLOCK_TICK_RATE (HZ * 100000UL) >> + >> +#include <asm-generic/timex.h> >> + >> +#endif > > CLOCK_TICK_RATE is no longer used anywhere, no need for this file. I found jiffies.h still using this define. Can we still remove this? In include/linux/jiffies.h: #define LATCH ((CLOCK_TICK_RATE + HZ/2) / HZ) /* For divider */ > >> diff --git a/arch/nios2/kernel/time.c b/arch/nios2/kernel/time.c >> new file mode 100644 >> index 0000000..111ade1 >> --- /dev/null >> +++ b/arch/nios2/kernel/time.c > > Maybe move this to drivers/clocksource? Same argument as for the > irqchip driver, so either move both or neither. Will keep this here since we don't move irq driver. Thanks. Regards Ley Foon -- To unsubscribe from this list: send the line "unsubscribe linux-doc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html