# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) %YAML 1.2 --- $id: "http://devicetree.org/schemas/display/bridge/cdns,mhdp8546.yaml#" $schema: "http://devicetree.org/meta-schemas/core.yaml#" title: Cadence MHDP8546 bridge maintainers: - Swapnil Jakhade - Yuti Amonkar properties: compatible: enum: - cdns,mhdp8546 - ti,j721e-mhdp8546 reg: minItems: 1 maxItems: 3 items: - description: Register block of mhdptx apb registers up to PHY mapped area (AUX_CONFIG_P). The AUX and PMA registers are not part of this range, they are instead included in the associated PHY. - description: Register block for DSS_EDP0_INTG_CFG_VP registers in case of TI J7 SoCs. - description: Register block of mhdptx sapb registers. reg-names: minItems: 1 maxItems: 3 items: - const: mhdptx - const: j721e-intg - const: mhdptx-sapb clocks: maxItems: 1 description: DP bridge clock, used by the IP to know how to translate a number of clock cycles into a time (which is used to comply with DP standard timings and delays). phys: maxItems: 1 description: phandle to the DisplayPort PHY. phy-names: items: - const: dpphy power-domains: maxItems: 1 interrupts: maxItems: 1 ports: $ref: /schemas/graph.yaml#/properties/ports properties: port@0: $ref: /schemas/graph.yaml#/properties/port description: First input port representing the DP bridge input. port@1: $ref: /schemas/graph.yaml#/properties/port description: Second input port representing the DP bridge input. port@2: $ref: /schemas/graph.yaml#/properties/port description: Third input port representing the DP bridge input. port@3: $ref: /schemas/graph.yaml#/properties/port description: Fourth input port representing the DP bridge input. port@4: $ref: /schemas/graph.yaml#/properties/port description: Output port representing the DP bridge output. required: - port@0 - port@4 allOf: - if: properties: compatible: contains: const: ti,j721e-mhdp8546 then: properties: reg: minItems: 2 maxItems: 3 reg-names: minItems: 2 maxItems: 3 else: properties: reg: minItems: 1 maxItems: 2 reg-names: minItems: 1 maxItems: 2 required: - compatible - clocks - reg - reg-names - phys - phy-names - interrupts - ports additionalProperties: false examples: - | #include bus { #address-cells = <2>; #size-cells = <2>; mhdp: dp-bridge@f0fb000000 { compatible = "cdns,mhdp8546"; reg = <0xf0 0xfb000000 0x0 0x1000000>; reg-names = "mhdptx"; clocks = <&mhdp_clock>; phys = <&dp_phy>; phy-names = "dpphy"; interrupts = ; ports { #address-cells = <1>; #size-cells = <0>; port@0 { reg = <0>; dp_bridge_input: endpoint { remote-endpoint = <&xxx_dpi_output>; }; }; port@4 { reg = <4>; dp_bridge_output: endpoint { remote-endpoint = <&xxx_dp_connector_input>; }; }; }; }; }; ...