aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Horman <horms+renesas@verge.net.au>2015-11-16 12:42:32 -0500
committerSimon Horman <horms+renesas@verge.net.au>2015-11-16 12:48:12 -0500
commit26a7e06dfee97b3fb1a4491d55831de7ef4723fd (patch)
treed14236c22d5b41c296e6bc5fa23596254ddfce75
parent8005c49d9aea74d382f474ce11afbbc7d7130bec (diff)
arm64: renesas: r8a7795: Add Renesas R8A7795 SoC support
Initial version of Renesas R-Car H3 support (V10) Signed-off-by: Gaku Inami <gaku.inami.xw@bp.renesas.com> Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Magnus Damm <damm+renesas@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> Acked-by: Geert Uytterhoeven <geert+renesas@glider.be>
-rw-r--r--Documentation/devicetree/bindings/arm/shmobile.txt2
-rw-r--r--arch/arm64/Kconfig.platforms17
-rw-r--r--arch/arm64/boot/dts/Makefile1
-rw-r--r--arch/arm64/boot/dts/renesas/Makefile2
-rw-r--r--arch/arm64/boot/dts/renesas/r8a7795.dtsi83
5 files changed, 105 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/arm/shmobile.txt b/Documentation/devicetree/bindings/arm/shmobile.txt
index 40bb9007cd0d..6712ebbe5f49 100644
--- a/Documentation/devicetree/bindings/arm/shmobile.txt
+++ b/Documentation/devicetree/bindings/arm/shmobile.txt
@@ -27,6 +27,8 @@ SoCs:
27 compatible = "renesas,r8a7793" 27 compatible = "renesas,r8a7793"
28 - R-Car E2 (R8A77940) 28 - R-Car E2 (R8A77940)
29 compatible = "renesas,r8a7794" 29 compatible = "renesas,r8a7794"
30 - R-Car H3 (R8A77950)
31 compatible = "renesas,r8a7795"
30 32
31 33
32Boards: 34Boards:
diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms
index 4043c35962cc..8446f27b18df 100644
--- a/arch/arm64/Kconfig.platforms
+++ b/arch/arm64/Kconfig.platforms
@@ -67,6 +67,23 @@ config ARCH_SEATTLE
67 help 67 help
68 This enables support for AMD Seattle SOC Family 68 This enables support for AMD Seattle SOC Family
69 69
70config ARCH_SHMOBILE
71 bool
72
73config ARCH_RENESAS
74 bool "Renesas SoC Platforms"
75 select ARCH_SHMOBILE
76 select PINCTRL
77 select PM_GENERIC_DOMAINS if PM
78 help
79 This enables support for the ARMv8 based Renesas SoCs.
80
81config ARCH_R8A7795
82 bool "Renesas R-Car H3 SoC Platform"
83 depends on ARCH_RENESAS
84 help
85 This enables support for the Renesas R-Car H3 SoC.
86
70config ARCH_STRATIX10 87config ARCH_STRATIX10
71 bool "Altera's Stratix 10 SoCFPGA Family" 88 bool "Altera's Stratix 10 SoCFPGA Family"
72 help 89 help
diff --git a/arch/arm64/boot/dts/Makefile b/arch/arm64/boot/dts/Makefile
index eb3c42d97175..0e775e4d6a00 100644
--- a/arch/arm64/boot/dts/Makefile
+++ b/arch/arm64/boot/dts/Makefile
@@ -10,6 +10,7 @@ dts-dirs += hisilicon
10dts-dirs += marvell 10dts-dirs += marvell
11dts-dirs += mediatek 11dts-dirs += mediatek
12dts-dirs += qcom 12dts-dirs += qcom
13dts-dirs += renesas
13dts-dirs += rockchip 14dts-dirs += rockchip
14dts-dirs += sprd 15dts-dirs += sprd
15dts-dirs += xilinx 16dts-dirs += xilinx
diff --git a/arch/arm64/boot/dts/renesas/Makefile b/arch/arm64/boot/dts/renesas/Makefile
new file mode 100644
index 000000000000..fec69f46d65b
--- /dev/null
+++ b/arch/arm64/boot/dts/renesas/Makefile
@@ -0,0 +1,2 @@
1always := $(dtb-y)
2clean-files := *.dtb
diff --git a/arch/arm64/boot/dts/renesas/r8a7795.dtsi b/arch/arm64/boot/dts/renesas/r8a7795.dtsi
new file mode 100644
index 000000000000..8d7552020daf
--- /dev/null
+++ b/arch/arm64/boot/dts/renesas/r8a7795.dtsi
@@ -0,0 +1,83 @@
1/*
2 * Device Tree Source for the r8a7795 SoC
3 *
4 * Copyright (C) 2015 Renesas Electronics Corp.
5 *
6 * This file is licensed under the terms of the GNU General Public License
7 * version 2. This program is licensed "as is" without any warranty of any
8 * kind, whether express or implied.
9 */
10
11#include <dt-bindings/interrupt-controller/arm-gic.h>
12
13/ {
14 compatible = "renesas,r8a7795";
15 #address-cells = <2>;
16 #size-cells = <2>;
17
18 cpus {
19 #address-cells = <1>;
20 #size-cells = <0>;
21
22 /* 1 core only at this point */
23 a57_0: cpu@0 {
24 compatible = "arm,cortex-a57", "arm,armv8";
25 reg = <0x0>;
26 device_type = "cpu";
27 };
28 };
29
30 extal_clk: extal {
31 compatible = "fixed-clock";
32 #clock-cells = <0>;
33 /* This value must be overridden by the board */
34 clock-frequency = <0>;
35 };
36
37 extalr_clk: extalr {
38 compatible = "fixed-clock";
39 #clock-cells = <0>;
40 /* This value must be overridden by the board */
41 clock-frequency = <0>;
42 };
43
44 soc {
45 compatible = "simple-bus";
46 interrupt-parent = <&gic>;
47 #address-cells = <2>;
48 #size-cells = <2>;
49 ranges;
50
51 gic: interrupt-controller@0xf1010000 {
52 compatible = "arm,gic-400";
53 #interrupt-cells = <3>;
54 #address-cells = <0>;
55 interrupt-controller;
56 reg = <0x0 0xf1010000 0 0x1000>,
57 <0x0 0xf1020000 0 0x2000>;
58 interrupts = <GIC_PPI 9
59 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_HIGH)>;
60 };
61
62 timer {
63 compatible = "arm,armv8-timer";
64 interrupts = <GIC_PPI 13
65 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>,
66 <GIC_PPI 14
67 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>,
68 <GIC_PPI 11
69 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>,
70 <GIC_PPI 10
71 (GIC_CPU_MASK_SIMPLE(1) | IRQ_TYPE_LEVEL_LOW)>;
72 };
73
74 cpg: clock-controller@e6150000 {
75 compatible = "renesas,r8a7795-cpg-mssr";
76 reg = <0 0xe6150000 0 0x1000>;
77 clocks = <&extal_clk>, <&extalr_clk>;
78 clock-names = "extal", "extalr";
79 #clock-cells = <2>;
80 #power-domain-cells = <0>;
81 };
82 };
83};