aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Warren <swarren@nvidia.com>2012-09-19 14:02:31 -0400
committerStephen Warren <swarren@nvidia.com>2012-11-16 14:22:16 -0500
commit2f2b7fb202a2fa93702a79d36033e5c8bee0120d (patch)
tree22d29b27f152fc0b9a87f1d80ff57dcbaa65b59d
parent9a2ab3f1fa01a146a395197153af0ae586e6a682 (diff)
ARM: tegra: define DT bindings for and instantiate timer
The Tegra timer provides a number of 29-bit timer channels, a single 32-bit free running counter, and in the Tegra30 variant, 5 watchdog modules. The first two channels may also trigger a legacy watchdog reset. Define a DT binding for this HW module, and add the module into the Tegra device tree files. Signed-off-by: Stephen Warren <swarren@nvidia.com>
-rw-r--r--Documentation/devicetree/bindings/timer/nvidia,tegra20-timer.txt21
-rw-r--r--Documentation/devicetree/bindings/timer/nvidia,tegra30-timer.txt23
-rw-r--r--arch/arm/boot/dts/tegra20.dtsi9
-rw-r--r--arch/arm/boot/dts/tegra30.dtsi11
4 files changed, 64 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/timer/nvidia,tegra20-timer.txt b/Documentation/devicetree/bindings/timer/nvidia,tegra20-timer.txt
new file mode 100644
index 00000000000..e019fdc3877
--- /dev/null
+++ b/Documentation/devicetree/bindings/timer/nvidia,tegra20-timer.txt
@@ -0,0 +1,21 @@
1NVIDIA Tegra20 timer
2
3The Tegra20 timer provides four 29-bit timer channels and a single 32-bit free
4running counter. The first two channels may also trigger a watchdog reset.
5
6Required properties:
7
8- compatible : should be "nvidia,tegra20-timer".
9- reg : Specifies base physical address and size of the registers.
10- interrupts : A list of 4 interrupts; one per timer channel.
11
12Example:
13
14timer {
15 compatible = "nvidia,tegra20-timer";
16 reg = <0x60005000 0x60>;
17 interrupts = <0 0 0x04
18 0 1 0x04
19 0 41 0x04
20 0 42 0x04>;
21};
diff --git a/Documentation/devicetree/bindings/timer/nvidia,tegra30-timer.txt b/Documentation/devicetree/bindings/timer/nvidia,tegra30-timer.txt
new file mode 100644
index 00000000000..906109d4c59
--- /dev/null
+++ b/Documentation/devicetree/bindings/timer/nvidia,tegra30-timer.txt
@@ -0,0 +1,23 @@
1NVIDIA Tegra30 timer
2
3The Tegra30 timer provides ten 29-bit timer channels, a single 32-bit free
4running counter, and 5 watchdog modules. The first two channels may also
5trigger a legacy watchdog reset.
6
7Required properties:
8
9- compatible : should be "nvidia,tegra30-timer", "nvidia,tegra20-timer".
10- reg : Specifies base physical address and size of the registers.
11- interrupts : A list of 6 interrupts; one per each of timer channels 1
12 through 5, and one for the shared interrupt for the remaining channels.
13
14timer {
15 compatible = "nvidia,tegra30-timer", "nvidia,tegra20-timer";
16 reg = <0x60005000 0x400>;
17 interrupts = <0 0 0x04
18 0 1 0x04
19 0 41 0x04
20 0 42 0x04
21 0 121 0x04
22 0 122 0x04>;
23};
diff --git a/arch/arm/boot/dts/tegra20.dtsi b/arch/arm/boot/dts/tegra20.dtsi
index fba998e3954..96c922d8bb3 100644
--- a/arch/arm/boot/dts/tegra20.dtsi
+++ b/arch/arm/boot/dts/tegra20.dtsi
@@ -108,6 +108,15 @@
108 #interrupt-cells = <3>; 108 #interrupt-cells = <3>;
109 }; 109 };
110 110
111 timer@60005000 {
112 compatible = "nvidia,tegra20-timer";
113 reg = <0x60005000 0x60>;
114 interrupts = <0 0 0x04
115 0 1 0x04
116 0 41 0x04
117 0 42 0x04>;
118 };
119
111 apbdma: dma { 120 apbdma: dma {
112 compatible = "nvidia,tegra20-apbdma"; 121 compatible = "nvidia,tegra20-apbdma";
113 reg = <0x6000a000 0x1200>; 122 reg = <0x6000a000 0x1200>;
diff --git a/arch/arm/boot/dts/tegra30.dtsi b/arch/arm/boot/dts/tegra30.dtsi
index 1f7f49aabe6..48a8320ebf0 100644
--- a/arch/arm/boot/dts/tegra30.dtsi
+++ b/arch/arm/boot/dts/tegra30.dtsi
@@ -108,6 +108,17 @@
108 #interrupt-cells = <3>; 108 #interrupt-cells = <3>;
109 }; 109 };
110 110
111 timer@60005000 {
112 compatible = "nvidia,tegra30-timer", "nvidia,tegra20-timer";
113 reg = <0x60005000 0x400>;
114 interrupts = <0 0 0x04
115 0 1 0x04
116 0 41 0x04
117 0 42 0x04
118 0 121 0x04
119 0 122 0x04>;
120 };
121
111 apbdma: dma { 122 apbdma: dma {
112 compatible = "nvidia,tegra30-apbdma", "nvidia,tegra20-apbdma"; 123 compatible = "nvidia,tegra30-apbdma", "nvidia,tegra20-apbdma";
113 reg = <0x6000a000 0x1400>; 124 reg = <0x6000a000 0x1400>;