devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] dt-bindings: drm: rcar-du: Document optional reset properties
@ 2017-03-06 16:25 Geert Uytterhoeven
  2017-03-06 16:32 ` Laurent Pinchart
  2017-03-15 17:01 ` Rob Herring
  0 siblings, 2 replies; 10+ messages in thread
From: Geert Uytterhoeven @ 2017-03-06 16:25 UTC (permalink / raw)
  To: Laurent Pinchart, David Airlie
  Cc: Rob Herring, Mark Rutland, Philipp Zabel, dri-devel,
	linux-renesas-soc, devicetree, Geert Uytterhoeven

Document the optional properties for describing module resets, to
support resetting display channels and LVDS encoders on R-Car Gen2 and
Gen3.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
See "[v2,1/4] dt-bindings: clock: renesas: cpg-mssr: Document reset control
support" (https://patchwork.kernel.org/patch/9536627/) for the format of
a reset specifier in the Renesas CPG/MSSR case.

E.g. "resets = <&cpg 310>;"

v2:
  - s/phandles/phandle/.
---
 Documentation/devicetree/bindings/display/renesas,du.txt | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/Documentation/devicetree/bindings/display/renesas,du.txt b/Documentation/devicetree/bindings/display/renesas,du.txt
index 1a02f099a0ff0a3a..3db418c827193e82 100644
--- a/Documentation/devicetree/bindings/display/renesas,du.txt
+++ b/Documentation/devicetree/bindings/display/renesas,du.txt
@@ -36,6 +36,16 @@ Required Properties:
       When supplied they must be named "dclkin.x" with "x" being the input
       clock numerical index.
 
+Optional properties:
+  - resets: A list of phandle + reset-specifier pairs, one for each entry in
+    the reset-names property.
+  - reset-names: Names of the resets. This property is model-dependent.
+    - R8A779[0123456] use one reset for a group of one or more successive
+      channels, and one reset per LVDS encoder (if available). The resets
+      must be named "du.x" with "x" being the numerical index of the lowest
+      channel in the group. The LVDS resets must be named "lvds.x" with "x"
+      being the LVDS encoder numerical index.
+
 Required nodes:
 
 The connections to the DU output video ports are modeled using the OF graph
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH v2] dt-bindings: drm: rcar-du: Document optional reset properties
  2017-03-06 16:25 [PATCH v2] dt-bindings: drm: rcar-du: Document optional reset properties Geert Uytterhoeven
@ 2017-03-06 16:32 ` Laurent Pinchart
  2017-03-06 16:36   ` Geert Uytterhoeven
  2017-03-15 17:01 ` Rob Herring
  1 sibling, 1 reply; 10+ messages in thread
From: Laurent Pinchart @ 2017-03-06 16:32 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Mark Rutland, devicetree, dri-devel, linux-renesas-soc,
	Rob Herring

Hi Geert,

Thank you for the patch.

On Monday 06 Mar 2017 17:25:56 Geert Uytterhoeven wrote:
> Document the optional properties for describing module resets, to
> support resetting display channels and LVDS encoders on R-Car Gen2 and
> Gen3.
> 
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>

This looks good to me.

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

I think we should try implementing support for reset in the DU driver before 
merging this though, it always helps to test the proposed DT bindings.

> ---
> See "[v2,1/4] dt-bindings: clock: renesas: cpg-mssr: Document reset control
> support" (https://patchwork.kernel.org/patch/9536627/) for the format of
> a reset specifier in the Renesas CPG/MSSR case.
> 
> E.g. "resets = <&cpg 310>;"
> 
> v2:
>   - s/phandles/phandle/.
> ---
>  Documentation/devicetree/bindings/display/renesas,du.txt | 10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/display/renesas,du.txt
> b/Documentation/devicetree/bindings/display/renesas,du.txt index
> 1a02f099a0ff0a3a..3db418c827193e82 100644
> --- a/Documentation/devicetree/bindings/display/renesas,du.txt
> +++ b/Documentation/devicetree/bindings/display/renesas,du.txt
> @@ -36,6 +36,16 @@ Required Properties:
>        When supplied they must be named "dclkin.x" with "x" being the input
>        clock numerical index.
> 
> +Optional properties:
> +  - resets: A list of phandle + reset-specifier pairs, one for each entry
> in +    the reset-names property.
> +  - reset-names: Names of the resets. This property is model-dependent.
> +    - R8A779[0123456] use one reset for a group of one or more successive
> +      channels, and one reset per LVDS encoder (if available). The resets
> +      must be named "du.x" with "x" being the numerical index of the lowest
> +      channel in the group. The LVDS resets must be named "lvds.x" with
> "x" +      being the LVDS encoder numerical index.
> +
>  Required nodes:
> 
>  The connections to the DU output video ports are modeled using the OF graph

-- 
Regards,

Laurent Pinchart

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v2] dt-bindings: drm: rcar-du: Document optional reset properties
  2017-03-06 16:32 ` Laurent Pinchart
@ 2017-03-06 16:36   ` Geert Uytterhoeven
  2017-03-06 16:39     ` Laurent Pinchart
  0 siblings, 1 reply; 10+ messages in thread
From: Geert Uytterhoeven @ 2017-03-06 16:36 UTC (permalink / raw)
  To: Laurent Pinchart
  Cc: Mark Rutland, devicetree@vger.kernel.org, Geert Uytterhoeven,
	DRI Development, Linux-Renesas, Rob Herring

Hi Laurent,

On Mon, Mar 6, 2017 at 5:32 PM, Laurent Pinchart
<laurent.pinchart@ideasonboard.com> wrote:
> On Monday 06 Mar 2017 17:25:56 Geert Uytterhoeven wrote:
>> Document the optional properties for describing module resets, to
>> support resetting display channels and LVDS encoders on R-Car Gen2 and
>> Gen3.
>>
>> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
>
> This looks good to me.
>
> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

Thanks!

> I think we should try implementing support for reset in the DU driver before
> merging this though, it always helps to test the proposed DT bindings.

Do you want me to drop the DU parts from my big patches to add all resets
to the .dtsis I was going to send?

DU is the special one, as it doesn't have a one-to-one mapping of resets
to modules.

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
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v2] dt-bindings: drm: rcar-du: Document optional reset properties
  2017-03-06 16:36   ` Geert Uytterhoeven
@ 2017-03-06 16:39     ` Laurent Pinchart
  0 siblings, 0 replies; 10+ messages in thread
From: Laurent Pinchart @ 2017-03-06 16:39 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Mark Rutland, devicetree@vger.kernel.org, Geert Uytterhoeven,
	DRI Development, Linux-Renesas, Rob Herring

Hi Geert,

On Monday 06 Mar 2017 17:36:41 Geert Uytterhoeven wrote:
> On Mon, Mar 6, 2017 at 5:32 PM, Laurent Pinchart wrote:
> > On Monday 06 Mar 2017 17:25:56 Geert Uytterhoeven wrote:
> >> Document the optional properties for describing module resets, to
> >> support resetting display channels and LVDS encoders on R-Car Gen2 and
> >> Gen3.
> >> 
> >> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> > 
> > This looks good to me.
> > 
> > Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> 
> Thanks!
> 
> > I think we should try implementing support for reset in the DU driver
> > before merging this though, it always helps to test the proposed DT
> > bindings.
>
> Do you want me to drop the DU parts from my big patches to add all resets
> to the .dtsis I was going to send?
> 
> DU is the special one, as it doesn't have a one-to-one mapping of resets
> to modules.

If it's not too urgent, I'd appreciate if we could test it first, yes.

-- 
Regards,

Laurent Pinchart

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v2] dt-bindings: drm: rcar-du: Document optional reset properties
  2017-03-06 16:25 [PATCH v2] dt-bindings: drm: rcar-du: Document optional reset properties Geert Uytterhoeven
  2017-03-06 16:32 ` Laurent Pinchart
@ 2017-03-15 17:01 ` Rob Herring
  2017-03-16  8:13   ` Geert Uytterhoeven
  1 sibling, 1 reply; 10+ messages in thread
From: Rob Herring @ 2017-03-15 17:01 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Mark Rutland, devicetree, dri-devel, linux-renesas-soc,
	Laurent Pinchart

On Mon, Mar 06, 2017 at 05:25:56PM +0100, Geert Uytterhoeven wrote:
> Document the optional properties for describing module resets, to
> support resetting display channels and LVDS encoders on R-Car Gen2 and
> Gen3.
> 
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> ---
> See "[v2,1/4] dt-bindings: clock: renesas: cpg-mssr: Document reset control
> support" (https://patchwork.kernel.org/patch/9536627/) for the format of
> a reset specifier in the Renesas CPG/MSSR case.
> 
> E.g. "resets = <&cpg 310>;"
> 
> v2:
>   - s/phandles/phandle/.
> ---
>  Documentation/devicetree/bindings/display/renesas,du.txt | 10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/display/renesas,du.txt b/Documentation/devicetree/bindings/display/renesas,du.txt
> index 1a02f099a0ff0a3a..3db418c827193e82 100644
> --- a/Documentation/devicetree/bindings/display/renesas,du.txt
> +++ b/Documentation/devicetree/bindings/display/renesas,du.txt
> @@ -36,6 +36,16 @@ Required Properties:
>        When supplied they must be named "dclkin.x" with "x" being the input
>        clock numerical index.
>  
> +Optional properties:
> +  - resets: A list of phandle + reset-specifier pairs, one for each entry in
> +    the reset-names property.
> +  - reset-names: Names of the resets. This property is model-dependent.
> +    - R8A779[0123456] use one reset for a group of one or more successive
> +      channels, and one reset per LVDS encoder (if available). The resets
> +      must be named "du.x" with "x" being the numerical index of the lowest
> +      channel in the group. The LVDS resets must be named "lvds.x" with "x"
> +      being the LVDS encoder numerical index.

LVDS is not a separate block?

> +
>  Required nodes:
>  
>  The connections to the DU output video ports are modeled using the OF graph
> -- 
> 2.7.4
> 
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v2] dt-bindings: drm: rcar-du: Document optional reset properties
  2017-03-15 17:01 ` Rob Herring
@ 2017-03-16  8:13   ` Geert Uytterhoeven
  2017-03-16 20:56     ` Rob Herring
  0 siblings, 1 reply; 10+ messages in thread
From: Geert Uytterhoeven @ 2017-03-16  8:13 UTC (permalink / raw)
  To: Rob Herring
  Cc: Geert Uytterhoeven, Laurent Pinchart, David Airlie, Mark Rutland,
	Philipp Zabel, DRI Development, Linux-Renesas,
	devicetree@vger.kernel.org

Hi Rob,

On Wed, Mar 15, 2017 at 6:01 PM, Rob Herring <robh@kernel.org> wrote:
> On Mon, Mar 06, 2017 at 05:25:56PM +0100, Geert Uytterhoeven wrote:
>> Document the optional properties for describing module resets, to
>> support resetting display channels and LVDS encoders on R-Car Gen2 and
>> Gen3.
>>
>> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
>> ---
>> See "[v2,1/4] dt-bindings: clock: renesas: cpg-mssr: Document reset control
>> support" (https://patchwork.kernel.org/patch/9536627/) for the format of
>> a reset specifier in the Renesas CPG/MSSR case.
>>
>> E.g. "resets = <&cpg 310>;"
>>
>> v2:
>>   - s/phandles/phandle/.
>> ---
>>  Documentation/devicetree/bindings/display/renesas,du.txt | 10 ++++++++++
>>  1 file changed, 10 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/display/renesas,du.txt b/Documentation/devicetree/bindings/display/renesas,du.txt
>> index 1a02f099a0ff0a3a..3db418c827193e82 100644
>> --- a/Documentation/devicetree/bindings/display/renesas,du.txt
>> +++ b/Documentation/devicetree/bindings/display/renesas,du.txt
>> @@ -36,6 +36,16 @@ Required Properties:
>>        When supplied they must be named "dclkin.x" with "x" being the input
>>        clock numerical index.
>>
>> +Optional properties:
>> +  - resets: A list of phandle + reset-specifier pairs, one for each entry in
>> +    the reset-names property.
>> +  - reset-names: Names of the resets. This property is model-dependent.
>> +    - R8A779[0123456] use one reset for a group of one or more successive
>> +      channels, and one reset per LVDS encoder (if available). The resets
>> +      must be named "du.x" with "x" being the numerical index of the lowest
>> +      channel in the group. The LVDS resets must be named "lvds.x" with "x"
>> +      being the LVDS encoder numerical index.
>
> LVDS is not a separate block?

Well... from a hardware point of view, the LVDS encoders and DU channels
are all separate blocks (they have separate reg blocks, clocks, and resets).
But due to the dependencies between the blocks, they're modeled in DT as
a single device, with multiple reg, clocks, and resets properties.

The resets follow the clocks closely, as they're handled by the same block
(CPG/MSSR = Module Standby and Software Reset), except for a few quirks
(e.g. one reset for all DU channels on R-Car Gen2, one reset per pair of
 channels on R-Car Gen3).

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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v2] dt-bindings: drm: rcar-du: Document optional reset properties
  2017-03-16  8:13   ` Geert Uytterhoeven
@ 2017-03-16 20:56     ` Rob Herring
  2017-03-16 20:59       ` Geert Uytterhoeven
  0 siblings, 1 reply; 10+ messages in thread
From: Rob Herring @ 2017-03-16 20:56 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Mark Rutland, devicetree@vger.kernel.org, Geert Uytterhoeven,
	DRI Development, Linux-Renesas, Laurent Pinchart

On Thu, Mar 16, 2017 at 09:13:16AM +0100, Geert Uytterhoeven wrote:
> Hi Rob,
> 
> On Wed, Mar 15, 2017 at 6:01 PM, Rob Herring <robh@kernel.org> wrote:
> > On Mon, Mar 06, 2017 at 05:25:56PM +0100, Geert Uytterhoeven wrote:
> >> Document the optional properties for describing module resets, to
> >> support resetting display channels and LVDS encoders on R-Car Gen2 and
> >> Gen3.
> >>
> >> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> >> ---
> >> See "[v2,1/4] dt-bindings: clock: renesas: cpg-mssr: Document reset control
> >> support" (https://patchwork.kernel.org/patch/9536627/) for the format of
> >> a reset specifier in the Renesas CPG/MSSR case.
> >>
> >> E.g. "resets = <&cpg 310>;"
> >>
> >> v2:
> >>   - s/phandles/phandle/.
> >> ---
> >>  Documentation/devicetree/bindings/display/renesas,du.txt | 10 ++++++++++
> >>  1 file changed, 10 insertions(+)
> >>
> >> diff --git a/Documentation/devicetree/bindings/display/renesas,du.txt b/Documentation/devicetree/bindings/display/renesas,du.txt
> >> index 1a02f099a0ff0a3a..3db418c827193e82 100644
> >> --- a/Documentation/devicetree/bindings/display/renesas,du.txt
> >> +++ b/Documentation/devicetree/bindings/display/renesas,du.txt
> >> @@ -36,6 +36,16 @@ Required Properties:
> >>        When supplied they must be named "dclkin.x" with "x" being the input
> >>        clock numerical index.
> >>
> >> +Optional properties:
> >> +  - resets: A list of phandle + reset-specifier pairs, one for each entry in
> >> +    the reset-names property.
> >> +  - reset-names: Names of the resets. This property is model-dependent.
> >> +    - R8A779[0123456] use one reset for a group of one or more successive
> >> +      channels, and one reset per LVDS encoder (if available). The resets
> >> +      must be named "du.x" with "x" being the numerical index of the lowest
> >> +      channel in the group. The LVDS resets must be named "lvds.x" with "x"
> >> +      being the LVDS encoder numerical index.
> >
> > LVDS is not a separate block?
> 
> Well... from a hardware point of view, the LVDS encoders and DU channels
> are all separate blocks (they have separate reg blocks, clocks, and resets).
> But due to the dependencies between the blocks, they're modeled in DT as
> a single device, with multiple reg, clocks, and resets properties.

Dependencies being DRM requirement of wanting a single device with 
sub-devices or some h/w dependencies? The former shouldn't define your 
binding.

Rob
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v2] dt-bindings: drm: rcar-du: Document optional reset properties
  2017-03-16 20:56     ` Rob Herring
@ 2017-03-16 20:59       ` Geert Uytterhoeven
  2017-03-20 15:04         ` Rob Herring
  2017-04-07 12:55         ` Laurent Pinchart
  0 siblings, 2 replies; 10+ messages in thread
From: Geert Uytterhoeven @ 2017-03-16 20:59 UTC (permalink / raw)
  To: Rob Herring
  Cc: Mark Rutland, devicetree@vger.kernel.org, Geert Uytterhoeven,
	DRI Development, Linux-Renesas, Laurent Pinchart

Hi Rob,

On Thu, Mar 16, 2017 at 9:56 PM, Rob Herring <robh@kernel.org> wrote:
> On Thu, Mar 16, 2017 at 09:13:16AM +0100, Geert Uytterhoeven wrote:
>> On Wed, Mar 15, 2017 at 6:01 PM, Rob Herring <robh@kernel.org> wrote:
>> > On Mon, Mar 06, 2017 at 05:25:56PM +0100, Geert Uytterhoeven wrote:
>> >> Document the optional properties for describing module resets, to
>> >> support resetting display channels and LVDS encoders on R-Car Gen2 and
>> >> Gen3.
>> >>
>> >> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
>> >> ---
>> >> See "[v2,1/4] dt-bindings: clock: renesas: cpg-mssr: Document reset control
>> >> support" (https://patchwork.kernel.org/patch/9536627/) for the format of
>> >> a reset specifier in the Renesas CPG/MSSR case.
>> >>
>> >> E.g. "resets = <&cpg 310>;"
>> >>
>> >> v2:
>> >>   - s/phandles/phandle/.
>> >> ---
>> >>  Documentation/devicetree/bindings/display/renesas,du.txt | 10 ++++++++++
>> >>  1 file changed, 10 insertions(+)
>> >>
>> >> diff --git a/Documentation/devicetree/bindings/display/renesas,du.txt b/Documentation/devicetree/bindings/display/renesas,du.txt
>> >> index 1a02f099a0ff0a3a..3db418c827193e82 100644
>> >> --- a/Documentation/devicetree/bindings/display/renesas,du.txt
>> >> +++ b/Documentation/devicetree/bindings/display/renesas,du.txt
>> >> @@ -36,6 +36,16 @@ Required Properties:
>> >>        When supplied they must be named "dclkin.x" with "x" being the input
>> >>        clock numerical index.
>> >>
>> >> +Optional properties:
>> >> +  - resets: A list of phandle + reset-specifier pairs, one for each entry in
>> >> +    the reset-names property.
>> >> +  - reset-names: Names of the resets. This property is model-dependent.
>> >> +    - R8A779[0123456] use one reset for a group of one or more successive
>> >> +      channels, and one reset per LVDS encoder (if available). The resets
>> >> +      must be named "du.x" with "x" being the numerical index of the lowest
>> >> +      channel in the group. The LVDS resets must be named "lvds.x" with "x"
>> >> +      being the LVDS encoder numerical index.
>> >
>> > LVDS is not a separate block?
>>
>> Well... from a hardware point of view, the LVDS encoders and DU channels
>> are all separate blocks (they have separate reg blocks, clocks, and resets).
>> But due to the dependencies between the blocks, they're modeled in DT as
>> a single device, with multiple reg, clocks, and resets properties.
>
> Dependencies being DRM requirement of wanting a single device with
> sub-devices or some h/w dependencies? The former shouldn't define your
> binding.

Hardware dependencies. Laurent can tell you more about them (when he'll
be back).

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
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v2] dt-bindings: drm: rcar-du: Document optional reset properties
  2017-03-16 20:59       ` Geert Uytterhoeven
@ 2017-03-20 15:04         ` Rob Herring
  2017-04-07 12:55         ` Laurent Pinchart
  1 sibling, 0 replies; 10+ messages in thread
From: Rob Herring @ 2017-03-20 15:04 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Mark Rutland, devicetree@vger.kernel.org, Geert Uytterhoeven,
	DRI Development, Linux-Renesas, Laurent Pinchart

On Thu, Mar 16, 2017 at 09:59:04PM +0100, Geert Uytterhoeven wrote:
> Hi Rob,
> 
> On Thu, Mar 16, 2017 at 9:56 PM, Rob Herring <robh@kernel.org> wrote:
> > On Thu, Mar 16, 2017 at 09:13:16AM +0100, Geert Uytterhoeven wrote:
> >> On Wed, Mar 15, 2017 at 6:01 PM, Rob Herring <robh@kernel.org> wrote:
> >> > On Mon, Mar 06, 2017 at 05:25:56PM +0100, Geert Uytterhoeven wrote:
> >> >> Document the optional properties for describing module resets, to
> >> >> support resetting display channels and LVDS encoders on R-Car Gen2 and
> >> >> Gen3.
> >> >>
> >> >> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> >> >> ---
> >> >> See "[v2,1/4] dt-bindings: clock: renesas: cpg-mssr: Document reset control
> >> >> support" (https://patchwork.kernel.org/patch/9536627/) for the format of
> >> >> a reset specifier in the Renesas CPG/MSSR case.
> >> >>
> >> >> E.g. "resets = <&cpg 310>;"
> >> >>
> >> >> v2:
> >> >>   - s/phandles/phandle/.
> >> >> ---
> >> >>  Documentation/devicetree/bindings/display/renesas,du.txt | 10 ++++++++++
> >> >>  1 file changed, 10 insertions(+)
> >> >>
> >> >> diff --git a/Documentation/devicetree/bindings/display/renesas,du.txt b/Documentation/devicetree/bindings/display/renesas,du.txt
> >> >> index 1a02f099a0ff0a3a..3db418c827193e82 100644
> >> >> --- a/Documentation/devicetree/bindings/display/renesas,du.txt
> >> >> +++ b/Documentation/devicetree/bindings/display/renesas,du.txt
> >> >> @@ -36,6 +36,16 @@ Required Properties:
> >> >>        When supplied they must be named "dclkin.x" with "x" being the input
> >> >>        clock numerical index.
> >> >>
> >> >> +Optional properties:
> >> >> +  - resets: A list of phandle + reset-specifier pairs, one for each entry in
> >> >> +    the reset-names property.
> >> >> +  - reset-names: Names of the resets. This property is model-dependent.
> >> >> +    - R8A779[0123456] use one reset for a group of one or more successive
> >> >> +      channels, and one reset per LVDS encoder (if available). The resets
> >> >> +      must be named "du.x" with "x" being the numerical index of the lowest
> >> >> +      channel in the group. The LVDS resets must be named "lvds.x" with "x"
> >> >> +      being the LVDS encoder numerical index.
> >> >
> >> > LVDS is not a separate block?
> >>
> >> Well... from a hardware point of view, the LVDS encoders and DU channels
> >> are all separate blocks (they have separate reg blocks, clocks, and resets).
> >> But due to the dependencies between the blocks, they're modeled in DT as
> >> a single device, with multiple reg, clocks, and resets properties.
> >
> > Dependencies being DRM requirement of wanting a single device with
> > sub-devices or some h/w dependencies? The former shouldn't define your
> > binding.
> 
> Hardware dependencies. Laurent can tell you more about them (when he'll
> be back).

Okay,

Acked-by: Rob Herring <robh@kernel.org>

Rob
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v2] dt-bindings: drm: rcar-du: Document optional reset properties
  2017-03-16 20:59       ` Geert Uytterhoeven
  2017-03-20 15:04         ` Rob Herring
@ 2017-04-07 12:55         ` Laurent Pinchart
  1 sibling, 0 replies; 10+ messages in thread
From: Laurent Pinchart @ 2017-04-07 12:55 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Rob Herring, Geert Uytterhoeven, David Airlie, Mark Rutland,
	Philipp Zabel, DRI Development, Linux-Renesas,
	devicetree@vger.kernel.org

Hi Geert and Rob,

On Thursday 16 Mar 2017 21:59:04 Geert Uytterhoeven wrote:
> On Thu, Mar 16, 2017 at 9:56 PM, Rob Herring <robh@kernel.org> wrote:
> > On Thu, Mar 16, 2017 at 09:13:16AM +0100, Geert Uytterhoeven wrote:
> >> On Wed, Mar 15, 2017 at 6:01 PM, Rob Herring <robh@kernel.org> wrote:
> >>> On Mon, Mar 06, 2017 at 05:25:56PM +0100, Geert Uytterhoeven wrote:
> >>>> Document the optional properties for describing module resets, to
> >>>> support resetting display channels and LVDS encoders on R-Car Gen2 and
> >>>> Gen3.
> >>>> 
> >>>> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> >>>> ---
> >>>> See "[v2,1/4] dt-bindings: clock: renesas: cpg-mssr: Document reset
> >>>> control support" (https://patchwork.kernel.org/patch/9536627/) for the
> >>>> format of a reset specifier in the Renesas CPG/MSSR case.
> >>>> 
> >>>> E.g. "resets = <&cpg 310>;"
> >>>> 
> >>>> v2:
> >>>>   - s/phandles/phandle/.
> >>>> 
> >>>> ---
> >>>> 
> >>>>  Documentation/devicetree/bindings/display/renesas,du.txt | 10 ++++++++
> >>>>  1 file changed, 10 insertions(+)
> >>>> 
> >>>> diff --git a/Documentation/devicetree/bindings/display/renesas,du.txt
> >>>> b/Documentation/devicetree/bindings/display/renesas,du.txt index
> >>>> 1a02f099a0ff0a3a..3db418c827193e82 100644
> >>>> --- a/Documentation/devicetree/bindings/display/renesas,du.txt
> >>>> +++ b/Documentation/devicetree/bindings/display/renesas,du.txt
> >>>> @@ -36,6 +36,16 @@ Required Properties:
> >>>>        When supplied they must be named "dclkin.x" with "x" being the
> >>>>        input clock numerical index.
> >>>> 
> >>>> +Optional properties:
> >>>> +  - resets: A list of phandle + reset-specifier pairs, one for each
> >>>> entry in
> >>>> +    the reset-names property.
> >>>> +  - reset-names: Names of the resets. This property is
> >>>> model-dependent.
> >>>> +    - R8A779[0123456] use one reset for a group of one or more
> >>>> successive
> >>>> +      channels, and one reset per LVDS encoder (if available). The
> >>>> resets
> >>>> +      must be named "du.x" with "x" being the numerical index of the
> >>>> lowest
> >>>> +      channel in the group. The LVDS resets must be named "lvds.x"
> >>>> with "x"
> >>>> +      being the LVDS encoder numerical index.
> >>> 
> >>> LVDS is not a separate block?
> >> 
> >> Well... from a hardware point of view, the LVDS encoders and DU channels
> >> are all separate blocks (they have separate reg blocks, clocks, and
> >> resets). But due to the dependencies between the blocks, they're modeled
> >> in DT as a single device, with multiple reg, clocks, and resets
> >> properties.
> >
> > Dependencies being DRM requirement of wanting a single device with
> > sub-devices or some h/w dependencies? The former shouldn't define your
> > binding.
> 
> Hardware dependencies. Laurent can tell you more about them (when he'll
> be back).

I believe we could model the LVDS encoder as a separate DT node. It was 
probably a historical mistake (that would however need to be confirmed, I 
haven't double-checked all details). Obviously I can't break backward 
compatibility, so we're kind of stuck :-S

-- 
Regards,

Laurent Pinchart

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2017-04-07 12:55 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-03-06 16:25 [PATCH v2] dt-bindings: drm: rcar-du: Document optional reset properties Geert Uytterhoeven
2017-03-06 16:32 ` Laurent Pinchart
2017-03-06 16:36   ` Geert Uytterhoeven
2017-03-06 16:39     ` Laurent Pinchart
2017-03-15 17:01 ` Rob Herring
2017-03-16  8:13   ` Geert Uytterhoeven
2017-03-16 20:56     ` Rob Herring
2017-03-16 20:59       ` Geert Uytterhoeven
2017-03-20 15:04         ` Rob Herring
2017-04-07 12:55         ` Laurent Pinchart

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).