aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTakeshi Kihara <takeshi.kihara.df@renesas.com>2019-01-28 18:24:33 +0900
committerRyo Kataoka <ryo.kataoka.wt@renesas.com>2019-03-22 20:50:39 +0900
commit8ba438fd03d5b78658362401253f7e430cdc8a4f (patch)
tree2013b581a4a9bbdadcba1844d887796c23db43f5
parenta36fcaca239e26101b619b18d80d457c91786ac8 (diff)
downloadrenesas-bsp-8ba438fd03d5b78658362401253f7e430cdc8a4f.tar.gz
arm64: dts: r8a7796: Add support for R-Car M3 ES3.0
Update r8a7796.dtsi so it corresponds to R-Car M3 ES3.0 or later: - The FCPCI0 module do not exist in ES3.0, the device node is deleted. - The FCPCS module power domain is changed from A3VC to A2VC1. - The iVDP1C module clock supply and software reset register bits using CPG changed from bit28 to bit30. - The iVDP1C module power domain is changed from A2VC0 to A2VC1. - The VDPB module power domain is changed from A2VC0 to A2VC1. Move support for ES1.x revision R-Car M3 SoC separate into r8a7796-es1.dtsi. Signed-off-by: Takeshi Kihara <takeshi.kihara.df@renesas.com>
-rw-r--r--arch/arm64/boot/dts/renesas/r8a7796-es1.dtsi33
-rw-r--r--arch/arm64/boot/dts/renesas/r8a7796-salvator-x.dts8
-rw-r--r--arch/arm64/boot/dts/renesas/r8a7796-salvator-xs-2x4g.dts134
-rw-r--r--arch/arm64/boot/dts/renesas/r8a7796-salvator-xs.dts8
-rw-r--r--arch/arm64/boot/dts/renesas/r8a7796.dtsi23
5 files changed, 179 insertions, 27 deletions
diff --git a/arch/arm64/boot/dts/renesas/r8a7796-es1.dtsi b/arch/arm64/boot/dts/renesas/r8a7796-es1.dtsi
new file mode 100644
index 0000000000000..db394c7e77335
--- /dev/null
+++ b/arch/arm64/boot/dts/renesas/r8a7796-es1.dtsi
@@ -0,0 +1,33 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Device Tree Source for the R-Car M3 (R8A7796) ES1.x SoC
+ *
+ * Copyright (C) 2019 Renesas Electronics Corp.
+ */
+
+#include "r8a7796.dtsi"
+
+&soc {
+ fcpci0: vcp4@fe8df000 {
+ compatible = "renesas,vcp4-fcpci0";
+ reg = <0 0xfe8df000 0 0x200>;
+ clocks = <&cpg CPG_MOD 617>;
+ power-domains = <&sysc R8A7796_PD_A3VC>;
+ resets = <&cpg 617>;
+ renesas,#ch = <1>;
+ };
+
+ fcpcs: vcp4@fe90f000 {
+ power-domains = <&sysc R8A7796_PD_A3VC>;
+ };
+
+ ivdp1c: vcp4@fe8d0000 {
+ clocks = <&cpg CPG_MOD 128>;
+ power-domains = <&sysc R8A7796_PD_A2VC0>;
+ resets = <&cpg 128>;
+ };
+
+ vdpb: vcp4@fe900000 {
+ power-domains = <&sysc R8A7796_PD_A2VC0>;
+ };
+};
diff --git a/arch/arm64/boot/dts/renesas/r8a7796-salvator-x.dts b/arch/arm64/boot/dts/renesas/r8a7796-salvator-x.dts
index 02a938b416d0b..cf92aa3939e31 100644
--- a/arch/arm64/boot/dts/renesas/r8a7796-salvator-x.dts
+++ b/arch/arm64/boot/dts/renesas/r8a7796-salvator-x.dts
@@ -1,16 +1,16 @@
// SPDX-License-Identifier: GPL-2.0
/*
- * Device Tree Source for the Salvator-X board with R-Car M3-W
+ * Device Tree Source for the Salvator-X board with R-Car M3-W ES1.x
*
- * Copyright (C) 2016 Renesas Electronics Corp.
+ * Copyright (C) 2016-2019 Renesas Electronics Corp.
*/
/dts-v1/;
-#include "r8a7796.dtsi"
+#include "r8a7796-es1.dtsi"
#include "salvator-x.dtsi"
/ {
- model = "Renesas Salvator-X board based on r8a7796";
+ model = "Renesas Salvator-X board based on r8a7796 ES1.x";
compatible = "renesas,salvator-x", "renesas,r8a7796";
memory@48000000 {
diff --git a/arch/arm64/boot/dts/renesas/r8a7796-salvator-xs-2x4g.dts b/arch/arm64/boot/dts/renesas/r8a7796-salvator-xs-2x4g.dts
index ceacc90e991ad..664dc9250bbb7 100644
--- a/arch/arm64/boot/dts/renesas/r8a7796-salvator-xs-2x4g.dts
+++ b/arch/arm64/boot/dts/renesas/r8a7796-salvator-xs-2x4g.dts
@@ -1,14 +1,16 @@
/*
- * Device Tree Source for the Salvator-X 2nd version board with R-Car M3 ES3.0
+ * Device Tree Source for the Salvator-X 2nd version board with R-Car M3 ES3.0+
*
- * Copyright (C) 2018 Renesas Electronics Corp.
+ * Copyright (C) 2018-2019 Renesas Electronics Corp.
*
* This file is licensed under the terms of the GNU General Public License
* version 2. This program is licensed "as is" without any warranty of any
* kind, whether express or implied.
*/
-#include "r8a7796-salvator-xs.dts"
+/dts-v1/;
+#include "r8a7796.dtsi"
+#include "salvator-xs.dtsi"
/ {
model = "Renesas Salvator-X 2nd version board based on r8a7796 ES3.0+ with 8GiB (2 x 4 GiB)";
@@ -29,4 +31,130 @@
device_type = "memory";
reg = <0x6 0x00000000 0x1 0x00000000>;
};
+
+ reserved-memory {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ ranges;
+
+ /* device specific region for Lossy Decompression */
+ lossy_decompress: linux,lossy_decompress@54000000 {
+ no-map;
+ reg = <0x00000000 0x54000000 0x0 0x03000000>;
+ };
+
+ /* For Audio DSP */
+ adsp_reserved: linux,adsp@57000000 {
+ compatible = "shared-dma-pool";
+ reusable;
+ reg = <0x00000000 0x57000000 0x0 0x01000000>;
+ };
+
+ /* global autoconfigured region for contiguous allocations */
+ linux,cma@58000000 {
+ compatible = "shared-dma-pool";
+ reusable;
+ reg = <0x00000000 0x58000000 0x0 0x18000000>;
+ linux,cma-default;
+ };
+
+ /* device specific region for contiguous allocations */
+ mmp_reserved: linux,multimedia@70000000 {
+ compatible = "shared-dma-pool";
+ reusable;
+ reg = <0x00000000 0x70000000 0x0 0x10000000>;
+ };
+ };
+
+ mmngr {
+ compatible = "renesas,mmngr";
+ memory-region = <&mmp_reserved>, <&lossy_decompress>;
+ };
+
+ mmngrbuf {
+ compatible = "renesas,mmngrbuf";
+ };
+
+ vspm_if {
+ compatible = "renesas,vspm_if";
+ };
+};
+
+&adsp {
+ status = "okay";
+ memory-region = <&adsp_reserved>;
+};
+
+&du {
+ clocks = <&cpg CPG_MOD 724>,
+ <&cpg CPG_MOD 723>,
+ <&cpg CPG_MOD 722>,
+ <&versaclock6 1>,
+ <&x21_clk>,
+ <&versaclock6 2>;
+ clock-names = "du.0", "du.1", "du.2",
+ "dclkin.0", "dclkin.1", "dclkin.2";
+};
+
+&sound_card {
+ dais = <&rsnd_port0 /* ak4613 */
+ &rsnd_port1>; /* HDMI0 */
+};
+
+&hdmi0 {
+ status = "okay";
+
+ ports {
+ port@1 {
+ reg = <1>;
+ rcar_dw_hdmi0_out: endpoint {
+ remote-endpoint = <&hdmi0_con>;
+ };
+ };
+ port@2 {
+ reg = <2>;
+ dw_hdmi0_snd_in: endpoint {
+ remote-endpoint = <&rsnd_endpoint1>;
+ };
+ };
+ };
+};
+
+&hdmi0_con {
+ remote-endpoint = <&rcar_dw_hdmi0_out>;
+};
+
+&lvds0 {
+ ports {
+ port@1 {
+ lvds0_out: endpoint {
+ remote-endpoint = <&lvds_in>;
+ };
+ };
+ };
+};
+
+&rcar_sound {
+ ports {
+ /* rsnd_port0 is on salvator-common */
+ rsnd_port1: port@1 {
+ rsnd_endpoint1: endpoint {
+ remote-endpoint = <&dw_hdmi0_snd_in>;
+
+ dai-format = "i2s";
+ bitclock-master = <&rsnd_endpoint1>;
+ frame-master = <&rsnd_endpoint1>;
+
+ playback = <&ssi2>;
+ };
+ };
+ };
+};
+
+&vspb {
+ status = "okay";
+};
+
+&vspi0 {
+ status = "okay";
};
diff --git a/arch/arm64/boot/dts/renesas/r8a7796-salvator-xs.dts b/arch/arm64/boot/dts/renesas/r8a7796-salvator-xs.dts
index bd66be180d6d8..7d39dc96ac8a8 100644
--- a/arch/arm64/boot/dts/renesas/r8a7796-salvator-xs.dts
+++ b/arch/arm64/boot/dts/renesas/r8a7796-salvator-xs.dts
@@ -1,16 +1,16 @@
// SPDX-License-Identifier: GPL-2.0
/*
- * Device Tree Source for the Salvator-X 2nd version board with R-Car M3-W
+ * Device Tree Source for the Salvator-X 2nd version board with R-Car M3-W ES1.x
*
- * Copyright (C) 2015-2017 Renesas Electronics Corp.
+ * Copyright (C) 2015-2019 Renesas Electronics Corp.
*/
/dts-v1/;
-#include "r8a7796.dtsi"
+#include "r8a7796-es1.dtsi"
#include "salvator-xs.dtsi"
/ {
- model = "Renesas Salvator-X 2nd version board based on r8a7796";
+ model = "Renesas Salvator-X 2nd version board based on r8a7796 ES1.x";
compatible = "renesas,salvator-xs", "renesas,r8a7796";
memory@48000000 {
diff --git a/arch/arm64/boot/dts/renesas/r8a7796.dtsi b/arch/arm64/boot/dts/renesas/r8a7796.dtsi
index c00d1da641987..85326d09a5d61 100644
--- a/arch/arm64/boot/dts/renesas/r8a7796.dtsi
+++ b/arch/arm64/boot/dts/renesas/r8a7796.dtsi
@@ -2,7 +2,7 @@
/*
* Device Tree Source for the R-Car M3-W (R8A77960) SoC
*
- * Copyright (C) 2016-2017 Renesas Electronics Corp.
+ * Copyright (C) 2016-2019 Renesas Electronics Corp.
*/
#include <dt-bindings/clock/r8a7796-cpg-mssr.h>
@@ -805,7 +805,7 @@
clock-frequency = <0>;
};
- soc {
+ soc: soc {
compatible = "simple-bus";
interrupt-parent = <&gic>;
#address-cells = <2>;
@@ -2830,20 +2830,11 @@
resets = <&cpg 822>;
};
- fcpci0: vcp4@fe8df000 {
- compatible = "renesas,vcp4-fcpci0";
- reg = <0 0xfe8df000 0 0x200>;
- clocks = <&cpg CPG_MOD 617>;
- power-domains = <&sysc R8A7796_PD_A3VC>;
- resets = <&cpg 617>;
- renesas,#ch = <1>;
- };
-
fcpcs: vcp4@fe90f000 {
compatible = "renesas,vcp4-fcpcs";
reg = <0 0xfe90f000 0 0x200>;
clocks = <&cpg CPG_MOD 619>;
- power-domains = <&sysc R8A7796_PD_A3VC>;
+ power-domains = <&sysc R8A7796_PD_A2VC1>;
resets = <&cpg 619>;
renesas,#ch = <0>;
};
@@ -2854,9 +2845,9 @@
interrupts = <GIC_SPI 380 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 381 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 223 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&cpg CPG_MOD 128>;
- power-domains = <&sysc R8A7796_PD_A2VC0>;
- resets = <&cpg 128>;
+ clocks = <&cpg CPG_MOD 130>;
+ power-domains = <&sysc R8A7796_PD_A2VC1>;
+ resets = <&cpg 130>;
renesas,#ch = <2>;
renesas,#fcp_ch = <1>;
};
@@ -2879,7 +2870,7 @@
interrupts = <GIC_SPI 240 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 241 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cpg CPG_MOD 131>;
- power-domains = <&sysc R8A7796_PD_A2VC0>;
+ power-domains = <&sysc R8A7796_PD_A2VC1>;
resets = <&cpg 131>;
renesas,#ch = <1>;
renesas,#fcp_ch = <0>;