Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1299870

Re: [PATCH v2 RESEND 1/3] clocksource/vt8500: Use MIN_OSCR_DELTA from PXA

From Thomas Gleixner <tglx@linutronix.de>
Newsgroups linux.kernel
Subject Re: [PATCH v2 RESEND 1/3] clocksource/vt8500: Use MIN_OSCR_DELTA from PXA
Date 2016-01-01 11:10 +0100
Message-ID <qM4OK-Zy-3@gated-at.bofh.it> (permalink)
References <qLPPJ-7P9-17@gated-at.bofh.it> <qLPPJ-7P9-29@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Thu, 31 Dec 2015, Roman Volkov wrote:

> From: Roman Volkov <rvolkov@v1ros.org>
> 
> Since vt8500 and PXA timers are identical, use MIN_OSCR_DELTA from PXA,
> which is bigger than existing value. It is required to determine the
> minimum delay which hardware can generate.

This changelog makes no sense at all.
 
> This commit fixes vt8500 breakage in Linux 4.2 introduced by
> c6eb3f7 ('hrtimer: Get rid of hrtimer softirq')

> Signed-off-by: Roman Volkov <rvolkov@v1ros.org>
> ---
>  drivers/clocksource/vt8500_timer.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/clocksource/vt8500_timer.c b/drivers/clocksource/vt8500_timer.c
> index a92e94b..dfc3bb4 100644
> --- a/drivers/clocksource/vt8500_timer.c
> +++ b/drivers/clocksource/vt8500_timer.c
> @@ -50,6 +50,8 @@
>  
>  #define msecs_to_loops(t) (loops_per_jiffy / 1000 * HZ * t)
>  
> +#define MIN_OSCR_DELTA		16
> +
>  static void __iomem *regbase;
>  
>  static cycle_t vt8500_timer_read(struct clocksource *cs)
> @@ -80,7 +82,7 @@ static int vt8500_timer_set_next_event(unsigned long cycles,
>  		cpu_relax();
>  	writel((unsigned long)alarm, regbase + TIMER_MATCH_VAL);
>  
> -	if ((signed)(alarm - clocksource.read(&clocksource)) <= 16)
> +	if ((signed)(alarm - clocksource.read(&clocksource)) <= MIN_OSCR_DELTA)

So how is that value bigger? MIN_OSCR_DELTA is still 16

>  		return -ETIME;
>  
>  	writel(1, regbase + TIMER_IER_VAL);
> @@ -151,7 +153,7 @@ static void __init vt8500_timer_init(struct device_node *np)
>  		pr_err("%s: setup_irq failed for %s\n", __func__,
>  							clockevent.name);
>  	clockevents_config_and_register(&clockevent, VT8500_TIMER_HZ,
> -					4, 0xf0000000);
> +					MIN_OSCR_DELTA * 2, 0xf0000000);

Now here is the real change. You use a larger minimum tick value so that the
above check in vt8500_timer_set_next_event() actually works. That's what you
want to explain in the changelog. The blurb about reusing MIN_OSCR_DELTA is
just useless.

A proper changelog describes:

  1) the problem and the resulting wreckage

  2) the solution

Thanks,

	tglx

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v2 RESEND 0/3] clocksource/vt8500: Fix hangs in small delays Roman Volkov <v1ron@mail.ru> - 2015-12-31 19:10 +0100
  [PATCH v2 RESEND 3/3] clocksource/vt8500: Add register R/W functions Roman Volkov <v1ron@mail.ru> - 2015-12-31 19:10 +0100
  [PATCH v2 RESEND 1/3] clocksource/vt8500: Use MIN_OSCR_DELTA from PXA Roman Volkov <v1ron@mail.ru> - 2015-12-31 19:10 +0100
    Re: [PATCH v2 RESEND 1/3] clocksource/vt8500: Use MIN_OSCR_DELTA  from PXA Thomas Gleixner <tglx@linutronix.de> - 2015-12-31 23:40 +0100
      Re: [PATCH v2 RESEND 1/3] clocksource/vt8500: Use MIN_OSCR_DELTA  from PXA Roman Volkov <v1ron@mail.ru> - 2016-01-01 00:40 +0100
        Re: [PATCH v2 RESEND 1/3] clocksource/vt8500: Use MIN_OSCR_DELTA from PXA Robert Jarzmik <robert.jarzmik@free.fr> - 2016-01-01 21:30 +0100
    Re: [PATCH v2 RESEND 1/3] clocksource/vt8500: Use MIN_OSCR_DELTA  from PXA Thomas Gleixner <tglx@linutronix.de> - 2016-01-01 11:10 +0100
  [PATCH v2 RESEND 2/3] clocksource/vt8500: Remove the 'loops' variable Roman Volkov <v1ron@mail.ru> - 2015-12-31 19:10 +0100

csiph-web