[PATCH] ARM: OMAP2+: Get rid of custom OMAP_32K_TIMER_HZ
Igor Grinberg
grinberg at compulab.co.il
Sun Feb 3 07:50:23 EST 2013
On 01/31/13 17:32, Santosh Shilimkar wrote:
> The timekeeping doesn't depend on HZ value in presence of fine grained
> clocksource and hence there should not be any time drift because of HZ
> value which was chosen to be divisor of 32768.
>
> OMAP has been using HZ = 128 value to avoid any time drift issues
> because of 32768 HZ clock. But with various measurements performed
> with HZ = 100, no time drift is observed and it also proves the
> point about HZ not having impact on time keeping on OMAP.
Great! I had the same patch in my tree already for several months,
but I was afraid to send it as I had no time to test it thoroughly.
These kind of things are always scary to send without proper testing...
Thank you very much for testing and sending this out!
>
> Very informative thread on this topic is here:
> https://lkml.org/lkml/2013/1/29/435
>
> Special thanks to John Stulz, Arnd Bergmann and Russell King for their
> valuable suggestions.
>
> Cc: Arnd Bergmann <arnd at arndb.de>
> Cc: Russell King <linux at arm.linux.org.uk>
> Cc: John Stultz <john.stultz at linaro.org>
> Cc: Tony Lindgren <tony at atomide.com>
If it still not too late:
Acked-by: Igor Grinberg <grinberg at compulab.co.il>
>
> Signed-off-by: Santosh Shilimkar <santosh.shilimkar at ti.com>
> Tested-by: Lokesh Vutla <lokeshvutla at ti.com>
> ---
> arch/arm/Kconfig | 1 -
> arch/arm/plat-omap/Kconfig | 9 ---------
> arch/arm/plat-omap/include/plat/timex.h | 8 --------
> 3 files changed, 18 deletions(-)
>
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index b35b27f..5493164 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -1648,7 +1648,6 @@ config HZ
> int
> default 200 if ARCH_EBSA110 || ARCH_S3C24XX || ARCH_S5P64X0 || \
> ARCH_S5PV210 || ARCH_EXYNOS4
> - default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER
> default AT91_TIMER_HZ if ARCH_AT91
> default SHMOBILE_TIMER_HZ if ARCH_SHMOBILE
> default 100
> diff --git a/arch/arm/plat-omap/Kconfig b/arch/arm/plat-omap/Kconfig
> index 67c859c..ce66eb9 100644
> --- a/arch/arm/plat-omap/Kconfig
> +++ b/arch/arm/plat-omap/Kconfig
> @@ -147,15 +147,6 @@ config OMAP3_L2_AUX_SECURE_SERVICE_SET_ID
> help
> PPA routine service ID for setting L2 auxiliary control register.
>
> -config OMAP_32K_TIMER_HZ
> - int "Kernel internal timer frequency for 32KHz timer"
> - range 32 1024
> - depends on OMAP_32K_TIMER
> - default "128"
> - help
> - Kernel internal timer frequency should be a divisor of 32768,
> - such as 64 or 128.
> -
> config OMAP_DM_TIMER
> bool "Use dual-mode timer"
> depends on ARCH_OMAP16XX || ARCH_OMAP2PLUS
> diff --git a/arch/arm/plat-omap/include/plat/timex.h b/arch/arm/plat-omap/include/plat/timex.h
> index 6d35767..e27d2da 100644
> --- a/arch/arm/plat-omap/include/plat/timex.h
> +++ b/arch/arm/plat-omap/include/plat/timex.h
> @@ -28,14 +28,6 @@
> #if !defined(__ASM_ARCH_OMAP_TIMEX_H)
> #define __ASM_ARCH_OMAP_TIMEX_H
>
> -/*
> - * OMAP 32KHz timer updates time one jiffie at a time from a secondary timer,
> - * and that's why the CLOCK_TICK_RATE is not 32768.
> - */
> -#ifdef CONFIG_OMAP_32K_TIMER
> -#define CLOCK_TICK_RATE (CONFIG_OMAP_32K_TIMER_HZ)
> -#else
> #define CLOCK_TICK_RATE (HZ * 100000UL)
> -#endif
>
> #endif /* __ASM_ARCH_OMAP_TIMEX_H */
>
--
Regards,
Igor.
More information about the linux-arm-kernel
mailing list