diff options
author | Simon Horman <horms+renesas@verge.net.au> | 2015-11-16 12:42:32 -0500 |
---|---|---|
committer | Simon Horman <horms+renesas@verge.net.au> | 2015-11-16 12:48:12 -0500 |
commit | 26a7e06dfee97b3fb1a4491d55831de7ef4723fd (patch) | |
tree | d14236c22d5b41c296e6bc5fa23596254ddfce75 | |
parent | 8005c49d9aea74d382f474ce11afbbc7d7130bec (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.txt | 2 | ||||
-rw-r--r-- | arch/arm64/Kconfig.platforms | 17 | ||||
-rw-r--r-- | arch/arm64/boot/dts/Makefile | 1 | ||||
-rw-r--r-- | arch/arm64/boot/dts/renesas/Makefile | 2 | ||||
-rw-r--r-- | arch/arm64/boot/dts/renesas/r8a7795.dtsi | 83 |
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 | ||
32 | Boards: | 34 | Boards: |
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 | ||
70 | config ARCH_SHMOBILE | ||
71 | bool | ||
72 | |||
73 | config 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 | |||
81 | config 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 | |||
70 | config ARCH_STRATIX10 | 87 | config 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 | |||
10 | dts-dirs += marvell | 10 | dts-dirs += marvell |
11 | dts-dirs += mediatek | 11 | dts-dirs += mediatek |
12 | dts-dirs += qcom | 12 | dts-dirs += qcom |
13 | dts-dirs += renesas | ||
13 | dts-dirs += rockchip | 14 | dts-dirs += rockchip |
14 | dts-dirs += sprd | 15 | dts-dirs += sprd |
15 | dts-dirs += xilinx | 16 | dts-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 @@ | |||
1 | always := $(dtb-y) | ||
2 | clean-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 | }; | ||