diff options
author | Arnd Bergmann <arnd@arndb.de> | 2014-09-11 03:45:18 -0400 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2014-09-11 03:45:18 -0400 |
commit | 60f91268ee29bd2303d94e8e86be40edc0ecb92d (patch) | |
tree | ba2c976c3b30438eb415cc9e725ed51fb5a37e8e | |
parent | 138310e18b70caed1b7acf02a2c97170dcb3c55d (diff) | |
parent | 48a0d1e07d99ecfd1e5922dd22986d5813f17207 (diff) |
Merge tag 'renesas-dt-timers2-for-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/soc
Pull "Second Round of Renesas ARM Based SoC DT Timers Updates for v3.18" from Simon Horman:
* kzm9g-reference: Enable CMT1 in device tree
* Use SoC-specific timer compat strings
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
* tag 'renesas-dt-timers2-for-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
ARM: shmobile: kzm9g-reference: Enable CMT1 in device tree
ARM: shmobile: sh73a0: Add CMT1 device to DT
ARM: shmobile: r8a7740: Use SoC-specific 48-bit CMT compat string
ARM: shmobile: r8a7779: Use SoC-specific TMU compat string
ARM: shmobile: r8a7791: Use SoC-specific 48-bit CMT compat string
ARM: shmobile: r7s72100: Use SoC-specific MTU2 compat string
ARM: shmobile: r8a7790: Use SoC-specific 48-bit CMT compat string
-rw-r--r-- | arch/arm/boot/dts/r7s72100.dtsi | 2 | ||||
-rw-r--r-- | arch/arm/boot/dts/r8a7740.dtsi | 2 | ||||
-rw-r--r-- | arch/arm/boot/dts/r8a7779.dtsi | 6 | ||||
-rw-r--r-- | arch/arm/boot/dts/r8a7790.dtsi | 4 | ||||
-rw-r--r-- | arch/arm/boot/dts/r8a7791.dtsi | 4 | ||||
-rw-r--r-- | arch/arm/boot/dts/sh73a0-kzm9g-reference.dts | 4 | ||||
-rw-r--r-- | arch/arm/boot/dts/sh73a0.dtsi | 10 | ||||
-rw-r--r-- | arch/arm/mach-shmobile/setup-sh73a0.c | 11 |
8 files changed, 24 insertions, 19 deletions
diff --git a/arch/arm/boot/dts/r7s72100.dtsi b/arch/arm/boot/dts/r7s72100.dtsi index 1d28d01c163c..801a556e264b 100644 --- a/arch/arm/boot/dts/r7s72100.dtsi +++ b/arch/arm/boot/dts/r7s72100.dtsi | |||
@@ -230,7 +230,7 @@ | |||
230 | }; | 230 | }; |
231 | 231 | ||
232 | mtu2: timer@fcff0000 { | 232 | mtu2: timer@fcff0000 { |
233 | compatible = "renesas,mtu2"; | 233 | compatible = "renesas,mtu2-r7s72100", "renesas,mtu2"; |
234 | reg = <0xfcff0000 0x400>; | 234 | reg = <0xfcff0000 0x400>; |
235 | interrupts = <0 107 IRQ_TYPE_LEVEL_HIGH>; | 235 | interrupts = <0 107 IRQ_TYPE_LEVEL_HIGH>; |
236 | interrupt-names = "tgi0a"; | 236 | interrupt-names = "tgi0a"; |
diff --git a/arch/arm/boot/dts/r8a7740.dtsi b/arch/arm/boot/dts/r8a7740.dtsi index 1067a96c8425..d46c213a17ad 100644 --- a/arch/arm/boot/dts/r8a7740.dtsi +++ b/arch/arm/boot/dts/r8a7740.dtsi | |||
@@ -42,7 +42,7 @@ | |||
42 | }; | 42 | }; |
43 | 43 | ||
44 | cmt1: timer@e6138000 { | 44 | cmt1: timer@e6138000 { |
45 | compatible = "renesas,cmt-48"; | 45 | compatible = "renesas,cmt-48-r8a7740", "renesas,cmt-48"; |
46 | reg = <0xe6138000 0x170>; | 46 | reg = <0xe6138000 0x170>; |
47 | interrupts = <0 58 IRQ_TYPE_LEVEL_HIGH>; | 47 | interrupts = <0 58 IRQ_TYPE_LEVEL_HIGH>; |
48 | clocks = <&mstp3_clks R8A7740_CLK_CMT1>; | 48 | clocks = <&mstp3_clks R8A7740_CLK_CMT1>; |
diff --git a/arch/arm/boot/dts/r8a7779.dtsi b/arch/arm/boot/dts/r8a7779.dtsi index 463e3fd569b6..72891e5f0f1b 100644 --- a/arch/arm/boot/dts/r8a7779.dtsi +++ b/arch/arm/boot/dts/r8a7779.dtsi | |||
@@ -267,7 +267,7 @@ | |||
267 | }; | 267 | }; |
268 | 268 | ||
269 | tmu0: timer@ffd80000 { | 269 | tmu0: timer@ffd80000 { |
270 | compatible = "renesas,tmu"; | 270 | compatible = "renesas,tmu-r8a7779", "renesas,tmu"; |
271 | reg = <0xffd80000 0x30>; | 271 | reg = <0xffd80000 0x30>; |
272 | interrupts = <0 32 IRQ_TYPE_LEVEL_HIGH>, | 272 | interrupts = <0 32 IRQ_TYPE_LEVEL_HIGH>, |
273 | <0 33 IRQ_TYPE_LEVEL_HIGH>, | 273 | <0 33 IRQ_TYPE_LEVEL_HIGH>, |
@@ -281,7 +281,7 @@ | |||
281 | }; | 281 | }; |
282 | 282 | ||
283 | tmu1: timer@ffd81000 { | 283 | tmu1: timer@ffd81000 { |
284 | compatible = "renesas,tmu"; | 284 | compatible = "renesas,tmu-r8a7779", "renesas,tmu"; |
285 | reg = <0xffd81000 0x30>; | 285 | reg = <0xffd81000 0x30>; |
286 | interrupts = <0 36 IRQ_TYPE_LEVEL_HIGH>, | 286 | interrupts = <0 36 IRQ_TYPE_LEVEL_HIGH>, |
287 | <0 37 IRQ_TYPE_LEVEL_HIGH>, | 287 | <0 37 IRQ_TYPE_LEVEL_HIGH>, |
@@ -295,7 +295,7 @@ | |||
295 | }; | 295 | }; |
296 | 296 | ||
297 | tmu2: timer@ffd82000 { | 297 | tmu2: timer@ffd82000 { |
298 | compatible = "renesas,tmu"; | 298 | compatible = "renesas,tmu-r8a7779", "renesas,tmu"; |
299 | reg = <0xffd82000 0x30>; | 299 | reg = <0xffd82000 0x30>; |
300 | interrupts = <0 40 IRQ_TYPE_LEVEL_HIGH>, | 300 | interrupts = <0 40 IRQ_TYPE_LEVEL_HIGH>, |
301 | <0 41 IRQ_TYPE_LEVEL_HIGH>, | 301 | <0 41 IRQ_TYPE_LEVEL_HIGH>, |
diff --git a/arch/arm/boot/dts/r8a7790.dtsi b/arch/arm/boot/dts/r8a7790.dtsi index 7218bfff0bca..aa146d2d1022 100644 --- a/arch/arm/boot/dts/r8a7790.dtsi +++ b/arch/arm/boot/dts/r8a7790.dtsi | |||
@@ -207,7 +207,7 @@ | |||
207 | }; | 207 | }; |
208 | 208 | ||
209 | cmt0: timer@ffca0000 { | 209 | cmt0: timer@ffca0000 { |
210 | compatible = "renesas,cmt-48-gen2"; | 210 | compatible = "renesas,cmt-48-r8a7790", "renesas,cmt-48-gen2"; |
211 | reg = <0 0xffca0000 0 0x1004>; | 211 | reg = <0 0xffca0000 0 0x1004>; |
212 | interrupts = <0 142 IRQ_TYPE_LEVEL_HIGH>, | 212 | interrupts = <0 142 IRQ_TYPE_LEVEL_HIGH>, |
213 | <0 143 IRQ_TYPE_LEVEL_HIGH>; | 213 | <0 143 IRQ_TYPE_LEVEL_HIGH>; |
@@ -220,7 +220,7 @@ | |||
220 | }; | 220 | }; |
221 | 221 | ||
222 | cmt1: timer@e6130000 { | 222 | cmt1: timer@e6130000 { |
223 | compatible = "renesas,cmt-48-gen2"; | 223 | compatible = "renesas,cmt-48-r8a7790", "renesas,cmt-48-gen2"; |
224 | reg = <0 0xe6130000 0 0x1004>; | 224 | reg = <0 0xe6130000 0 0x1004>; |
225 | interrupts = <0 120 IRQ_TYPE_LEVEL_HIGH>, | 225 | interrupts = <0 120 IRQ_TYPE_LEVEL_HIGH>, |
226 | <0 121 IRQ_TYPE_LEVEL_HIGH>, | 226 | <0 121 IRQ_TYPE_LEVEL_HIGH>, |
diff --git a/arch/arm/boot/dts/r8a7791.dtsi b/arch/arm/boot/dts/r8a7791.dtsi index bdb9ac1509f8..e270f38d827f 100644 --- a/arch/arm/boot/dts/r8a7791.dtsi +++ b/arch/arm/boot/dts/r8a7791.dtsi | |||
@@ -190,7 +190,7 @@ | |||
190 | }; | 190 | }; |
191 | 191 | ||
192 | cmt0: timer@ffca0000 { | 192 | cmt0: timer@ffca0000 { |
193 | compatible = "renesas,cmt-48-gen2"; | 193 | compatible = "renesas,cmt-48-r8a7791", "renesas,cmt-48-gen2"; |
194 | reg = <0 0xffca0000 0 0x1004>; | 194 | reg = <0 0xffca0000 0 0x1004>; |
195 | interrupts = <0 142 IRQ_TYPE_LEVEL_HIGH>, | 195 | interrupts = <0 142 IRQ_TYPE_LEVEL_HIGH>, |
196 | <0 143 IRQ_TYPE_LEVEL_HIGH>; | 196 | <0 143 IRQ_TYPE_LEVEL_HIGH>; |
@@ -203,7 +203,7 @@ | |||
203 | }; | 203 | }; |
204 | 204 | ||
205 | cmt1: timer@e6130000 { | 205 | cmt1: timer@e6130000 { |
206 | compatible = "renesas,cmt-48-gen2"; | 206 | compatible = "renesas,cmt-48-r8a7791", "renesas,cmt-48-gen2"; |
207 | reg = <0 0xe6130000 0 0x1004>; | 207 | reg = <0 0xe6130000 0 0x1004>; |
208 | interrupts = <0 120 IRQ_TYPE_LEVEL_HIGH>, | 208 | interrupts = <0 120 IRQ_TYPE_LEVEL_HIGH>, |
209 | <0 121 IRQ_TYPE_LEVEL_HIGH>, | 209 | <0 121 IRQ_TYPE_LEVEL_HIGH>, |
diff --git a/arch/arm/boot/dts/sh73a0-kzm9g-reference.dts b/arch/arm/boot/dts/sh73a0-kzm9g-reference.dts index 18662aec2ec4..99659db97e89 100644 --- a/arch/arm/boot/dts/sh73a0-kzm9g-reference.dts +++ b/arch/arm/boot/dts/sh73a0-kzm9g-reference.dts | |||
@@ -173,6 +173,10 @@ | |||
173 | }; | 173 | }; |
174 | }; | 174 | }; |
175 | 175 | ||
176 | &cmt1 { | ||
177 | status = "ok"; | ||
178 | }; | ||
179 | |||
176 | &i2c0 { | 180 | &i2c0 { |
177 | status = "okay"; | 181 | status = "okay"; |
178 | as3711@40 { | 182 | as3711@40 { |
diff --git a/arch/arm/boot/dts/sh73a0.dtsi b/arch/arm/boot/dts/sh73a0.dtsi index 175729e59170..d7f52cf31350 100644 --- a/arch/arm/boot/dts/sh73a0.dtsi +++ b/arch/arm/boot/dts/sh73a0.dtsi | |||
@@ -47,6 +47,16 @@ | |||
47 | <0 56 IRQ_TYPE_LEVEL_HIGH>; | 47 | <0 56 IRQ_TYPE_LEVEL_HIGH>; |
48 | }; | 48 | }; |
49 | 49 | ||
50 | cmt1: timer@e6138000 { | ||
51 | compatible = "renesas,cmt-48-sh73a0", "renesas,cmt-48"; | ||
52 | reg = <0xe6138000 0x200>; | ||
53 | interrupts = <0 65 IRQ_TYPE_LEVEL_HIGH>; | ||
54 | |||
55 | renesas,channels-mask = <0x3f>; | ||
56 | |||
57 | status = "disabled"; | ||
58 | }; | ||
59 | |||
50 | irqpin0: irqpin@e6900000 { | 60 | irqpin0: irqpin@e6900000 { |
51 | compatible = "renesas,intc-irqpin-sh73a0", "renesas,intc-irqpin"; | 61 | compatible = "renesas,intc-irqpin-sh73a0", "renesas,intc-irqpin"; |
52 | #interrupt-cells = <2>; | 62 | #interrupt-cells = <2>; |
diff --git a/arch/arm/mach-shmobile/setup-sh73a0.c b/arch/arm/mach-shmobile/setup-sh73a0.c index 00853053f5b6..b7bd8e509668 100644 --- a/arch/arm/mach-shmobile/setup-sh73a0.c +++ b/arch/arm/mach-shmobile/setup-sh73a0.c | |||
@@ -697,10 +697,6 @@ static struct platform_device irqpin3_device = { | |||
697 | }, | 697 | }, |
698 | }; | 698 | }; |
699 | 699 | ||
700 | static struct platform_device *sh73a0_devices_dt[] __initdata = { | ||
701 | &cmt1_device, | ||
702 | }; | ||
703 | |||
704 | static struct platform_device *sh73a0_early_devices[] __initdata = { | 700 | static struct platform_device *sh73a0_early_devices[] __initdata = { |
705 | &scif0_device, | 701 | &scif0_device, |
706 | &scif1_device, | 702 | &scif1_device, |
@@ -713,6 +709,7 @@ static struct platform_device *sh73a0_early_devices[] __initdata = { | |||
713 | &scif8_device, | 709 | &scif8_device, |
714 | &tmu0_device, | 710 | &tmu0_device, |
715 | &ipmmu_device, | 711 | &ipmmu_device, |
712 | &cmt1_device, | ||
716 | }; | 713 | }; |
717 | 714 | ||
718 | static struct platform_device *sh73a0_late_devices[] __initdata = { | 715 | static struct platform_device *sh73a0_late_devices[] __initdata = { |
@@ -737,8 +734,6 @@ void __init sh73a0_add_standard_devices(void) | |||
737 | /* Clear software reset bit on SY-DMAC module */ | 734 | /* Clear software reset bit on SY-DMAC module */ |
738 | __raw_writel(__raw_readl(SRCR2) & ~(1 << 18), SRCR2); | 735 | __raw_writel(__raw_readl(SRCR2) & ~(1 << 18), SRCR2); |
739 | 736 | ||
740 | platform_add_devices(sh73a0_devices_dt, | ||
741 | ARRAY_SIZE(sh73a0_devices_dt)); | ||
742 | platform_add_devices(sh73a0_early_devices, | 737 | platform_add_devices(sh73a0_early_devices, |
743 | ARRAY_SIZE(sh73a0_early_devices)); | 738 | ARRAY_SIZE(sh73a0_early_devices)); |
744 | platform_add_devices(sh73a0_late_devices, | 739 | platform_add_devices(sh73a0_late_devices, |
@@ -763,8 +758,6 @@ void __init sh73a0_earlytimer_init(void) | |||
763 | 758 | ||
764 | void __init sh73a0_add_early_devices(void) | 759 | void __init sh73a0_add_early_devices(void) |
765 | { | 760 | { |
766 | early_platform_add_devices(sh73a0_devices_dt, | ||
767 | ARRAY_SIZE(sh73a0_devices_dt)); | ||
768 | early_platform_add_devices(sh73a0_early_devices, | 761 | early_platform_add_devices(sh73a0_early_devices, |
769 | ARRAY_SIZE(sh73a0_early_devices)); | 762 | ARRAY_SIZE(sh73a0_early_devices)); |
770 | 763 | ||
@@ -779,8 +772,6 @@ void __init sh73a0_add_standard_devices_dt(void) | |||
779 | /* clocks are setup late during boot in the case of DT */ | 772 | /* clocks are setup late during boot in the case of DT */ |
780 | sh73a0_clock_init(); | 773 | sh73a0_clock_init(); |
781 | 774 | ||
782 | platform_add_devices(sh73a0_devices_dt, | ||
783 | ARRAY_SIZE(sh73a0_devices_dt)); | ||
784 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); | 775 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); |
785 | } | 776 | } |
786 | 777 | ||