-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge tag 'clksrc-cleanup-for-3.10-part2' of git://sources.calxeda.co…
…m/kernel/linux into late/clksrc This is the 2nd part of ARM timer clean-ups for 3.10. This series has the following changes: - Add sched_clock selection logic to select the highest frequency clock - Use full 64-bit arch timer counter for sched_clock - Convert arch timer, sp804 and integrator-cp timers to CLKSRC_OF and adapt all users to use clocksource_of_init * tag 'clksrc-cleanup-for-3.10-part2' of git://sources.calxeda.com/kernel/linux: devtree: add binding documentation for sp804 ARM: integrator-cp: convert use CLKSRC_OF for timer init ARM: versatile: use OF init for sp804 timer ARM: versatile: add versatile dtbs to dtbs target ARM: vexpress: remove extra timer-sp control register clearing ARM: dts: vexpress: disable CA9 core tile sp804 timer ARM: vexpress: remove sp804 OF init ARM: highbank: use OF init for sp804 timer ARM: timer-sp: convert to use CLKSRC_OF init OF: add empty of_device_is_available for !OF ARM: convert arm/arm64 arch timer to use CLKSRC_OF init ARM: make machine_desc->init_time default to clocksource_of_init ARM: arch_timer: use full 64-bit counter for sched_clock ARM: make sched_clock just call a function pointer ARM: sched_clock: allow changing to higher frequency counter Signed-off-by: Olof Johansson <olof@lixom.net> This has a nasty set of conflicts with the exynos MCT code, which was moved in a separate branch, and then fixed up when merged in, but still conflicts a bit here. It should have been sorted out by this merge though.
- Loading branch information
Showing
34 changed files
with
262 additions
and
191 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
ARM sp804 Dual Timers | ||
--------------------------------------- | ||
|
||
Required properties: | ||
- compatible: Should be "arm,sp804" & "arm,primecell" | ||
- interrupts: Should contain the list of Dual Timer interrupts. This is the | ||
interrupt for timer 1 and timer 2. In the case of a single entry, it is | ||
the combined interrupt or if "arm,sp804-has-irq" is present that | ||
specifies which timer interrupt is connected. | ||
- reg: Should contain location and length for dual timer register. | ||
- clocks: clocks driving the dual timer hardware. This list should be 1 or 3 | ||
clocks. With 3 clocks, the order is timer0 clock, timer1 clock, | ||
apb_pclk. A single clock can also be specified if the same clock is | ||
used for all clock inputs. | ||
|
||
Optional properties: | ||
- arm,sp804-has-irq = <#>: In the case of only 1 timer irq line connected, this | ||
specifies if the irq connection is for timer 1 or timer 2. A value of 1 | ||
or 2 should be used. | ||
|
||
Example: | ||
|
||
timer0: timer@fc800000 { | ||
compatible = "arm,sp804", "arm,primecell"; | ||
reg = <0xfc800000 0x1000>; | ||
interrupts = <0 0 4>, <0 1 4>; | ||
clocks = <&timclk1 &timclk2 &pclk>; | ||
clock-names = "timer1", "timer2", "apb_pclk"; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,15 +1,23 @@ | ||
struct clk; | ||
|
||
void __sp804_clocksource_and_sched_clock_init(void __iomem *, | ||
const char *, int); | ||
const char *, struct clk *, int); | ||
void __sp804_clockevents_init(void __iomem *, unsigned int, | ||
struct clk *, const char *); | ||
|
||
static inline void sp804_clocksource_init(void __iomem *base, const char *name) | ||
{ | ||
__sp804_clocksource_and_sched_clock_init(base, name, 0); | ||
__sp804_clocksource_and_sched_clock_init(base, name, NULL, 0); | ||
} | ||
|
||
static inline void sp804_clocksource_and_sched_clock_init(void __iomem *base, | ||
const char *name) | ||
{ | ||
__sp804_clocksource_and_sched_clock_init(base, name, 1); | ||
__sp804_clocksource_and_sched_clock_init(base, name, NULL, 1); | ||
} | ||
|
||
void sp804_clockevents_init(void __iomem *, unsigned int, const char *); | ||
static inline void sp804_clockevents_init(void __iomem *base, unsigned int irq, const char *name) | ||
{ | ||
__sp804_clockevents_init(base, irq, NULL, name); | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.