Re: [PATCH V3 11/11] ARM: delete struct sys_timer

2012-12-07 Thread Stephen Warren
On 12/07/2012 02:51 AM, Igor Grinberg wrote:
> Hi Stephen,
> 
> I've only now bumped into the patchset (working the back log on linux-arm).
> Sorry for late reply, but I guess you should have Cc'd the relevant
> mailing lists with such changes.
> Cc'd now.

Perhaps. There's a trade-off with spamming tens of subarch lists though,
and the OMAP maintainer and LAKML were CC'd.

> On 11/19/12 20:31, Stephen Warren wrote:
>> Now that the only field in struct sys_timer is .init, delete the struct,
>> and replace the machine descriptor .timer field with the initialization
>> function itself.
>>
>> This will enable moving timer drivers into drivers/clocksource without
>> having to place a public prototype of each struct sys_timer object into
>> include/linux; the intent is to create a single of_clocksource_init()
>> function that determines which timer driver to initialize by scanning
>> the device dtree, much like the proposed irqchip_init() at:
>> http://www.spinics.net/lists/arm-kernel/msg203686.html
...
>> The patch is very large, so I've trimmed it for the mailing list, leaving
>> only the core ARM changes, changes outside arch/arm, and a single machine
>> example. The full series can be found at:
>>
>> git://nv-tegra.nvidia.com/user/swarren/linux-2.6 arm_timer_rework
...
> I've looked at the omap2+ changes and I think OMAP4 and 5 got messed up a 
> bit...
> the below (compile tested on omap2plus only) should be applied:

Thanks; your patch looks correct. I'll fold it into my series.
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH V3 11/11] ARM: delete struct sys_timer

2012-12-07 Thread Igor Grinberg
Hi Stephen,

I've only now bumped into the patchset (working the back log on linux-arm).
Sorry for late reply, but I guess you should have Cc'd the relevant
mailing lists with such changes.
Cc'd now.

On 11/19/12 20:31, Stephen Warren wrote:
> From: Stephen Warren 
> 
> Now that the only field in struct sys_timer is .init, delete the struct,
> and replace the machine descriptor .timer field with the initialization
> function itself.
> 
> This will enable moving timer drivers into drivers/clocksource without
> having to place a public prototype of each struct sys_timer object into
> include/linux; the intent is to create a single of_clocksource_init()
> function that determines which timer driver to initialize by scanning
> the device dtree, much like the proposed irqchip_init() at:
> http://www.spinics.net/lists/arm-kernel/msg203686.html
> 
> Signed-off-by: Stephen Warren 
> Tested-by: Robert Jarzmik 
> ---
> v3: Minor merge conflicts due to rebasing onto next-20121115.
> v2: Converted all platforms, not just Tegra.
> 
> The patch is very large, so I've trimmed it for the mailing list, leaving
> only the core ARM changes, changes outside arch/arm, and a single machine
> example. The full series can be found at:
> 
> git://nv-tegra.nvidia.com/user/swarren/linux-2.6 arm_timer_rework
> ---

[...]

>  arch/arm/mach-omap1/board-ams-delta.c  |2 +-
>  arch/arm/mach-omap1/board-fsample.c|2 +-
>  arch/arm/mach-omap1/board-generic.c|2 +-
>  arch/arm/mach-omap1/board-h2.c |2 +-
>  arch/arm/mach-omap1/board-h3.c |2 +-
>  arch/arm/mach-omap1/board-htcherald.c  |2 +-
>  arch/arm/mach-omap1/board-innovator.c  |2 +-
>  arch/arm/mach-omap1/board-nokia770.c   |2 +-
>  arch/arm/mach-omap1/board-osk.c|2 +-
>  arch/arm/mach-omap1/board-palmte.c |2 +-
>  arch/arm/mach-omap1/board-palmtt.c |2 +-
>  arch/arm/mach-omap1/board-palmz71.c|2 +-
>  arch/arm/mach-omap1/board-perseus2.c   |2 +-
>  arch/arm/mach-omap1/board-sx1.c|2 +-
>  arch/arm/mach-omap1/board-voiceblue.c  |2 +-
>  arch/arm/mach-omap1/common.h   |2 +-
>  arch/arm/mach-omap1/time.c |6 +-
>  arch/arm/mach-omap2/board-2430sdp.c|2 +-
>  arch/arm/mach-omap2/board-3430sdp.c|2 +-
>  arch/arm/mach-omap2/board-3630sdp.c|2 +-
>  arch/arm/mach-omap2/board-4430sdp.c|2 +-
>  arch/arm/mach-omap2/board-am3517crane.c|2 +-
>  arch/arm/mach-omap2/board-am3517evm.c  |2 +-
>  arch/arm/mach-omap2/board-apollon.c|2 +-
>  arch/arm/mach-omap2/board-cm-t35.c |4 ++--
>  arch/arm/mach-omap2/board-cm-t3517.c   |2 +-
>  arch/arm/mach-omap2/board-devkit8000.c |2 +-
>  arch/arm/mach-omap2/board-generic.c|   12 ++--
>  arch/arm/mach-omap2/board-h4.c |2 +-
>  arch/arm/mach-omap2/board-igep0020.c   |4 ++--
>  arch/arm/mach-omap2/board-ldp.c|2 +-
>  arch/arm/mach-omap2/board-n8x0.c   |6 +++---
>  arch/arm/mach-omap2/board-omap3beagle.c|2 +-
>  arch/arm/mach-omap2/board-omap3evm.c   |2 +-
>  arch/arm/mach-omap2/board-omap3logic.c |4 ++--
>  arch/arm/mach-omap2/board-omap3pandora.c   |2 +-
>  arch/arm/mach-omap2/board-omap3stalker.c   |2 +-
>  arch/arm/mach-omap2/board-omap3touchbook.c |2 +-
>  arch/arm/mach-omap2/board-omap4panda.c |2 +-
>  arch/arm/mach-omap2/board-overo.c  |2 +-
>  arch/arm/mach-omap2/board-rm680.c  |4 ++--
>  arch/arm/mach-omap2/board-rx51.c   |2 +-
>  arch/arm/mach-omap2/board-ti8168evm.c  |4 ++--
>  arch/arm/mach-omap2/board-zoom.c   |4 ++--
>  arch/arm/mach-omap2/common.h   |   12 ++--
>  arch/arm/mach-omap2/timer.c|   17 +++--

[...]

>  492 files changed, 622 insertions(+), 1199 deletions(-)

I've looked at the omap2+ changes and I think OMAP4 and 5 got messed up a bit...
the below (compile tested on omap2plus only) should be applied:

diff --git a/arch/arm/mach-omap2/board-4430sdp.c 
b/arch/arm/mach-omap2/board-4430sdp.c
index 2e0c446..f5d5f59 100644
--- a/arch/arm/mach-omap2/board-4430sdp.c
+++ b/arch/arm/mach-omap2/board-4430sdp.c
@@ -725,6 +725,6 @@ MACHINE_START(OMAP_4430SDP, "OMAP4430 4430SDP board")
.handle_irq = gic_handle_irq,
.init_machine   = omap_4430sdp_init,
.init_late  = omap4430_init_late,
-   .init_time  = omap4_sync32k_timer_init,
+   .init_time  = omap4_local_timer_init,
.restart= omap44xx_restart,
 MACHINE_END
diff --git a/arch/arm/mach-omap2/board-generic.c 
b/arch/arm/mach-omap2/board-generic.