[PATCH v2 00/15] Runtime registration for local timers
Marc Zyngier
marc.zyngier at arm.com
Fri Jan 13 13:28:27 EST 2012
This patches series switches the various local timers implementation
(TWD, MCT, MSM timer) to be registered at runtime instead of being
hardwired at compile time. In the process, TWD gets an OF binding that
is used by highbank and imx6q.
Tested on EB11MP, OMAP4, Tegra and Exynos4. Based on Linus' tree as of
some random point today.
Branch also available at:
git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git local_timers-v3.3-rc0
* From initial version:
- Moved away from late_time_init, making the code even simpler
- Added a DEFINE_TWD_LOCAL_TIMER() macro to reduce the init cluter
- Updated TWD DT support to have separate nodes for timer and watchdog
- Added support for the new r8a7779 shmobile that suddenly appeared
- Fixed a tiny dts bug on imx6q
Marc Zyngier (15):
ARM: smp_twd: make local_timer_stop a symbol instead of a #define
ARM: local timers: introduce a new registration interface
ARM: smp_twd: add runtime registration support
ARM: smp_twd: add device tree support
ARM: OMAP4: convert to twd_local_timer_register() interface
ARM: plat-versatile: convert to twd_local_timer_register() interface
ARM: tegra: convert to twd_local_timer_register() interface
ARM: shmobile: convert to twd_local_timer_register() interface
ARM: ux500: convert to twd_local_timer_register() interface
ARM: highbank: convert to twd_local_timer_register() interface
ARM: imx6q: convert to twd_local_timer_register() interface
ARM: smp_twd: remove old local timer interface
ARM: local timers: convert exynos to runtime registration interface
ARM: local timers: convert MSM to runtime registration interface
ARM: local timers: make the runtime registration interface mandatory
Documentation/devicetree/bindings/arm/twd.txt | 48 +++++++++++
arch/arm/boot/dts/highbank.dts | 4 +-
arch/arm/boot/dts/imx6q.dtsi | 6 +-
arch/arm/include/asm/localtimer.h | 37 ++-------
arch/arm/include/asm/smp_twd.h | 26 +++++-
arch/arm/kernel/smp.c | 31 +++++++-
arch/arm/kernel/smp_twd.c | 113 ++++++++++++++++++++-----
arch/arm/mach-exynos/mct.c | 18 ++--
arch/arm/mach-highbank/Makefile | 1 -
arch/arm/mach-highbank/highbank.c | 5 +
arch/arm/mach-highbank/localtimer.c | 40 ---------
arch/arm/mach-imx/Makefile | 1 -
arch/arm/mach-imx/localtimer.c | 35 --------
arch/arm/mach-imx/mach-imx6q.c | 5 +
arch/arm/mach-msm/timer.c | 79 ++++++++++--------
arch/arm/mach-omap2/Makefile | 1 -
arch/arm/mach-omap2/timer-mpu.c | 39 ---------
arch/arm/mach-omap2/timer.c | 22 ++++-
arch/arm/mach-realview/realview_eb.c | 27 +++++--
arch/arm/mach-realview/realview_pb11mp.c | 21 ++++-
arch/arm/mach-realview/realview_pbx.c | 20 ++++-
arch/arm/mach-shmobile/Makefile | 1 -
arch/arm/mach-shmobile/include/mach/common.h | 2 +
arch/arm/mach-shmobile/localtimer.c | 26 ------
arch/arm/mach-shmobile/platsmp.c | 1 -
arch/arm/mach-shmobile/smp-r8a7779.c | 8 +-
arch/arm/mach-shmobile/smp-sh73a0.c | 8 +-
arch/arm/mach-shmobile/timer.c | 10 ++
arch/arm/mach-tegra/Makefile | 2 +-
arch/arm/mach-tegra/localtimer.c | 26 ------
arch/arm/mach-tegra/timer.c | 22 ++++-
arch/arm/mach-ux500/Makefile | 1 -
arch/arm/mach-ux500/cpu.c | 1 -
arch/arm/mach-ux500/localtimer.c | 29 -------
arch/arm/mach-ux500/timer.c | 32 ++++++--
arch/arm/mach-vexpress/ct-ca9x4.c | 17 +++-
arch/arm/plat-versatile/Makefile | 1 -
arch/arm/plat-versatile/localtimer.c | 27 ------
38 files changed, 412 insertions(+), 381 deletions(-)
create mode 100644 Documentation/devicetree/bindings/arm/twd.txt
delete mode 100644 arch/arm/mach-highbank/localtimer.c
delete mode 100644 arch/arm/mach-imx/localtimer.c
delete mode 100644 arch/arm/mach-omap2/timer-mpu.c
delete mode 100644 arch/arm/mach-shmobile/localtimer.c
delete mode 100644 arch/arm/mach-tegra/localtimer.c
delete mode 100644 arch/arm/mach-ux500/localtimer.c
delete mode 100644 arch/arm/plat-versatile/localtimer.c
--
1.7.7.1
More information about the linux-arm-kernel
mailing list