Skip to content

Commit

Permalink
Merge branch 'timers/clockevents' of git://git.linaro.org/people/dlez…
Browse files Browse the repository at this point in the history
…cano/clockevents into timers/urgent

* New clocksource drivers for ARM SoCs to share
  • Loading branch information
KAGA-KOKO committed Jul 12, 2013
2 parents a272dcc + c1b40e4 commit b0ec636
Show file tree
Hide file tree
Showing 6 changed files with 532 additions and 0 deletions.
24 changes: 24 additions & 0 deletions Documentation/devicetree/bindings/arm/global_timer.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@

* ARM Global Timer
Cortex-A9 are often associated with a per-core Global timer.

** Timer node required properties:

- compatible : Should be "arm,cortex-a9-global-timer"
Driver supports versions r2p0 and above.

- interrupts : One interrupt to each core

- reg : Specify the base address and the size of the GT timer
register window.

- clocks : Should be phandle to a clock.

Example:

timer@2c000600 {
compatible = "arm,cortex-a9-global-timer";
reg = <0x2c000600 0x20>;
interrupts = <1 13 0xf01>;
clocks = <&arm_periph_clk>;
};
17 changes: 17 additions & 0 deletions Documentation/devicetree/bindings/timer/marvell,orion-timer.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
Marvell Orion SoC timer

Required properties:
- compatible: shall be "marvell,orion-timer"
- reg: base address of the timer register starting with TIMERS CONTROL register
- interrupt-parent: phandle of the bridge interrupt controller
- interrupts: should contain the interrupts for Timer0 and Timer1
- clocks: phandle of timer reference clock (tclk)

Example:
timer: timer {
compatible = "marvell,orion-timer";
reg = <0x20300 0x20>;
interrupt-parent = <&bridge_intc>;
interrupts = <1>, <2>;
clocks = <&core_clk 0>;
};
18 changes: 18 additions & 0 deletions drivers/clocksource/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,11 @@ config DW_APB_TIMER_OF
config ARMADA_370_XP_TIMER
bool

config ORION_TIMER
select CLKSRC_OF
select CLKSRC_MMIO
bool

config SUN4I_TIMER
bool

Expand Down Expand Up @@ -69,6 +74,19 @@ config ARM_ARCH_TIMER
bool
select CLKSRC_OF if OF

config ARM_GLOBAL_TIMER
bool
select CLKSRC_OF if OF
help
This options enables support for the ARM global timer unit

config CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
bool
depends on ARM_GLOBAL_TIMER
default y
help
Use ARM global timer clock source as sched_clock

config CLKSRC_METAG_GENERIC
def_bool y if METAG
help
Expand Down
2 changes: 2 additions & 0 deletions drivers/clocksource/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ obj-$(CONFIG_DW_APB_TIMER_OF) += dw_apb_timer_of.o
obj-$(CONFIG_CLKSRC_NOMADIK_MTU) += nomadik-mtu.o
obj-$(CONFIG_CLKSRC_DBX500_PRCMU) += clksrc-dbx500-prcmu.o
obj-$(CONFIG_ARMADA_370_XP_TIMER) += time-armada-370-xp.o
obj-$(CONFIG_ORION_TIMER) += time-orion.o
obj-$(CONFIG_ARCH_BCM2835) += bcm2835_timer.o
obj-$(CONFIG_ARCH_MARCO) += timer-marco.o
obj-$(CONFIG_ARCH_MXS) += mxs_timer.o
Expand All @@ -30,5 +31,6 @@ obj-$(CONFIG_CLKSRC_SAMSUNG_PWM) += samsung_pwm_timer.o
obj-$(CONFIG_VF_PIT_TIMER) += vf_pit_timer.o

obj-$(CONFIG_ARM_ARCH_TIMER) += arm_arch_timer.o
obj-$(CONFIG_ARM_GLOBAL_TIMER) += arm_global_timer.o
obj-$(CONFIG_CLKSRC_METAG_GENERIC) += metag_generic.o
obj-$(CONFIG_ARCH_HAS_TICK_BROADCAST) += dummy_timer.o
Loading

0 comments on commit b0ec636

Please sign in to comment.