From nobody Mon Feb 9 18:17:48 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E013D35CBAF for ; Thu, 15 Jan 2026 09:28:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768469324; cv=none; b=VEXS+xPihgRrpYXJE25Ic3W/QF7LTy8ImFunOBU5xkDkAzgJFW5/z62lVVaApiTjYZ+DKG64UZdOgCtoY+JlCwp1c4py/rNDZfhq788p2g+NLbJf3L8dDJPvYF4hwGuZ0scZOkyy0dQyiMYhpvlbtCQjM6WhBGwpc/n6nPixjCQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768469324; c=relaxed/simple; bh=tNQoNBsoM8uyRsc2L0d2J2aq5cF2cTHJYVdz78ZDCEs=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=Jel+y2KUm1Yfla9t+3Pq73dGes3e3j5b5c3ySG9MVaLA8OLgm9/hnbxLVDGxjwP3jM8dsY1GpXTB3ngIhRR8i0vyBeTmDM/IcATCWih3iEOYAksFkkA+8cPNR9dkYpFdA8vyIGoX5juiTL3fUa//h+g/WHH+Usvc5nvknUbVrGY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=E8n206Dt; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=jTPVX16V; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="E8n206Dt"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="jTPVX16V" Received: from pps.filterd (m0279872.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 60F6g4bP783533 for ; Thu, 15 Jan 2026 09:28:41 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=qcppdkim1; bh=uHFif/BS3PW PBJexCizq7O/EFeVP1u2QBncpGrCNcSI=; b=E8n206DtJZisfHXswSRdf7rq2wd xEJOTVjJh+0P971gTllR09ksReu4CfykgWZI9TXAGSG/mk97wIfEuDFWSagWdG2x neQf7l9x3ZGq99xn5IUQTKc0mKKv9wDZwPDtlysBgNWIR76uZy2ev5UzZw9NeEhQ 5hIbyM1ircA35kE1pHG/JGqmPEhSKo+VcaVkFDx8v1IglVbs7BiphUvSSkzKXF9a DcAvOW8KZKOdBGdDECIZ2E5mrdQHST0bB0yRnSz8eOP9vnef1fKXfz1oPDMfM8SJ S3b+ORTOiK0QmiBES8t4xcQV77w4WLFdkUHnk86Sv/ssBUOr3Kf+hy6RJgA== Received: from mail-qt1-f199.google.com (mail-qt1-f199.google.com [209.85.160.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4bpbj5kbr9-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 15 Jan 2026 09:28:41 +0000 (GMT) Received: by mail-qt1-f199.google.com with SMTP id d75a77b69052e-50146a67232so21648761cf.2 for ; Thu, 15 Jan 2026 01:28:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1768469321; x=1769074121; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=uHFif/BS3PWPBJexCizq7O/EFeVP1u2QBncpGrCNcSI=; b=jTPVX16VY7OPT6YbjPx6RRNsHdYrG5BEsRtrOILVjPQFwuNp2iUYOpJFKYu4EU47Fg v1W3oz9H/MCkJbCesDJuLhvlU74lWAp8qlxC9yYmWizxA2Fdi/1FpAShojZ6LXbL1aJw UsoxMIfibeKlCzhlcSNkO2TkLTxrKYWlH6SfqTZVbKFQmqPzDa/SAfS8HNrxuYTUxNOm FQyNnMQaxnODm1g6cpAEyA/GNGV6R9U+7XsIwCX2wik66p6lF9/JQmLgeG8K9x+sDuCh c5rlcOzkbHi8ouzcuyjStmZkcne9d42CKrOFCZIOSCPtiTzbochNT8mKqAkPJXRSadza UWCQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768469321; x=1769074121; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=uHFif/BS3PWPBJexCizq7O/EFeVP1u2QBncpGrCNcSI=; b=dxxaiF6vF1BZ3OZbMB67vFgVIhvs0kQTvqmNRuP1LvkevjGcWcAHnF0c8JXUEaSrzw rgeWvra7LP3kHXkj5JN76thHEfFppLUtZQKPx/Vtc/xD82vp6Ylbvozc0oljWMoOnsiN rnyHuo/iWJ2bUuX1TLe8lMCBkX51Dco+TBbhuyuPDbHdkMvn6sRNtymWmmSVe4se4kKy mQLlD0dd8S/9LTYcMQ0vsopA2aEUIpQaSugIjiWYETFk5JwJNrDm9Je4ksUoE341z4qa p4+Lh4w8Mp+Unhn8km4F3wruIbbjwVb+NrztLoDJaEQG2sCAIrYPcCDruttOXRbu5kJR k9Xw== X-Forwarded-Encrypted: i=1; AJvYcCVT8t0X7Nw+XIDxYSIEeC3Y7bXnEamN4Eih0c8K9B6nZaOgQj0iaJLmlBFe7Gy/HPVwkDiO4shXCBs257Q=@vger.kernel.org X-Gm-Message-State: AOJu0YzP0iYgxHyZzu2pkcb4kggdQoJpgiN0BOrBAmz/FuMMnoLI1CBL pcSx1XAk11IqkWCZ38yfwDqUMEfJmeuA0lSVLcxxgvhku2QR5bALIlW9wDwGNdWGc778NHiDzWU rzwF7jD9w1c2abeJxsgzO6AI2UJuFjV7DtI0wQ8hbupJjepPILI75czE9Jpbm5TmO4Uw= X-Gm-Gg: AY/fxX4BXP3X4sTjy2oda59vvMeZAxVK5V5IW5f1V4bCMCGYTCPnhLhJSvLZ9MzQtRe 6l/Bvgo7iji7qS7V8E8asLgKcsaD1qaG828CV5/a9PJBcQnBdu/4lmAXoqwnuLXRGzc69TPRNgy KUTUJHx+1mwOC3K5qF7uXIXEJ7AdupskGfs64Q7QhnsVLMdVNY9iP3hRfDEj6iYoj2F2EIj5YB3 GZQHyDtoi6nc2GC1YsRDDJRbzZJ3f7tZb7gouvA6+VdhgantSM5WEWbcvPPwe28S3oQGFC7wtMn ODx6f1en5TDCh1fmqLisXBl/IeMHWmhUoyys5gwT7wG/GeFiv2GrMSvM/AluZLbjUU2e2CzAqo0 pcww0VELgPr+9hA/hKf508Mhc7Wx/8AchcFNlL8dILw6hVUKRY5GcNekUHDjuEAIouO8= X-Received: by 2002:ad4:5c48:0:b0:889:d7f3:3a5f with SMTP id 6a1803df08f44-89275ae050cmr63618166d6.6.1768469320859; Thu, 15 Jan 2026 01:28:40 -0800 (PST) X-Received: by 2002:ad4:5c48:0:b0:889:d7f3:3a5f with SMTP id 6a1803df08f44-89275ae050cmr63617826d6.6.1768469320399; Thu, 15 Jan 2026 01:28:40 -0800 (PST) Received: from yuanjiey.qualcomm.com (Global_NAT1_IAD_FW.qualcomm.com. [129.46.232.65]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-892668a2419sm64388416d6.30.2026.01.15.01.28.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 Jan 2026 01:28:40 -0800 (PST) From: yuanjie yang To: robin.clark@oss.qualcomm.com, lumag@kernel.org, jesszhan0024@gmail.com, sean@poorly.run, marijn.suijten@somainline.org, airlied@gmail.com, simona@ffwll.ch, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, neil.armstrong@linaro.org, konrad.dybcio@oss.qualcomm.com Cc: linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, tingwei.zhang@oss.qualcomm.com, aiqun.yu@oss.qualcomm.com, yongxing.mou@oss.qualcomm.com, Krzysztof Kozlowski Subject: [PATCH v6 04/12] dt-bindings: display/msm: qcom,kaanapali-mdss: Add Kaanapali Date: Thu, 15 Jan 2026 17:27:41 +0800 Message-Id: <20260115092749.533-5-yuanjie.yang@oss.qualcomm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260115092749.533-1-yuanjie.yang@oss.qualcomm.com> References: <20260115092749.533-1-yuanjie.yang@oss.qualcomm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTE1MDA2NSBTYWx0ZWRfX08fY9oQNl73z ln6WpKvi8M2mP1XTzhw+5T1+PXGNUXsjff2KITyCEY0d9H2xzuU8YSh65IXzoHOLvfjRXeluEB5 VTraqurodw+t7IFHGPzwhn0etPR4J01/9Qvlw4qAYjse8azy6XuHpKk3fj96JDrVtS7P10cYEEv ELGJxRLY8I+gRY1g90bEqA3xyCeW1c+s3KCuvyqoRpPZWIcbJwpcggVRLW50Ne+wB+Ejy+aYXrh GRpF71q7pszallmspVndCV+8bthldqj0Nm3bftadf5mlzEmTwoBP2ki/zcJNq9r9v7+j57YVIYU gDdbz/LSOjQwMBR89kGVUIpCKya1LvzclDGsvjYg+Jr6FRoaEMT/mfaj19YPWs7o2H+iD2d+IO9 79kGOsX1gIN8xga3nrT19f4My1IYvcacRdb5ozz8RcuQ+XgAHGPxjFOcgrNG9M3AnpjBWmTQ1Pl Y47GfPErEBmo8EedciQ== X-Proofpoint-ORIG-GUID: GKq_3usmK4nV19qIvBi0FTcEIQA8VTo- X-Proofpoint-GUID: GKq_3usmK4nV19qIvBi0FTcEIQA8VTo- X-Authority-Analysis: v=2.4 cv=aapsXBot c=1 sm=1 tr=0 ts=6968b349 cx=c_pps a=WeENfcodrlLV9YRTxbY/uA==:117 a=C3Dk8TwHQYyIj7nOf9RCJw==:17 a=vUbySO9Y5rIA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=gEfo2CItAAAA:8 a=EUspDBNiAAAA:8 a=ttgK4pBlxCW4zpXUERAA:9 a=kacYvNCVWA4VmyqE58fU:22 a=sptkURWiP4Gy88Gu7hUp:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2026-01-15_02,2026-01-14_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 malwarescore=0 clxscore=1015 priorityscore=1501 lowpriorityscore=0 impostorscore=0 bulkscore=0 phishscore=0 adultscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2601150065 Content-Type: text/plain; charset="utf-8" From: Yuanjie Yang Kaanapali introduces DPU 13.0.0 and DSI 2.10. Compared to SM8750, Kaanapali has significant register changes, making it incompatible with SM8750. So add MDSS/MDP display subsystem for Qualcomm Kaanapali. Co-developed-by: Yongxing Mou Signed-off-by: Yongxing Mou Reviewed-by: Krzysztof Kozlowski Signed-off-by: Yuanjie Yang --- .../display/msm/qcom,kaanapali-mdss.yaml | 297 ++++++++++++++++++ 1 file changed, 297 insertions(+) create mode 100644 Documentation/devicetree/bindings/display/msm/qcom,kaan= apali-mdss.yaml diff --git a/Documentation/devicetree/bindings/display/msm/qcom,kaanapali-m= dss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,kaanapali-mds= s.yaml new file mode 100644 index 000000000000..9f935defd6b1 --- /dev/null +++ b/Documentation/devicetree/bindings/display/msm/qcom,kaanapali-mdss.yaml @@ -0,0 +1,297 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/msm/qcom,kaanapali-mdss.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm Kaanapali Display MDSS + +maintainers: + - Yongxing Mou + - Yuanjie Yang + +description: + Kaanapali MSM Mobile Display Subsystem(MDSS), which encapsulates sub-blo= cks + like DPU display controller, DSI and DP interfaces etc. + +$ref: /schemas/display/msm/mdss-common.yaml# + +properties: + compatible: + const: qcom,kaanapali-mdss + + clocks: + items: + - description: Display AHB + - description: Display hf AXI + - description: Display core + - description: Display AHB SWI + + iommus: + maxItems: 1 + + interconnects: + items: + - description: Interconnect path from mdp0 port to the data bus + - description: Interconnect path from CPU to the reg bus + + interconnect-names: + items: + - const: mdp0-mem + - const: cpu-cfg + +patternProperties: + "^display-controller@[0-9a-f]+$": + type: object + additionalProperties: true + properties: + compatible: + const: qcom,kaanapali-dpu + + "^dsi@[0-9a-f]+$": + type: object + additionalProperties: true + properties: + compatible: + contains: + const: qcom,kaanapali-dsi-ctrl + + "^phy@[0-9a-f]+$": + type: object + additionalProperties: true + properties: + compatible: + const: qcom,kaanapali-dsi-phy-3nm + +required: + - compatible + +unevaluatedProperties: false + +examples: + - | + #include + #include + #include + #include + #include + + display-subsystem@9800000 { + compatible =3D "qcom,kaanapali-mdss"; + reg =3D <0x09800000 0x1000>; + reg-names =3D "mdss"; + + interrupts =3D ; + + clocks =3D <&disp_cc_mdss_ahb_clk>, + <&gcc_disp_hf_axi_clk>, + <&disp_cc_mdss_mdp_clk>, + <&disp_cc_mdss_ahb_swi_clk>; + resets =3D <&disp_cc_mdss_core_bcr>; + + power-domains =3D <&mdss_gdsc>; + + iommus =3D <&apps_smmu 0x800 0x2>; + + interrupt-controller; + #interrupt-cells =3D <1>; + + #address-cells =3D <1>; + #size-cells =3D <1>; + ranges; + + display-controller@9801000 { + compatible =3D "qcom,kaanapali-dpu"; + reg =3D <0x09801000 0x1c8000>, + <0x09b16000 0x3000>; + reg-names =3D "mdp", + "vbif"; + + interrupts-extended =3D <&mdss 0>; + + clocks =3D <&gcc_disp_hf_axi_clk>, + <&disp_cc_mdss_ahb_clk>, + <&disp_cc_mdss_mdp_lut_clk>, + <&disp_cc_mdss_mdp_clk>, + <&disp_cc_mdss_vsync_clk>; + clock-names =3D "nrt_bus", + "iface", + "lut", + "core", + "vsync"; + + assigned-clocks =3D <&disp_cc_mdss_vsync_clk>; + assigned-clock-rates =3D <19200000>; + + operating-points-v2 =3D <&mdp_opp_table>; + + power-domains =3D <&rpmhpd RPMHPD_MMCX>; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@0 { + reg =3D <0>; + + dpu_intf1_out: endpoint { + remote-endpoint =3D <&mdss_dsi0_in>; + }; + }; + + port@1 { + reg =3D <1>; + + dpu_intf2_out: endpoint { + remote-endpoint =3D <&mdss_dsi1_in>; + }; + }; + }; + + mdp_opp_table: opp-table { + compatible =3D "operating-points-v2"; + + opp-156000000 { + opp-hz =3D /bits/ 64 <156000000>; + required-opps =3D <&rpmhpd_opp_low_svs_d1>; + }; + + opp-207000000 { + opp-hz =3D /bits/ 64 <207000000>; + required-opps =3D <&rpmhpd_opp_low_svs>; + }; + + opp-337000000 { + opp-hz =3D /bits/ 64 <337000000>; + required-opps =3D <&rpmhpd_opp_svs>; + }; + + opp-417000000 { + opp-hz =3D /bits/ 64 <417000000>; + required-opps =3D <&rpmhpd_opp_svs_l1>; + }; + + opp-532000000 { + opp-hz =3D /bits/ 64 <532000000>; + required-opps =3D <&rpmhpd_opp_nom>; + }; + + opp-600000000 { + opp-hz =3D /bits/ 64 <600000000>; + required-opps =3D <&rpmhpd_opp_nom_l1>; + }; + + opp-650000000 { + opp-hz =3D /bits/ 64 <650000000>; + required-opps =3D <&rpmhpd_opp_turbo>; + }; + }; + }; + + dsi@9ac0000 { + compatible =3D "qcom,kaanapali-dsi-ctrl", "qcom,mdss-dsi-ctrl"; + reg =3D <0x09ac0000 0x1000>; + reg-names =3D "dsi_ctrl"; + + interrupts-extended =3D <&mdss 4>; + + clocks =3D <&disp_cc_mdss_byte0_clk>, + <&disp_cc_mdss_byte0_intf_clk>, + <&disp_cc_mdss_pclk0_clk>, + <&disp_cc_mdss_esc0_clk>, + <&disp_cc_mdss_ahb_clk>, + <&gcc_disp_hf_axi_clk>, + <&mdss_dsi0_phy 1>, + <&mdss_dsi0_phy 0>, + <&disp_cc_esync0_clk>, + <&disp_cc_osc_clk>, + <&disp_cc_mdss_byte0_clk_src>, + <&disp_cc_mdss_pclk0_clk_src>; + clock-names =3D "byte", + "byte_intf", + "pixel", + "core", + "iface", + "bus", + "dsi_pll_pixel", + "dsi_pll_byte", + "esync", + "osc", + "byte_src", + "pixel_src"; + + operating-points-v2 =3D <&mdss_dsi_opp_table>; + + power-domains =3D <&rpmhpd RPMHPD_MMCX>; + + phys =3D <&mdss_dsi0_phy>; + phy-names =3D "dsi"; + + #address-cells =3D <1>; + #size-cells =3D <0>; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@0 { + reg =3D <0>; + + mdss_dsi0_in: endpoint { + remote-endpoint =3D <&dpu_intf1_out>; + }; + }; + + port@1 { + reg =3D <1>; + + mdss_dsi0_out: endpoint { + remote-endpoint =3D <&panel0_in>; + data-lanes =3D <0 1 2 3>; + }; + }; + }; + + mdss_dsi_opp_table: opp-table { + compatible =3D "operating-points-v2"; + + opp-187500000 { + opp-hz =3D /bits/ 64 <187500000>; + required-opps =3D <&rpmhpd_opp_low_svs_d1>; + }; + + opp-250000000 { + opp-hz =3D /bits/ 64 <250000000>; + required-opps =3D <&rpmhpd_opp_low_svs>; + }; + + opp-312500000 { + opp-hz =3D /bits/ 64 <312500000>; + required-opps =3D <&rpmhpd_opp_svs>; + }; + + opp-358000000 { + opp-hz =3D /bits/ 64 <358000000>; + required-opps =3D <&rpmhpd_opp_svs_l1>; + }; + }; + }; + + mdss_dsi0_phy: phy@9ac1000 { + compatible =3D "qcom,kaanapali-dsi-phy-3nm"; + reg =3D <0x09ac1000 0x1cc>, + <0x09ac1200 0x80>, + <0x09ac1500 0x400>; + reg-names =3D "dsi_phy", + "dsi_phy_lane", + "dsi_pll"; + + clocks =3D <&disp_cc_mdss_ahb_clk>, + <&rpmhcc RPMH_CXO_CLK>; + clock-names =3D "iface", + "ref"; + + #clock-cells =3D <1>; + #phy-cells =3D <0>; + }; + }; --=20 2.34.1