From: Thomas Gleixner on
On Mon, 22 Mar 2010, Johannes Weiner wrote:
> > Though, even after a glance over the clocksource code, I've not
> > gotten yet to how one could estimate the "shift" value...
> > Any hints?
>
> I had the same problem with xtensa and added a comment about what I
> did in there, maybe it helps:
>
> arch/xtensa/kernel/time.c
>
> I took the upper bound of the multiplicator (nsecs per counter unit)
> and subtracted its logarithm from my available 32 bits. The result
> is the highest possible shift value that works for the clocksource.

clocks_calc_mult_shift() is what you are looking for.

Thanks,

tglx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Johannes Weiner on
On Mon, Mar 22, 2010 at 03:22:12PM +0100, Thomas Gleixner wrote:
> On Mon, 22 Mar 2010, Johannes Weiner wrote:
> > > Though, even after a glance over the clocksource code, I've not
> > > gotten yet to how one could estimate the "shift" value...
> > > Any hints?
> >
> > I had the same problem with xtensa and added a comment about what I
> > did in there, maybe it helps:
> >
> > arch/xtensa/kernel/time.c
> >
> > I took the upper bound of the multiplicator (nsecs per counter unit)
> > and subtracted its logarithm from my available 32 bits. The result
> > is the highest possible shift value that works for the clocksource.
>
> clocks_calc_mult_shift() is what you are looking for.

Oh, thanks! That was not yet around at the time.

Hannes

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