Add bindings for i.MX8MQ MHDP DisplayPort.
Signed-off-by: Sandor Yu <[email protected]>
---
.../display/bridge/cdns,mhdp-imx8mq-dp.yaml | 93 +++++++++++++++++++
1 file changed, 93 insertions(+)
create mode 100644 Documentation/devicetree/bindings/display/bridge/cdns,mhdp-imx8mq-dp.yaml
diff --git a/Documentation/devicetree/bindings/display/bridge/cdns,mhdp-imx8mq-dp.yaml b/Documentation/devicetree/bindings/display/bridge/cdns,mhdp-imx8mq-dp.yaml
new file mode 100644
index 000000000000..d82f3ceddaa8
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/bridge/cdns,mhdp-imx8mq-dp.yaml
@@ -0,0 +1,93 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/bridge/cdns,mhdp-imx8mq-dp.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Cadence MHDP Displayport bridge
+
+maintainers:
+ - Sandor Yu <[email protected]>
+
+description:
+ The Cadence MHDP Displayport TX interface.
+
+properties:
+ compatible:
+ enum:
+ - cdns,mhdp-imx8mq-dp
+
+ reg:
+ maxItems: 1
+
+ clocks:
+ maxItems: 1
+ description: MHDP DP APB clock.
+
+ phys:
+ maxItems: 1
+
+ interrupts:
+ items:
+ - description: Hotplug cable plugin.
+ - description: Hotplug cable plugout.
+
+ interrupt-names:
+ items:
+ - const: plug_in
+ - const: plug_out
+
+ ports:
+ $ref: /schemas/graph.yaml#/properties/ports
+
+ properties:
+ port@0:
+ $ref: /schemas/graph.yaml#/properties/port
+ description:
+ Input port from display controller output.
+ port@1:
+ $ref: /schemas/graph.yaml#/properties/port
+ description:
+ Output port to DP connector.
+
+ required:
+ - port@0
+
+required:
+ - compatible
+ - reg
+ - clocks
+ - interrupts
+ - interrupt-names
+ - phys
+ - ports
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/clock/imx8mq-clock.h>
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+
+ mhdp_dp: dp-bridge@32c00000 {
+ compatible = "cdns,mhdp-imx8mq-dp";
+ reg = <0x32c00000 0x100000>;
+ interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "plug_in", "plug_out";
+ clocks = <&clk IMX8MQ_CLK_DISP_APB_ROOT>;
+ phys = <&dp_phy>;
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+
+ mhdp_in: endpoint {
+ remote-endpoint = <&dcss_out>;
+ };
+ };
+ };
+ };
--
2.34.1
On 21/11/2022 08:23, Sandor Yu wrote:
> Add bindings for i.MX8MQ MHDP DisplayPort.
>
> Signed-off-by: Sandor Yu <[email protected]>
> ---
> .../display/bridge/cdns,mhdp-imx8mq-dp.yaml | 93 +++++++++++++++++++
> 1 file changed, 93 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/display/bridge/cdns,mhdp-imx8mq-dp.yaml
>
> diff --git a/Documentation/devicetree/bindings/display/bridge/cdns,mhdp-imx8mq-dp.yaml b/Documentation/devicetree/bindings/display/bridge/cdns,mhdp-imx8mq-dp.yaml
> new file mode 100644
> index 000000000000..d82f3ceddaa8
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/bridge/cdns,mhdp-imx8mq-dp.yaml
> @@ -0,0 +1,93 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/display/bridge/cdns,mhdp-imx8mq-dp.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Cadence MHDP Displayport bridge
> +
> +maintainers:
> + - Sandor Yu <[email protected]>
> +
> +description:
> + The Cadence MHDP Displayport TX interface.
> +
> +properties:
> + compatible:
> + enum:
> + - cdns,mhdp-imx8mq-dp
> +
> + reg:
> + maxItems: 1
> +
> + clocks:
> + maxItems: 1
> + description: MHDP DP APB clock.
> +
> + phys:
> + maxItems: 1
> +
> + interrupts:
> + items:
> + - description: Hotplug cable plugin.
> + - description: Hotplug cable plugout.
> +
> + interrupt-names:
> + items:
> + - const: plug_in
> + - const: plug_out
> +
> + ports:
> + $ref: /schemas/graph.yaml#/properties/ports
> +
> + properties:
> + port@0:
> + $ref: /schemas/graph.yaml#/properties/port
> + description:
> + Input port from display controller output.
> + port@1:
> + $ref: /schemas/graph.yaml#/properties/port
> + description:
> + Output port to DP connector.
> +
> + required:
> + - port@0
> +
> +required:
> + - compatible
> + - reg
> + - clocks
> + - interrupts
> + - interrupt-names
> + - phys
> + - ports
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/clock/imx8mq-clock.h>
> + #include <dt-bindings/interrupt-controller/arm-gic.h>
> +
> + mhdp_dp: dp-bridge@32c00000 {
> + compatible = "cdns,mhdp-imx8mq-dp";
> + reg = <0x32c00000 0x100000>;
> + interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>,
> + <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
> + interrupt-names = "plug_in", "plug_out";
> + clocks = <&clk IMX8MQ_CLK_DISP_APB_ROOT>;
> + phys = <&dp_phy>;
> +
> + ports {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + port@0 {
> + reg = <0>;
> +
> + mhdp_in: endpoint {
> + remote-endpoint = <&dcss_out>;
> + };
As Rob suggested, you allowed property for output to DP port. However it
is not in the example. If this is a bridge, what does it bridge if there
is no output connector?
Best regards,
Krzysztof
Hi Krzysztof,
Thanks your comments,
> -----Original Message-----
> From: Krzysztof Kozlowski <[email protected]>
> Sent: 2022??11??22?? 16:28
> To: Sandor Yu <[email protected]>; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]
> Cc: [email protected]; dl-linux-imx <[email protected]>; Oliver Brown
> <[email protected]>
> Subject: [EXT] Re: [PATCH v4 02/10] dt-bindings: display: bridge: Add MHDP
> DP for i.MX8MQ
>
> Caution: EXT Email
>
> On 21/11/2022 08:23, Sandor Yu wrote:
> > Add bindings for i.MX8MQ MHDP DisplayPort.
> >
> > Signed-off-by: Sandor Yu <[email protected]>
> > ---
> > .../display/bridge/cdns,mhdp-imx8mq-dp.yaml | 93
> +++++++++++++++++++
> > 1 file changed, 93 insertions(+)
> > create mode 100644
> >
> Documentation/devicetree/bindings/display/bridge/cdns,mhdp-imx8mq-dp.y
> > aml
> >
> > diff --git
> >
> a/Documentation/devicetree/bindings/display/bridge/cdns,mhdp-imx8mq-dp
> > .yaml
> >
> b/Documentation/devicetree/bindings/display/bridge/cdns,mhdp-imx8mq-dp
> > .yaml
> > new file mode 100644
> > index 000000000000..d82f3ceddaa8
> > --- /dev/null
> > +++
> b/Documentation/devicetree/bindings/display/bridge/cdns,mhdp-imx8m
> > +++ q-dp.yaml
> > @@ -0,0 +1,93 @@
> > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) %YAML 1.2
> > +---
> > +$id:
> > +https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fdevi
> >
> +cetree.org%2Fschemas%2Fdisplay%2Fbridge%2Fcdns%2Cmhdp-imx8mq-dp.
> yaml%
> >
> +23&data=05%7C01%7CSandor.yu%40nxp.com%7C163690c8a8ab4f7a6
> c9208dac
> >
> +c6373c4%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C6380470
> 247542869
> >
> +46%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luM
> zIiLCJBTi
> >
> +I6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=Eei5Nkp0
> Hl8SHpBLZU
> > +1HsJDnWQujHvmPh2XMuC%2BSZ58%3D&reserved=0
> > +$schema:
> > +https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fdevi
> >
> +cetree.org%2Fmeta-schemas%2Fcore.yaml%23&data=05%7C01%7CSa
> ndor.yu
> >
> +%40nxp.com%7C163690c8a8ab4f7a6c9208dacc6373c4%7C686ea1d3bc2b4
> c6fa92cd
> >
> +99c5c301635%7C0%7C0%7C638047024754286946%7CUnknown%7CTWFp
> bGZsb3d8eyJW
> >
> +IjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7
> C3000
> >
> +%7C%7C%7C&sdata=eZUnepnQHS9ewyWb9AHMht%2F%2BevutmOt
> mTajL%2B5Ewwbs
> > +%3D&reserved=0
> > +
> > +title: Cadence MHDP Displayport bridge
> > +
> > +maintainers:
> > + - Sandor Yu <[email protected]>
> > +
> > +description:
> > + The Cadence MHDP Displayport TX interface.
> > +
> > +properties:
> > + compatible:
> > + enum:
> > + - cdns,mhdp-imx8mq-dp
> > +
> > + reg:
> > + maxItems: 1
> > +
> > + clocks:
> > + maxItems: 1
> > + description: MHDP DP APB clock.
> > +
> > + phys:
> > + maxItems: 1
> > +
> > + interrupts:
> > + items:
> > + - description: Hotplug cable plugin.
> > + - description: Hotplug cable plugout.
> > +
> > + interrupt-names:
> > + items:
> > + - const: plug_in
> > + - const: plug_out
> > +
> > + ports:
> > + $ref: /schemas/graph.yaml#/properties/ports
> > +
> > + properties:
> > + port@0:
> > + $ref: /schemas/graph.yaml#/properties/port
> > + description:
> > + Input port from display controller output.
> > + port@1:
> > + $ref: /schemas/graph.yaml#/properties/port
> > + description:
> > + Output port to DP connector.
> > +
> > + required:
> > + - port@0
> > +
> > +required:
> > + - compatible
> > + - reg
> > + - clocks
> > + - interrupts
> > + - interrupt-names
> > + - phys
> > + - ports
> > +
> > +additionalProperties: false
> > +
> > +examples:
> > + - |
> > + #include <dt-bindings/clock/imx8mq-clock.h>
> > + #include <dt-bindings/interrupt-controller/arm-gic.h>
> > +
> > + mhdp_dp: dp-bridge@32c00000 {
> > + compatible = "cdns,mhdp-imx8mq-dp";
> > + reg = <0x32c00000 0x100000>;
> > + interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>,
> > + <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-names = "plug_in", "plug_out";
> > + clocks = <&clk IMX8MQ_CLK_DISP_APB_ROOT>;
> > + phys = <&dp_phy>;
> > +
> > + ports {
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > +
> > + port@0 {
> > + reg = <0>;
> > +
> > + mhdp_in: endpoint {
> > + remote-endpoint = <&dcss_out>;
> > + };
>
> As Rob suggested, you allowed property for output to DP port. However it is
> not in the example. If this is a bridge, what does it bridge if there is no output
> connector?
>
OK, I got it. Output connector will be added to the example in the next version.
Thanks,
Sandor
>
> Best regards,
> Krzysztof