16b938401SKrzysztof Kozlowski# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 26b938401SKrzysztof Kozlowski%YAML 1.2 36b938401SKrzysztof Kozlowski--- 46b938401SKrzysztof Kozlowski$id: http://devicetree.org/schemas/display/msm/qcom,sm8750-mdss.yaml# 56b938401SKrzysztof Kozlowski$schema: http://devicetree.org/meta-schemas/core.yaml# 66b938401SKrzysztof Kozlowski 76b938401SKrzysztof Kozlowskititle: Qualcomm SM8750 Display MDSS 86b938401SKrzysztof Kozlowski 96b938401SKrzysztof Kozlowskimaintainers: 10bcc357c8SKrzysztof Kozlowski - Krzysztof Kozlowski <krzk@kernel.org> 116b938401SKrzysztof Kozlowski 126b938401SKrzysztof Kozlowskidescription: 13*4355b13dSKrzysztof Kozlowski SM8750 MSM Mobile Display Subsystem(MDSS), which encapsulates sub-blocks like 146b938401SKrzysztof Kozlowski DPU display controller, DSI and DP interfaces etc. 156b938401SKrzysztof Kozlowski 166b938401SKrzysztof Kozlowski$ref: /schemas/display/msm/mdss-common.yaml# 176b938401SKrzysztof Kozlowski 186b938401SKrzysztof Kozlowskiproperties: 196b938401SKrzysztof Kozlowski compatible: 206b938401SKrzysztof Kozlowski const: qcom,sm8750-mdss 216b938401SKrzysztof Kozlowski 226b938401SKrzysztof Kozlowski clocks: 236b938401SKrzysztof Kozlowski items: 246b938401SKrzysztof Kozlowski - description: Display AHB 256b938401SKrzysztof Kozlowski - description: Display hf AXI 266b938401SKrzysztof Kozlowski - description: Display core 276b938401SKrzysztof Kozlowski 286b938401SKrzysztof Kozlowski iommus: 296b938401SKrzysztof Kozlowski maxItems: 1 306b938401SKrzysztof Kozlowski 316b938401SKrzysztof Kozlowski interconnects: 326b938401SKrzysztof Kozlowski items: 336b938401SKrzysztof Kozlowski - description: Interconnect path from mdp0 port to the data bus 346b938401SKrzysztof Kozlowski - description: Interconnect path from CPU to the reg bus 356b938401SKrzysztof Kozlowski 366b938401SKrzysztof Kozlowski interconnect-names: 376b938401SKrzysztof Kozlowski items: 386b938401SKrzysztof Kozlowski - const: mdp0-mem 396b938401SKrzysztof Kozlowski - const: cpu-cfg 406b938401SKrzysztof Kozlowski 416b938401SKrzysztof KozlowskipatternProperties: 426b938401SKrzysztof Kozlowski "^display-controller@[0-9a-f]+$": 436b938401SKrzysztof Kozlowski type: object 446b938401SKrzysztof Kozlowski additionalProperties: true 456b938401SKrzysztof Kozlowski properties: 466b938401SKrzysztof Kozlowski compatible: 476b938401SKrzysztof Kozlowski const: qcom,sm8750-dpu 486b938401SKrzysztof Kozlowski 496b938401SKrzysztof Kozlowski "^displayport-controller@[0-9a-f]+$": 506b938401SKrzysztof Kozlowski type: object 516b938401SKrzysztof Kozlowski additionalProperties: true 526b938401SKrzysztof Kozlowski properties: 536b938401SKrzysztof Kozlowski compatible: 546b938401SKrzysztof Kozlowski contains: 556b938401SKrzysztof Kozlowski const: qcom,sm8750-dp 566b938401SKrzysztof Kozlowski 576b938401SKrzysztof Kozlowski "^dsi@[0-9a-f]+$": 586b938401SKrzysztof Kozlowski type: object 596b938401SKrzysztof Kozlowski additionalProperties: true 606b938401SKrzysztof Kozlowski properties: 616b938401SKrzysztof Kozlowski compatible: 626b938401SKrzysztof Kozlowski contains: 636b938401SKrzysztof Kozlowski const: qcom,sm8750-dsi-ctrl 646b938401SKrzysztof Kozlowski 656b938401SKrzysztof Kozlowski "^phy@[0-9a-f]+$": 666b938401SKrzysztof Kozlowski type: object 676b938401SKrzysztof Kozlowski additionalProperties: true 686b938401SKrzysztof Kozlowski properties: 696b938401SKrzysztof Kozlowski compatible: 706b938401SKrzysztof Kozlowski const: qcom,sm8750-dsi-phy-3nm 716b938401SKrzysztof Kozlowski 726b938401SKrzysztof Kozlowskirequired: 736b938401SKrzysztof Kozlowski - compatible 746b938401SKrzysztof Kozlowski 756b938401SKrzysztof KozlowskiunevaluatedProperties: false 766b938401SKrzysztof Kozlowski 776b938401SKrzysztof Kozlowskiexamples: 786b938401SKrzysztof Kozlowski - | 796b938401SKrzysztof Kozlowski #include <dt-bindings/clock/qcom,rpmh.h> 806b938401SKrzysztof Kozlowski #include <dt-bindings/interconnect/qcom,icc.h> 816b938401SKrzysztof Kozlowski #include <dt-bindings/interconnect/qcom,sm8750-rpmh.h> 826b938401SKrzysztof Kozlowski #include <dt-bindings/interrupt-controller/arm-gic.h> 836b938401SKrzysztof Kozlowski #include <dt-bindings/phy/phy-qcom-qmp.h> 846b938401SKrzysztof Kozlowski #include <dt-bindings/power/qcom,rpmhpd.h> 856b938401SKrzysztof Kozlowski 866b938401SKrzysztof Kozlowski display-subsystem@ae00000 { 876b938401SKrzysztof Kozlowski compatible = "qcom,sm8750-mdss"; 886b938401SKrzysztof Kozlowski reg = <0x0ae00000 0x1000>; 896b938401SKrzysztof Kozlowski reg-names = "mdss"; 906b938401SKrzysztof Kozlowski 916b938401SKrzysztof Kozlowski interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 926b938401SKrzysztof Kozlowski 936b938401SKrzysztof Kozlowski clocks = <&disp_cc_mdss_ahb_clk>, 946b938401SKrzysztof Kozlowski <&gcc_disp_hf_axi_clk>, 956b938401SKrzysztof Kozlowski <&disp_cc_mdss_mdp_clk>; 966b938401SKrzysztof Kozlowski 976b938401SKrzysztof Kozlowski interconnects = <&mmss_noc MASTER_MDP QCOM_ICC_TAG_ALWAYS 986b938401SKrzysztof Kozlowski &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>, 996b938401SKrzysztof Kozlowski <&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ACTIVE_ONLY 1006b938401SKrzysztof Kozlowski &config_noc SLAVE_DISPLAY_CFG QCOM_ICC_TAG_ACTIVE_ONLY>; 1016b938401SKrzysztof Kozlowski interconnect-names = "mdp0-mem", 1026b938401SKrzysztof Kozlowski "cpu-cfg"; 1036b938401SKrzysztof Kozlowski 1046b938401SKrzysztof Kozlowski resets = <&disp_cc_mdss_core_bcr>; 1056b938401SKrzysztof Kozlowski 1066b938401SKrzysztof Kozlowski power-domains = <&mdss_gdsc>; 1076b938401SKrzysztof Kozlowski 1086b938401SKrzysztof Kozlowski iommus = <&apps_smmu 0x800 0x2>; 1096b938401SKrzysztof Kozlowski 1106b938401SKrzysztof Kozlowski interrupt-controller; 1116b938401SKrzysztof Kozlowski #interrupt-cells = <1>; 1126b938401SKrzysztof Kozlowski 1136b938401SKrzysztof Kozlowski #address-cells = <1>; 1146b938401SKrzysztof Kozlowski #size-cells = <1>; 1156b938401SKrzysztof Kozlowski ranges; 1166b938401SKrzysztof Kozlowski 1176b938401SKrzysztof Kozlowski display-controller@ae01000 { 1186b938401SKrzysztof Kozlowski compatible = "qcom,sm8750-dpu"; 1196b938401SKrzysztof Kozlowski reg = <0x0ae01000 0x93000>, 1206b938401SKrzysztof Kozlowski <0x0aeb0000 0x2008>; 1216b938401SKrzysztof Kozlowski reg-names = "mdp", 1226b938401SKrzysztof Kozlowski "vbif"; 1236b938401SKrzysztof Kozlowski 1246b938401SKrzysztof Kozlowski interrupts-extended = <&mdss 0>; 1256b938401SKrzysztof Kozlowski 1266b938401SKrzysztof Kozlowski clocks = <&gcc_disp_hf_axi_clk>, 1276b938401SKrzysztof Kozlowski <&disp_cc_mdss_ahb_clk>, 1286b938401SKrzysztof Kozlowski <&disp_cc_mdss_mdp_lut_clk>, 1296b938401SKrzysztof Kozlowski <&disp_cc_mdss_mdp_clk>, 1306b938401SKrzysztof Kozlowski <&disp_cc_mdss_vsync_clk>; 1316b938401SKrzysztof Kozlowski clock-names = "nrt_bus", 1326b938401SKrzysztof Kozlowski "iface", 1336b938401SKrzysztof Kozlowski "lut", 1346b938401SKrzysztof Kozlowski "core", 1356b938401SKrzysztof Kozlowski "vsync"; 1366b938401SKrzysztof Kozlowski 1376b938401SKrzysztof Kozlowski assigned-clocks = <&disp_cc_mdss_vsync_clk>; 1386b938401SKrzysztof Kozlowski assigned-clock-rates = <19200000>; 1396b938401SKrzysztof Kozlowski 1406b938401SKrzysztof Kozlowski operating-points-v2 = <&mdp_opp_table>; 1416b938401SKrzysztof Kozlowski 1426b938401SKrzysztof Kozlowski power-domains = <&rpmhpd RPMHPD_MMCX>; 1436b938401SKrzysztof Kozlowski 1446b938401SKrzysztof Kozlowski ports { 1456b938401SKrzysztof Kozlowski #address-cells = <1>; 1466b938401SKrzysztof Kozlowski #size-cells = <0>; 1476b938401SKrzysztof Kozlowski 1486b938401SKrzysztof Kozlowski port@0 { 1496b938401SKrzysztof Kozlowski reg = <0>; 1506b938401SKrzysztof Kozlowski 1516b938401SKrzysztof Kozlowski dpu_intf1_out: endpoint { 1526b938401SKrzysztof Kozlowski remote-endpoint = <&mdss_dsi0_in>; 1536b938401SKrzysztof Kozlowski }; 1546b938401SKrzysztof Kozlowski }; 1556b938401SKrzysztof Kozlowski 1566b938401SKrzysztof Kozlowski port@1 { 1576b938401SKrzysztof Kozlowski reg = <1>; 1586b938401SKrzysztof Kozlowski 1596b938401SKrzysztof Kozlowski dpu_intf2_out: endpoint { 1606b938401SKrzysztof Kozlowski remote-endpoint = <&mdss_dsi1_in>; 1616b938401SKrzysztof Kozlowski }; 1626b938401SKrzysztof Kozlowski }; 1636b938401SKrzysztof Kozlowski 1646b938401SKrzysztof Kozlowski port@2 { 1656b938401SKrzysztof Kozlowski reg = <2>; 1666b938401SKrzysztof Kozlowski 1676b938401SKrzysztof Kozlowski dpu_intf0_out: endpoint { 1686b938401SKrzysztof Kozlowski remote-endpoint = <&mdss_dp0_in>; 1696b938401SKrzysztof Kozlowski }; 1706b938401SKrzysztof Kozlowski }; 1716b938401SKrzysztof Kozlowski }; 1726b938401SKrzysztof Kozlowski 1736b938401SKrzysztof Kozlowski mdp_opp_table: opp-table { 1746b938401SKrzysztof Kozlowski compatible = "operating-points-v2"; 1756b938401SKrzysztof Kozlowski 1766b938401SKrzysztof Kozlowski opp-207000000 { 1776b938401SKrzysztof Kozlowski opp-hz = /bits/ 64 <207000000>; 1786b938401SKrzysztof Kozlowski required-opps = <&rpmhpd_opp_low_svs>; 1796b938401SKrzysztof Kozlowski }; 1806b938401SKrzysztof Kozlowski 1816b938401SKrzysztof Kozlowski opp-337000000 { 1826b938401SKrzysztof Kozlowski opp-hz = /bits/ 64 <337000000>; 1836b938401SKrzysztof Kozlowski required-opps = <&rpmhpd_opp_svs>; 1846b938401SKrzysztof Kozlowski }; 1856b938401SKrzysztof Kozlowski 1866b938401SKrzysztof Kozlowski opp-417000000 { 1876b938401SKrzysztof Kozlowski opp-hz = /bits/ 64 <417000000>; 1886b938401SKrzysztof Kozlowski required-opps = <&rpmhpd_opp_svs_l1>; 1896b938401SKrzysztof Kozlowski }; 1906b938401SKrzysztof Kozlowski 1916b938401SKrzysztof Kozlowski opp-532000000 { 1926b938401SKrzysztof Kozlowski opp-hz = /bits/ 64 <532000000>; 1936b938401SKrzysztof Kozlowski required-opps = <&rpmhpd_opp_nom>; 1946b938401SKrzysztof Kozlowski }; 1956b938401SKrzysztof Kozlowski 1966b938401SKrzysztof Kozlowski opp-575000000 { 1976b938401SKrzysztof Kozlowski opp-hz = /bits/ 64 <575000000>; 1986b938401SKrzysztof Kozlowski required-opps = <&rpmhpd_opp_nom_l1>; 1996b938401SKrzysztof Kozlowski }; 2006b938401SKrzysztof Kozlowski }; 2016b938401SKrzysztof Kozlowski }; 2026b938401SKrzysztof Kozlowski 2036b938401SKrzysztof Kozlowski dsi@ae94000 { 2046b938401SKrzysztof Kozlowski compatible = "qcom,sm8750-dsi-ctrl", "qcom,mdss-dsi-ctrl"; 2056b938401SKrzysztof Kozlowski reg = <0x0ae94000 0x400>; 2066b938401SKrzysztof Kozlowski reg-names = "dsi_ctrl"; 2076b938401SKrzysztof Kozlowski 2086b938401SKrzysztof Kozlowski interrupts-extended = <&mdss 4>; 2096b938401SKrzysztof Kozlowski 2106b938401SKrzysztof Kozlowski clocks = <&disp_cc_mdss_byte0_clk>, 2116b938401SKrzysztof Kozlowski <&disp_cc_mdss_byte0_intf_clk>, 2126b938401SKrzysztof Kozlowski <&disp_cc_mdss_pclk0_clk>, 2136b938401SKrzysztof Kozlowski <&disp_cc_mdss_esc0_clk>, 2146b938401SKrzysztof Kozlowski <&disp_cc_mdss_ahb_clk>, 2156b938401SKrzysztof Kozlowski <&gcc_disp_hf_axi_clk>, 2166b938401SKrzysztof Kozlowski <&mdss_dsi0_phy 1>, 2176b938401SKrzysztof Kozlowski <&mdss_dsi0_phy 0>, 2186b938401SKrzysztof Kozlowski <&disp_cc_esync0_clk>, 2196b938401SKrzysztof Kozlowski <&disp_cc_osc_clk>, 2206b938401SKrzysztof Kozlowski <&disp_cc_mdss_byte0_clk_src>, 2216b938401SKrzysztof Kozlowski <&disp_cc_mdss_pclk0_clk_src>; 2226b938401SKrzysztof Kozlowski clock-names = "byte", 2236b938401SKrzysztof Kozlowski "byte_intf", 2246b938401SKrzysztof Kozlowski "pixel", 2256b938401SKrzysztof Kozlowski "core", 2266b938401SKrzysztof Kozlowski "iface", 2276b938401SKrzysztof Kozlowski "bus", 2286b938401SKrzysztof Kozlowski "dsi_pll_pixel", 2296b938401SKrzysztof Kozlowski "dsi_pll_byte", 2306b938401SKrzysztof Kozlowski "esync", 2316b938401SKrzysztof Kozlowski "osc", 2326b938401SKrzysztof Kozlowski "byte_src", 2336b938401SKrzysztof Kozlowski "pixel_src"; 2346b938401SKrzysztof Kozlowski 2356b938401SKrzysztof Kozlowski operating-points-v2 = <&mdss_dsi_opp_table>; 2366b938401SKrzysztof Kozlowski 2376b938401SKrzysztof Kozlowski power-domains = <&rpmhpd RPMHPD_MMCX>; 2386b938401SKrzysztof Kozlowski 2396b938401SKrzysztof Kozlowski phys = <&mdss_dsi0_phy>; 2406b938401SKrzysztof Kozlowski phy-names = "dsi"; 2416b938401SKrzysztof Kozlowski 2426b938401SKrzysztof Kozlowski vdda-supply = <&vreg_l3g_1p2>; 2436b938401SKrzysztof Kozlowski 2446b938401SKrzysztof Kozlowski #address-cells = <1>; 2456b938401SKrzysztof Kozlowski #size-cells = <0>; 2466b938401SKrzysztof Kozlowski 2476b938401SKrzysztof Kozlowski ports { 2486b938401SKrzysztof Kozlowski #address-cells = <1>; 2496b938401SKrzysztof Kozlowski #size-cells = <0>; 2506b938401SKrzysztof Kozlowski 2516b938401SKrzysztof Kozlowski port@0 { 2526b938401SKrzysztof Kozlowski reg = <0>; 2536b938401SKrzysztof Kozlowski 2546b938401SKrzysztof Kozlowski mdss_dsi0_in: endpoint { 2556b938401SKrzysztof Kozlowski remote-endpoint = <&dpu_intf1_out>; 2566b938401SKrzysztof Kozlowski }; 2576b938401SKrzysztof Kozlowski }; 2586b938401SKrzysztof Kozlowski 2596b938401SKrzysztof Kozlowski port@1 { 2606b938401SKrzysztof Kozlowski reg = <1>; 2616b938401SKrzysztof Kozlowski 2626b938401SKrzysztof Kozlowski mdss_dsi0_out: endpoint { 2636b938401SKrzysztof Kozlowski remote-endpoint = <&panel0_in>; 2646b938401SKrzysztof Kozlowski data-lanes = <0 1 2 3>; 2656b938401SKrzysztof Kozlowski }; 2666b938401SKrzysztof Kozlowski }; 2676b938401SKrzysztof Kozlowski }; 2686b938401SKrzysztof Kozlowski 2696b938401SKrzysztof Kozlowski mdss_dsi_opp_table: opp-table { 2706b938401SKrzysztof Kozlowski compatible = "operating-points-v2"; 2716b938401SKrzysztof Kozlowski 2726b938401SKrzysztof Kozlowski opp-187500000 { 2736b938401SKrzysztof Kozlowski opp-hz = /bits/ 64 <187500000>; 2746b938401SKrzysztof Kozlowski required-opps = <&rpmhpd_opp_low_svs>; 2756b938401SKrzysztof Kozlowski }; 2766b938401SKrzysztof Kozlowski 2776b938401SKrzysztof Kozlowski opp-300000000 { 2786b938401SKrzysztof Kozlowski opp-hz = /bits/ 64 <300000000>; 2796b938401SKrzysztof Kozlowski required-opps = <&rpmhpd_opp_svs>; 2806b938401SKrzysztof Kozlowski }; 2816b938401SKrzysztof Kozlowski 2826b938401SKrzysztof Kozlowski opp-358000000 { 2836b938401SKrzysztof Kozlowski opp-hz = /bits/ 64 <358000000>; 2846b938401SKrzysztof Kozlowski required-opps = <&rpmhpd_opp_svs_l1>; 2856b938401SKrzysztof Kozlowski }; 2866b938401SKrzysztof Kozlowski }; 2876b938401SKrzysztof Kozlowski }; 2886b938401SKrzysztof Kozlowski 2896b938401SKrzysztof Kozlowski mdss_dsi0_phy: phy@ae95000 { 2906b938401SKrzysztof Kozlowski compatible = "qcom,sm8750-dsi-phy-3nm"; 2916b938401SKrzysztof Kozlowski reg = <0x0ae95000 0x200>, 2926b938401SKrzysztof Kozlowski <0x0ae95200 0x280>, 2936b938401SKrzysztof Kozlowski <0x0ae95500 0x400>; 2946b938401SKrzysztof Kozlowski reg-names = "dsi_phy", 2956b938401SKrzysztof Kozlowski "dsi_phy_lane", 2966b938401SKrzysztof Kozlowski "dsi_pll"; 2976b938401SKrzysztof Kozlowski 2986b938401SKrzysztof Kozlowski clocks = <&disp_cc_mdss_ahb_clk>, 2996b938401SKrzysztof Kozlowski <&rpmhcc RPMH_CXO_CLK>; 3006b938401SKrzysztof Kozlowski clock-names = "iface", 3016b938401SKrzysztof Kozlowski "ref"; 3026b938401SKrzysztof Kozlowski 3036b938401SKrzysztof Kozlowski vdds-supply = <&vreg_l3i_0p88>; 3046b938401SKrzysztof Kozlowski 3056b938401SKrzysztof Kozlowski #clock-cells = <1>; 3066b938401SKrzysztof Kozlowski #phy-cells = <0>; 3076b938401SKrzysztof Kozlowski }; 3086b938401SKrzysztof Kozlowski 3096b938401SKrzysztof Kozlowski dsi@ae96000 { 3106b938401SKrzysztof Kozlowski compatible = "qcom,sm8750-dsi-ctrl", "qcom,mdss-dsi-ctrl"; 3116b938401SKrzysztof Kozlowski reg = <0x0ae96000 0x400>; 3126b938401SKrzysztof Kozlowski reg-names = "dsi_ctrl"; 3136b938401SKrzysztof Kozlowski 3146b938401SKrzysztof Kozlowski interrupts-extended = <&mdss 5>; 3156b938401SKrzysztof Kozlowski 3166b938401SKrzysztof Kozlowski clocks = <&disp_cc_mdss_byte1_clk>, 3176b938401SKrzysztof Kozlowski <&disp_cc_mdss_byte1_intf_clk>, 3186b938401SKrzysztof Kozlowski <&disp_cc_mdss_pclk1_clk>, 3196b938401SKrzysztof Kozlowski <&disp_cc_mdss_esc1_clk>, 3206b938401SKrzysztof Kozlowski <&disp_cc_mdss_ahb_clk>, 3216b938401SKrzysztof Kozlowski <&gcc_disp_hf_axi_clk>, 3226b938401SKrzysztof Kozlowski <&mdss_dsi1_phy 1>, 3236b938401SKrzysztof Kozlowski <&mdss_dsi1_phy 0>, 3246b938401SKrzysztof Kozlowski <&disp_cc_esync1_clk>, 3256b938401SKrzysztof Kozlowski <&disp_cc_osc_clk>, 3266b938401SKrzysztof Kozlowski <&disp_cc_mdss_byte1_clk_src>, 3276b938401SKrzysztof Kozlowski <&disp_cc_mdss_pclk1_clk_src>; 3286b938401SKrzysztof Kozlowski clock-names = "byte", 3296b938401SKrzysztof Kozlowski "byte_intf", 3306b938401SKrzysztof Kozlowski "pixel", 3316b938401SKrzysztof Kozlowski "core", 3326b938401SKrzysztof Kozlowski "iface", 3336b938401SKrzysztof Kozlowski "bus", 3346b938401SKrzysztof Kozlowski "dsi_pll_pixel", 3356b938401SKrzysztof Kozlowski "dsi_pll_byte", 3366b938401SKrzysztof Kozlowski "esync", 3376b938401SKrzysztof Kozlowski "osc", 3386b938401SKrzysztof Kozlowski "byte_src", 3396b938401SKrzysztof Kozlowski "pixel_src"; 3406b938401SKrzysztof Kozlowski 3416b938401SKrzysztof Kozlowski operating-points-v2 = <&mdss_dsi_opp_table>; 3426b938401SKrzysztof Kozlowski 3436b938401SKrzysztof Kozlowski power-domains = <&rpmhpd RPMHPD_MMCX>; 3446b938401SKrzysztof Kozlowski 3456b938401SKrzysztof Kozlowski phys = <&mdss_dsi1_phy>; 3466b938401SKrzysztof Kozlowski phy-names = "dsi"; 3476b938401SKrzysztof Kozlowski 3486b938401SKrzysztof Kozlowski #address-cells = <1>; 3496b938401SKrzysztof Kozlowski #size-cells = <0>; 3506b938401SKrzysztof Kozlowski 3516b938401SKrzysztof Kozlowski ports { 3526b938401SKrzysztof Kozlowski #address-cells = <1>; 3536b938401SKrzysztof Kozlowski #size-cells = <0>; 3546b938401SKrzysztof Kozlowski 3556b938401SKrzysztof Kozlowski port@0 { 3566b938401SKrzysztof Kozlowski reg = <0>; 3576b938401SKrzysztof Kozlowski 3586b938401SKrzysztof Kozlowski mdss_dsi1_in: endpoint { 3596b938401SKrzysztof Kozlowski remote-endpoint = <&dpu_intf2_out>; 3606b938401SKrzysztof Kozlowski }; 3616b938401SKrzysztof Kozlowski }; 3626b938401SKrzysztof Kozlowski 3636b938401SKrzysztof Kozlowski port@1 { 3646b938401SKrzysztof Kozlowski reg = <1>; 3656b938401SKrzysztof Kozlowski 3666b938401SKrzysztof Kozlowski mdss_dsi1_out: endpoint { 3676b938401SKrzysztof Kozlowski }; 3686b938401SKrzysztof Kozlowski }; 3696b938401SKrzysztof Kozlowski }; 3706b938401SKrzysztof Kozlowski }; 3716b938401SKrzysztof Kozlowski 3726b938401SKrzysztof Kozlowski mdss_dsi1_phy: phy@ae97000 { 3736b938401SKrzysztof Kozlowski compatible = "qcom,sm8750-dsi-phy-3nm"; 3746b938401SKrzysztof Kozlowski reg = <0x0ae97000 0x200>, 3756b938401SKrzysztof Kozlowski <0x0ae97200 0x280>, 3766b938401SKrzysztof Kozlowski <0x0ae97500 0x400>; 3776b938401SKrzysztof Kozlowski reg-names = "dsi_phy", 3786b938401SKrzysztof Kozlowski "dsi_phy_lane", 3796b938401SKrzysztof Kozlowski "dsi_pll"; 3806b938401SKrzysztof Kozlowski 3816b938401SKrzysztof Kozlowski clocks = <&disp_cc_mdss_ahb_clk>, 3826b938401SKrzysztof Kozlowski <&rpmhcc RPMH_CXO_CLK>; 3836b938401SKrzysztof Kozlowski clock-names = "iface", 3846b938401SKrzysztof Kozlowski "ref"; 3856b938401SKrzysztof Kozlowski 3866b938401SKrzysztof Kozlowski #clock-cells = <1>; 3876b938401SKrzysztof Kozlowski #phy-cells = <0>; 3886b938401SKrzysztof Kozlowski }; 3896b938401SKrzysztof Kozlowski 3906b938401SKrzysztof Kozlowski displayport-controller@af54000 { 3916b938401SKrzysztof Kozlowski compatible = "qcom,sm8750-dp", "qcom,sm8650-dp"; 3926b938401SKrzysztof Kozlowski reg = <0xaf54000 0x104>, 3936b938401SKrzysztof Kozlowski <0xaf54200 0xc0>, 3946b938401SKrzysztof Kozlowski <0xaf55000 0x770>, 3956b938401SKrzysztof Kozlowski <0xaf56000 0x9c>, 3966b938401SKrzysztof Kozlowski <0xaf57000 0x9c>; 3976b938401SKrzysztof Kozlowski 3986b938401SKrzysztof Kozlowski interrupts-extended = <&mdss 12>; 3996b938401SKrzysztof Kozlowski 4006b938401SKrzysztof Kozlowski clocks = <&disp_cc_mdss_ahb_clk>, 4016b938401SKrzysztof Kozlowski <&disp_cc_mdss_dptx0_aux_clk>, 4026b938401SKrzysztof Kozlowski <&disp_cc_mdss_dptx0_link_clk>, 4036b938401SKrzysztof Kozlowski <&disp_cc_mdss_dptx0_link_intf_clk>, 4049be5c479SAbhinav Kumar <&disp_cc_mdss_dptx0_pixel0_clk>, 4059be5c479SAbhinav Kumar <&disp_cc_mdss_dptx0_pixel1_clk>; 4066b938401SKrzysztof Kozlowski clock-names = "core_iface", 4076b938401SKrzysztof Kozlowski "core_aux", 4086b938401SKrzysztof Kozlowski "ctrl_link", 4096b938401SKrzysztof Kozlowski "ctrl_link_iface", 4109be5c479SAbhinav Kumar "stream_pixel", 4119be5c479SAbhinav Kumar "stream_1_pixel"; 4126b938401SKrzysztof Kozlowski 4136b938401SKrzysztof Kozlowski assigned-clocks = <&disp_cc_mdss_dptx0_link_clk_src>, 4149be5c479SAbhinav Kumar <&disp_cc_mdss_dptx0_pixel0_clk_src>, 4159be5c479SAbhinav Kumar <&disp_cc_mdss_dptx0_pixel1_clk_src>; 4166b938401SKrzysztof Kozlowski assigned-clock-parents = <&usb_dp_qmpphy QMP_USB43DP_DP_LINK_CLK>, 4179be5c479SAbhinav Kumar <&usb_dp_qmpphy QMP_USB43DP_DP_VCO_DIV_CLK>, 4186b938401SKrzysztof Kozlowski <&usb_dp_qmpphy QMP_USB43DP_DP_VCO_DIV_CLK>; 4196b938401SKrzysztof Kozlowski 4206b938401SKrzysztof Kozlowski operating-points-v2 = <&dp_opp_table>; 4216b938401SKrzysztof Kozlowski 4226b938401SKrzysztof Kozlowski power-domains = <&rpmhpd RPMHPD_MMCX>; 4236b938401SKrzysztof Kozlowski 4246b938401SKrzysztof Kozlowski phys = <&usb_dp_qmpphy QMP_USB43DP_DP_PHY>; 4256b938401SKrzysztof Kozlowski phy-names = "dp"; 4266b938401SKrzysztof Kozlowski 4276b938401SKrzysztof Kozlowski #sound-dai-cells = <0>; 4286b938401SKrzysztof Kozlowski 4296b938401SKrzysztof Kozlowski dp_opp_table: opp-table { 4306b938401SKrzysztof Kozlowski compatible = "operating-points-v2"; 4316b938401SKrzysztof Kozlowski 4326b938401SKrzysztof Kozlowski opp-192000000 { 4336b938401SKrzysztof Kozlowski opp-hz = /bits/ 64 <192000000>; 4346b938401SKrzysztof Kozlowski required-opps = <&rpmhpd_opp_low_svs_d1>; 4356b938401SKrzysztof Kozlowski }; 4366b938401SKrzysztof Kozlowski 4376b938401SKrzysztof Kozlowski opp-270000000 { 4386b938401SKrzysztof Kozlowski opp-hz = /bits/ 64 <270000000>; 4396b938401SKrzysztof Kozlowski required-opps = <&rpmhpd_opp_low_svs>; 4406b938401SKrzysztof Kozlowski }; 4416b938401SKrzysztof Kozlowski 4426b938401SKrzysztof Kozlowski opp-540000000 { 4436b938401SKrzysztof Kozlowski opp-hz = /bits/ 64 <540000000>; 4446b938401SKrzysztof Kozlowski required-opps = <&rpmhpd_opp_svs_l1>; 4456b938401SKrzysztof Kozlowski }; 4466b938401SKrzysztof Kozlowski 4476b938401SKrzysztof Kozlowski opp-810000000 { 4486b938401SKrzysztof Kozlowski opp-hz = /bits/ 64 <810000000>; 4496b938401SKrzysztof Kozlowski required-opps = <&rpmhpd_opp_nom>; 4506b938401SKrzysztof Kozlowski }; 4516b938401SKrzysztof Kozlowski }; 4526b938401SKrzysztof Kozlowski 4536b938401SKrzysztof Kozlowski ports { 4546b938401SKrzysztof Kozlowski #address-cells = <1>; 4556b938401SKrzysztof Kozlowski #size-cells = <0>; 4566b938401SKrzysztof Kozlowski 4576b938401SKrzysztof Kozlowski port@0 { 4586b938401SKrzysztof Kozlowski reg = <0>; 4596b938401SKrzysztof Kozlowski 4606b938401SKrzysztof Kozlowski mdss_dp0_in: endpoint { 4616b938401SKrzysztof Kozlowski remote-endpoint = <&dpu_intf0_out>; 4626b938401SKrzysztof Kozlowski }; 4636b938401SKrzysztof Kozlowski }; 4646b938401SKrzysztof Kozlowski 4656b938401SKrzysztof Kozlowski port@1 { 4666b938401SKrzysztof Kozlowski reg = <1>; 4676b938401SKrzysztof Kozlowski 4686b938401SKrzysztof Kozlowski mdss_dp0_out: endpoint { 4696b938401SKrzysztof Kozlowski remote-endpoint = <&usb_dp_qmpphy_dp_in>; 4706b938401SKrzysztof Kozlowski }; 4716b938401SKrzysztof Kozlowski }; 4726b938401SKrzysztof Kozlowski }; 4736b938401SKrzysztof Kozlowski }; 4746b938401SKrzysztof Kozlowski }; 475