Re: [PATCH 1/2] ARM: simplify timer initialisation and remove arm_timer.h inclusion

From: Sudeep Holla
Date: Mon May 18 2015 - 06:39:04 EST




On 18/05/15 11:33, Catalin Marinas wrote:
On Fri, May 15, 2015 at 07:03:34PM +0100, Sudeep Holla wrote:
On 30/04/15 15:19, Sudeep Holla wrote:
On 30/04/15 15:09, Rob Herring wrote:
On Thu, Apr 30, 2015 at 5:44 AM, Sudeep Holla <sudeep.holla@xxxxxxx> wrote:
The header asm/hardware/arm_timer.h is included in various machine
specific files to access TIMER_CTRL and initialise to a known state.
However that's not required as the clock{source,event} driver timer-sp
initialises all the timer being used.

I believe the idea is not to initialize the timers being used, but the
ones not being used and perhaps left running by the bootloader. Cases
where the interrupt is shared could cause a problem.

Russell, can you confirm if that's the case ?

Unless you want to test all these platforms, I would suggest we assume
this is the case. The comments even state "Initialise to a known state
(all timers off)".


OK makes sense.

Ah OK, makes sense. I will wait for Russell to confirm. The main idea
was to keep the header file having offsets local to driver/clocksource
and avoid sharing it in include/linux but looks like that's not possible.

Since we need this driver on ARM64, we might have to end up sharing the
header file with offsets if required for ARM platforms(though it would
be good to avoid it if there's any better alternative solution than that)

Can you not just move the definitions to
include/clocksource/timer-sp804.h and add some SP804_ prefix to avoid
name collisions?


Yes I can do that and that's the alternate plan, wanted to avoid having
SP804 timer internal register offsets in that header file hoping to
contain those in the driver files if possible.

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