13096209bSDmitry Baryshkov# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 23096209bSDmitry Baryshkov%YAML 1.2 33096209bSDmitry Baryshkov--- 43096209bSDmitry Baryshkov$id: http://devicetree.org/schemas/display/msm/qcom,sar2130p-mdss.yaml# 53096209bSDmitry Baryshkov$schema: http://devicetree.org/meta-schemas/core.yaml# 63096209bSDmitry Baryshkov 73096209bSDmitry Baryshkovtitle: Qualcomm SAR2130P Display MDSS 83096209bSDmitry Baryshkov 93096209bSDmitry Baryshkovmaintainers: 103096209bSDmitry Baryshkov - Dmitry Baryshkov <lumag@kernel.org> 113096209bSDmitry Baryshkov 123096209bSDmitry Baryshkovdescription: 133096209bSDmitry Baryshkov SAR2310P MSM Mobile Display Subsystem(MDSS), which encapsulates sub-blocks like 143096209bSDmitry Baryshkov DPU display controller, DSI and DP interfaces etc. 153096209bSDmitry Baryshkov 163096209bSDmitry Baryshkov$ref: /schemas/display/msm/mdss-common.yaml# 173096209bSDmitry Baryshkov 183096209bSDmitry Baryshkovproperties: 193096209bSDmitry Baryshkov compatible: 203096209bSDmitry Baryshkov const: qcom,sar2130p-mdss 213096209bSDmitry Baryshkov 223096209bSDmitry Baryshkov clocks: 233096209bSDmitry Baryshkov items: 243096209bSDmitry Baryshkov - description: Display MDSS AHB 253096209bSDmitry Baryshkov - description: Display AHB 263096209bSDmitry Baryshkov - description: Display hf AXI 273096209bSDmitry Baryshkov - description: Display core 283096209bSDmitry Baryshkov 293096209bSDmitry Baryshkov iommus: 303096209bSDmitry Baryshkov maxItems: 1 313096209bSDmitry Baryshkov 323096209bSDmitry Baryshkov interconnects: 333096209bSDmitry Baryshkov items: 343096209bSDmitry Baryshkov - description: Interconnect path from mdp0 port to the data bus 353096209bSDmitry Baryshkov - description: Interconnect path from CPU to the reg bus 363096209bSDmitry Baryshkov 373096209bSDmitry Baryshkov interconnect-names: 383096209bSDmitry Baryshkov items: 393096209bSDmitry Baryshkov - const: mdp0-mem 403096209bSDmitry Baryshkov - const: cpu-cfg 413096209bSDmitry Baryshkov 423096209bSDmitry BaryshkovpatternProperties: 433096209bSDmitry Baryshkov "^display-controller@[0-9a-f]+$": 443096209bSDmitry Baryshkov type: object 453096209bSDmitry Baryshkov additionalProperties: true 463096209bSDmitry Baryshkov properties: 473096209bSDmitry Baryshkov compatible: 483096209bSDmitry Baryshkov const: qcom,sar2130p-dpu 493096209bSDmitry Baryshkov 503096209bSDmitry Baryshkov "^displayport-controller@[0-9a-f]+$": 513096209bSDmitry Baryshkov type: object 523096209bSDmitry Baryshkov additionalProperties: true 533096209bSDmitry Baryshkov properties: 543096209bSDmitry Baryshkov compatible: 553096209bSDmitry Baryshkov contains: 563096209bSDmitry Baryshkov const: qcom,sar2130p-dp 573096209bSDmitry Baryshkov 583096209bSDmitry Baryshkov "^dsi@[0-9a-f]+$": 593096209bSDmitry Baryshkov type: object 603096209bSDmitry Baryshkov additionalProperties: true 613096209bSDmitry Baryshkov properties: 623096209bSDmitry Baryshkov compatible: 633096209bSDmitry Baryshkov contains: 643096209bSDmitry Baryshkov const: qcom,sar2130p-dsi-ctrl 653096209bSDmitry Baryshkov 663096209bSDmitry Baryshkov "^phy@[0-9a-f]+$": 673096209bSDmitry Baryshkov type: object 683096209bSDmitry Baryshkov additionalProperties: true 693096209bSDmitry Baryshkov properties: 703096209bSDmitry Baryshkov compatible: 713096209bSDmitry Baryshkov const: qcom,sar2130p-dsi-phy-5nm 723096209bSDmitry Baryshkov 733096209bSDmitry Baryshkovrequired: 743096209bSDmitry Baryshkov - compatible 753096209bSDmitry Baryshkov 763096209bSDmitry BaryshkovunevaluatedProperties: false 773096209bSDmitry Baryshkov 783096209bSDmitry Baryshkovexamples: 793096209bSDmitry Baryshkov - | 803096209bSDmitry Baryshkov #include <dt-bindings/interrupt-controller/arm-gic.h> 813096209bSDmitry Baryshkov #include <dt-bindings/power/qcom,rpmhpd.h> 823096209bSDmitry Baryshkov #include <dt-bindings/phy/phy-qcom-qmp.h> 833096209bSDmitry Baryshkov 843096209bSDmitry Baryshkov display-subsystem@ae00000 { 853096209bSDmitry Baryshkov compatible = "qcom,sar2130p-mdss"; 863096209bSDmitry Baryshkov reg = <0x0ae00000 0x1000>; 873096209bSDmitry Baryshkov reg-names = "mdss"; 883096209bSDmitry Baryshkov 893096209bSDmitry Baryshkov interconnects = <&mmss_noc_master_mdp &mc_virt_slave_ebi1>, 903096209bSDmitry Baryshkov <&gem_noc_master_appss_proc &config_noc_slave_display_cfg>; 913096209bSDmitry Baryshkov interconnect-names = "mdp0-mem", "cpu-cfg"; 923096209bSDmitry Baryshkov 933096209bSDmitry Baryshkov resets = <&dispcc_disp_cc_mdss_core_bcr>; 943096209bSDmitry Baryshkov 953096209bSDmitry Baryshkov power-domains = <&dispcc_mdss_gdsc>; 963096209bSDmitry Baryshkov 973096209bSDmitry Baryshkov clocks = <&dispcc_disp_cc_mdss_ahb_clk>, 983096209bSDmitry Baryshkov <&gcc_gcc_disp_ahb_clk>, 993096209bSDmitry Baryshkov <&gcc_gcc_disp_hf_axi_clk>, 1003096209bSDmitry Baryshkov <&dispcc_disp_cc_mdss_mdp_clk>; 1013096209bSDmitry Baryshkov clock-names = "iface", "bus", "nrt_bus", "core"; 1023096209bSDmitry Baryshkov 1033096209bSDmitry Baryshkov interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 1043096209bSDmitry Baryshkov interrupt-controller; 1053096209bSDmitry Baryshkov #interrupt-cells = <1>; 1063096209bSDmitry Baryshkov 1073096209bSDmitry Baryshkov iommus = <&apps_smmu 0x1c00 0x2>; 1083096209bSDmitry Baryshkov 1093096209bSDmitry Baryshkov #address-cells = <1>; 1103096209bSDmitry Baryshkov #size-cells = <1>; 1113096209bSDmitry Baryshkov ranges; 1123096209bSDmitry Baryshkov 1133096209bSDmitry Baryshkov display-controller@ae01000 { 1143096209bSDmitry Baryshkov compatible = "qcom,sar2130p-dpu"; 1153096209bSDmitry Baryshkov reg = <0x0ae01000 0x8f000>, 1163096209bSDmitry Baryshkov <0x0aeb0000 0x2008>; 1173096209bSDmitry Baryshkov reg-names = "mdp", "vbif"; 1183096209bSDmitry Baryshkov 1193096209bSDmitry Baryshkov clocks = <&gcc_gcc_disp_ahb_clk>, 1203096209bSDmitry Baryshkov <&gcc_gcc_disp_hf_axi_clk>, 1213096209bSDmitry Baryshkov <&dispcc_disp_cc_mdss_ahb_clk>, 1223096209bSDmitry Baryshkov <&dispcc_disp_cc_mdss_mdp_lut_clk>, 1233096209bSDmitry Baryshkov <&dispcc_disp_cc_mdss_mdp_clk>, 1243096209bSDmitry Baryshkov <&dispcc_disp_cc_mdss_vsync_clk>; 1253096209bSDmitry Baryshkov clock-names = "bus", 1263096209bSDmitry Baryshkov "nrt_bus", 1273096209bSDmitry Baryshkov "iface", 1283096209bSDmitry Baryshkov "lut", 1293096209bSDmitry Baryshkov "core", 1303096209bSDmitry Baryshkov "vsync"; 1313096209bSDmitry Baryshkov 1323096209bSDmitry Baryshkov assigned-clocks = <&dispcc_disp_cc_mdss_vsync_clk>; 1333096209bSDmitry Baryshkov assigned-clock-rates = <19200000>; 1343096209bSDmitry Baryshkov 1353096209bSDmitry Baryshkov operating-points-v2 = <&mdp_opp_table>; 1363096209bSDmitry Baryshkov power-domains = <&rpmhpd RPMHPD_MMCX>; 1373096209bSDmitry Baryshkov 1383096209bSDmitry Baryshkov interrupt-parent = <&mdss>; 1393096209bSDmitry Baryshkov interrupts = <0>; 1403096209bSDmitry Baryshkov 1413096209bSDmitry Baryshkov ports { 1423096209bSDmitry Baryshkov #address-cells = <1>; 1433096209bSDmitry Baryshkov #size-cells = <0>; 1443096209bSDmitry Baryshkov 1453096209bSDmitry Baryshkov port@0 { 1463096209bSDmitry Baryshkov reg = <0>; 1473096209bSDmitry Baryshkov 1483096209bSDmitry Baryshkov dpu_intf0_out: endpoint { 1493096209bSDmitry Baryshkov remote-endpoint = <&mdss_dp0_in>; 1503096209bSDmitry Baryshkov }; 1513096209bSDmitry Baryshkov }; 1523096209bSDmitry Baryshkov 1533096209bSDmitry Baryshkov port@1 { 1543096209bSDmitry Baryshkov reg = <1>; 1553096209bSDmitry Baryshkov 1563096209bSDmitry Baryshkov dpu_intf1_out: endpoint { 1573096209bSDmitry Baryshkov remote-endpoint = <&mdss_dsi0_in>; 1583096209bSDmitry Baryshkov }; 1593096209bSDmitry Baryshkov }; 1603096209bSDmitry Baryshkov 1613096209bSDmitry Baryshkov port@2 { 1623096209bSDmitry Baryshkov reg = <2>; 1633096209bSDmitry Baryshkov 1643096209bSDmitry Baryshkov dpu_intf2_out: endpoint { 1653096209bSDmitry Baryshkov remote-endpoint = <&mdss_dsi1_in>; 1663096209bSDmitry Baryshkov }; 1673096209bSDmitry Baryshkov }; 1683096209bSDmitry Baryshkov }; 1693096209bSDmitry Baryshkov 1703096209bSDmitry Baryshkov mdp_opp_table: opp-table { 1713096209bSDmitry Baryshkov compatible = "operating-points-v2"; 1723096209bSDmitry Baryshkov 1733096209bSDmitry Baryshkov opp-200000000 { 1743096209bSDmitry Baryshkov opp-hz = /bits/ 64 <200000000>; 1753096209bSDmitry Baryshkov required-opps = <&rpmhpd_opp_low_svs>; 1763096209bSDmitry Baryshkov }; 1773096209bSDmitry Baryshkov 1783096209bSDmitry Baryshkov opp-325000000 { 1793096209bSDmitry Baryshkov opp-hz = /bits/ 64 <325000000>; 1803096209bSDmitry Baryshkov required-opps = <&rpmhpd_opp_svs>; 1813096209bSDmitry Baryshkov }; 1823096209bSDmitry Baryshkov 1833096209bSDmitry Baryshkov opp-375000000 { 1843096209bSDmitry Baryshkov opp-hz = /bits/ 64 <375000000>; 1853096209bSDmitry Baryshkov required-opps = <&rpmhpd_opp_svs_l1>; 1863096209bSDmitry Baryshkov }; 1873096209bSDmitry Baryshkov 1883096209bSDmitry Baryshkov opp-514000000 { 1893096209bSDmitry Baryshkov opp-hz = /bits/ 64 <514000000>; 1903096209bSDmitry Baryshkov required-opps = <&rpmhpd_opp_nom>; 1913096209bSDmitry Baryshkov }; 1923096209bSDmitry Baryshkov }; 1933096209bSDmitry Baryshkov }; 1943096209bSDmitry Baryshkov 1953096209bSDmitry Baryshkov displayport-controller@ae90000 { 1963096209bSDmitry Baryshkov compatible = "qcom,sar2130p-dp", 1973096209bSDmitry Baryshkov "qcom,sm8350-dp"; 1983096209bSDmitry Baryshkov reg = <0xae90000 0x200>, 1993096209bSDmitry Baryshkov <0xae90200 0x200>, 2003096209bSDmitry Baryshkov <0xae90400 0xc00>, 2013096209bSDmitry Baryshkov <0xae91000 0x400>, 2023096209bSDmitry Baryshkov <0xae91400 0x400>; 2033096209bSDmitry Baryshkov 2043096209bSDmitry Baryshkov interrupt-parent = <&mdss>; 2053096209bSDmitry Baryshkov interrupts = <12>; 2063096209bSDmitry Baryshkov clocks = <&dispcc_disp_cc_mdss_ahb_clk>, 2073096209bSDmitry Baryshkov <&dispcc_disp_cc_mdss_dptx0_aux_clk>, 2083096209bSDmitry Baryshkov <&dispcc_disp_cc_mdss_dptx0_link_clk>, 2093096209bSDmitry Baryshkov <&dispcc_disp_cc_mdss_dptx0_link_intf_clk>, 210*9be5c479SAbhinav Kumar <&dispcc_disp_cc_mdss_dptx0_pixel0_clk>, 211*9be5c479SAbhinav Kumar <&dispcc_disp_cc_mdss_dptx0_pixel1_clk>; 2123096209bSDmitry Baryshkov clock-names = "core_iface", 2133096209bSDmitry Baryshkov "core_aux", 2143096209bSDmitry Baryshkov "ctrl_link", 2153096209bSDmitry Baryshkov "ctrl_link_iface", 216*9be5c479SAbhinav Kumar "stream_pixel", 217*9be5c479SAbhinav Kumar "stream_1_pixel"; 2183096209bSDmitry Baryshkov 2193096209bSDmitry Baryshkov assigned-clocks = <&dispcc_disp_cc_mdss_dptx0_link_clk_src>, 220*9be5c479SAbhinav Kumar <&dispcc_disp_cc_mdss_dptx0_pixel0_clk_src>, 221*9be5c479SAbhinav Kumar <&dispcc_disp_cc_mdss_dptx0_pixel1_clk_src>; 2223096209bSDmitry Baryshkov assigned-clock-parents = <&usb_dp_qmpphy_QMP_USB43DP_DP_LINK_CLK>, 223*9be5c479SAbhinav Kumar <&usb_dp_qmpphy_QMP_USB43DP_DP_VCO_DIV_CLK>, 2243096209bSDmitry Baryshkov <&usb_dp_qmpphy_QMP_USB43DP_DP_VCO_DIV_CLK>; 2253096209bSDmitry Baryshkov 2263096209bSDmitry Baryshkov phys = <&usb_dp_qmpphy QMP_USB43DP_DP_PHY>; 2273096209bSDmitry Baryshkov phy-names = "dp"; 2283096209bSDmitry Baryshkov 2293096209bSDmitry Baryshkov #sound-dai-cells = <0>; 2303096209bSDmitry Baryshkov 2313096209bSDmitry Baryshkov operating-points-v2 = <&dp_opp_table>; 2323096209bSDmitry Baryshkov power-domains = <&rpmhpd RPMHPD_MMCX>; 2333096209bSDmitry Baryshkov 2343096209bSDmitry Baryshkov ports { 2353096209bSDmitry Baryshkov #address-cells = <1>; 2363096209bSDmitry Baryshkov #size-cells = <0>; 2373096209bSDmitry Baryshkov 2383096209bSDmitry Baryshkov port@0 { 2393096209bSDmitry Baryshkov reg = <0>; 2403096209bSDmitry Baryshkov mdss_dp0_in: endpoint { 2413096209bSDmitry Baryshkov remote-endpoint = <&dpu_intf0_out>; 2423096209bSDmitry Baryshkov }; 2433096209bSDmitry Baryshkov }; 2443096209bSDmitry Baryshkov 2453096209bSDmitry Baryshkov port@1 { 2463096209bSDmitry Baryshkov reg = <1>; 2473096209bSDmitry Baryshkov mdss_dp0_out: endpoint { 2483096209bSDmitry Baryshkov remote-endpoint = <&usb_dp_qmpphy_dp_in>; 2493096209bSDmitry Baryshkov }; 2503096209bSDmitry Baryshkov }; 2513096209bSDmitry Baryshkov }; 2523096209bSDmitry Baryshkov 2533096209bSDmitry Baryshkov dp_opp_table: opp-table { 2543096209bSDmitry Baryshkov compatible = "operating-points-v2"; 2553096209bSDmitry Baryshkov 2563096209bSDmitry Baryshkov opp-162000000 { 2573096209bSDmitry Baryshkov opp-hz = /bits/ 64 <162000000>; 2583096209bSDmitry Baryshkov required-opps = <&rpmhpd_opp_low_svs_d1>; 2593096209bSDmitry Baryshkov }; 2603096209bSDmitry Baryshkov 2613096209bSDmitry Baryshkov opp-270000000 { 2623096209bSDmitry Baryshkov opp-hz = /bits/ 64 <270000000>; 2633096209bSDmitry Baryshkov required-opps = <&rpmhpd_opp_low_svs>; 2643096209bSDmitry Baryshkov }; 2653096209bSDmitry Baryshkov 2663096209bSDmitry Baryshkov opp-540000000 { 2673096209bSDmitry Baryshkov opp-hz = /bits/ 64 <540000000>; 2683096209bSDmitry Baryshkov required-opps = <&rpmhpd_opp_svs_l1>; 2693096209bSDmitry Baryshkov }; 2703096209bSDmitry Baryshkov 2713096209bSDmitry Baryshkov opp-810000000 { 2723096209bSDmitry Baryshkov opp-hz = /bits/ 64 <810000000>; 2733096209bSDmitry Baryshkov required-opps = <&rpmhpd_opp_nom>; 2743096209bSDmitry Baryshkov }; 2753096209bSDmitry Baryshkov }; 2763096209bSDmitry Baryshkov }; 2773096209bSDmitry Baryshkov 2783096209bSDmitry Baryshkov dsi@ae94000 { 2793096209bSDmitry Baryshkov compatible = "qcom,sar2130p-dsi-ctrl", 2803096209bSDmitry Baryshkov "qcom,mdss-dsi-ctrl"; 2813096209bSDmitry Baryshkov reg = <0x0ae94000 0x400>; 2823096209bSDmitry Baryshkov reg-names = "dsi_ctrl"; 2833096209bSDmitry Baryshkov 2843096209bSDmitry Baryshkov interrupt-parent = <&mdss>; 2853096209bSDmitry Baryshkov interrupts = <4>; 2863096209bSDmitry Baryshkov 2873096209bSDmitry Baryshkov clocks = <&dispcc_disp_cc_mdss_byte0_clk>, 2883096209bSDmitry Baryshkov <&dispcc_disp_cc_mdss_byte0_intf_clk>, 2893096209bSDmitry Baryshkov <&dispcc_disp_cc_mdss_pclk0_clk>, 2903096209bSDmitry Baryshkov <&dispcc_disp_cc_mdss_esc0_clk>, 2913096209bSDmitry Baryshkov <&dispcc_disp_cc_mdss_ahb_clk>, 2923096209bSDmitry Baryshkov <&gcc_gcc_disp_hf_axi_clk>; 2933096209bSDmitry Baryshkov clock-names = "byte", 2943096209bSDmitry Baryshkov "byte_intf", 2953096209bSDmitry Baryshkov "pixel", 2963096209bSDmitry Baryshkov "core", 2973096209bSDmitry Baryshkov "iface", 2983096209bSDmitry Baryshkov "bus"; 2993096209bSDmitry Baryshkov 3003096209bSDmitry Baryshkov assigned-clocks = <&dispcc_disp_cc_mdss_byte0_clk_src>, 3013096209bSDmitry Baryshkov <&dispcc_disp_cc_mdss_pclk0_clk_src>; 3023096209bSDmitry Baryshkov assigned-clock-parents = <&mdss_dsi0_phy 0>, <&mdss_dsi0_phy 1>; 3033096209bSDmitry Baryshkov 3043096209bSDmitry Baryshkov operating-points-v2 = <&dsi_opp_table>; 3053096209bSDmitry Baryshkov power-domains = <&rpmhpd RPMHPD_MMCX>; 3063096209bSDmitry Baryshkov 3073096209bSDmitry Baryshkov phys = <&mdss_dsi0_phy>; 3083096209bSDmitry Baryshkov phy-names = "dsi"; 3093096209bSDmitry Baryshkov 3103096209bSDmitry Baryshkov #address-cells = <1>; 3113096209bSDmitry Baryshkov #size-cells = <0>; 3123096209bSDmitry Baryshkov 3133096209bSDmitry Baryshkov ports { 3143096209bSDmitry Baryshkov #address-cells = <1>; 3153096209bSDmitry Baryshkov #size-cells = <0>; 3163096209bSDmitry Baryshkov 3173096209bSDmitry Baryshkov port@0 { 3183096209bSDmitry Baryshkov reg = <0>; 3193096209bSDmitry Baryshkov 3203096209bSDmitry Baryshkov mdss_dsi0_in: endpoint { 3213096209bSDmitry Baryshkov remote-endpoint = <&dpu_intf1_out>; 3223096209bSDmitry Baryshkov }; 3233096209bSDmitry Baryshkov }; 3243096209bSDmitry Baryshkov 3253096209bSDmitry Baryshkov port@1 { 3263096209bSDmitry Baryshkov reg = <1>; 3273096209bSDmitry Baryshkov 3283096209bSDmitry Baryshkov mdss_dsi0_out: endpoint { 3293096209bSDmitry Baryshkov }; 3303096209bSDmitry Baryshkov }; 3313096209bSDmitry Baryshkov }; 3323096209bSDmitry Baryshkov 3333096209bSDmitry Baryshkov dsi_opp_table: opp-table { 3343096209bSDmitry Baryshkov compatible = "operating-points-v2"; 3353096209bSDmitry Baryshkov 3363096209bSDmitry Baryshkov opp-187500000 { 3373096209bSDmitry Baryshkov opp-hz = /bits/ 64 <187500000>; 3383096209bSDmitry Baryshkov required-opps = <&rpmhpd_opp_low_svs>; 3393096209bSDmitry Baryshkov }; 3403096209bSDmitry Baryshkov 3413096209bSDmitry Baryshkov opp-300000000 { 3423096209bSDmitry Baryshkov opp-hz = /bits/ 64 <300000000>; 3433096209bSDmitry Baryshkov required-opps = <&rpmhpd_opp_svs>; 3443096209bSDmitry Baryshkov }; 3453096209bSDmitry Baryshkov 3463096209bSDmitry Baryshkov opp-358000000 { 3473096209bSDmitry Baryshkov opp-hz = /bits/ 64 <358000000>; 3483096209bSDmitry Baryshkov required-opps = <&rpmhpd_opp_svs_l1>; 3493096209bSDmitry Baryshkov }; 3503096209bSDmitry Baryshkov }; 3513096209bSDmitry Baryshkov }; 3523096209bSDmitry Baryshkov 3533096209bSDmitry Baryshkov mdss_dsi0_phy: phy@ae94400 { 3543096209bSDmitry Baryshkov compatible = "qcom,sar2130p-dsi-phy-5nm"; 3553096209bSDmitry Baryshkov reg = <0x0ae95000 0x200>, 3563096209bSDmitry Baryshkov <0x0ae95200 0x280>, 3573096209bSDmitry Baryshkov <0x0ae95500 0x400>; 3583096209bSDmitry Baryshkov reg-names = "dsi_phy", 3593096209bSDmitry Baryshkov "dsi_phy_lane", 3603096209bSDmitry Baryshkov "dsi_pll"; 3613096209bSDmitry Baryshkov 3623096209bSDmitry Baryshkov #clock-cells = <1>; 3633096209bSDmitry Baryshkov #phy-cells = <0>; 3643096209bSDmitry Baryshkov 3653096209bSDmitry Baryshkov clocks = <&dispcc_disp_cc_mdss_ahb_clk>, 3663096209bSDmitry Baryshkov <&rpmhcc_rpmh_cxo_clk>; 3673096209bSDmitry Baryshkov clock-names = "iface", "ref"; 3683096209bSDmitry Baryshkov }; 3693096209bSDmitry Baryshkov 3703096209bSDmitry Baryshkov dsi@ae96000 { 3713096209bSDmitry Baryshkov compatible = "qcom,sar2130p-dsi-ctrl", 3723096209bSDmitry Baryshkov "qcom,mdss-dsi-ctrl"; 3733096209bSDmitry Baryshkov reg = <0x0ae96000 0x400>; 3743096209bSDmitry Baryshkov reg-names = "dsi_ctrl"; 3753096209bSDmitry Baryshkov 3763096209bSDmitry Baryshkov interrupt-parent = <&mdss>; 3773096209bSDmitry Baryshkov interrupts = <5>; 3783096209bSDmitry Baryshkov 3793096209bSDmitry Baryshkov clocks = <&dispcc_disp_cc_mdss_byte1_clk>, 3803096209bSDmitry Baryshkov <&dispcc_disp_cc_mdss_byte1_intf_clk>, 3813096209bSDmitry Baryshkov <&dispcc_disp_cc_mdss_pclk1_clk>, 3823096209bSDmitry Baryshkov <&dispcc_disp_cc_mdss_esc1_clk>, 3833096209bSDmitry Baryshkov <&dispcc_disp_cc_mdss_ahb_clk>, 3843096209bSDmitry Baryshkov <&gcc_gcc_disp_hf_axi_clk>; 3853096209bSDmitry Baryshkov clock-names = "byte", 3863096209bSDmitry Baryshkov "byte_intf", 3873096209bSDmitry Baryshkov "pixel", 3883096209bSDmitry Baryshkov "core", 3893096209bSDmitry Baryshkov "iface", 3903096209bSDmitry Baryshkov "bus"; 3913096209bSDmitry Baryshkov 3923096209bSDmitry Baryshkov assigned-clocks = <&dispcc_disp_cc_mdss_byte1_clk_src>, 3933096209bSDmitry Baryshkov <&dispcc_disp_cc_mdss_pclk1_clk_src>; 3943096209bSDmitry Baryshkov assigned-clock-parents = <&mdss_dsi1_phy 0>, <&mdss_dsi1_phy 1>; 3953096209bSDmitry Baryshkov 3963096209bSDmitry Baryshkov operating-points-v2 = <&dsi_opp_table>; 3973096209bSDmitry Baryshkov power-domains = <&rpmhpd RPMHPD_MMCX>; 3983096209bSDmitry Baryshkov 3993096209bSDmitry Baryshkov phys = <&mdss_dsi1_phy>; 4003096209bSDmitry Baryshkov phy-names = "dsi"; 4013096209bSDmitry Baryshkov 4023096209bSDmitry Baryshkov #address-cells = <1>; 4033096209bSDmitry Baryshkov #size-cells = <0>; 4043096209bSDmitry Baryshkov 4053096209bSDmitry Baryshkov ports { 4063096209bSDmitry Baryshkov #address-cells = <1>; 4073096209bSDmitry Baryshkov #size-cells = <0>; 4083096209bSDmitry Baryshkov 4093096209bSDmitry Baryshkov port@0 { 4103096209bSDmitry Baryshkov reg = <0>; 4113096209bSDmitry Baryshkov 4123096209bSDmitry Baryshkov mdss_dsi1_in: endpoint { 4133096209bSDmitry Baryshkov remote-endpoint = <&dpu_intf2_out>; 4143096209bSDmitry Baryshkov }; 4153096209bSDmitry Baryshkov }; 4163096209bSDmitry Baryshkov 4173096209bSDmitry Baryshkov port@1 { 4183096209bSDmitry Baryshkov reg = <1>; 4193096209bSDmitry Baryshkov 4203096209bSDmitry Baryshkov mdss_dsi1_out: endpoint { 4213096209bSDmitry Baryshkov }; 4223096209bSDmitry Baryshkov }; 4233096209bSDmitry Baryshkov }; 4243096209bSDmitry Baryshkov }; 4253096209bSDmitry Baryshkov 4263096209bSDmitry Baryshkov mdss_dsi1_phy: phy@ae97000 { 4273096209bSDmitry Baryshkov compatible = "qcom,sar2130p-dsi-phy-5nm"; 4283096209bSDmitry Baryshkov reg = <0x0ae97000 0x200>, 4293096209bSDmitry Baryshkov <0x0ae97200 0x280>, 4303096209bSDmitry Baryshkov <0x0ae97500 0x400>; 4313096209bSDmitry Baryshkov reg-names = "dsi_phy", 4323096209bSDmitry Baryshkov "dsi_phy_lane", 4333096209bSDmitry Baryshkov "dsi_pll"; 4343096209bSDmitry Baryshkov 4353096209bSDmitry Baryshkov #clock-cells = <1>; 4363096209bSDmitry Baryshkov #phy-cells = <0>; 4373096209bSDmitry Baryshkov 4383096209bSDmitry Baryshkov clocks = <&dispcc_disp_cc_mdss_ahb_clk>, 4393096209bSDmitry Baryshkov <&rpmhcc_rpmh_cxo_clk>; 4403096209bSDmitry Baryshkov clock-names = "iface", "ref"; 4413096209bSDmitry Baryshkov }; 4423096209bSDmitry Baryshkov }; 4433096209bSDmitry Baryshkov... 444