Message ID | 20221208104006.316606-5-tomi.valkeinen@ideasonboard.com |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel-owner@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:f944:0:0:0:0:0 with SMTP id q4csp122129wrr; Thu, 8 Dec 2022 02:49:27 -0800 (PST) X-Google-Smtp-Source: AA0mqf6q3iZYmWC5oyYhgdvEUiaciTmGD0KCKjPDGRDGdHwxnl7odFIQ2BLj4hMHGjX1UqK0tmTm X-Received: by 2002:a17:90a:ad49:b0:219:8464:84e3 with SMTP id w9-20020a17090aad4900b00219846484e3mr32624384pjv.232.1670496567425; Thu, 08 Dec 2022 02:49:27 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1670496567; cv=none; d=google.com; s=arc-20160816; b=u7lrnj5l9KGyHsZ5Kl9mVwEwv3D3dRNJrXebtrY6fuXyeD4eCdLCmARJDXuDEgwtSA YEwno8c5lU4PC5DMKKVuP2XdLYXzrU1c+LW6eIEPVKgP6wYUX3RwaVRU8PyXuM0ekdUx zPW+U3baz00GWzlZ9bVLzv+Sxydiyo6Gs0+ZCdoPfpsnKxld1EaDP8auAKo2DeAxVRBT +MPeku3ii66UzkNhkfp/d6ulzY7woE/4Cd4EMSM28tE6Y0czWJmsYPiRC5uP/2D5g3zv TkUnZ/qt8tqkt2zbr6Lq9vFEr3j480t98w2K/DI4rXD2EuBckBGEdn8rHQBP2tMygbBF ZEVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=Ika4REih8XFpLEig6KCx5huWHqhYLc2xiT0rwJPd9UE=; b=vNhxmiUfQmDg4A3fiN0v5bNJpOvJxdZG29nEWyu2Qve0cqacWIoEyqmVcpHLnUjIS8 CuHR/hjiYxDnhS8RsHS3Jaxjothy2vtX8ZwBe4gD0DxbkVSgLYocFVz7WKbtOFGhi85c A01kQKKUXlFLbvF5kdkrFcFg7FXQ7/k20Q7oHWlBwAc8CNZ65GMoq26zeuEfEuHuyOpW PkNRP6NRfixQHoNpyDzxoKI1ua7WsEjuSFiI61o9HaU5tN6DiYBulxi/wEPN+aOnS+4G qCKGJGzTNr2LHfnRqJpcFBbpvy2tLxCs+m9W62z2I3jJFAdUiXWLu0r1tzUBKu5SpL07 xviQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=Ver1u3tu; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id p13-20020a170902f08d00b00189a0e8fa5dsi20087958pla.476.2022.12.08.02.49.14; Thu, 08 Dec 2022 02:49:27 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=Ver1u3tu; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229592AbiLHKoc (ORCPT <rfc822;foxyelen666@gmail.com> + 99 others); Thu, 8 Dec 2022 05:44:32 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47304 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229757AbiLHKnY (ORCPT <rfc822;linux-kernel@vger.kernel.org>); Thu, 8 Dec 2022 05:43:24 -0500 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id F28142616; Thu, 8 Dec 2022 02:40:33 -0800 (PST) Received: from desky.lan (91-154-32-225.elisa-laajakaista.fi [91.154.32.225]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 48BC1E70; Thu, 8 Dec 2022 11:40:28 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1670496029; bh=r/335yq/jXROuIkgmY8Fdzi/iYMeet3zxdzmQPqoH4I=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Ver1u3tuyVJKckf/Hm8ZIQ61l3eaXRii+IHNAP4hkh0dOW7YEAufHNMeCVUbggCqU S1EIjQPC/4zR+dBW4mtKv1XZCrLrZ0lsxKnms9he+VbduD1plPgYibZJpVrmAJQXEo lXnU7VfVmR5zXF+rIet2wdiDIzFeaFbCy7HjgYTc= From: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> To: linux-media@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-i2c@vger.kernel.org, Rob Herring <robh+dt@kernel.org>, Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>, Wolfram Sang <wsa@kernel.org>, Luca Ceresoli <luca.ceresoli@bootlin.com>, Andy Shevchenko <andriy.shevchenko@intel.com>, Matti Vaittinen <Matti.Vaittinen@fi.rohmeurope.com> Cc: Mauro Carvalho Chehab <mchehab@kernel.org>, Peter Rosin <peda@axentia.se>, Liam Girdwood <lgirdwood@gmail.com>, Mark Brown <broonie@kernel.org>, Sakari Ailus <sakari.ailus@linux.intel.com>, Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>, Michael Tretter <m.tretter@pengutronix.de>, Shawn Tu <shawnx.tu@intel.com>, Hans Verkuil <hverkuil@xs4all.nl>, Mike Pagano <mpagano@gentoo.org>, =?utf-8?q?Krzysztof_Ha=C5=82asa?= <khalasa@piap.pl>, Marek Vasut <marex@denx.de>, Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> Subject: [PATCH v5 4/8] dt-bindings: media: add bindings for TI DS90UB953 Date: Thu, 8 Dec 2022 12:40:02 +0200 Message-Id: <20221208104006.316606-5-tomi.valkeinen@ideasonboard.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20221208104006.316606-1-tomi.valkeinen@ideasonboard.com> References: <20221208104006.316606-1-tomi.valkeinen@ideasonboard.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_PASS,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: <linux-kernel.vger.kernel.org> X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1751642608813553122?= X-GMAIL-MSGID: =?utf-8?q?1751642608813553122?= |
Series |
i2c-atr and FPDLink
|
|
Commit Message
Tomi Valkeinen
Dec. 8, 2022, 10:40 a.m. UTC
Add DT bindings for TI DS90UB953 FPDLink-3 Serializer.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
---
.../bindings/media/i2c/ti,ds90ub953.yaml | 112 ++++++++++++++++++
1 file changed, 112 insertions(+)
create mode 100644 Documentation/devicetree/bindings/media/i2c/ti,ds90ub953.yaml
Comments
On Thu, Dec 08, 2022 at 12:40:02PM +0200, Tomi Valkeinen wrote: > Add DT bindings for TI DS90UB953 FPDLink-3 Serializer. Seems like this and DS90UB913 binding could be combined. I couldn't spot a difference. In the subjects, drop 'binding for'. The prefix says this is a binding. Maybe add 'Serializer'. > Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> > --- > .../bindings/media/i2c/ti,ds90ub953.yaml | 112 ++++++++++++++++++ > 1 file changed, 112 insertions(+) > create mode 100644 Documentation/devicetree/bindings/media/i2c/ti,ds90ub953.yaml > > diff --git a/Documentation/devicetree/bindings/media/i2c/ti,ds90ub953.yaml b/Documentation/devicetree/bindings/media/i2c/ti,ds90ub953.yaml > new file mode 100644 > index 000000000000..fd7d25d93e2c > --- /dev/null > +++ b/Documentation/devicetree/bindings/media/i2c/ti,ds90ub953.yaml > @@ -0,0 +1,112 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/media/i2c/ti,ds90ub953.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Texas Instruments DS90UB953 FPD-Link 3 Serializer > + > +maintainers: > + - Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> > + > +description: > + The TI DS90UB953 is an FPD-Link 3 video serializer for MIPI CSI-2. > + > +properties: > + compatible: > + enum: > + - ti,ds90ub953-q1 > + - ti,ds90ub971-q1 > + > + '#gpio-cells': > + const: 2 > + > + gpio-controller: true > + > + '#clock-cells': > + const: 0 > + > + ports: > + $ref: /schemas/graph.yaml#/properties/ports > + > + properties: > + port@0: > + $ref: /schemas/graph.yaml#/$defs/port-base > + unevaluatedProperties: false > + description: CSI-2 input port > + > + properties: > + endpoint: > + $ref: /schemas/media/video-interfaces.yaml# > + unevaluatedProperties: false > + > + port@1: > + $ref: /schemas/graph.yaml#/properties/port > + unevaluatedProperties: false > + description: FPD-Link 3 output port > + > + i2c: > + $ref: /schemas/i2c/i2c-controller.yaml# > + unevaluatedProperties: false > + > +required: > + - compatible > + - '#gpio-cells' > + - gpio-controller > + - '#clock-cells' > + - ports > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/gpio/gpio.h> > + > + serializer { > + compatible = "ti,ds90ub953-q1"; > + > + gpio-controller; > + #gpio-cells = <2>; > + > + #clock-cells = <0>; > + > + ports { > + #address-cells = <1>; > + #size-cells = <0>; > + > + port@0 { > + reg = <0>; > + ub953_in: endpoint { > + clock-lanes = <0>; > + data-lanes = <1 2 3 4>; > + remote-endpoint = <&sensor_out>; > + }; > + }; > + > + port@1 { > + reg = <1>; > + endpoint { > + remote-endpoint = <&deser_fpd_in>; > + }; > + }; > + }; > + > + i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + > + sensor@1a { > + compatible = "sony,imx274"; > + reg = <0x1a>; > + > + reset-gpios = <&serializer 0 GPIO_ACTIVE_LOW>; > + > + port { > + sensor_out: endpoint { > + remote-endpoint = <&ub953_in>; > + }; > + }; > + }; > + }; > + }; > +... > -- > 2.34.1 > >
Hi Tomi, Thank you for the patch. On Thu, Dec 08, 2022 at 12:40:02PM +0200, Tomi Valkeinen wrote: > Add DT bindings for TI DS90UB953 FPDLink-3 Serializer. > > Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> > --- > .../bindings/media/i2c/ti,ds90ub953.yaml | 112 ++++++++++++++++++ > 1 file changed, 112 insertions(+) > create mode 100644 Documentation/devicetree/bindings/media/i2c/ti,ds90ub953.yaml > > diff --git a/Documentation/devicetree/bindings/media/i2c/ti,ds90ub953.yaml b/Documentation/devicetree/bindings/media/i2c/ti,ds90ub953.yaml > new file mode 100644 > index 000000000000..fd7d25d93e2c > --- /dev/null > +++ b/Documentation/devicetree/bindings/media/i2c/ti,ds90ub953.yaml > @@ -0,0 +1,112 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/media/i2c/ti,ds90ub953.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Texas Instruments DS90UB953 FPD-Link 3 Serializer > + > +maintainers: > + - Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> > + > +description: > + The TI DS90UB953 is an FPD-Link 3 video serializer for MIPI CSI-2. > + > +properties: > + compatible: > + enum: > + - ti,ds90ub953-q1 > + - ti,ds90ub971-q1 > + > + '#gpio-cells': > + const: 2 I would add a description here, to tell what the cells correspond to. In particular, the first cell selects the GPIO_* pin number, it would be nice to document that its value should be in the range [0, 3]. Same comment for patch 3/8 (DS90UB913 bindings). There you could also mention that GPO2 and the output clock are mutually exclusive. > + > + gpio-controller: true > + No need for clocks and clock-names for the reference input clock ? Or is this because you support sync mode only for now ? > + '#clock-cells': > + const: 0 > + > + ports: > + $ref: /schemas/graph.yaml#/properties/ports > + > + properties: > + port@0: > + $ref: /schemas/graph.yaml#/$defs/port-base > + unevaluatedProperties: false > + description: CSI-2 input port > + > + properties: > + endpoint: > + $ref: /schemas/media/video-interfaces.yaml# > + unevaluatedProperties: false Should the data-lanes property be required for the CSI-2 input ? > + > + port@1: > + $ref: /schemas/graph.yaml#/properties/port > + unevaluatedProperties: false > + description: FPD-Link 3 output port > + > + i2c: > + $ref: /schemas/i2c/i2c-controller.yaml# > + unevaluatedProperties: false > + > +required: > + - compatible > + - '#gpio-cells' > + - gpio-controller > + - '#clock-cells' > + - ports > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/gpio/gpio.h> > + > + serializer { > + compatible = "ti,ds90ub953-q1"; > + > + gpio-controller; > + #gpio-cells = <2>; > + > + #clock-cells = <0>; > + > + ports { > + #address-cells = <1>; > + #size-cells = <0>; > + > + port@0 { > + reg = <0>; > + ub953_in: endpoint { > + clock-lanes = <0>; > + data-lanes = <1 2 3 4>; > + remote-endpoint = <&sensor_out>; > + }; > + }; > + > + port@1 { > + reg = <1>; > + endpoint { > + remote-endpoint = <&deser_fpd_in>; > + }; > + }; > + }; > + > + i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + > + sensor@1a { > + compatible = "sony,imx274"; > + reg = <0x1a>; > + > + reset-gpios = <&serializer 0 GPIO_ACTIVE_LOW>; Maybe add clocks = <&serializer>; clock-names = "inck"; to showcase the clock connection ? > + > + port { > + sensor_out: endpoint { > + remote-endpoint = <&ub953_in>; > + }; > + }; > + }; > + }; > + }; > +...
On 11/12/2022 19:34, Laurent Pinchart wrote: > Hi Tomi, > > Thank you for the patch. > > On Thu, Dec 08, 2022 at 12:40:02PM +0200, Tomi Valkeinen wrote: >> Add DT bindings for TI DS90UB953 FPDLink-3 Serializer. >> >> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> >> --- >> .../bindings/media/i2c/ti,ds90ub953.yaml | 112 ++++++++++++++++++ >> 1 file changed, 112 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/media/i2c/ti,ds90ub953.yaml >> >> diff --git a/Documentation/devicetree/bindings/media/i2c/ti,ds90ub953.yaml b/Documentation/devicetree/bindings/media/i2c/ti,ds90ub953.yaml >> new file mode 100644 >> index 000000000000..fd7d25d93e2c >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/media/i2c/ti,ds90ub953.yaml >> @@ -0,0 +1,112 @@ >> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/media/i2c/ti,ds90ub953.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: Texas Instruments DS90UB953 FPD-Link 3 Serializer >> + >> +maintainers: >> + - Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> >> + >> +description: >> + The TI DS90UB953 is an FPD-Link 3 video serializer for MIPI CSI-2. >> + >> +properties: >> + compatible: >> + enum: >> + - ti,ds90ub953-q1 >> + - ti,ds90ub971-q1 >> + >> + '#gpio-cells': >> + const: 2 > > I would add a description here, to tell what the cells correspond to. In > particular, the first cell selects the GPIO_* pin number, it would be > nice to document that its value should be in the range [0, 3]. > > Same comment for patch 3/8 (DS90UB913 bindings). There you could also > mention that GPO2 and the output clock are mutually exclusive. Yep. I have added this for ub913: First cell is the GPO pin number, second cell is the flags. The GPO pin number must be in range of [0, 3]. Note that GPOs 2 and 3 are not available in external oscillator mode. and this for ub953: First cell is the GPIO pin number, second cell is the flags. The GPIO pin number must be in range of [0, 3]. >> + >> + gpio-controller: true >> + > > No need for clocks and clock-names for the reference input clock ? Or is > this because you support sync mode only for now ? Right, I don't have the clock on my hw, but it's probably better to add it to the binding already. >> + '#clock-cells': >> + const: 0 >> + >> + ports: >> + $ref: /schemas/graph.yaml#/properties/ports >> + >> + properties: >> + port@0: >> + $ref: /schemas/graph.yaml#/$defs/port-base >> + unevaluatedProperties: false >> + description: CSI-2 input port >> + >> + properties: >> + endpoint: >> + $ref: /schemas/media/video-interfaces.yaml# >> + unevaluatedProperties: false > > Should the data-lanes property be required for the CSI-2 input ? Yes. >> + >> + port@1: >> + $ref: /schemas/graph.yaml#/properties/port >> + unevaluatedProperties: false >> + description: FPD-Link 3 output port >> + >> + i2c: >> + $ref: /schemas/i2c/i2c-controller.yaml# >> + unevaluatedProperties: false >> + >> +required: >> + - compatible >> + - '#gpio-cells' >> + - gpio-controller >> + - '#clock-cells' >> + - ports >> + >> +additionalProperties: false >> + >> +examples: >> + - | >> + #include <dt-bindings/gpio/gpio.h> >> + >> + serializer { >> + compatible = "ti,ds90ub953-q1"; >> + >> + gpio-controller; >> + #gpio-cells = <2>; >> + >> + #clock-cells = <0>; >> + >> + ports { >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + port@0 { >> + reg = <0>; >> + ub953_in: endpoint { >> + clock-lanes = <0>; >> + data-lanes = <1 2 3 4>; >> + remote-endpoint = <&sensor_out>; >> + }; >> + }; >> + >> + port@1 { >> + reg = <1>; >> + endpoint { >> + remote-endpoint = <&deser_fpd_in>; >> + }; >> + }; >> + }; >> + >> + i2c { >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + sensor@1a { >> + compatible = "sony,imx274"; >> + reg = <0x1a>; >> + >> + reset-gpios = <&serializer 0 GPIO_ACTIVE_LOW>; > > Maybe add > > clocks = <&serializer>; > clock-names = "inck"; > > to showcase the clock connection ? Yes, that's a good idea. Tomi
Hi Rob, On 09/12/2022 23:27, Rob Herring wrote: > On Thu, Dec 08, 2022 at 12:40:02PM +0200, Tomi Valkeinen wrote: >> Add DT bindings for TI DS90UB953 FPDLink-3 Serializer. > > Seems like this and DS90UB913 binding could be combined. I couldn't spot > a difference. They are indeed quite similar, but there are a few diffs, especially after fixing Laurent's review comments. E.g, as the UB913 is a parallel video serializer and the UB953 is a CSI-2 serializer, the input port on UB913 has 'pclk-sample' property but UB953 has 'data-lanes' property. The descriptions differ also a bit for the above mentioned difference. The above points would still allow combining the bindings, though. But I feel the UB913 is somewhat a different class of serializer device compared to UB953 (and UB971 which the UB953's binding also supports), so my gut feeling says it's better to keep them separate. But I don't have much experience on maintaining such bindings, and, afaik, we could always split the bindings later if needed. So... Do you have a preference on either way? Or maybe we can come back to this after I send the next version with the updates. > In the subjects, drop 'binding for'. The prefix says this is a binding. > Maybe add 'Serializer'. Ok. Tomi
diff --git a/Documentation/devicetree/bindings/media/i2c/ti,ds90ub953.yaml b/Documentation/devicetree/bindings/media/i2c/ti,ds90ub953.yaml new file mode 100644 index 000000000000..fd7d25d93e2c --- /dev/null +++ b/Documentation/devicetree/bindings/media/i2c/ti,ds90ub953.yaml @@ -0,0 +1,112 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/media/i2c/ti,ds90ub953.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Texas Instruments DS90UB953 FPD-Link 3 Serializer + +maintainers: + - Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> + +description: + The TI DS90UB953 is an FPD-Link 3 video serializer for MIPI CSI-2. + +properties: + compatible: + enum: + - ti,ds90ub953-q1 + - ti,ds90ub971-q1 + + '#gpio-cells': + const: 2 + + gpio-controller: true + + '#clock-cells': + const: 0 + + ports: + $ref: /schemas/graph.yaml#/properties/ports + + properties: + port@0: + $ref: /schemas/graph.yaml#/$defs/port-base + unevaluatedProperties: false + description: CSI-2 input port + + properties: + endpoint: + $ref: /schemas/media/video-interfaces.yaml# + unevaluatedProperties: false + + port@1: + $ref: /schemas/graph.yaml#/properties/port + unevaluatedProperties: false + description: FPD-Link 3 output port + + i2c: + $ref: /schemas/i2c/i2c-controller.yaml# + unevaluatedProperties: false + +required: + - compatible + - '#gpio-cells' + - gpio-controller + - '#clock-cells' + - ports + +additionalProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + + serializer { + compatible = "ti,ds90ub953-q1"; + + gpio-controller; + #gpio-cells = <2>; + + #clock-cells = <0>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + ub953_in: endpoint { + clock-lanes = <0>; + data-lanes = <1 2 3 4>; + remote-endpoint = <&sensor_out>; + }; + }; + + port@1 { + reg = <1>; + endpoint { + remote-endpoint = <&deser_fpd_in>; + }; + }; + }; + + i2c { + #address-cells = <1>; + #size-cells = <0>; + + sensor@1a { + compatible = "sony,imx274"; + reg = <0x1a>; + + reset-gpios = <&serializer 0 GPIO_ACTIVE_LOW>; + + port { + sensor_out: endpoint { + remote-endpoint = <&ub953_in>; + }; + }; + }; + }; + }; +...