17ef62cebSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 27ef62cebSEmmanuel Vadot%YAML 1.2 37ef62cebSEmmanuel Vadot--- 47ef62cebSEmmanuel Vadot$id: http://devicetree.org/schemas/display/mediatek/mediatek,dp.yaml# 57ef62cebSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 67ef62cebSEmmanuel Vadot 77ef62cebSEmmanuel Vadottitle: MediaTek Display Port Controller 87ef62cebSEmmanuel Vadot 97ef62cebSEmmanuel Vadotmaintainers: 107ef62cebSEmmanuel Vadot - Chun-Kuang Hu <chunkuang.hu@kernel.org> 117ef62cebSEmmanuel Vadot - Jitao shi <jitao.shi@mediatek.com> 127ef62cebSEmmanuel Vadot 137ef62cebSEmmanuel Vadotdescription: | 147ef62cebSEmmanuel Vadot MediaTek DP and eDP are different hardwares and there are some features 157ef62cebSEmmanuel Vadot which are not supported for eDP. For example, audio is not supported for 167ef62cebSEmmanuel Vadot eDP. Therefore, we need to use two different compatibles to describe them. 177ef62cebSEmmanuel Vadot In addition, We just need to enable the power domain of DP, so the clock 187ef62cebSEmmanuel Vadot of DP is generated by itself and we are not using other PLL to generate 197ef62cebSEmmanuel Vadot clocks. 207ef62cebSEmmanuel Vadot 217ef62cebSEmmanuel Vadotproperties: 227ef62cebSEmmanuel Vadot compatible: 237ef62cebSEmmanuel Vadot enum: 24*84943d6fSEmmanuel Vadot - mediatek,mt8188-dp-tx 25*84943d6fSEmmanuel Vadot - mediatek,mt8188-edp-tx 267ef62cebSEmmanuel Vadot - mediatek,mt8195-dp-tx 277ef62cebSEmmanuel Vadot - mediatek,mt8195-edp-tx 287ef62cebSEmmanuel Vadot 297ef62cebSEmmanuel Vadot reg: 307ef62cebSEmmanuel Vadot maxItems: 1 317ef62cebSEmmanuel Vadot 327ef62cebSEmmanuel Vadot nvmem-cells: 337ef62cebSEmmanuel Vadot maxItems: 1 347ef62cebSEmmanuel Vadot description: efuse data for display port calibration 357ef62cebSEmmanuel Vadot 367ef62cebSEmmanuel Vadot nvmem-cell-names: 377ef62cebSEmmanuel Vadot const: dp_calibration_data 387ef62cebSEmmanuel Vadot 397ef62cebSEmmanuel Vadot power-domains: 407ef62cebSEmmanuel Vadot maxItems: 1 417ef62cebSEmmanuel Vadot 427ef62cebSEmmanuel Vadot interrupts: 437ef62cebSEmmanuel Vadot maxItems: 1 447ef62cebSEmmanuel Vadot 457ef62cebSEmmanuel Vadot ports: 467ef62cebSEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/ports 477ef62cebSEmmanuel Vadot properties: 487ef62cebSEmmanuel Vadot port@0: 497ef62cebSEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 507ef62cebSEmmanuel Vadot description: Input endpoint of the controller, usually dp_intf 517ef62cebSEmmanuel Vadot 527ef62cebSEmmanuel Vadot port@1: 537ef62cebSEmmanuel Vadot $ref: /schemas/graph.yaml#/$defs/port-base 547ef62cebSEmmanuel Vadot unevaluatedProperties: false 557ef62cebSEmmanuel Vadot description: Output endpoint of the controller 567ef62cebSEmmanuel Vadot properties: 577ef62cebSEmmanuel Vadot endpoint: 587ef62cebSEmmanuel Vadot $ref: /schemas/media/video-interfaces.yaml# 597ef62cebSEmmanuel Vadot unevaluatedProperties: false 607ef62cebSEmmanuel Vadot properties: 617ef62cebSEmmanuel Vadot data-lanes: 627ef62cebSEmmanuel Vadot description: | 637ef62cebSEmmanuel Vadot number of lanes supported by the hardware. 647ef62cebSEmmanuel Vadot The possible values: 657ef62cebSEmmanuel Vadot 0 - For 1 lane enabled in IP. 667ef62cebSEmmanuel Vadot 0 1 - For 2 lanes enabled in IP. 677ef62cebSEmmanuel Vadot 0 1 2 3 - For 4 lanes enabled in IP. 687ef62cebSEmmanuel Vadot minItems: 1 697ef62cebSEmmanuel Vadot maxItems: 4 707ef62cebSEmmanuel Vadot required: 717ef62cebSEmmanuel Vadot - data-lanes 727ef62cebSEmmanuel Vadot 737ef62cebSEmmanuel Vadot required: 747ef62cebSEmmanuel Vadot - port@0 757ef62cebSEmmanuel Vadot - port@1 767ef62cebSEmmanuel Vadot 777ef62cebSEmmanuel Vadot max-linkrate-mhz: 787ef62cebSEmmanuel Vadot enum: [ 1620, 2700, 5400, 8100 ] 797ef62cebSEmmanuel Vadot description: maximum link rate supported by the hardware. 807ef62cebSEmmanuel Vadot 817ef62cebSEmmanuel Vadotrequired: 827ef62cebSEmmanuel Vadot - compatible 837ef62cebSEmmanuel Vadot - reg 847ef62cebSEmmanuel Vadot - interrupts 857ef62cebSEmmanuel Vadot - ports 867ef62cebSEmmanuel Vadot - max-linkrate-mhz 877ef62cebSEmmanuel Vadot 887ef62cebSEmmanuel VadotadditionalProperties: false 897ef62cebSEmmanuel Vadot 907ef62cebSEmmanuel Vadotexamples: 917ef62cebSEmmanuel Vadot - | 927ef62cebSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 937ef62cebSEmmanuel Vadot #include <dt-bindings/power/mt8195-power.h> 947ef62cebSEmmanuel Vadot dptx@1c600000 { 957ef62cebSEmmanuel Vadot compatible = "mediatek,mt8195-dp-tx"; 967ef62cebSEmmanuel Vadot reg = <0x1c600000 0x8000>; 977ef62cebSEmmanuel Vadot power-domains = <&spm MT8195_POWER_DOMAIN_DP_TX>; 987ef62cebSEmmanuel Vadot interrupts = <GIC_SPI 458 IRQ_TYPE_LEVEL_HIGH 0>; 997ef62cebSEmmanuel Vadot max-linkrate-mhz = <8100>; 1007ef62cebSEmmanuel Vadot 1017ef62cebSEmmanuel Vadot ports { 1027ef62cebSEmmanuel Vadot #address-cells = <1>; 1037ef62cebSEmmanuel Vadot #size-cells = <0>; 1047ef62cebSEmmanuel Vadot 1057ef62cebSEmmanuel Vadot port@0 { 1067ef62cebSEmmanuel Vadot reg = <0>; 1077ef62cebSEmmanuel Vadot dptx_in: endpoint { 1087ef62cebSEmmanuel Vadot remote-endpoint = <&dp_intf0_out>; 1097ef62cebSEmmanuel Vadot }; 1107ef62cebSEmmanuel Vadot }; 1117ef62cebSEmmanuel Vadot port@1 { 1127ef62cebSEmmanuel Vadot reg = <1>; 1137ef62cebSEmmanuel Vadot dptx_out: endpoint { 1147ef62cebSEmmanuel Vadot data-lanes = <0 1 2 3>; 1157ef62cebSEmmanuel Vadot }; 1167ef62cebSEmmanuel Vadot }; 1177ef62cebSEmmanuel Vadot }; 1187ef62cebSEmmanuel Vadot }; 119