RE: [PATCH 01/16] dt-bindings: display: bridge: renesas,dsi: Document RZ/G3L
Biju Das <[email protected]> Fri, 24 Jul 2026 12:52:19 +0000
| Newsgroups | org.kernel.vger.linux-renesas-soc,org.freedesktop.lists.dri-devel,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <TY3PR01MB11346892D9619A8D1A6C2DF4A86CF2@TY3PR01MB11346.jpnprd01.prod.outlook.com> |
Hi Krzysztof Kozlowski/Geert, > -----Original Message----- > From: Biju Das > Sent: 24 July 2026 10:33 > Subject: RE: [PATCH 01/16] dt-bindings: display: bridge: renesas,dsi: Document RZ/G3L > > Hi Krzysztof Kozlowski, > > > -----Original Message----- > > From: Krzysztof Kozlowski <[email protected]> > > Sent: 12 July 2026 16:24 > > Subject: Re: [PATCH 01/16] dt-bindings: display: bridge: renesas,dsi: > > Document RZ/G3L > > > > On Wed, Jul 08, 2026 at 09:39:01AM +0000, Biju Das wrote: > > > Hi Krzysztof Kozlowski, > > > > > > Thanks for the feedback. > > > > > > > -----Original Message----- > > > > From: Krzysztof Kozlowski <[email protected]> > > > > Sent: 08 July 2026 09:30 > > > > Subject: Re: [PATCH 01/16] dt-bindings: display: bridge: > > > > renesas,dsi: Document RZ/G3L > > > > > > > > On Sat, Jul 04, 2026 at 10:34:11AM +0100, Biju wrote: > > > > > From: Biju Das <[email protected]> > > > > > > > > > > The RZ/G3L DSI IP is similar to the RZ/G2L but has different > > > > > global PHY timings and also the PLLCLK is ungateble clock. Add > > > > > the compatible string "renesas,r9a08g046-mipi-dsi" to handle > > > > > these difference for the Renesas RZ/G3L SoC. The power to DSI region is controlled by SYSC block. > > > > > Document renesas,sysc-pwrrdy property to handle the power control. > > > > > > > > > > Signed-off-by: Biju Das <[email protected]> > > > > > --- > > > > > .../bindings/display/bridge/renesas,dsi.yaml | 15 +++++++++++++++ > > > > > 1 file changed, 15 insertions(+) > > > > > > > > > > diff --git > > > > > a/Documentation/devicetree/bindings/display/bridge/renesas,dsi.y > > > > > am > > > > > l > > > > > b/Documentation/devicetree/bindings/display/bridge/renesas,dsi.y > > > > > am l index c20625b8425e..b114ac3b111a 100644 > > > > > --- > > > > > a/Documentation/devicetree/bindings/display/bridge/renesas,dsi.y > > > > > am > > > > > l > > > > > +++ b/Documentation/devicetree/bindings/display/bridge/renesas,d > > > > > +++ si > > > > > +++ .yam > > > > > +++ l > > > > > @@ -28,6 +28,7 @@ properties: > > > > > - const: renesas,r9a09g057-mipi-dsi > > > > > > > > > > - enum: > > > > > + - renesas,r9a08g046-mipi-dsi # RZ/G3L > > > > > - renesas,r9a09g057-mipi-dsi # RZ/V2H(P) > > > > > > > > > > reg: > > > > > @@ -108,6 +109,20 @@ properties: > > > > > power-domains: > > > > > maxItems: 1 > > > > > > > > > > + renesas,sysc-pwrrdy: > > > > > + description: > > > > > + The system controller PWRRDY indicates to the DSI region, if the power > > > > > + supply is ready. PWRRDY needs to be set during power-on before applying > > > > > + any other settings. It also needs to be set before powering off the DSI. > > > > > + $ref: /schemas/types.yaml#/definitions/phandle-array > > > > > > > > This feels a lot like a power domain. Please elaborate what is > > > > PWRRDY and why power-on/off and power status within SoC (important!) is not encoded as power > domain. > > > > > > We already tried modelling signal as power domain in RZ/G3S and > > > finally Ulf agreed that it cannot be power-domain[1] > > > > > > " SYSC signal seems best to be modelled as a reset. > > > Although, it looks like the USB PM domain provider should rather be > > > the consumer of that reset, instead of having the reset being > > > consumed by the consumers of the USB PM domain." > > > > > > Then Phillip proposed power sequencing driver[2] and finally he and > > > Rob ok for the solution [3] > > > > The problem is that you did not implement or reference here power > > sequencing. You created phandle without corresponding any hardware signal and used "driver" as an > argument. > > > > power sequencing does not mean you can stuff random phandles here and there. > > Can you please provide some pointers for the binding and other stuff to model this as power sequence > driver? > > SYSC driver has PWRRDY register (https://git.kernel.org/pub/scm/linux/kernel/git/next/linux- > next.git/tree/drivers/soc/renesas/r9a08g046-sysc.c?h=next-20260723#n28) > > It Controls PWRRDY terminal of USB, DSI and CSI > 0: PWRRDY > 1: PWRRDY down > > You mean Power sequence has a handle to sysc IP. Please let me know. > > There is no other resource apart from phandle to SYSC. > > sys-power-ready { > compatible = "renesas, r9a08g046-sys=pwrrdy"; > renesas,sysc-pwrrdy = <&sysc 0xd70>; > }; > > phyrst: usbphy-ctrl@11e00000 { > compatible = "renesas,r9a08g046-usbphy-ctrl"; > reg = <0 0x11e00000 0 0x10000>; > > phyrst-power-sequence = <&sys-power-ready 1>; > } > > dsi: dsi@10850000 { > compatible = "renesas,r9a08g046-mipi-dsi"; > reg = <0 0x10850000 0 0x20000>; > > dsi-power-sequence = <&sys-power-ready 2>; > } > > Currently it is modelled as, > > phyrst: usbphy-ctrl@11e00000 { > compatible = "renesas,r9a08g046-usbphy-ctrl"; > reg = <0 0x11e00000 0 0x10000>; > > renesas,sysc-pwrrdy = <&sysc 0xd70 1>; > } > > dsi: dsi@10850000 { > compatible = "renesas,r9a08g046-mipi-dsi"; > reg = <0 0x10850000 0 0x20000>; > > renesas,sysc-pwrrdy = <&sysc 0xd70 2>; > } What about RZ/SYSC driver instantiate RZ/G3L power sequence auxiliary driver and DSI driver uses the Power sequence driver to control the power ready signal? In that case renesas,sysc-pwrrdy may not be needed. The power sequence driver should get regmap from parent and use that one for controlling the pwrrdy signals. Cheers, Biju