[PATCH v6 3/9] ARM: versatile: Map local timers using Device Tree when possible
Pawel Moll
pawel.moll at arm.com
Thu Dec 15 12:25:17 EST 2011
On Thu, 2011-12-15 at 15:25 +0000, Pawel Moll wrote:
> > I think your previous version was more correct. This is going to find
> > the node and do ioremap N times where N is the number of cores. It does
> > work though because that is what I did initially too.
>
> Right, how about that, then:
>
> @@ -21,6 +23,22 @@
> */
> int __cpuinit local_timer_setup(struct clock_event_device *evt)
> {
> +#if defined(CONFIG_OF)
> + static int dt_node_probed;
> +
> + if (!dt_node_probed) {
> + struct device_node *node = of_find_compatible_node(NULL,
> + NULL, "arm,smp-twd");
> +
> + if (node)
> + twd_base = of_iomap(node, 0);
> +
> + dt_node_probed = 1;
> + }
> +#endif
> + if (!twd_base)
> + return -ENXIO;
> +
> evt->irq = IRQ_LOCALTIMER;
> twd_timer_setup(evt);
> return 0;
Ok, so I have updated the both vexpress-dt and
vexpress-dt-rmk-devel-stable branches like that.
Arnd, Russell, the new pull request below.
I'll see you all next year!
Cheers!
Paweł
8<-------------------------------------------------------------------
The following changes since commit 55b02d2f4445ad625213817a1736bf2884d32547:
Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux (2011-12-14 19:45:40 -0800)
are available in the git repository at:
git://git.linaro.org/people/pawelmoll/linux.git vexpress-dt
Pawel Moll (9):
ARM: versatile: Add missing ENDPROC to headsmp.S
ARM: vexpress: Get rid of MMIO_P2V
ARM: versatile: Map local timers using Device Tree when possible
ARM: vexpress: Use FDT data in platform SMP calls
ARM: vexpress: Add Device Tree support
ARM: vexpress: Motherboard RS1 memory map support
ARM: vexpress: Add Device Tree for V2P-CA5s core tile
ARM: vexpress: Add Device Tree for V2P-CA9 core tile
ARM: vexpress: Add Device Tree for V2P-CA15 core tile (TC1 variant)
Documentation/devicetree/bindings/arm/vexpress.txt | 144 ++++++++++
arch/arm/Kconfig | 2 +-
arch/arm/boot/dts/vexpress-v2m-rs1.dtsi | 201 ++++++++++++++
arch/arm/boot/dts/vexpress-v2m.dtsi | 200 ++++++++++++++
arch/arm/boot/dts/vexpress-v2p-ca15-tc1.dts | 155 +++++++++++
arch/arm/boot/dts/vexpress-v2p-ca5s.dts | 160 +++++++++++
arch/arm/boot/dts/vexpress-v2p-ca9.dts | 190 +++++++++++++
arch/arm/include/asm/hardware/arm_timer.h | 5 +
arch/arm/mach-realview/platsmp.c | 3 +-
arch/arm/mach-vexpress/Kconfig | 45 +++-
arch/arm/mach-vexpress/Makefile.boot | 6 +
arch/arm/mach-vexpress/core.h | 9 +-
arch/arm/mach-vexpress/ct-ca9x4.c | 48 +---
arch/arm/mach-vexpress/include/mach/ct-ca9x4.h | 13 +-
arch/arm/mach-vexpress/include/mach/debug-macro.S | 37 +++-
arch/arm/mach-vexpress/include/mach/irqs.h | 2 +-
arch/arm/mach-vexpress/include/mach/motherboard.h | 58 +++--
arch/arm/mach-vexpress/include/mach/uncompress.h | 13 +-
arch/arm/mach-vexpress/platsmp.c | 153 ++++++++++-
arch/arm/mach-vexpress/v2m.c | 282 ++++++++++++++++++--
arch/arm/mm/Kconfig | 2 +-
arch/arm/plat-versatile/headsmp.S | 1 +
arch/arm/plat-versatile/localtimer.c | 19 ++
23 files changed, 1628 insertions(+), 120 deletions(-)
create mode 100644 Documentation/devicetree/bindings/arm/vexpress.txt
create mode 100644 arch/arm/boot/dts/vexpress-v2m-rs1.dtsi
create mode 100644 arch/arm/boot/dts/vexpress-v2m.dtsi
create mode 100644 arch/arm/boot/dts/vexpress-v2p-ca15-tc1.dts
create mode 100644 arch/arm/boot/dts/vexpress-v2p-ca5s.dts
create mode 100644 arch/arm/boot/dts/vexpress-v2p-ca9.dts
More information about the linux-arm-kernel
mailing list