diff options
author | Huacai Chen <chenhuacai@loongson.cn> | 2024-11-22 15:47:48 +0800 |
---|---|---|
committer | Huacai Chen <chenhuacai@loongson.cn> | 2024-11-26 18:06:03 +0800 |
commit | af4b67da652214f06fde48cca7bb438fa829741f (patch) | |
tree | 54082a58c00351e90f56c7cb33ac74e814dc8e65 /arch | |
parent | 73c359d1d356cf10236ccd358bd55edab33e9424 (diff) | |
download | linux-af4b67da652214f06fde48cca7bb438fa829741f.tar.gz linux-af4b67da652214f06fde48cca7bb438fa829741f.tar.bz2 linux-af4b67da652214f06fde48cca7bb438fa829741f.zip |
LoongArch: Reduce min_delta for the arch clockevent device
Now the min_delta is 0x600 (1536) for LoongArch's constant clockevent
device. For a 100MHz hardware timer this means ~15us. This is a little
big, especially for PREEMPT_RT enabled kernels. So reduce it to 100 for
PREEMPT_RT kernel, and 1000 for others (we don't want too small values
to affect performance).
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/loongarch/kernel/time.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/loongarch/kernel/time.c b/arch/loongarch/kernel/time.c index 46d7d40c87e3..a07d7eff4dc5 100644 --- a/arch/loongarch/kernel/time.c +++ b/arch/loongarch/kernel/time.c @@ -127,7 +127,11 @@ void sync_counter(void) int constant_clockevent_init(void) { unsigned int cpu = smp_processor_id(); - unsigned long min_delta = 0x600; +#ifdef CONFIG_PREEMPT_RT + unsigned long min_delta = 100; +#else + unsigned long min_delta = 1000; +#endif unsigned long max_delta = (1UL << 48) - 1; struct clock_event_device *cd; static int irq = 0, timer_irq_installed = 0; |