public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] dt-bindings: display: bridge: nxp,tda998x: Add missing clocks
@ 2026-01-12 16:02 Geert Uytterhoeven
  2026-01-12 17:49 ` Laurent Pinchart
  2026-01-21 16:26 ` Rob Herring (Arm)
  0 siblings, 2 replies; 4+ messages in thread
From: Geert Uytterhoeven @ 2026-01-12 16:02 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Russell King,
	Andrzej Hajda, Neil Armstrong, Robert Foss, Laurent Pinchart,
	Jonas Karlman, Jernej Skrabec
  Cc: dri-devel, devicetree, linux-renesas-soc, linux-omap,
	Geert Uytterhoeven

Some TDA998x variants (e.g. TDA19988) have an OSC_IN pin, to connect
an external oscillator circuit or clock source.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
This fixes "make dtbs_check":

    arch/arm64/boot/dts/renesas/r8a774c0-ek874-mipi-2.1.dtb: tda19988@70 (nxp,tda998x): Unevaluated properties are not allowed ('clocks' was unexpected)
	    from schema $id: http://devicetree.org/schemas/display/bridge/nxp,tda998x.yaml
    arch/arm64/boot/dts/renesas/r8a774c0-cat874.dtb: tda19988@70 (nxp,tda998x): Unevaluated properties are not allowed ('clocks' was unexpected)
	    from schema $id: http://devicetree.org/schemas/display/bridge/nxp,tda998x.yaml
    arch/arm64/boot/dts/renesas/r8a774c0-ek874.dtb: tda19988@70 (nxp,tda998x): Unevaluated properties are not allowed ('clocks' was unexpected)
	    from schema $id: http://devicetree.org/schemas/display/bridge/nxp,tda998x.yaml
    arch/arm64/boot/dts/renesas/r8a774c0-ek874-idk-2121wr.dtb: tda19988@70 (nxp,tda998x): Unevaluated properties are not allowed ('clocks' was unexpected)
	    from schema $id: http://devicetree.org/schemas/display/bridge/nxp,tda998x.yaml

This patch can be considered v3 of "[PATCH v2 2/3] [RFC] arm64: dts:
renesas: cat874: Drop bogus clocks property"[1], as the pin is actually
connected to a clock source on that board.  On BeagleBone Black, it is
also connected to a clock source, but not described in DT.

The linux driver does not use this clock directly, but I suspect[2] the
use of this pin is controlled through the AP_ENA register value, as
specified in the second cell of the the audio-ports property.

[1] https://lore.kernel.org/97b949cddd7e30e9c05873800330dccd3483b12b.1663165552.git.geert+renesas@glider.be
[2] I do not have access to the programming manual.
---
 .../devicetree/bindings/display/bridge/nxp,tda998x.yaml        | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/Documentation/devicetree/bindings/display/bridge/nxp,tda998x.yaml b/Documentation/devicetree/bindings/display/bridge/nxp,tda998x.yaml
index 3fce9e698ea1d2dd..1205c8e9de329bbc 100644
--- a/Documentation/devicetree/bindings/display/bridge/nxp,tda998x.yaml
+++ b/Documentation/devicetree/bindings/display/bridge/nxp,tda998x.yaml
@@ -19,6 +19,9 @@ properties:
   interrupts:
     maxItems: 1
 
+  clocks:
+    maxItems: 1
+
   video-ports:
     $ref: /schemas/types.yaml#/definitions/uint32
     default: 0x230145
-- 
2.43.0


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

* Re: [PATCH] dt-bindings: display: bridge: nxp,tda998x: Add missing clocks
  2026-01-12 16:02 [PATCH] dt-bindings: display: bridge: nxp,tda998x: Add missing clocks Geert Uytterhoeven
@ 2026-01-12 17:49 ` Laurent Pinchart
  2026-01-13  8:43   ` Geert Uytterhoeven
  2026-01-21 16:26 ` Rob Herring (Arm)
  1 sibling, 1 reply; 4+ messages in thread
From: Laurent Pinchart @ 2026-01-12 17:49 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Russell King,
	Andrzej Hajda, Neil Armstrong, Robert Foss, Jonas Karlman,
	Jernej Skrabec, dri-devel, devicetree, linux-renesas-soc,
	linux-omap

Hi Geert,

Thank you for the patch.

On Mon, Jan 12, 2026 at 05:02:40PM +0100, Geert Uytterhoeven wrote:
> Some TDA998x variants (e.g. TDA19988) have an OSC_IN pin, to connect
> an external oscillator circuit or clock source.
> 
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> ---
> This fixes "make dtbs_check":
> 
>     arch/arm64/boot/dts/renesas/r8a774c0-ek874-mipi-2.1.dtb: tda19988@70 (nxp,tda998x): Unevaluated properties are not allowed ('clocks' was unexpected)
> 	    from schema $id: http://devicetree.org/schemas/display/bridge/nxp,tda998x.yaml
>     arch/arm64/boot/dts/renesas/r8a774c0-cat874.dtb: tda19988@70 (nxp,tda998x): Unevaluated properties are not allowed ('clocks' was unexpected)
> 	    from schema $id: http://devicetree.org/schemas/display/bridge/nxp,tda998x.yaml
>     arch/arm64/boot/dts/renesas/r8a774c0-ek874.dtb: tda19988@70 (nxp,tda998x): Unevaluated properties are not allowed ('clocks' was unexpected)
> 	    from schema $id: http://devicetree.org/schemas/display/bridge/nxp,tda998x.yaml
>     arch/arm64/boot/dts/renesas/r8a774c0-ek874-idk-2121wr.dtb: tda19988@70 (nxp,tda998x): Unevaluated properties are not allowed ('clocks' was unexpected)
> 	    from schema $id: http://devicetree.org/schemas/display/bridge/nxp,tda998x.yaml
> 
> This patch can be considered v3 of "[PATCH v2 2/3] [RFC] arm64: dts:
> renesas: cat874: Drop bogus clocks property"[1], as the pin is actually
> connected to a clock source on that board.  On BeagleBone Black, it is
> also connected to a clock source, but not described in DT.
> 
> The linux driver does not use this clock directly, but I suspect[2] the
> use of this pin is controlled through the AP_ENA register value, as
> specified in the second cell of the the audio-ports property.
> 
> [1] https://lore.kernel.org/97b949cddd7e30e9c05873800330dccd3483b12b.1663165552.git.geert+renesas@glider.be
> [2] I do not have access to the programming manual.
> ---
>  .../devicetree/bindings/display/bridge/nxp,tda998x.yaml        | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/display/bridge/nxp,tda998x.yaml b/Documentation/devicetree/bindings/display/bridge/nxp,tda998x.yaml
> index 3fce9e698ea1d2dd..1205c8e9de329bbc 100644
> --- a/Documentation/devicetree/bindings/display/bridge/nxp,tda998x.yaml
> +++ b/Documentation/devicetree/bindings/display/bridge/nxp,tda998x.yaml
> @@ -19,6 +19,9 @@ properties:
>    interrupts:
>      maxItems: 1
>  
> +  clocks:
> +    maxItems: 1
> +

I wonder if we should add a compatible string for the variants with a
clock pin, to let drivers manage the clock.

If the clock does not need to be controlled, an alternative would be to
drop the clocks property from
arch/arm64/boot/dts/renesas/r8a774c0-cat874.dts.

>    video-ports:
>      $ref: /schemas/types.yaml#/definitions/uint32
>      default: 0x230145

-- 
Regards,

Laurent Pinchart

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

* Re: [PATCH] dt-bindings: display: bridge: nxp,tda998x: Add missing clocks
  2026-01-12 17:49 ` Laurent Pinchart
@ 2026-01-13  8:43   ` Geert Uytterhoeven
  0 siblings, 0 replies; 4+ messages in thread
From: Geert Uytterhoeven @ 2026-01-13  8:43 UTC (permalink / raw)
  To: Laurent Pinchart
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Russell King,
	Andrzej Hajda, Neil Armstrong, Robert Foss, Jonas Karlman,
	Jernej Skrabec, dri-devel, devicetree, linux-renesas-soc,
	linux-omap

Hi Laurent,

On Mon, 12 Jan 2026 at 18:50, Laurent Pinchart
<laurent.pinchart@ideasonboard.com> wrote:
> On Mon, Jan 12, 2026 at 05:02:40PM +0100, Geert Uytterhoeven wrote:
> > Some TDA998x variants (e.g. TDA19988) have an OSC_IN pin, to connect
> > an external oscillator circuit or clock source.
> >
> > Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> > ---
> > This fixes "make dtbs_check":
> >
> >     arch/arm64/boot/dts/renesas/r8a774c0-ek874-mipi-2.1.dtb: tda19988@70 (nxp,tda998x): Unevaluated properties are not allowed ('clocks' was unexpected)
> >           from schema $id: http://devicetree.org/schemas/display/bridge/nxp,tda998x.yaml
> >     arch/arm64/boot/dts/renesas/r8a774c0-cat874.dtb: tda19988@70 (nxp,tda998x): Unevaluated properties are not allowed ('clocks' was unexpected)
> >           from schema $id: http://devicetree.org/schemas/display/bridge/nxp,tda998x.yaml
> >     arch/arm64/boot/dts/renesas/r8a774c0-ek874.dtb: tda19988@70 (nxp,tda998x): Unevaluated properties are not allowed ('clocks' was unexpected)
> >           from schema $id: http://devicetree.org/schemas/display/bridge/nxp,tda998x.yaml
> >     arch/arm64/boot/dts/renesas/r8a774c0-ek874-idk-2121wr.dtb: tda19988@70 (nxp,tda998x): Unevaluated properties are not allowed ('clocks' was unexpected)
> >           from schema $id: http://devicetree.org/schemas/display/bridge/nxp,tda998x.yaml
> >
> > This patch can be considered v3 of "[PATCH v2 2/3] [RFC] arm64: dts:
> > renesas: cat874: Drop bogus clocks property"[1], as the pin is actually
> > connected to a clock source on that board.  On BeagleBone Black, it is
> > also connected to a clock source, but not described in DT.
> >
> > The linux driver does not use this clock directly, but I suspect[2] the
> > use of this pin is controlled through the AP_ENA register value, as
> > specified in the second cell of the the audio-ports property.
> >
> > [1] https://lore.kernel.org/97b949cddd7e30e9c05873800330dccd3483b12b.1663165552.git.geert+renesas@glider.be
> > [2] I do not have access to the programming manual.
> > ---
> >  .../devicetree/bindings/display/bridge/nxp,tda998x.yaml        | 3 +++
> >  1 file changed, 3 insertions(+)
> >
> > diff --git a/Documentation/devicetree/bindings/display/bridge/nxp,tda998x.yaml b/Documentation/devicetree/bindings/display/bridge/nxp,tda998x.yaml
> > index 3fce9e698ea1d2dd..1205c8e9de329bbc 100644
> > --- a/Documentation/devicetree/bindings/display/bridge/nxp,tda998x.yaml
> > +++ b/Documentation/devicetree/bindings/display/bridge/nxp,tda998x.yaml
> > @@ -19,6 +19,9 @@ properties:
> >    interrupts:
> >      maxItems: 1
> >
> > +  clocks:
> > +    maxItems: 1
> > +
>
> I wonder if we should add a compatible string for the variants with a
> clock pin, to let drivers manage the clock.

I am not sure if that is necessary, as the clock is optional, and thus
devm_clk_get_optional() can just be added to the driver.

> If the clock does not need to be controlled, an alternative would be to

I think the driver should control the clock. Currently it works by
accident, as on (at least) cat874 and boneblack the external clock is
a fixed clock that is always running.

A simple solution would be to use e.g. devm_clk_get_optional_enabled().
A more complex solution would probably involve using the AP_ENA
register value.  Anyone who has the programming manual for tda998x?

> drop the clocks property from
> arch/arm64/boot/dts/renesas/r8a774c0-cat874.dts.

Cfr. my RFC v2 linked above[1] ;-)

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] 4+ messages in thread

* Re: [PATCH] dt-bindings: display: bridge: nxp,tda998x: Add missing clocks
  2026-01-12 16:02 [PATCH] dt-bindings: display: bridge: nxp,tda998x: Add missing clocks Geert Uytterhoeven
  2026-01-12 17:49 ` Laurent Pinchart
@ 2026-01-21 16:26 ` Rob Herring (Arm)
  1 sibling, 0 replies; 4+ messages in thread
From: Rob Herring (Arm) @ 2026-01-21 16:26 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: linux-omap, Andrzej Hajda, devicetree, Neil Armstrong,
	Russell King, Jonas Karlman, Jernej Skrabec, Robert Foss,
	Laurent Pinchart, Krzysztof Kozlowski, Conor Dooley,
	linux-renesas-soc, dri-devel


On Mon, 12 Jan 2026 17:02:40 +0100, Geert Uytterhoeven wrote:
> Some TDA998x variants (e.g. TDA19988) have an OSC_IN pin, to connect
> an external oscillator circuit or clock source.
> 
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> ---
> This fixes "make dtbs_check":
> 
>     arch/arm64/boot/dts/renesas/r8a774c0-ek874-mipi-2.1.dtb: tda19988@70 (nxp,tda998x): Unevaluated properties are not allowed ('clocks' was unexpected)
> 	    from schema $id: http://devicetree.org/schemas/display/bridge/nxp,tda998x.yaml
>     arch/arm64/boot/dts/renesas/r8a774c0-cat874.dtb: tda19988@70 (nxp,tda998x): Unevaluated properties are not allowed ('clocks' was unexpected)
> 	    from schema $id: http://devicetree.org/schemas/display/bridge/nxp,tda998x.yaml
>     arch/arm64/boot/dts/renesas/r8a774c0-ek874.dtb: tda19988@70 (nxp,tda998x): Unevaluated properties are not allowed ('clocks' was unexpected)
> 	    from schema $id: http://devicetree.org/schemas/display/bridge/nxp,tda998x.yaml
>     arch/arm64/boot/dts/renesas/r8a774c0-ek874-idk-2121wr.dtb: tda19988@70 (nxp,tda998x): Unevaluated properties are not allowed ('clocks' was unexpected)
> 	    from schema $id: http://devicetree.org/schemas/display/bridge/nxp,tda998x.yaml
> 
> This patch can be considered v3 of "[PATCH v2 2/3] [RFC] arm64: dts:
> renesas: cat874: Drop bogus clocks property"[1], as the pin is actually
> connected to a clock source on that board.  On BeagleBone Black, it is
> also connected to a clock source, but not described in DT.
> 
> The linux driver does not use this clock directly, but I suspect[2] the
> use of this pin is controlled through the AP_ENA register value, as
> specified in the second cell of the the audio-ports property.
> 
> [1] https://lore.kernel.org/97b949cddd7e30e9c05873800330dccd3483b12b.1663165552.git.geert+renesas@glider.be
> [2] I do not have access to the programming manual.
> ---
>  .../devicetree/bindings/display/bridge/nxp,tda998x.yaml        | 3 +++
>  1 file changed, 3 insertions(+)
> 

Applied, thanks!


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

end of thread, other threads:[~2026-01-21 16:26 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-12 16:02 [PATCH] dt-bindings: display: bridge: nxp,tda998x: Add missing clocks Geert Uytterhoeven
2026-01-12 17:49 ` Laurent Pinchart
2026-01-13  8:43   ` Geert Uytterhoeven
2026-01-21 16:26 ` Rob Herring (Arm)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox