diff options
author | Takeshi Kihara <takeshi.kihara.df@renesas.com> | 2019-01-28 18:24:33 +0900 |
---|---|---|
committer | Ryo Kataoka <ryo.kataoka.wt@renesas.com> | 2019-03-22 20:50:39 +0900 |
commit | 8ba438fd03d5b78658362401253f7e430cdc8a4f (patch) | |
tree | 2013b581a4a9bbdadcba1844d887796c23db43f5 | |
parent | a36fcaca239e26101b619b18d80d457c91786ac8 (diff) | |
download | renesas-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.dtsi | 33 | ||||
-rw-r--r-- | arch/arm64/boot/dts/renesas/r8a7796-salvator-x.dts | 8 | ||||
-rw-r--r-- | arch/arm64/boot/dts/renesas/r8a7796-salvator-xs-2x4g.dts | 134 | ||||
-rw-r--r-- | arch/arm64/boot/dts/renesas/r8a7796-salvator-xs.dts | 8 | ||||
-rw-r--r-- | arch/arm64/boot/dts/renesas/r8a7796.dtsi | 23 |
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>; |