diff mbox series

[v5,7/8] arm64: dts: renesas: Add CMM units to Gen3 SoCs

Message ID 20191015104621.62514-8-jacopo+renesas@jmondi.org (mailing list archive)
State Superseded
Delegated to: Geert Uytterhoeven
Headers show
Series drm: rcar-du: Add Color Management Module (CMM) | expand

Commit Message

Jacopo Mondi Oct. 15, 2019, 10:46 a.m. UTC
Add CMM units to Renesas R-Car Gen3 SoC that support it, and reference them
from the Display Unit they are connected to.

Sort the 'vsps', 'renesas,cmm' and 'status' properties in the DU unit
consistently in all the involved DTS.

Signed-off-by: Jacopo Mondi <jacopo+renesas@jmondi.org>
---
 arch/arm64/boot/dts/renesas/r8a7795.dtsi  | 39 +++++++++++++++++++++++
 arch/arm64/boot/dts/renesas/r8a7796.dtsi  | 31 +++++++++++++++++-
 arch/arm64/boot/dts/renesas/r8a77965.dtsi | 31 +++++++++++++++++-
 arch/arm64/boot/dts/renesas/r8a77990.dtsi | 21 ++++++++++++
 arch/arm64/boot/dts/renesas/r8a77995.dtsi | 21 ++++++++++++
 5 files changed, 141 insertions(+), 2 deletions(-)

--
2.23.0

Comments

Kieran Bingham Oct. 15, 2019, 12:52 p.m. UTC | #1
Hi Jacopo,

On 15/10/2019 11:46, Jacopo Mondi wrote:
> Add CMM units to Renesas R-Car Gen3 SoC that support it, and reference them
> from the Display Unit they are connected to.
> 
> Sort the 'vsps', 'renesas,cmm' and 'status' properties in the DU unit
> consistently in all the involved DTS.
> 

Going through this, I think I'm happy, except for a 'future' gotcha
detailed below.

The H3-N is possibly going to cause some issues (not
supporting/connecting/using the CMM2) ... but as we don't really have
that yet ... I'm going to say "la la la " ... and put this here:

Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>


> Signed-off-by: Jacopo Mondi <jacopo+renesas@jmondi.org>
> ---
>  arch/arm64/boot/dts/renesas/r8a7795.dtsi  | 39 +++++++++++++++++++++++
>  arch/arm64/boot/dts/renesas/r8a7796.dtsi  | 31 +++++++++++++++++-
>  arch/arm64/boot/dts/renesas/r8a77965.dtsi | 31 +++++++++++++++++-
>  arch/arm64/boot/dts/renesas/r8a77990.dtsi | 21 ++++++++++++
>  arch/arm64/boot/dts/renesas/r8a77995.dtsi | 21 ++++++++++++
>  5 files changed, 141 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm64/boot/dts/renesas/r8a7795.dtsi b/arch/arm64/boot/dts/renesas/r8a7795.dtsi
> index 6675462f7585..e16757af8c27 100644
> --- a/arch/arm64/boot/dts/renesas/r8a7795.dtsi
> +++ b/arch/arm64/boot/dts/renesas/r8a7795.dtsi
> @@ -2939,6 +2939,42 @@
>  			iommus = <&ipmmu_vi1 10>;
>  		};
> 
> +		cmm0: cmm@fea40000 {
> +			compatible = "renesas,r8a7795-cmm",
> +				     "renesas,rcar-gen3-cmm";
> +			reg = <0 0xfea40000 0 0x1000>;
> +			power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
> +			clocks = <&cpg CPG_MOD 711>;
> +			resets = <&cpg 711>;
> +		};
> +
> +		cmm1: cmm@fea50000 {
> +			compatible = "renesas,r8a7795-cmm",
> +				     "renesas,rcar-gen3-cmm";
> +			reg = <0 0xfea50000 0 0x1000>;
> +			power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
> +			clocks = <&cpg CPG_MOD 710>;
> +			resets = <&cpg 710>;
> +		};
> +
> +		cmm2: cmm@fea60000 {
> +			compatible = "renesas,r8a7795-cmm",
> +				     "renesas,rcar-gen3-cmm";
> +			reg = <0 0xfea60000 0 0x1000>;
> +			power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
> +			clocks = <&cpg CPG_MOD 709>;
> +			resets = <&cpg 709>;
> +		};

Yeouch. CMM2 is not available on the H3-N - but as far as I can tell the
H3-N is an R8A7795 ...

Geert, How will we differentiate this, or perhaps it just won't matter.

The key part here will be handling it in the DU perhaps anyway.


> +
> +		cmm3: cmm@fea70000 {
> +			compatible = "renesas,r8a7795-cmm",
> +				     "renesas,rcar-gen3-cmm";
> +			reg = <0 0xfea70000 0 0x1000>;
> +			power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
> +			clocks = <&cpg CPG_MOD 708>;
> +			resets = <&cpg 708>;
> +		};
> +
>  		csi20: csi2@fea80000 {
>  			compatible = "renesas,r8a7795-csi2";
>  			reg = <0 0xfea80000 0 0x10000>;
> @@ -3142,7 +3178,10 @@
>  				 <&cpg CPG_MOD 722>,
>  				 <&cpg CPG_MOD 721>;
>  			clock-names = "du.0", "du.1", "du.2", "du.3";
> +
> +			renesas,cmms = <&cmm0>, <&cmm1>, <&cmm2>, <&cmm3>;
>  			vsps = <&vspd0 0>, <&vspd1 0>, <&vspd2 0>, <&vspd0 1>;
> +
>  			status = "disabled";
> 
>  			ports {
> diff --git a/arch/arm64/boot/dts/renesas/r8a7796.dtsi b/arch/arm64/boot/dts/renesas/r8a7796.dtsi
> index 822c96601d3c..597c47f3f994 100644
> --- a/arch/arm64/boot/dts/renesas/r8a7796.dtsi
> +++ b/arch/arm64/boot/dts/renesas/r8a7796.dtsi
> @@ -2641,6 +2641,33 @@
>  			renesas,fcp = <&fcpvi0>;
>  		};
> 
> +		cmm0: cmm@fea40000 {
> +			compatible = "renesas,r8a7796-cmm",
> +				     "renesas,rcar-gen3-cmm";
> +			reg = <0 0xfea40000 0 0x1000>;
> +			power-domains = <&sysc R8A7796_PD_ALWAYS_ON>;
> +			clocks = <&cpg CPG_MOD 711>;
> +			resets = <&cpg 711>;
> +		};
> +
> +		cmm1: cmm@fea50000 {
> +			compatible = "renesas,r8a7796-cmm",
> +				     "renesas,rcar-gen3-cmm";
> +			reg = <0 0xfea50000 0 0x1000>;
> +			power-domains = <&sysc R8A7796_PD_ALWAYS_ON>;
> +			clocks = <&cpg CPG_MOD 710>;
> +			resets = <&cpg 710>;
> +		};
> +
> +		cmm2: cmm@fea60000 {
> +			compatible = "renesas,r8a7796-cmm",
> +				     "renesas,rcar-gen3-cmm";
> +			reg = <0 0xfea60000 0 0x1000>;
> +			power-domains = <&sysc R8A7796_PD_ALWAYS_ON>;
> +			clocks = <&cpg CPG_MOD 709>;
> +			resets = <&cpg 709>;
> +		};
> +
>  		csi20: csi2@fea80000 {
>  			compatible = "renesas,r8a7796-csi2";
>  			reg = <0 0xfea80000 0 0x10000>;
> @@ -2791,10 +2818,12 @@
>  				 <&cpg CPG_MOD 723>,
>  				 <&cpg CPG_MOD 722>;
>  			clock-names = "du.0", "du.1", "du.2";
> -			status = "disabled";
> 
> +			renesas,cmms = <&cmm0>, <&cmm1>, <&cmm2>;
>  			vsps = <&vspd0 0>, <&vspd1 0>, <&vspd2 0>;
> 
> +			status = "disabled";
> +
>  			ports {
>  				#address-cells = <1>;
>  				#size-cells = <0>;
> diff --git a/arch/arm64/boot/dts/renesas/r8a77965.dtsi b/arch/arm64/boot/dts/renesas/r8a77965.dtsi
> index 4ae163220f60..c3da8d26ccba 100644
> --- a/arch/arm64/boot/dts/renesas/r8a77965.dtsi
> +++ b/arch/arm64/boot/dts/renesas/r8a77965.dtsi
> @@ -2320,6 +2320,33 @@
>  			resets = <&cpg 611>;
>  		};
> 
> +		cmm0: cmm@fea40000 {
> +			compatible = "renesas,r8a77965-cmm",
> +				     "renesas,rcar-gen3-cmm";
> +			reg = <0 0xfea40000 0 0x1000>;
> +			power-domains = <&sysc R8A77965_PD_ALWAYS_ON>;
> +			clocks = <&cpg CPG_MOD 711>;
> +			resets = <&cpg 711>;
> +		};
> +
> +		cmm1: cmm@fea50000 {
> +			compatible = "renesas,r8a77965-cmm",
> +				     "renesas,rcar-gen3-cmm";
> +			reg = <0 0xfea50000 0 0x1000>;
> +			power-domains = <&sysc R8A77965_PD_ALWAYS_ON>;
> +			clocks = <&cpg CPG_MOD 710>;
> +			resets = <&cpg 710>;
> +		};
> +
> +		cmm3: cmm@fea70000 {
> +			compatible = "renesas,r8a77965-cmm",
> +				     "renesas,rcar-gen3-cmm";
> +			reg = <0 0xfea70000 0 0x1000>;
> +			power-domains = <&sysc R8A77965_PD_ALWAYS_ON>;
> +			clocks = <&cpg CPG_MOD 708>;
> +			resets = <&cpg 708>;
> +		};
> +
>  		csi20: csi2@fea80000 {
>  			compatible = "renesas,r8a77965-csi2";
>  			reg = <0 0xfea80000 0 0x10000>;
> @@ -2467,10 +2494,12 @@
>  				 <&cpg CPG_MOD 723>,
>  				 <&cpg CPG_MOD 721>;
>  			clock-names = "du.0", "du.1", "du.3";
> -			status = "disabled";
> 
> +			renesas,cmms = <&cmm0>, <&cmm1>, <&cmm3>;
>  			vsps = <&vspd0 0>, <&vspd1 0>, <&vspd0 1>;
> 
> +			status = "disabled";
> +
>  			ports {
>  				#address-cells = <1>;
>  				#size-cells = <0>;
> diff --git a/arch/arm64/boot/dts/renesas/r8a77990.dtsi b/arch/arm64/boot/dts/renesas/r8a77990.dtsi
> index 455954c3d98e..bab9b7f96c72 100644
> --- a/arch/arm64/boot/dts/renesas/r8a77990.dtsi
> +++ b/arch/arm64/boot/dts/renesas/r8a77990.dtsi
> @@ -1727,6 +1727,24 @@
>  			iommus = <&ipmmu_vi0 9>;
>  		};
> 
> +		cmm0: cmm@fea40000 {
> +			compatible = "renesas,r8a77990-cmm",
> +				     "renesas,rcar-gen3-cmm";
> +			reg = <0 0xfea40000 0 0x1000>;
> +			power-domains = <&sysc R8A77990_PD_ALWAYS_ON>;
> +			clocks = <&cpg CPG_MOD 711>;
> +			resets = <&cpg 711>;
> +		};
> +
> +		cmm1: cmm@fea50000 {
> +			compatible = "renesas,r8a77990-cmm",
> +				     "renesas,rcar-gen3-cmm";
> +			reg = <0 0xfea50000 0 0x1000>;
> +			power-domains = <&sysc R8A77990_PD_ALWAYS_ON>;
> +			clocks = <&cpg CPG_MOD 710>;
> +			resets = <&cpg 710>;
> +		};
> +
>  		csi40: csi2@feaa0000 {
>  			compatible = "renesas,r8a77990-csi2";
>  			reg = <0 0xfeaa0000 0 0x10000>;
> @@ -1768,7 +1786,10 @@
>  			clock-names = "du.0", "du.1";
>  			resets = <&cpg 724>;
>  			reset-names = "du.0";
> +
> +			renesas,cmms = <&cmm0>, <&cmm1>;
>  			vsps = <&vspd0 0>, <&vspd1 0>;
> +
>  			status = "disabled";
> 
>  			ports {
> diff --git a/arch/arm64/boot/dts/renesas/r8a77995.dtsi b/arch/arm64/boot/dts/renesas/r8a77995.dtsi
> index 183fef86cf7c..871c70cc2d2e 100644
> --- a/arch/arm64/boot/dts/renesas/r8a77995.dtsi
> +++ b/arch/arm64/boot/dts/renesas/r8a77995.dtsi
> @@ -993,6 +993,24 @@
>  			iommus = <&ipmmu_vi0 9>;
>  		};
> 
> +		cmm0: cmm@fea40000 {
> +			compatible = "renesas,r8a77995-cmm",
> +				     "renesas,rcar-gen3-cmm";
> +			reg = <0 0xfea40000 0 0x1000>;
> +			power-domains = <&sysc R8A77995_PD_ALWAYS_ON>;
> +			clocks = <&cpg CPG_MOD 711>;
> +			resets = <&cpg 711>;
> +		};
> +
> +		cmm1: cmm@fea50000 {
> +			compatible = "renesas,r8a77995-cmm",
> +				     "renesas,rcar-gen3-cmm";
> +			reg = <0 0xfea50000 0 0x1000>;
> +			power-domains = <&sysc R8A77995_PD_ALWAYS_ON>;
> +			clocks = <&cpg CPG_MOD 710>;
> +			resets = <&cpg 710>;
> +		};
> +
>  		du: display@feb00000 {
>  			compatible = "renesas,du-r8a77995";
>  			reg = <0 0xfeb00000 0 0x40000>;
> @@ -1003,7 +1021,10 @@
>  			clock-names = "du.0", "du.1";
>  			resets = <&cpg 724>;
>  			reset-names = "du.0";
> +
> +			renesas,cmms = <&cmm0>, <&cmm1>;
>  			vsps = <&vspd0 0>, <&vspd1 0>;
> +
>  			status = "disabled";
> 
>  			ports {
> --
> 2.23.0
>
Laurent Pinchart Oct. 15, 2019, 6:06 p.m. UTC | #2
Hi Jacopo and Kieran,

On Tue, Oct 15, 2019 at 01:52:29PM +0100, Kieran Bingham wrote:
> On 15/10/2019 11:46, Jacopo Mondi wrote:
> > Add CMM units to Renesas R-Car Gen3 SoC that support it, and reference them
> > from the Display Unit they are connected to.
> > 
> > Sort the 'vsps', 'renesas,cmm' and 'status' properties in the DU unit
> > consistently in all the involved DTS.
> 
> Going through this, I think I'm happy, except for a 'future' gotcha
> detailed below.
> 
> The H3-N is possibly going to cause some issues (not
> supporting/connecting/using the CMM2) ... but as we don't really have
> that yet ... I'm going to say "la la la " ... and put this here:
> 
> Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
> 
> > Signed-off-by: Jacopo Mondi <jacopo+renesas@jmondi.org>
> > ---
> >  arch/arm64/boot/dts/renesas/r8a7795.dtsi  | 39 +++++++++++++++++++++++
> >  arch/arm64/boot/dts/renesas/r8a7796.dtsi  | 31 +++++++++++++++++-
> >  arch/arm64/boot/dts/renesas/r8a77965.dtsi | 31 +++++++++++++++++-
> >  arch/arm64/boot/dts/renesas/r8a77990.dtsi | 21 ++++++++++++
> >  arch/arm64/boot/dts/renesas/r8a77995.dtsi | 21 ++++++++++++
> >  5 files changed, 141 insertions(+), 2 deletions(-)
> > 
> > diff --git a/arch/arm64/boot/dts/renesas/r8a7795.dtsi b/arch/arm64/boot/dts/renesas/r8a7795.dtsi
> > index 6675462f7585..e16757af8c27 100644
> > --- a/arch/arm64/boot/dts/renesas/r8a7795.dtsi
> > +++ b/arch/arm64/boot/dts/renesas/r8a7795.dtsi
> > @@ -2939,6 +2939,42 @@
> >  			iommus = <&ipmmu_vi1 10>;
> >  		};
> > 
> > +		cmm0: cmm@fea40000 {
> > +			compatible = "renesas,r8a7795-cmm",
> > +				     "renesas,rcar-gen3-cmm";
> > +			reg = <0 0xfea40000 0 0x1000>;
> > +			power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
> > +			clocks = <&cpg CPG_MOD 711>;
> > +			resets = <&cpg 711>;
> > +		};
> > +
> > +		cmm1: cmm@fea50000 {
> > +			compatible = "renesas,r8a7795-cmm",
> > +				     "renesas,rcar-gen3-cmm";
> > +			reg = <0 0xfea50000 0 0x1000>;
> > +			power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
> > +			clocks = <&cpg CPG_MOD 710>;
> > +			resets = <&cpg 710>;
> > +		};
> > +
> > +		cmm2: cmm@fea60000 {
> > +			compatible = "renesas,r8a7795-cmm",
> > +				     "renesas,rcar-gen3-cmm";
> > +			reg = <0 0xfea60000 0 0x1000>;
> > +			power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
> > +			clocks = <&cpg CPG_MOD 709>;
> > +			resets = <&cpg 709>;
> > +		};
> 
> Yeouch. CMM2 is not available on the H3-N - but as far as I can tell the
> H3-N is an R8A7795 ...
> 
> Geert, How will we differentiate this, or perhaps it just won't matter.
> 
> The key part here will be handling it in the DU perhaps anyway.

I think we'll figure it out when we'll have more information about the
H3-N, and in particular if DU2 will be present (but not usable) or
completely absent. In the latter case we'll need a separate .dtsi.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

> > +
> > +		cmm3: cmm@fea70000 {
> > +			compatible = "renesas,r8a7795-cmm",
> > +				     "renesas,rcar-gen3-cmm";
> > +			reg = <0 0xfea70000 0 0x1000>;
> > +			power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
> > +			clocks = <&cpg CPG_MOD 708>;
> > +			resets = <&cpg 708>;
> > +		};
> > +
> >  		csi20: csi2@fea80000 {
> >  			compatible = "renesas,r8a7795-csi2";
> >  			reg = <0 0xfea80000 0 0x10000>;
> > @@ -3142,7 +3178,10 @@
> >  				 <&cpg CPG_MOD 722>,
> >  				 <&cpg CPG_MOD 721>;
> >  			clock-names = "du.0", "du.1", "du.2", "du.3";
> > +
> > +			renesas,cmms = <&cmm0>, <&cmm1>, <&cmm2>, <&cmm3>;
> >  			vsps = <&vspd0 0>, <&vspd1 0>, <&vspd2 0>, <&vspd0 1>;
> > +
> >  			status = "disabled";
> > 
> >  			ports {
> > diff --git a/arch/arm64/boot/dts/renesas/r8a7796.dtsi b/arch/arm64/boot/dts/renesas/r8a7796.dtsi
> > index 822c96601d3c..597c47f3f994 100644
> > --- a/arch/arm64/boot/dts/renesas/r8a7796.dtsi
> > +++ b/arch/arm64/boot/dts/renesas/r8a7796.dtsi
> > @@ -2641,6 +2641,33 @@
> >  			renesas,fcp = <&fcpvi0>;
> >  		};
> > 
> > +		cmm0: cmm@fea40000 {
> > +			compatible = "renesas,r8a7796-cmm",
> > +				     "renesas,rcar-gen3-cmm";
> > +			reg = <0 0xfea40000 0 0x1000>;
> > +			power-domains = <&sysc R8A7796_PD_ALWAYS_ON>;
> > +			clocks = <&cpg CPG_MOD 711>;
> > +			resets = <&cpg 711>;
> > +		};
> > +
> > +		cmm1: cmm@fea50000 {
> > +			compatible = "renesas,r8a7796-cmm",
> > +				     "renesas,rcar-gen3-cmm";
> > +			reg = <0 0xfea50000 0 0x1000>;
> > +			power-domains = <&sysc R8A7796_PD_ALWAYS_ON>;
> > +			clocks = <&cpg CPG_MOD 710>;
> > +			resets = <&cpg 710>;
> > +		};
> > +
> > +		cmm2: cmm@fea60000 {
> > +			compatible = "renesas,r8a7796-cmm",
> > +				     "renesas,rcar-gen3-cmm";
> > +			reg = <0 0xfea60000 0 0x1000>;
> > +			power-domains = <&sysc R8A7796_PD_ALWAYS_ON>;
> > +			clocks = <&cpg CPG_MOD 709>;
> > +			resets = <&cpg 709>;
> > +		};
> > +
> >  		csi20: csi2@fea80000 {
> >  			compatible = "renesas,r8a7796-csi2";
> >  			reg = <0 0xfea80000 0 0x10000>;
> > @@ -2791,10 +2818,12 @@
> >  				 <&cpg CPG_MOD 723>,
> >  				 <&cpg CPG_MOD 722>;
> >  			clock-names = "du.0", "du.1", "du.2";
> > -			status = "disabled";
> > 
> > +			renesas,cmms = <&cmm0>, <&cmm1>, <&cmm2>;
> >  			vsps = <&vspd0 0>, <&vspd1 0>, <&vspd2 0>;
> > 
> > +			status = "disabled";
> > +
> >  			ports {
> >  				#address-cells = <1>;
> >  				#size-cells = <0>;
> > diff --git a/arch/arm64/boot/dts/renesas/r8a77965.dtsi b/arch/arm64/boot/dts/renesas/r8a77965.dtsi
> > index 4ae163220f60..c3da8d26ccba 100644
> > --- a/arch/arm64/boot/dts/renesas/r8a77965.dtsi
> > +++ b/arch/arm64/boot/dts/renesas/r8a77965.dtsi
> > @@ -2320,6 +2320,33 @@
> >  			resets = <&cpg 611>;
> >  		};
> > 
> > +		cmm0: cmm@fea40000 {
> > +			compatible = "renesas,r8a77965-cmm",
> > +				     "renesas,rcar-gen3-cmm";
> > +			reg = <0 0xfea40000 0 0x1000>;
> > +			power-domains = <&sysc R8A77965_PD_ALWAYS_ON>;
> > +			clocks = <&cpg CPG_MOD 711>;
> > +			resets = <&cpg 711>;
> > +		};
> > +
> > +		cmm1: cmm@fea50000 {
> > +			compatible = "renesas,r8a77965-cmm",
> > +				     "renesas,rcar-gen3-cmm";
> > +			reg = <0 0xfea50000 0 0x1000>;
> > +			power-domains = <&sysc R8A77965_PD_ALWAYS_ON>;
> > +			clocks = <&cpg CPG_MOD 710>;
> > +			resets = <&cpg 710>;
> > +		};
> > +
> > +		cmm3: cmm@fea70000 {
> > +			compatible = "renesas,r8a77965-cmm",
> > +				     "renesas,rcar-gen3-cmm";
> > +			reg = <0 0xfea70000 0 0x1000>;
> > +			power-domains = <&sysc R8A77965_PD_ALWAYS_ON>;
> > +			clocks = <&cpg CPG_MOD 708>;
> > +			resets = <&cpg 708>;
> > +		};
> > +
> >  		csi20: csi2@fea80000 {
> >  			compatible = "renesas,r8a77965-csi2";
> >  			reg = <0 0xfea80000 0 0x10000>;
> > @@ -2467,10 +2494,12 @@
> >  				 <&cpg CPG_MOD 723>,
> >  				 <&cpg CPG_MOD 721>;
> >  			clock-names = "du.0", "du.1", "du.3";
> > -			status = "disabled";
> > 
> > +			renesas,cmms = <&cmm0>, <&cmm1>, <&cmm3>;
> >  			vsps = <&vspd0 0>, <&vspd1 0>, <&vspd0 1>;
> > 
> > +			status = "disabled";
> > +
> >  			ports {
> >  				#address-cells = <1>;
> >  				#size-cells = <0>;
> > diff --git a/arch/arm64/boot/dts/renesas/r8a77990.dtsi b/arch/arm64/boot/dts/renesas/r8a77990.dtsi
> > index 455954c3d98e..bab9b7f96c72 100644
> > --- a/arch/arm64/boot/dts/renesas/r8a77990.dtsi
> > +++ b/arch/arm64/boot/dts/renesas/r8a77990.dtsi
> > @@ -1727,6 +1727,24 @@
> >  			iommus = <&ipmmu_vi0 9>;
> >  		};
> > 
> > +		cmm0: cmm@fea40000 {
> > +			compatible = "renesas,r8a77990-cmm",
> > +				     "renesas,rcar-gen3-cmm";
> > +			reg = <0 0xfea40000 0 0x1000>;
> > +			power-domains = <&sysc R8A77990_PD_ALWAYS_ON>;
> > +			clocks = <&cpg CPG_MOD 711>;
> > +			resets = <&cpg 711>;
> > +		};
> > +
> > +		cmm1: cmm@fea50000 {
> > +			compatible = "renesas,r8a77990-cmm",
> > +				     "renesas,rcar-gen3-cmm";
> > +			reg = <0 0xfea50000 0 0x1000>;
> > +			power-domains = <&sysc R8A77990_PD_ALWAYS_ON>;
> > +			clocks = <&cpg CPG_MOD 710>;
> > +			resets = <&cpg 710>;
> > +		};
> > +
> >  		csi40: csi2@feaa0000 {
> >  			compatible = "renesas,r8a77990-csi2";
> >  			reg = <0 0xfeaa0000 0 0x10000>;
> > @@ -1768,7 +1786,10 @@
> >  			clock-names = "du.0", "du.1";
> >  			resets = <&cpg 724>;
> >  			reset-names = "du.0";
> > +
> > +			renesas,cmms = <&cmm0>, <&cmm1>;
> >  			vsps = <&vspd0 0>, <&vspd1 0>;
> > +
> >  			status = "disabled";
> > 
> >  			ports {
> > diff --git a/arch/arm64/boot/dts/renesas/r8a77995.dtsi b/arch/arm64/boot/dts/renesas/r8a77995.dtsi
> > index 183fef86cf7c..871c70cc2d2e 100644
> > --- a/arch/arm64/boot/dts/renesas/r8a77995.dtsi
> > +++ b/arch/arm64/boot/dts/renesas/r8a77995.dtsi
> > @@ -993,6 +993,24 @@
> >  			iommus = <&ipmmu_vi0 9>;
> >  		};
> > 
> > +		cmm0: cmm@fea40000 {
> > +			compatible = "renesas,r8a77995-cmm",
> > +				     "renesas,rcar-gen3-cmm";
> > +			reg = <0 0xfea40000 0 0x1000>;
> > +			power-domains = <&sysc R8A77995_PD_ALWAYS_ON>;
> > +			clocks = <&cpg CPG_MOD 711>;
> > +			resets = <&cpg 711>;
> > +		};
> > +
> > +		cmm1: cmm@fea50000 {
> > +			compatible = "renesas,r8a77995-cmm",
> > +				     "renesas,rcar-gen3-cmm";
> > +			reg = <0 0xfea50000 0 0x1000>;
> > +			power-domains = <&sysc R8A77995_PD_ALWAYS_ON>;
> > +			clocks = <&cpg CPG_MOD 710>;
> > +			resets = <&cpg 710>;
> > +		};
> > +
> >  		du: display@feb00000 {
> >  			compatible = "renesas,du-r8a77995";
> >  			reg = <0 0xfeb00000 0 0x40000>;
> > @@ -1003,7 +1021,10 @@
> >  			clock-names = "du.0", "du.1";
> >  			resets = <&cpg 724>;
> >  			reset-names = "du.0";
> > +
> > +			renesas,cmms = <&cmm0>, <&cmm1>;
> >  			vsps = <&vspd0 0>, <&vspd1 0>;
> > +
> >  			status = "disabled";
> > 
> >  			ports {
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/renesas/r8a7795.dtsi b/arch/arm64/boot/dts/renesas/r8a7795.dtsi
index 6675462f7585..e16757af8c27 100644
--- a/arch/arm64/boot/dts/renesas/r8a7795.dtsi
+++ b/arch/arm64/boot/dts/renesas/r8a7795.dtsi
@@ -2939,6 +2939,42 @@ 
 			iommus = <&ipmmu_vi1 10>;
 		};

+		cmm0: cmm@fea40000 {
+			compatible = "renesas,r8a7795-cmm",
+				     "renesas,rcar-gen3-cmm";
+			reg = <0 0xfea40000 0 0x1000>;
+			power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
+			clocks = <&cpg CPG_MOD 711>;
+			resets = <&cpg 711>;
+		};
+
+		cmm1: cmm@fea50000 {
+			compatible = "renesas,r8a7795-cmm",
+				     "renesas,rcar-gen3-cmm";
+			reg = <0 0xfea50000 0 0x1000>;
+			power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
+			clocks = <&cpg CPG_MOD 710>;
+			resets = <&cpg 710>;
+		};
+
+		cmm2: cmm@fea60000 {
+			compatible = "renesas,r8a7795-cmm",
+				     "renesas,rcar-gen3-cmm";
+			reg = <0 0xfea60000 0 0x1000>;
+			power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
+			clocks = <&cpg CPG_MOD 709>;
+			resets = <&cpg 709>;
+		};
+
+		cmm3: cmm@fea70000 {
+			compatible = "renesas,r8a7795-cmm",
+				     "renesas,rcar-gen3-cmm";
+			reg = <0 0xfea70000 0 0x1000>;
+			power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
+			clocks = <&cpg CPG_MOD 708>;
+			resets = <&cpg 708>;
+		};
+
 		csi20: csi2@fea80000 {
 			compatible = "renesas,r8a7795-csi2";
 			reg = <0 0xfea80000 0 0x10000>;
@@ -3142,7 +3178,10 @@ 
 				 <&cpg CPG_MOD 722>,
 				 <&cpg CPG_MOD 721>;
 			clock-names = "du.0", "du.1", "du.2", "du.3";
+
+			renesas,cmms = <&cmm0>, <&cmm1>, <&cmm2>, <&cmm3>;
 			vsps = <&vspd0 0>, <&vspd1 0>, <&vspd2 0>, <&vspd0 1>;
+
 			status = "disabled";

 			ports {
diff --git a/arch/arm64/boot/dts/renesas/r8a7796.dtsi b/arch/arm64/boot/dts/renesas/r8a7796.dtsi
index 822c96601d3c..597c47f3f994 100644
--- a/arch/arm64/boot/dts/renesas/r8a7796.dtsi
+++ b/arch/arm64/boot/dts/renesas/r8a7796.dtsi
@@ -2641,6 +2641,33 @@ 
 			renesas,fcp = <&fcpvi0>;
 		};

+		cmm0: cmm@fea40000 {
+			compatible = "renesas,r8a7796-cmm",
+				     "renesas,rcar-gen3-cmm";
+			reg = <0 0xfea40000 0 0x1000>;
+			power-domains = <&sysc R8A7796_PD_ALWAYS_ON>;
+			clocks = <&cpg CPG_MOD 711>;
+			resets = <&cpg 711>;
+		};
+
+		cmm1: cmm@fea50000 {
+			compatible = "renesas,r8a7796-cmm",
+				     "renesas,rcar-gen3-cmm";
+			reg = <0 0xfea50000 0 0x1000>;
+			power-domains = <&sysc R8A7796_PD_ALWAYS_ON>;
+			clocks = <&cpg CPG_MOD 710>;
+			resets = <&cpg 710>;
+		};
+
+		cmm2: cmm@fea60000 {
+			compatible = "renesas,r8a7796-cmm",
+				     "renesas,rcar-gen3-cmm";
+			reg = <0 0xfea60000 0 0x1000>;
+			power-domains = <&sysc R8A7796_PD_ALWAYS_ON>;
+			clocks = <&cpg CPG_MOD 709>;
+			resets = <&cpg 709>;
+		};
+
 		csi20: csi2@fea80000 {
 			compatible = "renesas,r8a7796-csi2";
 			reg = <0 0xfea80000 0 0x10000>;
@@ -2791,10 +2818,12 @@ 
 				 <&cpg CPG_MOD 723>,
 				 <&cpg CPG_MOD 722>;
 			clock-names = "du.0", "du.1", "du.2";
-			status = "disabled";

+			renesas,cmms = <&cmm0>, <&cmm1>, <&cmm2>;
 			vsps = <&vspd0 0>, <&vspd1 0>, <&vspd2 0>;

+			status = "disabled";
+
 			ports {
 				#address-cells = <1>;
 				#size-cells = <0>;
diff --git a/arch/arm64/boot/dts/renesas/r8a77965.dtsi b/arch/arm64/boot/dts/renesas/r8a77965.dtsi
index 4ae163220f60..c3da8d26ccba 100644
--- a/arch/arm64/boot/dts/renesas/r8a77965.dtsi
+++ b/arch/arm64/boot/dts/renesas/r8a77965.dtsi
@@ -2320,6 +2320,33 @@ 
 			resets = <&cpg 611>;
 		};

+		cmm0: cmm@fea40000 {
+			compatible = "renesas,r8a77965-cmm",
+				     "renesas,rcar-gen3-cmm";
+			reg = <0 0xfea40000 0 0x1000>;
+			power-domains = <&sysc R8A77965_PD_ALWAYS_ON>;
+			clocks = <&cpg CPG_MOD 711>;
+			resets = <&cpg 711>;
+		};
+
+		cmm1: cmm@fea50000 {
+			compatible = "renesas,r8a77965-cmm",
+				     "renesas,rcar-gen3-cmm";
+			reg = <0 0xfea50000 0 0x1000>;
+			power-domains = <&sysc R8A77965_PD_ALWAYS_ON>;
+			clocks = <&cpg CPG_MOD 710>;
+			resets = <&cpg 710>;
+		};
+
+		cmm3: cmm@fea70000 {
+			compatible = "renesas,r8a77965-cmm",
+				     "renesas,rcar-gen3-cmm";
+			reg = <0 0xfea70000 0 0x1000>;
+			power-domains = <&sysc R8A77965_PD_ALWAYS_ON>;
+			clocks = <&cpg CPG_MOD 708>;
+			resets = <&cpg 708>;
+		};
+
 		csi20: csi2@fea80000 {
 			compatible = "renesas,r8a77965-csi2";
 			reg = <0 0xfea80000 0 0x10000>;
@@ -2467,10 +2494,12 @@ 
 				 <&cpg CPG_MOD 723>,
 				 <&cpg CPG_MOD 721>;
 			clock-names = "du.0", "du.1", "du.3";
-			status = "disabled";

+			renesas,cmms = <&cmm0>, <&cmm1>, <&cmm3>;
 			vsps = <&vspd0 0>, <&vspd1 0>, <&vspd0 1>;

+			status = "disabled";
+
 			ports {
 				#address-cells = <1>;
 				#size-cells = <0>;
diff --git a/arch/arm64/boot/dts/renesas/r8a77990.dtsi b/arch/arm64/boot/dts/renesas/r8a77990.dtsi
index 455954c3d98e..bab9b7f96c72 100644
--- a/arch/arm64/boot/dts/renesas/r8a77990.dtsi
+++ b/arch/arm64/boot/dts/renesas/r8a77990.dtsi
@@ -1727,6 +1727,24 @@ 
 			iommus = <&ipmmu_vi0 9>;
 		};

+		cmm0: cmm@fea40000 {
+			compatible = "renesas,r8a77990-cmm",
+				     "renesas,rcar-gen3-cmm";
+			reg = <0 0xfea40000 0 0x1000>;
+			power-domains = <&sysc R8A77990_PD_ALWAYS_ON>;
+			clocks = <&cpg CPG_MOD 711>;
+			resets = <&cpg 711>;
+		};
+
+		cmm1: cmm@fea50000 {
+			compatible = "renesas,r8a77990-cmm",
+				     "renesas,rcar-gen3-cmm";
+			reg = <0 0xfea50000 0 0x1000>;
+			power-domains = <&sysc R8A77990_PD_ALWAYS_ON>;
+			clocks = <&cpg CPG_MOD 710>;
+			resets = <&cpg 710>;
+		};
+
 		csi40: csi2@feaa0000 {
 			compatible = "renesas,r8a77990-csi2";
 			reg = <0 0xfeaa0000 0 0x10000>;
@@ -1768,7 +1786,10 @@ 
 			clock-names = "du.0", "du.1";
 			resets = <&cpg 724>;
 			reset-names = "du.0";
+
+			renesas,cmms = <&cmm0>, <&cmm1>;
 			vsps = <&vspd0 0>, <&vspd1 0>;
+
 			status = "disabled";

 			ports {
diff --git a/arch/arm64/boot/dts/renesas/r8a77995.dtsi b/arch/arm64/boot/dts/renesas/r8a77995.dtsi
index 183fef86cf7c..871c70cc2d2e 100644
--- a/arch/arm64/boot/dts/renesas/r8a77995.dtsi
+++ b/arch/arm64/boot/dts/renesas/r8a77995.dtsi
@@ -993,6 +993,24 @@ 
 			iommus = <&ipmmu_vi0 9>;
 		};

+		cmm0: cmm@fea40000 {
+			compatible = "renesas,r8a77995-cmm",
+				     "renesas,rcar-gen3-cmm";
+			reg = <0 0xfea40000 0 0x1000>;
+			power-domains = <&sysc R8A77995_PD_ALWAYS_ON>;
+			clocks = <&cpg CPG_MOD 711>;
+			resets = <&cpg 711>;
+		};
+
+		cmm1: cmm@fea50000 {
+			compatible = "renesas,r8a77995-cmm",
+				     "renesas,rcar-gen3-cmm";
+			reg = <0 0xfea50000 0 0x1000>;
+			power-domains = <&sysc R8A77995_PD_ALWAYS_ON>;
+			clocks = <&cpg CPG_MOD 710>;
+			resets = <&cpg 710>;
+		};
+
 		du: display@feb00000 {
 			compatible = "renesas,du-r8a77995";
 			reg = <0 0xfeb00000 0 0x40000>;
@@ -1003,7 +1021,10 @@ 
 			clock-names = "du.0", "du.1";
 			resets = <&cpg 724>;
 			reset-names = "du.0";
+
+			renesas,cmms = <&cmm0>, <&cmm1>;
 			vsps = <&vspd0 0>, <&vspd1 0>;
+
 			status = "disabled";

 			ports {