14dbe55c9SKrishna Manikandan# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause 24dbe55c9SKrishna Manikandan%YAML 1.2 34dbe55c9SKrishna Manikandan--- 44dbe55c9SKrishna Manikandan$id: http://devicetree.org/schemas/display/msm/dsi-controller-main.yaml# 54dbe55c9SKrishna Manikandan$schema: http://devicetree.org/meta-schemas/core.yaml# 64dbe55c9SKrishna Manikandan 74dbe55c9SKrishna Manikandantitle: Qualcomm Display DSI controller 84dbe55c9SKrishna Manikandan 94dbe55c9SKrishna Manikandanmaintainers: 10cce65bb2SKrishna Manikandan - Krishna Manikandan <quic_mkrishn@quicinc.com> 114dbe55c9SKrishna Manikandan 124dbe55c9SKrishna ManikandanallOf: 134dbe55c9SKrishna Manikandan - $ref: "../dsi-controller.yaml#" 144dbe55c9SKrishna Manikandan 154dbe55c9SKrishna Manikandanproperties: 164dbe55c9SKrishna Manikandan compatible: 17201d4174SLoic Poulain enum: 18201d4174SLoic Poulain - qcom,mdss-dsi-ctrl 19201d4174SLoic Poulain - qcom,dsi-ctrl-6g-qcm2290 204dbe55c9SKrishna Manikandan 214dbe55c9SKrishna Manikandan reg: 224dbe55c9SKrishna Manikandan maxItems: 1 234dbe55c9SKrishna Manikandan 244dbe55c9SKrishna Manikandan reg-names: 254dbe55c9SKrishna Manikandan const: dsi_ctrl 264dbe55c9SKrishna Manikandan 274dbe55c9SKrishna Manikandan interrupts: 284dbe55c9SKrishna Manikandan maxItems: 1 294dbe55c9SKrishna Manikandan 304dbe55c9SKrishna Manikandan clocks: 314dbe55c9SKrishna Manikandan items: 324dbe55c9SKrishna Manikandan - description: Display byte clock 334dbe55c9SKrishna Manikandan - description: Display byte interface clock 344dbe55c9SKrishna Manikandan - description: Display pixel clock 35654ffe4bSBryan O'Donoghue - description: Display core clock 364dbe55c9SKrishna Manikandan - description: Display AHB clock 374dbe55c9SKrishna Manikandan - description: Display AXI clock 384dbe55c9SKrishna Manikandan 394dbe55c9SKrishna Manikandan clock-names: 404dbe55c9SKrishna Manikandan items: 414dbe55c9SKrishna Manikandan - const: byte 424dbe55c9SKrishna Manikandan - const: byte_intf 434dbe55c9SKrishna Manikandan - const: pixel 444dbe55c9SKrishna Manikandan - const: core 454dbe55c9SKrishna Manikandan - const: iface 464dbe55c9SKrishna Manikandan - const: bus 474dbe55c9SKrishna Manikandan 484dbe55c9SKrishna Manikandan phys: 494dbe55c9SKrishna Manikandan maxItems: 1 504dbe55c9SKrishna Manikandan 514dbe55c9SKrishna Manikandan phy-names: 52c5415562SBryan O'Donoghue deprecated: true 534dbe55c9SKrishna Manikandan const: dsi 544dbe55c9SKrishna Manikandan 554dbe55c9SKrishna Manikandan "#address-cells": true 564dbe55c9SKrishna Manikandan 574dbe55c9SKrishna Manikandan "#size-cells": true 584dbe55c9SKrishna Manikandan 594dbe55c9SKrishna Manikandan syscon-sfpb: 604dbe55c9SKrishna Manikandan description: A phandle to mmss_sfpb syscon node (only for DSIv2). 614dbe55c9SKrishna Manikandan $ref: "/schemas/types.yaml#/definitions/phandle" 624dbe55c9SKrishna Manikandan 634dbe55c9SKrishna Manikandan qcom,dual-dsi-mode: 644dbe55c9SKrishna Manikandan type: boolean 654dbe55c9SKrishna Manikandan description: | 664dbe55c9SKrishna Manikandan Indicates if the DSI controller is driving a panel which needs 674dbe55c9SKrishna Manikandan 2 DSI links. 684dbe55c9SKrishna Manikandan 69061a9aeaSDmitry Baryshkov assigned-clocks: 70061a9aeaSDmitry Baryshkov maxItems: 2 71061a9aeaSDmitry Baryshkov description: | 72061a9aeaSDmitry Baryshkov Parents of "byte" and "pixel" for the given platform. 73061a9aeaSDmitry Baryshkov 74061a9aeaSDmitry Baryshkov assigned-clock-parents: 75061a9aeaSDmitry Baryshkov maxItems: 2 76061a9aeaSDmitry Baryshkov description: | 77061a9aeaSDmitry Baryshkov The Byte clock and Pixel clock PLL outputs provided by a DSI PHY block. 78061a9aeaSDmitry Baryshkov 794dbe55c9SKrishna Manikandan power-domains: 804dbe55c9SKrishna Manikandan maxItems: 1 814dbe55c9SKrishna Manikandan 824dbe55c9SKrishna Manikandan operating-points-v2: true 834dbe55c9SKrishna Manikandan 84bac4ccceSDmitry Baryshkov opp-table: 85bac4ccceSDmitry Baryshkov type: object 86bac4ccceSDmitry Baryshkov 874dbe55c9SKrishna Manikandan ports: 884dbe55c9SKrishna Manikandan $ref: "/schemas/graph.yaml#/properties/ports" 894dbe55c9SKrishna Manikandan description: | 904dbe55c9SKrishna Manikandan Contains DSI controller input and output ports as children, each 914dbe55c9SKrishna Manikandan containing one endpoint subnode. 924dbe55c9SKrishna Manikandan 934dbe55c9SKrishna Manikandan properties: 944dbe55c9SKrishna Manikandan port@0: 95b4db237eSRob Herring $ref: "/schemas/graph.yaml#/$defs/port-base" 96b4db237eSRob Herring unevaluatedProperties: false 974dbe55c9SKrishna Manikandan description: | 984dbe55c9SKrishna Manikandan Input endpoints of the controller. 994dbe55c9SKrishna Manikandan properties: 1004dbe55c9SKrishna Manikandan endpoint: 1014dbe55c9SKrishna Manikandan $ref: /schemas/media/video-interfaces.yaml# 1024dbe55c9SKrishna Manikandan unevaluatedProperties: false 1034dbe55c9SKrishna Manikandan properties: 1044dbe55c9SKrishna Manikandan data-lanes: 1054dbe55c9SKrishna Manikandan maxItems: 4 1064dbe55c9SKrishna Manikandan minItems: 4 1074dbe55c9SKrishna Manikandan items: 1084dbe55c9SKrishna Manikandan enum: [ 0, 1, 2, 3 ] 1094dbe55c9SKrishna Manikandan 1104dbe55c9SKrishna Manikandan port@1: 111b4db237eSRob Herring $ref: "/schemas/graph.yaml#/$defs/port-base" 112b4db237eSRob Herring unevaluatedProperties: false 1134dbe55c9SKrishna Manikandan description: | 1144dbe55c9SKrishna Manikandan Output endpoints of the controller. 1154dbe55c9SKrishna Manikandan properties: 1164dbe55c9SKrishna Manikandan endpoint: 1174dbe55c9SKrishna Manikandan $ref: /schemas/media/video-interfaces.yaml# 1184dbe55c9SKrishna Manikandan unevaluatedProperties: false 1194dbe55c9SKrishna Manikandan properties: 1204dbe55c9SKrishna Manikandan data-lanes: 1214dbe55c9SKrishna Manikandan maxItems: 4 1224dbe55c9SKrishna Manikandan minItems: 4 1234dbe55c9SKrishna Manikandan items: 1244dbe55c9SKrishna Manikandan enum: [ 0, 1, 2, 3 ] 1254dbe55c9SKrishna Manikandan 1264dbe55c9SKrishna Manikandan required: 1274dbe55c9SKrishna Manikandan - port@0 1284dbe55c9SKrishna Manikandan - port@1 1294dbe55c9SKrishna Manikandan 130*adf6a3ebSBryan O'Donoghue vdd-supply: 131*adf6a3ebSBryan O'Donoghue description: 132*adf6a3ebSBryan O'Donoghue VDD regulator 133*adf6a3ebSBryan O'Donoghue 134*adf6a3ebSBryan O'Donoghue vddio-supply: 135*adf6a3ebSBryan O'Donoghue description: 136*adf6a3ebSBryan O'Donoghue VDD-IO regulator 137*adf6a3ebSBryan O'Donoghue 138*adf6a3ebSBryan O'Donoghue vdda-supply: 139*adf6a3ebSBryan O'Donoghue description: 140*adf6a3ebSBryan O'Donoghue VDDA regulator 141*adf6a3ebSBryan O'Donoghue 1424dbe55c9SKrishna Manikandanrequired: 1434dbe55c9SKrishna Manikandan - compatible 1444dbe55c9SKrishna Manikandan - reg 1454dbe55c9SKrishna Manikandan - reg-names 1464dbe55c9SKrishna Manikandan - interrupts 1474dbe55c9SKrishna Manikandan - clocks 1484dbe55c9SKrishna Manikandan - clock-names 1494dbe55c9SKrishna Manikandan - phys 150061a9aeaSDmitry Baryshkov - assigned-clocks 151061a9aeaSDmitry Baryshkov - assigned-clock-parents 1524dbe55c9SKrishna Manikandan - ports 1534dbe55c9SKrishna Manikandan 1544dbe55c9SKrishna ManikandanadditionalProperties: false 1554dbe55c9SKrishna Manikandan 1564dbe55c9SKrishna Manikandanexamples: 1574dbe55c9SKrishna Manikandan - | 1584dbe55c9SKrishna Manikandan #include <dt-bindings/interrupt-controller/arm-gic.h> 1594dbe55c9SKrishna Manikandan #include <dt-bindings/clock/qcom,dispcc-sdm845.h> 1604dbe55c9SKrishna Manikandan #include <dt-bindings/clock/qcom,gcc-sdm845.h> 1614dbe55c9SKrishna Manikandan #include <dt-bindings/power/qcom-rpmpd.h> 1624dbe55c9SKrishna Manikandan 1634dbe55c9SKrishna Manikandan dsi@ae94000 { 1644dbe55c9SKrishna Manikandan compatible = "qcom,mdss-dsi-ctrl"; 1654dbe55c9SKrishna Manikandan reg = <0x0ae94000 0x400>; 1664dbe55c9SKrishna Manikandan reg-names = "dsi_ctrl"; 1674dbe55c9SKrishna Manikandan 1684dbe55c9SKrishna Manikandan #address-cells = <1>; 1694dbe55c9SKrishna Manikandan #size-cells = <0>; 1704dbe55c9SKrishna Manikandan 1714dbe55c9SKrishna Manikandan interrupt-parent = <&mdss>; 1724dbe55c9SKrishna Manikandan interrupts = <4>; 1734dbe55c9SKrishna Manikandan 1744dbe55c9SKrishna Manikandan clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK>, 1754dbe55c9SKrishna Manikandan <&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>, 1764dbe55c9SKrishna Manikandan <&dispcc DISP_CC_MDSS_PCLK0_CLK>, 1774dbe55c9SKrishna Manikandan <&dispcc DISP_CC_MDSS_ESC0_CLK>, 1784dbe55c9SKrishna Manikandan <&dispcc DISP_CC_MDSS_AHB_CLK>, 1794dbe55c9SKrishna Manikandan <&dispcc DISP_CC_MDSS_AXI_CLK>; 1804dbe55c9SKrishna Manikandan clock-names = "byte", 1814dbe55c9SKrishna Manikandan "byte_intf", 1824dbe55c9SKrishna Manikandan "pixel", 1834dbe55c9SKrishna Manikandan "core", 1844dbe55c9SKrishna Manikandan "iface", 1854dbe55c9SKrishna Manikandan "bus"; 1864dbe55c9SKrishna Manikandan 1874dbe55c9SKrishna Manikandan phys = <&dsi0_phy>; 1884dbe55c9SKrishna Manikandan phy-names = "dsi"; 1894dbe55c9SKrishna Manikandan 190061a9aeaSDmitry Baryshkov assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK_SRC>, <&dispcc DISP_CC_MDSS_PCLK0_CLK_SRC>; 191061a9aeaSDmitry Baryshkov assigned-clock-parents = <&dsi_phy 0>, <&dsi_phy 1>; 192061a9aeaSDmitry Baryshkov 1934dbe55c9SKrishna Manikandan power-domains = <&rpmhpd SC7180_CX>; 1944dbe55c9SKrishna Manikandan operating-points-v2 = <&dsi_opp_table>; 1954dbe55c9SKrishna Manikandan 1964dbe55c9SKrishna Manikandan ports { 1974dbe55c9SKrishna Manikandan #address-cells = <1>; 1984dbe55c9SKrishna Manikandan #size-cells = <0>; 1994dbe55c9SKrishna Manikandan 2004dbe55c9SKrishna Manikandan port@0 { 2014dbe55c9SKrishna Manikandan reg = <0>; 2024dbe55c9SKrishna Manikandan dsi0_in: endpoint { 2034dbe55c9SKrishna Manikandan remote-endpoint = <&dpu_intf1_out>; 2044dbe55c9SKrishna Manikandan }; 2054dbe55c9SKrishna Manikandan }; 2064dbe55c9SKrishna Manikandan 2074dbe55c9SKrishna Manikandan port@1 { 2084dbe55c9SKrishna Manikandan reg = <1>; 2094dbe55c9SKrishna Manikandan dsi0_out: endpoint { 2104dbe55c9SKrishna Manikandan remote-endpoint = <&sn65dsi86_in>; 2114dbe55c9SKrishna Manikandan data-lanes = <0 1 2 3>; 2124dbe55c9SKrishna Manikandan }; 2134dbe55c9SKrishna Manikandan }; 2144dbe55c9SKrishna Manikandan }; 2154dbe55c9SKrishna Manikandan }; 2164dbe55c9SKrishna Manikandan... 217