[02/10] dt-bindings: display: renesas: Deprecate LVDS support in the DU bindings

Message ID 20180112005858.26472-3-laurent.pinchart+renesas@ideasonboard.com
State Not Applicable, archived
Headers show
Series
  • R-Car DU: Convert LVDS code to bridge driver
Related show

Commit Message

Laurent Pinchart Jan. 12, 2018, 12:58 a.m.
The internal LVDS encoders now have their own DT bindings, representing
them as part of the DU is deprecated.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
---
 .../devicetree/bindings/display/renesas,du.txt     | 26 +++++++++-------------
 1 file changed, 11 insertions(+), 15 deletions(-)

Comments

Geert Uytterhoeven Jan. 12, 2018, 9:49 a.m. | #1
Hi Laurent,

On Fri, Jan 12, 2018 at 1:58 AM, Laurent Pinchart
<laurent.pinchart+renesas@ideasonboard.com> wrote:
> The internal LVDS encoders now have their own DT bindings, representing
> them as part of the DU is deprecated.
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>

FWIW, you're not really deprecating the LVDS part, but removing it completely.
Do you want to keep a reference instead?

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Vladimir Zapolskiy Jan. 12, 2018, 9:54 a.m. | #2
Hi Laurent,

On 01/12/2018 02:58 AM, Laurent Pinchart wrote:
> The internal LVDS encoders now have their own DT bindings, representing
> them as part of the DU is deprecated.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
> ---
>  .../devicetree/bindings/display/renesas,du.txt     | 26 +++++++++-------------
>  1 file changed, 11 insertions(+), 15 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/display/renesas,du.txt b/Documentation/devicetree/bindings/display/renesas,du.txt
> index cd48aba3bc8c..8f6e0e118e3e 100644
> --- a/Documentation/devicetree/bindings/display/renesas,du.txt
> +++ b/Documentation/devicetree/bindings/display/renesas,du.txt
> @@ -17,9 +17,7 @@ Required Properties:
>    - reg: A list of base address and length of each memory resource, one for
>      each entry in the reg-names property.
>    - reg-names: Name of the memory resources. The DU requires one memory
> -    resource for the DU core (named "du") and one memory resource for each
> -    LVDS encoder (named "lvds.x" with "x" being the LVDS controller numerical
> -    index).
> +    resource for the DU core (named "du").
>  
>    - interrupt-parent: phandle of the parent interrupt controller.
>    - interrupts: Interrupt specifiers for the DU interrupts.
> @@ -29,14 +27,13 @@ Required Properties:
>    - clock-names: Name of the clocks. This property is model-dependent.
>      - R8A7779 uses a single functional clock. The clock doesn't need to be
>        named.
> -    - All other DU instances use one functional clock per channel and one
> -      clock per LVDS encoder (if available). The functional clocks must be
> -      named "du.x" with "x" being the channel numerical index. The LVDS clocks
> -      must be named "lvds.x" with "x" being the LVDS encoder numerical index.
> -    - In addition to the functional and encoder clocks, all DU versions also
> -      support externally supplied pixel clocks. Those clocks are optional.
> -      When supplied they must be named "dclkin.x" with "x" being the input
> -      clock numerical index.
> +    - All other DU instances use one functional clock per channel The
> +      functional clocks must be named "du.x" with "x" being the channel
> +      numerical index.
> +    - In addition to the functional clocks, all DU versions also support
> +      externally supplied pixel clocks. Those clocks are optional. When
> +      supplied they must be named "dclkin.x" with "x" being the input clock
> +      numerical index.
>  
>    - vsps: A list of phandle and channel index tuples to the VSPs that handle
>      the memory interfaces for the DU channels. The phandle identifies the VSP
> @@ -71,7 +68,7 @@ Example: R8A7795 (R-Car H3) ES2.0 DU
>  		compatible = "renesas,du-r8a7795";
>  		reg = <0 0xfeb00000 0 0x80000>,
>  		      <0 0xfeb90000 0 0x14>;
> -		reg-names = "du", "lvds.0";
> +		reg-names = "du";

Since "reg-names" list is changed, I believe you'd like to update
the "reg" property value as well.

>  		interrupts = <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>,
>  			     <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>,
>  			     <GIC_SPI 269 IRQ_TYPE_LEVEL_HIGH>,
> @@ -79,9 +76,8 @@ Example: R8A7795 (R-Car H3) ES2.0 DU
>  		clocks = <&cpg CPG_MOD 724>,
>  			 <&cpg CPG_MOD 723>,
>  			 <&cpg CPG_MOD 722>,
> -			 <&cpg CPG_MOD 721>,
> -			 <&cpg CPG_MOD 727>;
> -		clock-names = "du.0", "du.1", "du.2", "du.3", "lvds.0";
> +			 <&cpg CPG_MOD 721>;
> +		clock-names = "du.0", "du.1", "du.2", "du.3";
>  		vsps = <&vspd0 0>, <&vspd1 0>, <&vspd2 0>, <&vspd0 1>;
>  
>  		ports {
> 

--
With best wishes,
Vladimir
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Laurent Pinchart Jan. 12, 2018, 10:43 a.m. | #3
Hi Vladimir,

On Friday, 12 January 2018 11:54:57 EET Vladimir Zapolskiy wrote:
> On 01/12/2018 02:58 AM, Laurent Pinchart wrote:
> > The internal LVDS encoders now have their own DT bindings, representing
> > them as part of the DU is deprecated.
> > 
> > Signed-off-by: Laurent Pinchart
> > <laurent.pinchart+renesas@ideasonboard.com>
> > ---
> > 
> >  .../devicetree/bindings/display/renesas,du.txt     | 26
> >  +++++++++------------- 1 file changed, 11 insertions(+), 15 deletions(-)
> > 
> > diff --git a/Documentation/devicetree/bindings/display/renesas,du.txt
> > b/Documentation/devicetree/bindings/display/renesas,du.txt index
> > cd48aba3bc8c..8f6e0e118e3e 100644
> > --- a/Documentation/devicetree/bindings/display/renesas,du.txt
> > +++ b/Documentation/devicetree/bindings/display/renesas,du.txt
> > @@ -17,9 +17,7 @@ Required Properties:
> >    - reg: A list of base address and length of each memory resource, one
> >    for
> >      each entry in the reg-names property.
> >    - reg-names: Name of the memory resources. The DU requires one memory
> > -    resource for the DU core (named "du") and one memory resource for
> > each
> > -    LVDS encoder (named "lvds.x" with "x" being the LVDS controller
> > numerical
> > -    index).
> > +    resource for the DU core (named "du").
> >    - interrupt-parent: phandle of the parent interrupt controller.
> >    - interrupts: Interrupt specifiers for the DU interrupts.
> > 
> > @@ -29,14 +27,13 @@ Required Properties:
> >    - clock-names: Name of the clocks. This property is model-dependent.
> >      - R8A7779 uses a single functional clock. The clock doesn't need to
> >      be
> >        named.
> > -    - All other DU instances use one functional clock per channel and one
> > -      clock per LVDS encoder (if available). The functional clocks must
> > be
> > -      named "du.x" with "x" being the channel numerical index. The LVDS
> > clocks
> > -      must be named "lvds.x" with "x" being the LVDS encoder numerical
> > index.
> > -    - In addition to the functional and encoder clocks, all DU versions
> > also
> > -      support externally supplied pixel clocks. Those clocks are
> > optional.
> > -      When supplied they must be named "dclkin.x" with "x" being the
> > input
> > -      clock numerical index.
> > +    - All other DU instances use one functional clock per channel The
> > +      functional clocks must be named "du.x" with "x" being the channel
> > +      numerical index.
> > +    - In addition to the functional clocks, all DU versions also support
> > +      externally supplied pixel clocks. Those clocks are optional. When
> > +      supplied they must be named "dclkin.x" with "x" being the input
> > clock
> > +      numerical index.
> > 
> >    - vsps: A list of phandle and channel index tuples to the VSPs that
> >      handle
> >      the memory interfaces for the DU channels. The phandle identifies the
> >      VSP
> > @@ -71,7 +68,7 @@ Example: R8A7795 (R-Car H3) ES2.0 DU
> >  		compatible = "renesas,du-r8a7795";
> >  		reg = <0 0xfeb00000 0 0x80000>,
> >  		      <0 0xfeb90000 0 0x14>;
> > -		reg-names = "du", "lvds.0";
> > +		reg-names = "du";
> 
> Since "reg-names" list is changed, I believe you'd like to update
> the "reg" property value as well.

Good point, I'll fix it.

> >  		interrupts = <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>,
> >  			     <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>,
> >  			     <GIC_SPI 269 IRQ_TYPE_LEVEL_HIGH>,
> > @@ -79,9 +76,8 @@ Example: R8A7795 (R-Car H3) ES2.0 DU
> >  		clocks = <&cpg CPG_MOD 724>,
> >  			 <&cpg CPG_MOD 723>,
> >  			 <&cpg CPG_MOD 722>,
> > -			 <&cpg CPG_MOD 721>,
> > -			 <&cpg CPG_MOD 727>;
> > -		clock-names = "du.0", "du.1", "du.2", "du.3", "lvds.0";
> > +			 <&cpg CPG_MOD 721>;
> > +		clock-names = "du.0", "du.1", "du.2", "du.3";
> >  		vsps = <&vspd0 0>, <&vspd1 0>, <&vspd2 0>, <&vspd0 1>;
> >  		
> >  		ports {
Laurent Pinchart Jan. 12, 2018, 10:44 a.m. | #4
Hi Geert,

On Friday, 12 January 2018 11:49:28 EET Geert Uytterhoeven wrote:
> On Fri, Jan 12, 2018 at 1:58 AM, Laurent Pinchart wrote:
> > The internal LVDS encoders now have their own DT bindings, representing
> > them as part of the DU is deprecated.
> > 
> > Signed-off-by: Laurent Pinchart
> > <laurent.pinchart+renesas@ideasonboard.com>
> 
> FWIW, you're not really deprecating the LVDS part, but removing it
> completely. Do you want to keep a reference instead?

I don't think we should keep a reference as it would only confuse DT authors. 
The information is kept in the git history. I can rewrite the commit message, 
but I consider this as deprecating the legacy bindings.
Sergei Shtylyov Jan. 12, 2018, 2:52 p.m. | #5
On 01/12/2018 01:43 PM, Laurent Pinchart wrote:

>>> The internal LVDS encoders now have their own DT bindings, representing
>>> them as part of the DU is deprecated.
>>>
>>> Signed-off-by: Laurent Pinchart
>>> <laurent.pinchart+renesas@ideasonboard.com>
>>> ---
>>>
>>>   .../devicetree/bindings/display/renesas,du.txt     | 26
>>>   +++++++++------------- 1 file changed, 11 insertions(+), 15 deletions(-)
>>>
>>> diff --git a/Documentation/devicetree/bindings/display/renesas,du.txt
>>> b/Documentation/devicetree/bindings/display/renesas,du.txt index
>>> cd48aba3bc8c..8f6e0e118e3e 100644
>>> --- a/Documentation/devicetree/bindings/display/renesas,du.txt
>>> +++ b/Documentation/devicetree/bindings/display/renesas,du.txt
[...]
>>> @@ -71,7 +68,7 @@ Example: R8A7795 (R-Car H3) ES2.0 DU
>>>   		compatible = "renesas,du-r8a7795";
>>>   		reg = <0 0xfeb00000 0 0x80000>,
>>>   		      <0 0xfeb90000 0 0x14>;
>>> -		reg-names = "du", "lvds.0";
>>> +		reg-names = "du";
>>
>> Since "reg-names" list is changed, I believe you'd like to update
>> the "reg" property value as well.
> 
> Good point, I'll fix it.

    Could you also totally drop "reg-names"? Or is that a strong requirement 
now? I mostly dislike how this memory region is named in /proc/iomem... :-)

[...]

MBR, Sergei
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Sergei Shtylyov Jan. 12, 2018, 3:14 p.m. | #6
Hello!

On 01/12/2018 03:58 AM, Laurent Pinchart wrote:

> The internal LVDS encoders now have their own DT bindings, representing
> them as part of the DU is deprecated.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
> ---
>   .../devicetree/bindings/display/renesas,du.txt     | 26 +++++++++-------------
>   1 file changed, 11 insertions(+), 15 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/display/renesas,du.txt b/Documentation/devicetree/bindings/display/renesas,du.txt
> index cd48aba3bc8c..8f6e0e118e3e 100644
> --- a/Documentation/devicetree/bindings/display/renesas,du.txt
> +++ b/Documentation/devicetree/bindings/display/renesas,du.txt
> @@ -17,9 +17,7 @@ Required Properties:
>     - reg: A list of base address and length of each memory resource, one for
>       each entry in the reg-names property.
>     - reg-names: Name of the memory resources. The DU requires one memory
> -    resource for the DU core (named "du") and one memory resource for each
> -    LVDS encoder (named "lvds.x" with "x" being the LVDS controller numerical
> -    index).
> +    resource for the DU core (named "du").

    Could we get rid of this prop altogether?

[...]

MBR, Sergei
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Laurent Pinchart Jan. 12, 2018, 4:46 p.m. | #7
Hi Sergei,

On Friday, 12 January 2018 17:14:33 EET Sergei Shtylyov wrote:
> On 01/12/2018 03:58 AM, Laurent Pinchart wrote:
> > The internal LVDS encoders now have their own DT bindings, representing
> > them as part of the DU is deprecated.
> > 
> > Signed-off-by: Laurent Pinchart
> > <laurent.pinchart+renesas@ideasonboard.com>
> > ---
> > 
> >  .../devicetree/bindings/display/renesas,du.txt     | 26 ++++++++---------
> >  1 file changed, 11 insertions(+), 15 deletions(-)
> > 
> > diff --git a/Documentation/devicetree/bindings/display/renesas,du.txt
> > b/Documentation/devicetree/bindings/display/renesas,du.txt index
> > cd48aba3bc8c..8f6e0e118e3e 100644
> > --- a/Documentation/devicetree/bindings/display/renesas,du.txt
> > +++ b/Documentation/devicetree/bindings/display/renesas,du.txt
> > 
> > @@ -17,9 +17,7 @@ Required Properties:
> >     - reg: A list of base address and length of each memory resource, one
> >     for
> >       each entry in the reg-names property.
> >     - reg-names: Name of the memory resources. The DU requires one memory
> > 
> > -    resource for the DU core (named "du") and one memory resource for
> > each
> > -    LVDS encoder (named "lvds.x" with "x" being the LVDS controller
> > numerical
> > -    index).
> > +    resource for the DU core (named "du").
> 
>     Could we get rid of this prop altogether?

Actually yes, as unlike what I thought the driver doesn't use it. I'll drop it 
in v2.
Rob Herring Jan. 19, 2018, 9:23 p.m. | #8
On Fri, Jan 12, 2018 at 12:44:45PM +0200, Laurent Pinchart wrote:
> Hi Geert,
> 
> On Friday, 12 January 2018 11:49:28 EET Geert Uytterhoeven wrote:
> > On Fri, Jan 12, 2018 at 1:58 AM, Laurent Pinchart wrote:
> > > The internal LVDS encoders now have their own DT bindings, representing
> > > them as part of the DU is deprecated.
> > > 
> > > Signed-off-by: Laurent Pinchart
> > > <laurent.pinchart+renesas@ideasonboard.com>
> > 
> > FWIW, you're not really deprecating the LVDS part, but removing it
> > completely. Do you want to keep a reference instead?
> 
> I don't think we should keep a reference as it would only confuse DT authors. 
> The information is kept in the git history. I can rewrite the commit message, 
> but I consider this as deprecating the legacy bindings.

We've done it both ways. I'm fine with just deleting.

Rob
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Rob Herring Jan. 19, 2018, 9:24 p.m. | #9
On Fri, Jan 12, 2018 at 02:58:50AM +0200, Laurent Pinchart wrote:
> The internal LVDS encoders now have their own DT bindings, representing
> them as part of the DU is deprecated.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
> ---
>  .../devicetree/bindings/display/renesas,du.txt     | 26 +++++++++-------------
>  1 file changed, 11 insertions(+), 15 deletions(-)

This is the easy part. :)

Reviewed-by: Rob Herring <robh@kernel.org>
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/Documentation/devicetree/bindings/display/renesas,du.txt b/Documentation/devicetree/bindings/display/renesas,du.txt
index cd48aba3bc8c..8f6e0e118e3e 100644
--- a/Documentation/devicetree/bindings/display/renesas,du.txt
+++ b/Documentation/devicetree/bindings/display/renesas,du.txt
@@ -17,9 +17,7 @@  Required Properties:
   - reg: A list of base address and length of each memory resource, one for
     each entry in the reg-names property.
   - reg-names: Name of the memory resources. The DU requires one memory
-    resource for the DU core (named "du") and one memory resource for each
-    LVDS encoder (named "lvds.x" with "x" being the LVDS controller numerical
-    index).
+    resource for the DU core (named "du").
 
   - interrupt-parent: phandle of the parent interrupt controller.
   - interrupts: Interrupt specifiers for the DU interrupts.
@@ -29,14 +27,13 @@  Required Properties:
   - clock-names: Name of the clocks. This property is model-dependent.
     - R8A7779 uses a single functional clock. The clock doesn't need to be
       named.
-    - All other DU instances use one functional clock per channel and one
-      clock per LVDS encoder (if available). The functional clocks must be
-      named "du.x" with "x" being the channel numerical index. The LVDS clocks
-      must be named "lvds.x" with "x" being the LVDS encoder numerical index.
-    - In addition to the functional and encoder clocks, all DU versions also
-      support externally supplied pixel clocks. Those clocks are optional.
-      When supplied they must be named "dclkin.x" with "x" being the input
-      clock numerical index.
+    - All other DU instances use one functional clock per channel The
+      functional clocks must be named "du.x" with "x" being the channel
+      numerical index.
+    - In addition to the functional clocks, all DU versions also support
+      externally supplied pixel clocks. Those clocks are optional. When
+      supplied they must be named "dclkin.x" with "x" being the input clock
+      numerical index.
 
   - vsps: A list of phandle and channel index tuples to the VSPs that handle
     the memory interfaces for the DU channels. The phandle identifies the VSP
@@ -71,7 +68,7 @@  Example: R8A7795 (R-Car H3) ES2.0 DU
 		compatible = "renesas,du-r8a7795";
 		reg = <0 0xfeb00000 0 0x80000>,
 		      <0 0xfeb90000 0 0x14>;
-		reg-names = "du", "lvds.0";
+		reg-names = "du";
 		interrupts = <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>,
 			     <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>,
 			     <GIC_SPI 269 IRQ_TYPE_LEVEL_HIGH>,
@@ -79,9 +76,8 @@  Example: R8A7795 (R-Car H3) ES2.0 DU
 		clocks = <&cpg CPG_MOD 724>,
 			 <&cpg CPG_MOD 723>,
 			 <&cpg CPG_MOD 722>,
-			 <&cpg CPG_MOD 721>,
-			 <&cpg CPG_MOD 727>;
-		clock-names = "du.0", "du.1", "du.2", "du.3", "lvds.0";
+			 <&cpg CPG_MOD 721>;
+		clock-names = "du.0", "du.1", "du.2", "du.3";
 		vsps = <&vspd0 0>, <&vspd1 0>, <&vspd2 0>, <&vspd0 1>;
 
 		ports {