[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <7R1X3R.HSAT8MYJAY6M2@crapouillou.net>
Date: Fri, 10 Dec 2021 20:18:43 +0000
From: Paul Cercueil <paul@...pouillou.net>
To: "H. Nikolaus Schaller" <hns@...delico.com>
Cc: Rob Herring <robh@...nel.org>, Mark Rutland <mark.rutland@....com>,
Thomas Bogendoerfer <tsbogend@...ha.franken.de>,
Geert Uytterhoeven <geert+renesas@...der.be>,
Kees Cook <keescook@...omium.org>,
"Eric W. Biederman" <ebiederm@...ssion.com>,
Miquel Raynal <miquel.raynal@...tlin.com>,
David Airlie <airlied@...ux.ie>,
Daniel Vetter <daniel@...ll.ch>,
Neil Armstrong <narmstrong@...libre.com>,
Robert Foss <robert.foss@...aro.org>,
Laurent Pinchart <Laurent.pinchart@...asonboard.com>,
Jernej Skrabec <jernej.skrabec@...il.com>,
Harry Wentland <harry.wentland@....com>,
Sam Ravnborg <sam@...nborg.org>,
Maxime Ripard <maxime@...no.tech>,
Hans Verkuil <hverkuil-cisco@...all.nl>,
Liam Girdwood <lgirdwood@...il.com>,
Mark Brown <broonie@...nel.org>,
Paul Boddie <paul@...die.org.uk>, devicetree@...r.kernel.org,
linux-mips@...r.kernel.org, linux-kernel@...r.kernel.org,
letux-kernel@...nphoenux.org, Jonas Karlman <jonas@...boo.se>,
dri-devel@...ts.freedesktop.org
Subject: Re: [PATCH v11 3/8] dt-bindings: display: Add ingenic,jz4780-dw-hdmi
DT Schema
Hi Nikolaus,
Le ven., déc. 10 2021 at 10:53:18 -0600, Rob Herring <robh@...nel.org>
a écrit :
> On Thu, Dec 02, 2021 at 07:39:48PM +0100, H. Nikolaus Schaller wrote:
>> From: Sam Ravnborg <sam@...nborg.org>
>>
>> Add DT bindings for the hdmi driver for the Ingenic JZ4780 SoC.
>> Based on .txt binding from Zubair Lutfullah Kakakhel
>>
>> We also add generic ddc-i2c-bus to synopsys,dw-hdmi.yaml
>>
>> Signed-off-by: Sam Ravnborg <sam@...nborg.org>
>> Signed-off-by: H. Nikolaus Schaller <hns@...delico.com>
>> Cc: Rob Herring <robh@...nel.org>
>> Cc: devicetree@...r.kernel.org
>> ---
>> .../display/bridge/ingenic,jz4780-hdmi.yaml | 78
>> +++++++++++++++++++
>> .../display/bridge/synopsys,dw-hdmi.yaml | 3 +
>> 2 files changed, 81 insertions(+)
>> create mode 100644
>> Documentation/devicetree/bindings/display/bridge/ingenic,jz4780-hdmi.yaml
>>
>> diff --git
>> a/Documentation/devicetree/bindings/display/bridge/ingenic,jz4780-hdmi.yaml
>> b/Documentation/devicetree/bindings/display/bridge/ingenic,jz4780-hdmi.yaml
>> new file mode 100644
>> index 0000000000000..49ae1130efded
>> --- /dev/null
>> +++
>> b/Documentation/devicetree/bindings/display/bridge/ingenic,jz4780-hdmi.yaml
>> @@ -0,0 +1,78 @@
>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id:
>> http://devicetree.org/schemas/display/bridge/ingenic,jz4780-hdmi.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Bindings for Ingenic JZ4780 HDMI Transmitter
>> +
>> +maintainers:
>> + - H. Nikolaus Schaller <hns@...delico.com>
>> +
>> +description: |
>> + The HDMI Transmitter in the Ingenic JZ4780 is a Synopsys
>> DesignWare HDMI 1.4
>> + TX controller IP with accompanying PHY IP.
>> +
>> +allOf:
>> + - $ref: synopsys,dw-hdmi.yaml#
>> +
>> +properties:
>> + compatible:
>> + const: ingenic,jz4780-dw-hdmi
>> +
>> + reg-io-width:
>> + const: 4
>> +
>> + clocks:
>> + maxItems: 2
>> +
>> + hdmi-5v-supply:
>> + description: regulator to provide +5V at the connector
>
> Being part of the connector, that belongs in a connector node.
I believe that means adding .atomic_{enable,disable} callbacks to the
display-connector bridge (drivers/gpu/drm/bridge/display-connector.c)
which would enable/disable the regulator.
Unless it messes up with e.g. cable detection (which I believe requires
the regulator to be enabled), in that case unconditionally enable it in
the connector's probe function.
>> +
>> + ports:
>> + $ref: /schemas/graph.yaml#/properties/ports
>
> You need to define what each 'port' node is.
Have a look at
Documentation/devicetree/bindings/display/ingenic,lcd.yaml for an
example on how to do this.
>> +
>> +required:
>> + - compatible
>> + - clocks
>> + - clock-names
>> + - hdmi-5v-supply
>> + - ports
>> + - reg-io-width
>> +
>> +unevaluatedProperties: false
>> +
>> +examples:
>> + - |
>> + #include <dt-bindings/clock/ingenic,jz4780-cgu.h>
>> +
>> + hdmi: hdmi@...80000 {
>> + compatible = "ingenic,jz4780-dw-hdmi";
>> + reg = <0x10180000 0x8000>;
>> + reg-io-width = <4>;
>> + ddc-i2c-bus = <&i2c4>;
>> + interrupt-parent = <&intc>;
>> + interrupts = <3>;
>> + clocks = <&cgu JZ4780_CLK_AHB0>, <&cgu JZ4780_CLK_HDMI>;
>> + clock-names = "iahb", "isfr";
>> + hdmi-5v-supply = <&hdmi_power>;
>> +
>> + ports {
>> + #address-cells = <1>;
>> + #size-cells = <0>;
>> + hdmi_in: port@0 {
>> + reg = <0>;
>> + dw_hdmi_in: endpoint {
>> + remote-endpoint = <&jz4780_lcd_out>;
>> + };
>> + };
>> + hdmi_out: port@1 {
>> + reg = <1>;
>> + dw_hdmi_out: endpoint {
>> + remote-endpoint = <&hdmi_con>;
>> + };
>> + };
>> + };
>> + };
>> +
>> +...
>> diff --git
>> a/Documentation/devicetree/bindings/display/bridge/synopsys,dw-hdmi.yaml
>> b/Documentation/devicetree/bindings/display/bridge/synopsys,dw-hdmi.yaml
>> index 9be44a682e67a..9cbeabaee0968 100644
>> ---
>> a/Documentation/devicetree/bindings/display/bridge/synopsys,dw-hdmi.yaml
>> +++
>> b/Documentation/devicetree/bindings/display/bridge/synopsys,dw-hdmi.yaml
>> @@ -50,6 +50,9 @@ properties:
>> interrupts:
>> maxItems: 1
>>
>> + ddc-i2c-bus:
>> + description: An I2C interface if the internal DDC I2C driver
>> is not to be used
>
> That too is already defined to be part of the connector node.
Just remove the property then, since you don't use it in the ci20
bindings.
Cheers,
-Paul
>> +
>> additionalProperties: true
>>
>> ...
>> --
>> 2.33.0
>>
>>
Powered by blists - more mailing lists