[PATCH 1/9] dt-bindings: display: renesas,du: Document r8a774e1 bindings

Laurent Pinchart laurent.pinchart at ideasonboard.com
Thu Aug 13 11:11:23 UTC 2020


Hi Prabhakar,

On Thu, Aug 13, 2020 at 12:08:58PM +0100, Lad, Prabhakar wrote:
> On Thu, Aug 13, 2020 at 11:59 AM Laurent Pinchart wrote:
> > On Thu, Aug 13, 2020 at 11:38:03AM +0100, Lad, Prabhakar wrote:
> >> On Thu, Aug 13, 2020 at 10:05 AM Geert Uytterhoeven wrote:
> >>> On Wed, Aug 12, 2020 at 4:02 PM Lad Prabhakar wrote:
> >>>> From: Marian-Cristian Rotariu <marian-cristian.rotariu.rb at bp.renesas.com>
> >>>>
> >>>> Document the RZ/G2H (a.k.a. r8a774e1) SoC in the R-Car DU bindings.
> >>>>
> >>>> Signed-off-by: Marian-Cristian Rotariu <marian-cristian.rotariu.rb at bp.renesas.com>
> >>>> Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj at bp.renesas.com>
> >>>> ---
> >>>>  Documentation/devicetree/bindings/display/renesas,du.txt | 2 ++
> >>>>  1 file changed, 2 insertions(+)
> >>>>
> >>>> diff --git a/Documentation/devicetree/bindings/display/renesas,du.txt b/Documentation/devicetree/bindings/display/renesas,du.txt
> >>>> index 51cd4d162770..67cded5ad827 100644
> >>>> --- a/Documentation/devicetree/bindings/display/renesas,du.txt
> >>>> +++ b/Documentation/devicetree/bindings/display/renesas,du.txt
> >>>> @@ -10,6 +10,7 @@ Required Properties:
> >>>>      - "renesas,du-r8a774a1" for R8A774A1 (RZ/G2M) compatible DU
> >>>>      - "renesas,du-r8a774b1" for R8A774B1 (RZ/G2N) compatible DU
> >>>>      - "renesas,du-r8a774c0" for R8A774C0 (RZ/G2E) compatible DU
> >>>> +    - "renesas,du-r8a774e1" for R8A774E1 (RZ/G2H) compatible DU
> >>>>      - "renesas,du-r8a7779" for R8A7779 (R-Car H1) compatible DU
> >>>>      - "renesas,du-r8a7790" for R8A7790 (R-Car H2) compatible DU
> >>>>      - "renesas,du-r8a7791" for R8A7791 (R-Car M2-W) compatible DU
> >>>> @@ -75,6 +76,7 @@ corresponding to each DU output.
> >>>>   R8A774A1 (RZ/G2M)      DPAD 0         HDMI 0         LVDS 0         -
> >>>>   R8A774B1 (RZ/G2N)      DPAD 0         HDMI 0         LVDS 0         -
> >>>>   R8A774C0 (RZ/G2E)      DPAD 0         LVDS 0         LVDS 1         -
> >>>> + R8A774E1 (RZ/G2H)      DPAD 0         HDMI 0         LVDS 0         -
> >>>
> >>> As LVDS 0 is the fourth channel (DU3), should it be listed under port 3
> >>> instead of port 2?
> >>>
> >>> I know we did it the same for R-Car M3-N and RZ/G2N.
> >>> But my main worry is adding support for R-Car H3-N later.
> >
> > Why should we do so ? The port number here isn't tied to the DU channel
> > number. It only identifies the output port. Many DUs can route DU
> > channel outputs to different output ports.
> >
> The binding document (renesas,du.txt) does state that "The following
> table lists for each supported model the port number corresponding to
> each DU output.", hence the confusion.

It can be a bit confusing indeed. "DU output" here refers to the output
of the whoel DU, made of individual DU channels. Each DU channel is
listed as a DU device in the datasheet, and collectively they are the DU
device that Linux handles.

> >> I do agree too, with the below diff I tested the LVDS output on RZ/G2N
> >> Rev2 board and things work fine. But only thing it doesn't explain is
> >> why does LVDS work on DU2 for G2[H/N] boards :D
> >>
> >> Geert, Laurent, Kieran If you agree with the below changes I shall
> >> post a proper patch fixing it for RZ/G2[HN]
> >>
> >> diff --git a/arch/arm64/boot/dts/renesas/r8a774b1.dtsi
> >> b/arch/arm64/boot/dts/renesas/r8a774b1.dtsi
> >> index d661724fc28a..0b087d287202 100644
> >> --- a/arch/arm64/boot/dts/renesas/r8a774b1.dtsi
> >> +++ b/arch/arm64/boot/dts/renesas/r8a774b1.dtsi
> >> @@ -2540,8 +2540,8 @@
> >>                                                 remote-endpoint =
> >> <&dw_hdmi0_in>;
> >>                                         };
> >>                                 };
> >> -                               port at 2 {
> >> -                                       reg = <2>;
> >> +                               port at 3 {
> >> +                                       reg = <3>;
> >>                                         du_out_lvds0: endpoint {
> >>                                                 remote-endpoint = <&lvds0_in>;
> >>                                         };
> >> diff --git a/drivers/gpu/drm/rcar-du/rcar_du_drv.c
> >> b/drivers/gpu/drm/rcar-du/rcar_du_drv.c
> >> index 3e67cf70f040..419d81c7763e 100644
> >> --- a/drivers/gpu/drm/rcar-du/rcar_du_drv.c
> >> +++ b/drivers/gpu/drm/rcar-du/rcar_du_drv.c
> >> @@ -153,7 +153,7 @@ static const struct rcar_du_device_info
> >> rcar_du_r8a774b1_info = {
> >>                 },
> >>                 [RCAR_DU_OUTPUT_LVDS0] = {
> >>                         .possible_crtcs = BIT(0),
> >> -                       .port = 2,
> >> +                       .port = 3,
> >>                 },
> >>         },
> >>         .num_lvds = 1,
> >>
> >>>>   R8A7779 (R-Car H1)     DPAD 0         DPAD 1         -              -
> >>>>   R8A7790 (R-Car H2)     DPAD 0         LVDS 0         LVDS 1         -
> >>>>   R8A7791 (R-Car M2-W)   DPAD 0         LVDS 0         -              -
> >>>
> >>> Apart from that:
> >>> Reviewed-by: Geert Uytterhoeven <geert+renesas at glider.be>

-- 
Regards,

Laurent Pinchart


More information about the dri-devel mailing list