[RFC/NOT FOR MERGING] HACK: add global/private timers for A9

Felipe Balbi
2015-06-03T21:54:45Z

Hi,

On Wed, Jun 03, 2015 at 02:41:39PM -0700, Stephen Boyd wrote:
> >>>>AM43xx, even though it's a single processor A9, it still has TWD and global
> >>>>timer. I was doing some profiling with RT v4.0 and latency is 3.5x lower just
> >>>>by switching from gptimer to twd/global.
> >>>>
> >>>>The only problem is that currently, is_smp() check prevents me from using twd
> >>>>with AM43xx (that's why it's commented below, for testing purposes).
> >>>>
> >>>>In the hopes that we can start a, hopefully, small thread around the subject,
> >>>>I'm sending this HACK which I used to get TWD and global timer enabled so I
> >>>>could measure latencies with cyclictest.
> >>>>
> >>>>Is it so that TWD shouldn't be available on UP integrations of ARM's Cortex-A
> >>>>processors ?
> >>>>
> >>>>
> >>>I wondered about this recently when looking at something unrelated
> >>>and noticed that the check had been introduced as part of
> >>>904464b91eca8 ("ARM: 7655/1: smp_twd: make twd_local_timer_of_register()
> >>>no-op for nosmp").
> >>>
> >>>I suspect this was just the wrong fix at the time, and that the
> >>>real culprit is either alloc_percpu() or request_percpu_irq()
> >>>getting called too early on a machine without SMP support.
> >>>
> >>>Possibly the problem is already resolved independently, if you
> >>>didn't run into it.
> >>no, no splats, nothing at all. See [1]
> >>
> >>[1] http://hastebin.com/helekubutu
> >Adding Shawn
> >
>
> Mason was also interested in doing this. See [2]. From what I could tell
> back then, commit 904464b91eca8 was working around the local timer APIs that
> no longer exist.
>
> [2] http://thread.gmane.org/gmane.linux.ports.arm.kernel/389931/focus=392348

A lot of good information on that thread, thanks. Seems like getting
twd/global timer working would also have some effect on context
switching, perhaps ?

cheers

--
balbi
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20150603/c65b9710/attachment.sig>