From nobody Mon Jun 8 06:36:57 2026 Received: from mail-m49219.qiye.163.com (mail-m49219.qiye.163.com [45.254.49.219]) (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 B170F1A0BD0; Mon, 1 Jun 2026 06:56:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=45.254.49.219 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780296981; cv=none; b=iOfJZd6I7jaLAuOx85TTZz8MKIrlCiofYfVp1HImhp4sdzEeqAeWFUczUvesJdnhmzuZR5PGSo5gyVGQUldLcpXJ2vzUQOX9KGH3SN0OHtFjpyeE/mhoYIK3uST64QMDXts8Tx8S1SzFKFzsISkWhrnkA8CRVrjI/6m321ugj+o= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780296981; c=relaxed/simple; bh=yntiNHkuywyx2b9C6p8W5/vqocfDIG+OonI/dNtwDqo=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=JnUcgdDEY2koghEbMUQ6bXnb/it8ftJ7xuWsXK+jt9xhmpNm3L1FMpjTjljkiM2hnsSk77d3ab5KM1oIDSh7/wqAHCA1MC0ojPx4l92pVsZo6hZ1xqZu3YQ+3om3cqU8pEfz9JED1OmFvuDIyQLHHnJCozc31JjsHoozNdxO1/8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com; spf=pass smtp.mailfrom=rock-chips.com; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b=B3K04ss7; arc=none smtp.client-ip=45.254.49.219 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b="B3K04ss7" Received: from zyb-HP-ProDesk-680-G2-MT.. (unknown [61.154.14.86]) by smtp.qiye.163.com (Hmail) with ESMTP id 408ded050; Mon, 1 Jun 2026 14:51:05 +0800 (GMT+08:00) From: Damon Ding To: hjc@rock-chips.com, heiko@sntech.de, andy.yan@rock-chips.com, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org Cc: Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, nicolas.frattaroli@collabora.com, cristian.ciocaltea@collabora.com, sebastian.reichel@collabora.com, dmitry.baryshkov@oss.qualcomm.com, luca.ceresoli@bootlin.com, dianders@chromium.org, m.szyprowski@samsung.com, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Damon Ding Subject: [PATCH v10 01/11] dt-bindings: display: rockchip: analogix-dp: Fix hclk as third clock for RK3588 Date: Mon, 1 Jun 2026 14:50:50 +0800 Message-Id: <20260601065100.1103873-2-damon.ding@rock-chips.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260601065100.1103873-1-damon.ding@rock-chips.com> References: <20260601065100.1103873-1-damon.ding@rock-chips.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-HM-Tid: 0a9e81f34a4803a8kunm111da268257de7 X-HM-MType: 1 X-HM-Spam-Status: e1kfGhgUHx5ZQUpXWQgPGg8OCBgUHx5ZQUlOS1dZFg8aDwILHllBWSg2Ly tZV1koWUFITzdXWRgWCB1ZQUpXWS1ZQUlXWQ8JGhUIEh9ZQVlCHUJKVklOQ04ZTU9JTEoaGVYVFA kWGhdVEwETFhoSFyQUDg9ZV1kYEgtZQVlNSlVKTk9VSk9VQ01ZV1kWGg8SFR0UWUFZT0tIVUpLSE pKQk1VSktLVUpCWQY+ DKIM-Signature: a=rsa-sha256; b=B3K04ss7d3MgFXSvuGvot9Gb/oUqpM31+R3q0K3kLtpUL5JQu9bIJk/XRzlKZgSdSb1KQ7zGe1hd6mXi55LSlwt9HfAZ+HPZtpDSMf5N62YRUc8R1U6ldjGgoj+1TqeX/1FGMHvEfcApST2NQsTFIrplozIf/rb9ysRN+w11/Ug=; c=relaxed/relaxed; s=default; d=rock-chips.com; v=1; bh=JCOiC5xHahz6m4GJmafwimWE7DoGsWs8/hxxzpCEUwk=; h=date:mime-version:subject:message-id:from; Content-Type: text/plain; charset="utf-8" RK3588 eDP controller requires HCLK_VO1 to access the VO1 GRF registers and enable the video datapath. Previously, the clock was enabled implicitly via the 'rockchip,vo-grf' phandle reference, which allowed the eDP to work without explicitly managing the hclk_vo1 clock. However, this is not safe or explicit. To make the clock dependency explicit, enforce per-SoC clock-names requirements: - RK3288: 2 clocks (dp, pclk) - RK3399: 3 clocks (dp, pclk, grf) - RK3588: 3 clocks (dp, pclk, hclk) Do not reuse the 'grf' clock name for RK3588 because it represents a different clock with distinct control logic: - The 'grf' clock is only for GRF register access and is toggled dynamically during register access. - The 'hclk' clock controls both GRF access and video datapath gating, and must remain enabled during probe. Fixes: f855146263b1 ("dt-bindings: display: rockchip: analogix-dp: Add supp= ort for RK3588") Signed-off-by: Damon Ding Acked-by: Conor Dooley --- Changes in v4: - Modify the commit msg. Changes in v5: - Enforce the correct third clock name on a per-compatible basis. - Modify the commit msg simultaneously. Changes in v6: - Expand more detail commit msg about using hclk instead of grf clock. Changes in v7: - List all valid clock names at the top level, and constrain the clock count for each platform with minItems/maxItems in allOf. Changes in v8: - Fix indentation to 10 for enum in clock-names property. Changes in v9: - Restore the explicit clock-names for RK3399 and RK3588. --- .../rockchip/rockchip,analogix-dp.yaml | 40 ++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/display/rockchip/rockchip,an= alogix-dp.yaml b/Documentation/devicetree/bindings/display/rockchip/rockchi= p,analogix-dp.yaml index d99b23b88cc5..6643889f2a9c 100644 --- a/Documentation/devicetree/bindings/display/rockchip/rockchip,analogix-= dp.yaml +++ b/Documentation/devicetree/bindings/display/rockchip/rockchip,analogix-= dp.yaml @@ -26,7 +26,9 @@ properties: items: - const: dp - const: pclk - - const: grf + - enum: + - grf + - hclk =20 power-domains: maxItems: 1 @@ -60,6 +62,35 @@ required: allOf: - $ref: /schemas/display/bridge/analogix,dp.yaml# =20 + - if: + properties: + compatible: + contains: + enum: + - rockchip,rk3288-dp + then: + properties: + clocks: + maxItems: 2 + clock-names: + maxItems: 2 + + - if: + properties: + compatible: + contains: + enum: + - rockchip,rk3399-edp + then: + properties: + clocks: + minItems: 3 + clock-names: + items: + - const: dp + - const: pclk + - const: grf + - if: properties: compatible: @@ -68,6 +99,13 @@ allOf: - rockchip,rk3588-edp then: properties: + clocks: + minItems: 3 + clock-names: + items: + - const: dp + - const: pclk + - const: hclk resets: minItems: 2 reset-names: --=20 2.34.1 From nobody Mon Jun 8 06:36:57 2026 Received: from mail-m9391.xmail.ntesmail.com (mail-m9391.xmail.ntesmail.com [103.126.93.91]) (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 586F1381AE7; Mon, 1 Jun 2026 06:51:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=103.126.93.91 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780296684; cv=none; b=U5ru7lPMu9gUjWuttfq+jCQFHFZty3nX3nhxxU0cNH/ThXNM8+8GNGpPWiirHXnXqoT26gX23nnX5xNT3+7fCrXR9b8i8D9xyJeFGIpK35HqjnnSD03v0iS0IboHQan0FaWdDfZgnWL68y7IRApjlltf/oKH1NUGSY/Pcb12dd8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780296684; c=relaxed/simple; bh=eF/zDtkOVlH2gwdegYpzag24hppifqpUO5mCfHQOLgo=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=bA/nrrXtSsbS7KkYvhp81doQapnwdh09JQfug3/DF+hS5b/9DLYpKCFVCV2r7OFzQzvb93F6CPkgtPpYPZIGYfsWxQyTRKU22oMrOYoRi5qpR8k3Nc03n/lfRPVawcMMfn75mGaHugSUooMhzFo2s2ISXH+5FpB4yyxIsETwi1A= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com; spf=pass smtp.mailfrom=rock-chips.com; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b=TGKyKW7i; arc=none smtp.client-ip=103.126.93.91 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b="TGKyKW7i" Received: from zyb-HP-ProDesk-680-G2-MT.. (unknown [61.154.14.86]) by smtp.qiye.163.com (Hmail) with ESMTP id 408ded056; Mon, 1 Jun 2026 14:51:06 +0800 (GMT+08:00) From: Damon Ding To: hjc@rock-chips.com, heiko@sntech.de, andy.yan@rock-chips.com, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org Cc: Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, nicolas.frattaroli@collabora.com, cristian.ciocaltea@collabora.com, sebastian.reichel@collabora.com, dmitry.baryshkov@oss.qualcomm.com, luca.ceresoli@bootlin.com, dianders@chromium.org, m.szyprowski@samsung.com, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Damon Ding , Conor Dooley Subject: [PATCH v10 02/11] dt-bindings: display: rockchip: analogix-dp: Add per-clock descriptions Date: Mon, 1 Jun 2026 14:50:51 +0800 Message-Id: <20260601065100.1103873-3-damon.ding@rock-chips.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260601065100.1103873-1-damon.ding@rock-chips.com> References: <20260601065100.1103873-1-damon.ding@rock-chips.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-HM-Tid: 0a9e81f34f4203a8kunm111da268257df0 X-HM-MType: 1 X-HM-Spam-Status: e1kfGhgUHx5ZQUpXWQgPGg8OCBgUHx5ZQUlOS1dZFg8aDwILHllBWSg2Ly tZV1koWUFITzdXWRgWCB1ZQUpXWS1ZQUlXWQ8JGhUIEh9ZQVlDTk9LVk9MHk8aSBoaTB4fHVYVFA kWGhdVEwETFhoSFyQUDg9ZV1kYEgtZQVlNSlVKTk9VSk9VQ01ZV1kWGg8SFR0UWUFZT0tIVUpLSE pKQk1VSktLVUpCWQY+ DKIM-Signature: a=rsa-sha256; b=TGKyKW7i2I7NsCgFQXoCeGqUcX1K0nsPoVTHS1s+GBBVmXqUjjJ63fLorKkuTfzOocGOgDncb2EHw4mHGbNbGJvtu5aoUGkUqfn275WJZWWIAbaCGGLJd0q9C0LWkke4ORYLURv0YRASY34YQCKTGL2U5bdAxk+dljBgrZxGHh0=; c=relaxed/relaxed; s=default; d=rock-chips.com; v=1; bh=8wZdWrZcctCV9qTZxW4lLYgtdTAhgCemqTuoXrbEqzM=; h=date:mime-version:subject:message-id:from; Content-Type: text/plain; charset="utf-8" Supplement dedicated description for each clock in the clocks property, clarifying the function of each clock input for the Analogix DP controller binding. Acked-by: Conor Dooley Signed-off-by: Damon Ding --- Changes in v4: - Modify the commit msg. Changes in v5: - Add Acked-by tag. --- .../bindings/display/rockchip/rockchip,analogix-dp.yaml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/display/rockchip/rockchip,an= alogix-dp.yaml b/Documentation/devicetree/bindings/display/rockchip/rockchi= p,analogix-dp.yaml index 6643889f2a9c..1ef1d56ef6e2 100644 --- a/Documentation/devicetree/bindings/display/rockchip/rockchip,analogix-= dp.yaml +++ b/Documentation/devicetree/bindings/display/rockchip/rockchip,analogix-= dp.yaml @@ -19,7 +19,10 @@ properties: =20 clocks: minItems: 2 - maxItems: 3 + items: + - description: Reference clock + - description: APB bus clock + - description: GRF or AHB bus clock =20 clock-names: minItems: 2 --=20 2.34.1 From nobody Mon Jun 8 06:36:57 2026 Received: from mail-m49220.qiye.163.com (mail-m49220.qiye.163.com [45.254.49.220]) (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 5AD5833D4E4; Mon, 1 Jun 2026 08:06:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=45.254.49.220 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780301216; cv=none; b=NeQV++P3zFO3Q+tSm7w3YIBA6HScm0hL5cfu84RLuzwr5zwd3X1t6hsixyzTBqcSx7McXD8xk5nVVayF86fMErmPOG7/tra7eBitG5htXJAE1FTTTVUhMRfqkzLhe99iKM0/FvI3rjM+za637RHcXOmfZ4PHTHlS/fEAa0dYOB0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780301216; c=relaxed/simple; bh=vaMahLbEz9ksX4pe8xPwl0eaBMZ9ZFNVPbWQ84cfk0E=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=gr91aPkeYWdH+ini4tJUTkk0T9i3+XiofxU2qrOvxI1HdqS8SqwEmXZW4Ly9Izdwc1Qkfn2xzawSYquJHopoEcPzeORXW5iYaaQu+JXvaDVjDzuMQR7R1uv6zssYMVmE/xgMAW1QdTBZwgNfGyCujxof9NhpB9soVFUs23i2YRY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com; spf=pass smtp.mailfrom=rock-chips.com; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b=GaD4EYim; arc=none smtp.client-ip=45.254.49.220 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b="GaD4EYim" Received: from zyb-HP-ProDesk-680-G2-MT.. (unknown [61.154.14.86]) by smtp.qiye.163.com (Hmail) with ESMTP id 408ded062; Mon, 1 Jun 2026 14:51:08 +0800 (GMT+08:00) From: Damon Ding To: hjc@rock-chips.com, heiko@sntech.de, andy.yan@rock-chips.com, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org Cc: Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, nicolas.frattaroli@collabora.com, cristian.ciocaltea@collabora.com, sebastian.reichel@collabora.com, dmitry.baryshkov@oss.qualcomm.com, luca.ceresoli@bootlin.com, dianders@chromium.org, m.szyprowski@samsung.com, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Damon Ding Subject: [PATCH v10 03/11] arm64: dts: rockchip: Add missing hclk for RK3588 eDP0 Date: Mon, 1 Jun 2026 14:50:52 +0800 Message-Id: <20260601065100.1103873-4-damon.ding@rock-chips.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260601065100.1103873-1-damon.ding@rock-chips.com> References: <20260601065100.1103873-1-damon.ding@rock-chips.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-HM-Tid: 0a9e81f3547203a8kunm111da268257dff X-HM-MType: 1 X-HM-Spam-Status: e1kfGhgUHx5ZQUpXWQgPGg8OCBgUHx5ZQUlOS1dZFg8aDwILHllBWSg2Ly tZV1koWUFITzdXWRgWCB1ZQUpXWS1ZQUlXWQ8JGhUIEh9ZQVlDT0pMVhhJSk9IGEtKTRhISlYVFA kWGhdVEwETFhoSFyQUDg9ZV1kYEgtZQVlNSlVKTk9VSk9VQ01ZV1kWGg8SFR0UWUFZT0tIVUpLSE pKQk1VSktLVUpCWQY+ DKIM-Signature: a=rsa-sha256; b=GaD4EYim5dEBVx+8+3SK/2bhBVS1LHD2RTxktEKDYbY67XwXZzKFLPJSZNEJMf9/GmL2uJfaMU5PnLJd6QBaDW7TC1btvqU4D9FRY1swtkZr+dBE6GYbCn5kmLMSnuq5HHhi9cKPr6CoigkWi3xvj8bj1XUhz9m3fEGnNAJEdsk=; c=relaxed/relaxed; s=default; d=rock-chips.com; v=1; bh=cQJ/4r16q/9Bq/DzJvmBXTuihGNdr3jzwWB+vDNpPpo=; h=date:mime-version:subject:message-id:from; Content-Type: text/plain; charset="utf-8" Add the required HCLK_VO1 bus clock to RK3588 eDP0 node with corresponding clock-name "hclk". This clock is necessary for the eDP controller to access video output GRF and work properly. Previously the clock was enabled implicitly via GRF phandle reference. Add it explicitly now to align with updated binding. Fixes: dc79d3d5e7c7 ("arm64: dts: rockchip: Add eDP0 node for RK3588") Signed-off-by: Damon Ding --- Changes in v4: - Modify the commit msg. --- arch/arm64/boot/dts/rockchip/rk3588-base.dtsi | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi b/arch/arm64/boo= t/dts/rockchip/rk3588-base.dtsi index 4fb8888c281c..24a5ccbac08c 100644 --- a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi @@ -1712,8 +1712,8 @@ hdmi0_out: port@1 { edp0: edp@fdec0000 { compatible =3D "rockchip,rk3588-edp"; reg =3D <0x0 0xfdec0000 0x0 0x1000>; - clocks =3D <&cru CLK_EDP0_24M>, <&cru PCLK_EDP0>; - clock-names =3D "dp", "pclk"; + clocks =3D <&cru CLK_EDP0_24M>, <&cru PCLK_EDP0>, <&cru HCLK_VO1>; + clock-names =3D "dp", "pclk", "hclk"; interrupts =3D ; phys =3D <&hdptxphy0>; phy-names =3D "dp"; --=20 2.34.1 From nobody Mon Jun 8 06:36:57 2026 Received: from mail-m3269.qiye.163.com (mail-m3269.qiye.163.com [220.197.32.69]) (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 BC5B92C029D; Mon, 1 Jun 2026 08:07:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=220.197.32.69 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780301228; cv=none; b=Y/nr+zkxsurb5IC/5tBZZcN4sowgc9Z0zOg0KOp1QHqL3CL5mpdufbkn/s23omaUj+r3UbypDrvnUfZTA65yxOturCMTDbzRpN7EXM9j2CX+ZbgGxRQFILd7pCzD1FHStTX6y1159FshVaXOi1KSgzywNXpt7Tk0so0V1ROkeSc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780301228; c=relaxed/simple; bh=hG+TD4O8xl/gPcZ5J8BABusRLckj+sBwwx2W7tTrexM=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=Px7fuj6GK8hLEooVeoo6ETeLPwRuoI79REUXp80LkOSXRzJpXcZGYMWFfY7wEdfxnRLvpNNDzrUs8f6c3ibwc2VxMuYS+2PaNWuUirXrz2aB2c+dY5PvFI1JWQgdjjhazio3Q9Mgcfc3wA5Eo/ugE/tE29B0zDzHA4Ot5wVlHw0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com; spf=pass smtp.mailfrom=rock-chips.com; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b=FOaOZdFU; arc=none smtp.client-ip=220.197.32.69 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b="FOaOZdFU" Received: from zyb-HP-ProDesk-680-G2-MT.. (unknown [61.154.14.86]) by smtp.qiye.163.com (Hmail) with ESMTP id 408ded06b; Mon, 1 Jun 2026 14:51:09 +0800 (GMT+08:00) From: Damon Ding To: hjc@rock-chips.com, heiko@sntech.de, andy.yan@rock-chips.com, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org Cc: Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, nicolas.frattaroli@collabora.com, cristian.ciocaltea@collabora.com, sebastian.reichel@collabora.com, dmitry.baryshkov@oss.qualcomm.com, luca.ceresoli@bootlin.com, dianders@chromium.org, m.szyprowski@samsung.com, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Damon Ding Subject: [PATCH v10 04/11] arm64: dts: rockchip: Add missing hclk for RK3588 eDP1 Date: Mon, 1 Jun 2026 14:50:53 +0800 Message-Id: <20260601065100.1103873-5-damon.ding@rock-chips.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260601065100.1103873-1-damon.ding@rock-chips.com> References: <20260601065100.1103873-1-damon.ding@rock-chips.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-HM-Tid: 0a9e81f3597d03a8kunm111da268257e0e X-HM-MType: 1 X-HM-Spam-Status: e1kfGhgUHx5ZQUpXWQgPGg8OCBgUHx5ZQUlOS1dZFg8aDwILHllBWSg2Ly tZV1koWUFITzdXWRgWCB1ZQUpXWS1ZQUlXWQ8JGhUIEh9ZQVkaHhpOVhhPTk1MSRhPQh0aTFYVFA kWGhdVEwETFhoSFyQUDg9ZV1kYEgtZQVlNSlVKTk9VSk9VQ01ZV1kWGg8SFR0UWUFZT0tIVUpLSE pKQk1VSktLVUpCWQY+ DKIM-Signature: a=rsa-sha256; b=FOaOZdFUo5b36/m/fOHE8C895iDtTBOf/SAuHGdBZQxu0lrf4D72hE2e//ay7N4SfIxdSUQoufkpRpd7wdx2rmY8JHf5FFm3CjyvedDA5SYZJ58bFFG5BnuSN9VvWhs9OLsrP87gjrnU+Lst/qlxsUeWsb1U/8x+jE1a8m7UuBo=; c=relaxed/relaxed; s=default; d=rock-chips.com; v=1; bh=FSnd82QhzgsTc9VLihugRZhMWxwKpTg7Bj65m7IRRDM=; h=date:mime-version:subject:message-id:from; Content-Type: text/plain; charset="utf-8" Add the required HCLK_VO1 bus clock to RK3588 eDP1 node with corresponding clock-name "hclk". This clock is necessary for the eDP controller to access video output GRF and work properly. Previously the clock was enabled implicitly via GRF phandle reference. Add it explicitly now to align with updated binding. Fixes: a481bb0b1ad9 ("arm64: dts: rockchip: Add eDP1 dt node for rk3588") Signed-off-by: Damon Ding --- Changes in v4: - Modify the commit msg. --- arch/arm64/boot/dts/rockchip/rk3588-extra.dtsi | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm64/boot/dts/rockchip/rk3588-extra.dtsi b/arch/arm64/bo= ot/dts/rockchip/rk3588-extra.dtsi index a2640014ee04..b251bb129cdb 100644 --- a/arch/arm64/boot/dts/rockchip/rk3588-extra.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3588-extra.dtsi @@ -285,8 +285,8 @@ hdmi1_out: port@1 { edp1: edp@fded0000 { compatible =3D "rockchip,rk3588-edp"; reg =3D <0x0 0xfded0000 0x0 0x1000>; - clocks =3D <&cru CLK_EDP1_24M>, <&cru PCLK_EDP1>; - clock-names =3D "dp", "pclk"; + clocks =3D <&cru CLK_EDP1_24M>, <&cru PCLK_EDP1>, <&cru HCLK_VO1>; + clock-names =3D "dp", "pclk", "hclk"; interrupts =3D ; phys =3D <&hdptxphy1>; phy-names =3D "dp"; --=20 2.34.1 From nobody Mon Jun 8 06:36:57 2026 Received: from mail-m127156.xmail.ntesmail.com (mail-m127156.xmail.ntesmail.com [115.236.127.156]) (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 2C9593890F8; Mon, 1 Jun 2026 08:07:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=115.236.127.156 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780301232; cv=none; b=ceSYBCQSb8/ihIYsZiUbGl0YbTttKGtzuS1Gy6wbl8LA001uOq51gJvY/oYPDz90Q7DtkSgTOTsvQskFFtlsWSurXSMONbg43crZq4KdQZPz8pK3FeXa/fKprRQSibHhSJ3sMpkCrSj48BGqR4l32TcJVu8Z/GpWRtTjtPKkzdU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780301232; c=relaxed/simple; bh=qi0YPej8vMoupIEPBKCMyT1BVykGVTMCxmQO8nCiWME=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=jlmWq7tNrSPVsGmAIXuf99OeM3kxHLS8+lVmnXVt6C3FY8t7uDYuXXBgJr576SgEmvcNwidfhu5D8y/ywGGTqyOJA7TN9c8TXK/l19n/Fnult7Xq++i8FEWJCOeHMt8CKFSzSIblFHxboC11ahbfxrEBl8jqy8/gPsdgSALIhMM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com; spf=pass smtp.mailfrom=rock-chips.com; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b=NRhO/sFP; arc=none smtp.client-ip=115.236.127.156 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b="NRhO/sFP" Received: from zyb-HP-ProDesk-680-G2-MT.. (unknown [61.154.14.86]) by smtp.qiye.163.com (Hmail) with ESMTP id 408ded075; Mon, 1 Jun 2026 14:51:10 +0800 (GMT+08:00) From: Damon Ding To: hjc@rock-chips.com, heiko@sntech.de, andy.yan@rock-chips.com, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org Cc: Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, nicolas.frattaroli@collabora.com, cristian.ciocaltea@collabora.com, sebastian.reichel@collabora.com, dmitry.baryshkov@oss.qualcomm.com, luca.ceresoli@bootlin.com, dianders@chromium.org, m.szyprowski@samsung.com, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Damon Ding Subject: [PATCH v10 05/11] drm/rockchip: analogix_dp: Enable hclk for RK3588 Date: Mon, 1 Jun 2026 14:50:54 +0800 Message-Id: <20260601065100.1103873-6-damon.ding@rock-chips.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260601065100.1103873-1-damon.ding@rock-chips.com> References: <20260601065100.1103873-1-damon.ding@rock-chips.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-HM-Tid: 0a9e81f35ec903a8kunm111da268257e1f X-HM-MType: 1 X-HM-Spam-Status: e1kfGhgUHx5ZQUpXWQgPGg8OCBgUHx5ZQUlOS1dZFg8aDwILHllBWSg2Ly tZV1koWUFITzdXWRgWCB1ZQUpXWS1ZQUlXWQ8JGhUIEh9ZQVlCTkNOVhpJShgZHU9IGRkaH1YVFA kWGhdVEwETFhoSFyQUDg9ZV1kYEgtZQVlNSlVKTk9VSk9VQ01ZV1kWGg8SFR0UWUFZT0tIVUpLSE pKQk1VSktLVUpCWQY+ DKIM-Signature: a=rsa-sha256; b=NRhO/sFPXmCQA1jAieE+YSfXLPL5NTvpo+7c8H/oE8YPOsZqc66yi41AqUVeIB9o8J7Zu6TZHRQfdM4xEhb+dNLZX/9gORmvBJ+vO6Eb8IrDhFZDUyWco42/N+mra789DGcOk7Iax6k96Bwt3V6+OboVVH7x7aQiSOmjINVmpq4=; c=relaxed/relaxed; s=default; d=rock-chips.com; v=1; bh=qzrSU6F51VUS8IVrczy9Q/DVSlabFI0ne4m7RTJg/xI=; h=date:mime-version:subject:message-id:from; Content-Type: text/plain; charset="utf-8" Acquire and enable the HCLK_VO1 bus clock explicitly for RK3588 eDP controller to guarantee register and datapath access. The clock was previously enabled implicitly via rockchip,vo-grf phandle reference, which relies on side effect and is fragile. Fetch optional "hclk" clock in driver to align with updated device tree binding and keep consistent with hardware clock dependency. Fixes: 729f8eefdcad ("drm/rockchip: analogix_dp: Add support for RK3588") Signed-off-by: Damon Ding --- Changes in v4: - Modify the commit msg. --- drivers/gpu/drm/rockchip/analogix_dp-rockchip.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c b/drivers/gpu/= drm/rockchip/analogix_dp-rockchip.c index 06072efd7fca..d2af5eb29dbb 100644 --- a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c +++ b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c @@ -311,6 +311,7 @@ static int rockchip_dp_of_probe(struct rockchip_dp_devi= ce *dp) { struct device *dev =3D dp->dev; struct device_node *np =3D dev->of_node; + struct clk *clk; =20 dp->grf =3D syscon_regmap_lookup_by_phandle(np, "rockchip,grf"); if (IS_ERR(dp->grf)) @@ -327,6 +328,11 @@ static int rockchip_dp_of_probe(struct rockchip_dp_dev= ice *dp) return dev_err_probe(dev, PTR_ERR(dp->pclk), "failed to get pclk property\n"); =20 + clk =3D devm_clk_get_optional_enabled(dev, "hclk"); + if (IS_ERR(clk)) + return dev_err_probe(dev, PTR_ERR(clk), + "failed to get hclk property\n"); + dp->rst =3D devm_reset_control_get(dev, "dp"); if (IS_ERR(dp->rst)) return dev_err_probe(dev, PTR_ERR(dp->rst), --=20 2.34.1 From nobody Mon Jun 8 06:36:57 2026 Received: from mail-m32105.qiye.163.com (mail-m32105.qiye.163.com [220.197.32.105]) (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 86A6F2BE65B; Mon, 1 Jun 2026 09:13:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=220.197.32.105 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780305233; cv=none; b=kDfX13MAwk/LLNU3VQMGiErv8E2JJ6Bc3W/3DSCXurd9sjQfyT1OX7i6nqLL5BOCWbTi3VWlJ60+5TxYZoH+0YYK+1gz6i0N7lTWlcYdrqy+2uQT+EzggYR83MHpYamk9qvsfn3Aq9lTA5/3oq6+wM+gMc7nppP4aGgZZqtS63o= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780305233; c=relaxed/simple; bh=rwyghEuhTyQcRZWXOd5OluUewAmAPIW4tvO4JsAARIQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=azq725o/JRF7zDS0nf2RSSwy9eLhYd4cMTCcKuY0q89l38RxtmF9GDx7wXgxGhjEz/8rusMcc8pbfta7DlaC4q1DxGntXJQvsX9dJN8WPbxfVR/r0RpAHrzVxDB3RyxvaIvJMyH7jEsbWniw19hG9MUBDb/rXQstr0sfL23uRgY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com; spf=pass smtp.mailfrom=rock-chips.com; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b=deFm5InC; arc=none smtp.client-ip=220.197.32.105 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b="deFm5InC" Received: from zyb-HP-ProDesk-680-G2-MT.. (unknown [61.154.14.86]) by smtp.qiye.163.com (Hmail) with ESMTP id 408ded083; Mon, 1 Jun 2026 14:51:12 +0800 (GMT+08:00) From: Damon Ding To: hjc@rock-chips.com, heiko@sntech.de, andy.yan@rock-chips.com, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org Cc: Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, nicolas.frattaroli@collabora.com, cristian.ciocaltea@collabora.com, sebastian.reichel@collabora.com, dmitry.baryshkov@oss.qualcomm.com, luca.ceresoli@bootlin.com, dianders@chromium.org, m.szyprowski@samsung.com, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Damon Ding Subject: [PATCH v10 06/11] drm/rockchip: analogix_dp: Fix OF node reference leak via auto cleanup Date: Mon, 1 Jun 2026 14:50:55 +0800 Message-Id: <20260601065100.1103873-7-damon.ding@rock-chips.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260601065100.1103873-1-damon.ding@rock-chips.com> References: <20260601065100.1103873-1-damon.ding@rock-chips.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-HM-Tid: 0a9e81f363b403a8kunm111da268257e31 X-HM-MType: 1 X-HM-Spam-Status: e1kfGhgUHx5ZQUpXWQgPGg8OCBgUHx5ZQUlOS1dZFg8aDwILHllBWSg2Ly tZV1koWUFITzdXWRgWCB1ZQUpXWS1ZQUlXWQ8JGhUIEh9ZQVlCTBhDVk9LH0JLGBkfTUxNSVYVFA kWGhdVEwETFhoSFyQUDg9ZV1kYEgtZQVlNSlVKTk9VSk9VQ01ZV1kWGg8SFR0UWUFZT0tIVUpLSE pKQk1VSktLVUpCWQY+ DKIM-Signature: a=rsa-sha256; b=deFm5InC/687QsO2wD9nxR5fYYZQR36H5WyR7KJF0KeTUyaPkU8STH2VQz9pvWnj+2TE+JLIUqml7W+sBG58qJPg7nIH26eVRdsz0uOZkpOrBsfWXBoefa1qhQuMveCPVho4oNMRF65guiFZTdh8hDTp8lOke0EzfjvWwkH81kY=; c=relaxed/relaxed; s=default; d=rock-chips.com; v=1; bh=yJZuY68i6MDKTHNn2ykBZ5f5HU1REKA2FFFIWObwSW8=; h=date:mime-version:subject:message-id:from; Content-Type: text/plain; charset="utf-8" Sashiko reported a reference leak in rockchip_dp_drm_encoder_enable(), the of_get_child_by_name() function does not call of_node_put() in a symmetrical way [1]. Fix the device node reference leak by using __free(device_node) to automatically manage of_node_put() for all device nodes. Fixes: 729f8eefdcad ("drm/rockchip: analogix_dp: Add support for RK3588") Link: https://sashiko.dev/#/patchset/20260527024336.191433-1-damon.ding@roc= k-chips.com?part=3D5 #1 Signed-off-by: Damon Ding --- drivers/gpu/drm/rockchip/analogix_dp-rockchip.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c b/drivers/gpu/= drm/rockchip/analogix_dp-rockchip.c index d2af5eb29dbb..b1ed25cefe5e 100644 --- a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c +++ b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c @@ -8,6 +8,7 @@ * Jeff Chen */ =20 +#include #include #include #include @@ -206,7 +207,6 @@ static void rockchip_dp_drm_encoder_enable(struct drm_e= ncoder *encoder, struct drm_crtc *crtc; struct drm_crtc_state *old_crtc_state; struct of_endpoint endpoint; - struct device_node *remote_port, *remote_port_parent; char name[32]; u32 port_id; int ret; @@ -230,18 +230,22 @@ static void rockchip_dp_drm_encoder_enable(struct drm= _encoder *encoder, if (ret < 0) return; =20 - remote_port_parent =3D of_graph_get_remote_port_parent(endpoint.local_nod= e); + struct device_node *remote_port_parent __free(device_node) =3D + of_graph_get_remote_port_parent(endpoint.local_node); if (remote_port_parent) { - if (of_get_child_by_name(remote_port_parent, "ports")) { - remote_port =3D of_graph_get_remote_port(endpoint.local_node); + struct device_node *ports __free(device_node) =3D + of_get_child_by_name(remote_port_parent, "ports"); + + if (ports) { + struct device_node *remote_port __free(device_node) =3D + of_graph_get_remote_port(endpoint.local_node); + of_property_read_u32(remote_port, "reg", &port_id); - of_node_put(remote_port); sprintf(name, "%s vp%d", remote_port_parent->full_name, port_id); } else { sprintf(name, "%s %s", remote_port_parent->full_name, endpoint.id ? "vopl" : "vopb"); } - of_node_put(remote_port_parent); =20 DRM_DEV_DEBUG(dp->dev, "vop %s output to dp\n", (ret) ? "LIT" : "BIG"); } --=20 2.34.1 From nobody Mon Jun 8 06:36:57 2026 Received: from mail-m32123.qiye.163.com (mail-m32123.qiye.163.com [220.197.32.123]) (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 8C1B73822A2; Mon, 1 Jun 2026 06:56:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=220.197.32.123 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780296995; cv=none; b=EBMx2mpxx/G8AoUkrphBcI6IrTw7xaZH3ZtuzvsqMO33pyRcHZwPnzOmYl8V1y203YUi50o0EUlWsKomYu6SJNZGTJaTHywvHH2hSlq831WUX6ZQrF897d6lxLqXPaQsuvi3L19NEU85DhA4bS2mrX5CINqbgMvS08h0cTkOSyQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780296995; c=relaxed/simple; bh=rXPzhdx3TNyffecCGe0qNpwi1Rwwg/sWBvYXjRoCFd4=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=X9x3SeRwMtp+342pQm/kUJBPuYQOEu6GLtZdapWA/tMkEJqq9nPoXZmblI8fqV+5u7numwMd2vpOIo2FHcLjGmZFqVkC7wgmBF52ES68mm3oYMe5BV3LhV4dbkfqWwfrgsK6AOextZYBCssCSxcYkL5NMUoRu36oESMYG6FLdLk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com; spf=pass smtp.mailfrom=rock-chips.com; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b=PfM7bM8r; arc=none smtp.client-ip=220.197.32.123 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b="PfM7bM8r" Received: from zyb-HP-ProDesk-680-G2-MT.. (unknown [61.154.14.86]) by smtp.qiye.163.com (Hmail) with ESMTP id 408ded08d; Mon, 1 Jun 2026 14:51:13 +0800 (GMT+08:00) From: Damon Ding To: hjc@rock-chips.com, heiko@sntech.de, andy.yan@rock-chips.com, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org Cc: Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, nicolas.frattaroli@collabora.com, cristian.ciocaltea@collabora.com, sebastian.reichel@collabora.com, dmitry.baryshkov@oss.qualcomm.com, luca.ceresoli@bootlin.com, dianders@chromium.org, m.szyprowski@samsung.com, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Damon Ding , Conor Dooley Subject: [PATCH v10 07/11] dt-bindings: display: rockchip: analogix-dp: Add support for RK3576 Date: Mon, 1 Jun 2026 14:50:56 +0800 Message-Id: <20260601065100.1103873-8-damon.ding@rock-chips.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260601065100.1103873-1-damon.ding@rock-chips.com> References: <20260601065100.1103873-1-damon.ding@rock-chips.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-HM-Tid: 0a9e81f3693b03a8kunm111da268257e42 X-HM-MType: 1 X-HM-Spam-Status: e1kfGhgUHx5ZQUpXWQgPGg8OCBgUHx5ZQUlOS1dZFg8aDwILHllBWSg2Ly tZV1koWUFITzdXWRgWCB1ZQUpXWS1ZQUlXWQ8JGhUIEh9ZQVlDSUweVk8fHh1NSBhDHk1JH1YVFA kWGhdVEwETFhoSFyQUDg9ZV1kYEgtZQVlNSlVKTk9VSk9VQ01ZV1kWGg8SFR0UWUFZT0tIVUpLSE pKQk1VSktLVUpCWQY+ DKIM-Signature: a=rsa-sha256; b=PfM7bM8rKmmZGPVUHuXkL7XkpUyupH+mGejk9zrYgheqkhr7ci+WORGqOJNVP8w5cPPTw0IE0WEE77Fru6xJwyAbCWVcGCs0IC43Ih/t3ojpdsaIvdzUyBnuSnqFg37c73OXgMBileK0DBmIVEu2UtylGUAlLjoPPiNOTz8ZdFc=; c=relaxed/relaxed; s=default; d=rock-chips.com; v=1; bh=L7BWWruHRLZlJcC+r2h5wBipdDLTE8Qif+DZ/KL3zR0=; h=date:mime-version:subject:message-id:from; Content-Type: text/plain; charset="utf-8" RK3576 integrates an eDP TX controller compatible with the existing RK3588 hardware design, reuse the same binding configuration directly. Acked-by: Conor Dooley Signed-off-by: Damon Ding --- Changes in v2: - Split out a separate patch to add the "hclk" clock reference. Chanegs in v4: - Modify the commit msg. Changes in v5: - Add Acked-by tag. --- .../bindings/display/rockchip/rockchip,analogix-dp.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Documentation/devicetree/bindings/display/rockchip/rockchip,an= alogix-dp.yaml b/Documentation/devicetree/bindings/display/rockchip/rockchi= p,analogix-dp.yaml index 1ef1d56ef6e2..6548f157fd96 100644 --- a/Documentation/devicetree/bindings/display/rockchip/rockchip,analogix-= dp.yaml +++ b/Documentation/devicetree/bindings/display/rockchip/rockchip,analogix-= dp.yaml @@ -15,6 +15,7 @@ properties: enum: - rockchip,rk3288-dp - rockchip,rk3399-edp + - rockchip,rk3576-edp - rockchip,rk3588-edp =20 clocks: @@ -99,6 +100,7 @@ allOf: compatible: contains: enum: + - rockchip,rk3576-edp - rockchip,rk3588-edp then: properties: --=20 2.34.1 From nobody Mon Jun 8 06:36:57 2026 Received: from mail-m3280.qiye.163.com (mail-m3280.qiye.163.com [220.197.32.80]) (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 5CE5D3803C3; Mon, 1 Jun 2026 06:56:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=220.197.32.80 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780297027; cv=none; b=G+C693MQDZ5lSg7R32BzqT0iyi0LijC5ltFCm0PVyj9/s13FvpsdKhVPrRiDGVOrAE1NugpyKD7z03n5livXeiFBugtiImgC1ILYznk91PshNYojGSscroS7iAlq19E2TIV++opmdNgG9DMlxNy9YXhgJHfze4IxUedjRB7FAsE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780297027; c=relaxed/simple; bh=GFPWi/xaj2KK9JkNv4kgMVIXco4zFkyHwtNhMlrUhGI=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=uC3Kadw1jFH62/cr2y3/5U7ZHncb0N2OjgCrtq+QKepAD+LR+PNRimgItNn2aAy3jPNRKlJCWa2KrtUuWD3p/oHdHk3vz7rjJq8pRntZgXZkCGm6lQECVYCtBIVyVsptQPAgsvp3xpYXRRnAPabhM9ldvQEFcKErTagYlKhpcMA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com; spf=pass smtp.mailfrom=rock-chips.com; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b=KLe1rr3d; arc=none smtp.client-ip=220.197.32.80 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b="KLe1rr3d" Received: from zyb-HP-ProDesk-680-G2-MT.. (unknown [61.154.14.86]) by smtp.qiye.163.com (Hmail) with ESMTP id 408ded09a; Mon, 1 Jun 2026 14:51:14 +0800 (GMT+08:00) From: Damon Ding To: hjc@rock-chips.com, heiko@sntech.de, andy.yan@rock-chips.com, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org Cc: Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, nicolas.frattaroli@collabora.com, cristian.ciocaltea@collabora.com, sebastian.reichel@collabora.com, dmitry.baryshkov@oss.qualcomm.com, luca.ceresoli@bootlin.com, dianders@chromium.org, m.szyprowski@samsung.com, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Damon Ding Subject: [PATCH v10 08/11] arm64: dts: rockchip: Add eDP node for RK3576 Date: Mon, 1 Jun 2026 14:50:57 +0800 Message-Id: <20260601065100.1103873-9-damon.ding@rock-chips.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260601065100.1103873-1-damon.ding@rock-chips.com> References: <20260601065100.1103873-1-damon.ding@rock-chips.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-HM-Tid: 0a9e81f36e7e03a8kunm111da268257e56 X-HM-MType: 1 X-HM-Spam-Status: e1kfGhgUHx5ZQUpXWQgPGg8OCBgUHx5ZQUlOS1dZFg8aDwILHllBWSg2Ly tZV1koWUFITzdXWRgWCB1ZQUpXWS1ZQUlXWQ8JGhUIEh9ZQVkZQx5PVk5OH01DHkkeH0oaH1YVFA kWGhdVEwETFhoSFyQUDg9ZV1kYEgtZQVlNSlVKTk9VSk9VQ01ZV1kWGg8SFR0UWUFZT0tIVUpLSE pKQk1VSktLVUpCWQY+ DKIM-Signature: a=rsa-sha256; b=KLe1rr3dZVxW81aCSXZgLN/D1IEwQ6c2h9YYa6mtNPTEo10nkEV43Az7NARNcSa5e/QuQ38RLD9N6tDEOVC8CP+XiwN5oD2rdNjDTuvfOIWrJBSwUHXI/Jm9zh3biedJuyfuda8K+6q5KU5Tj/ovELp4SP7dn0PQq8LYvWgSbxM=; c=relaxed/relaxed; s=default; d=rock-chips.com; v=1; bh=K1DLY9Im8emQ1pvFmDCS9X34Zpvqnm1ezAB2dEZJU7I=; h=date:mime-version:subject:message-id:from; Content-Type: text/plain; charset="utf-8" Add full device tree definition for the integrated eDP controller on RK3576, following the existing RK3588 hardware layout. Configure required register range, clocks, interrupt, phy, power domain, reset and grf properties to fully describe the controller. Signed-off-by: Damon Ding Reviewed-by: Nicolas Frattaroli --- Changes in v2: - Add Reviewed-by tag. Changes in v4: - Modify the commit msg. --- arch/arm64/boot/dts/rockchip/rk3576.dtsi | 28 ++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3576.dtsi b/arch/arm64/boot/dts= /rockchip/rk3576.dtsi index 28175d8200d5..733449cb88b1 100644 --- a/arch/arm64/boot/dts/rockchip/rk3576.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3576.dtsi @@ -1496,6 +1496,34 @@ hdmi_out: port@1 { }; }; =20 + edp: edp@27dc0000 { + compatible =3D "rockchip,rk3576-edp"; + reg =3D <0x0 0x27dc0000 0x0 0x1000>; + clocks =3D <&cru CLK_EDP0_24M>, <&cru PCLK_EDP0>, <&cru HCLK_VO0_ROOT>; + clock-names =3D "dp", "pclk", "hclk"; + interrupts =3D ; + phys =3D <&hdptxphy>; + phy-names =3D "dp"; + power-domains =3D <&power RK3576_PD_VO0>; + resets =3D <&cru SRST_EDP0_24M>, <&cru SRST_P_EDP0>; + reset-names =3D "dp", "apb"; + rockchip,grf =3D <&vo0_grf>; + status =3D "disabled"; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + edp_in: port@0 { + reg =3D <0>; + }; + + edp_out: port@1 { + reg =3D <1>; + }; + }; + }; + dp: dp@27e40000 { compatible =3D "rockchip,rk3576-dp"; reg =3D <0x0 0x27e40000 0x0 0x30000>; --=20 2.34.1 From nobody Mon Jun 8 06:36:57 2026 Received: from mail-m1973181.qiye.163.com (mail-m1973181.qiye.163.com [220.197.31.81]) (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 8FA61383C97; Mon, 1 Jun 2026 06:56:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=220.197.31.81 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780297000; cv=none; b=cHv8lLZtYpW1ycgFbVXkFsxaJbL1XTzpY7VPEiZA4Xx45VExsteHmCGkErb07fbQx0k9eOO7RTKH5oJ4wsfu5FoDN0Oa6sNbiwGBZjv6Xgf3AfBbhlNpcm9JgNJXjZCVVv3rPOvo7ctsKQi0O3KqMkXz4Dir4n756plQaqekF3g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780297000; c=relaxed/simple; bh=ixP9bbtfLm9n7b7rZTtXkiyTh2jKzvPSeDG46z1FnrA=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=NDjhaKBSrCrw92ANAZSjDobljJW73Gmqe2kYpUmTlpyAYMkjRrMRpl02+iqwoJzkGGQ9DGt4AKUuucNro6WOKxUlRAf2sK57tr4YTkhrxm6DKtwIqIzhmksJaWsN7nhOg+N4ER75+phXQM6vaNBFIRIpv4bQVatFVoTBvLSXw60= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com; spf=pass smtp.mailfrom=rock-chips.com; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b=W1jocCCO; arc=none smtp.client-ip=220.197.31.81 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b="W1jocCCO" Received: from zyb-HP-ProDesk-680-G2-MT.. (unknown [61.154.14.86]) by smtp.qiye.163.com (Hmail) with ESMTP id 408ded0a3; Mon, 1 Jun 2026 14:51:16 +0800 (GMT+08:00) From: Damon Ding To: hjc@rock-chips.com, heiko@sntech.de, andy.yan@rock-chips.com, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org Cc: Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, nicolas.frattaroli@collabora.com, cristian.ciocaltea@collabora.com, sebastian.reichel@collabora.com, dmitry.baryshkov@oss.qualcomm.com, luca.ceresoli@bootlin.com, dianders@chromium.org, m.szyprowski@samsung.com, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Damon Ding Subject: [PATCH v10 09/11] drm/bridge: analogix_dp: Rename and simplify is_rockchip() Date: Mon, 1 Jun 2026 14:50:58 +0800 Message-Id: <20260601065100.1103873-10-damon.ding@rock-chips.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260601065100.1103873-1-damon.ding@rock-chips.com> References: <20260601065100.1103873-1-damon.ding@rock-chips.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-HM-Tid: 0a9e81f3738003a8kunm111da268257e71 X-HM-MType: 1 X-HM-Spam-Status: e1kfGhgUHx5ZQUpXWQgPGg8OCBgUHx5ZQUlOS1dZFg8aDwILHllBWSg2Ly tZV1koWUFITzdXWRgWCB1ZQUpXWS1ZQUlXWQ8JGhUIEh9ZQVlCThlKVktLGUkeTkxIHh5MSFYVFA kWGhdVEwETFhoSFyQUDg9ZV1kYEgtZQVlNSlVKTk9VSk9VQ01ZV1kWGg8SFR0UWUFZT0tIVUpLSE pKQk1VSktLVUpCWQY+ DKIM-Signature: a=rsa-sha256; b=W1jocCCOnlGYN7PqD5J/jIAztLvgHD663bjdcbd+TJPS6F3kvZ7glVAwZ60FG46aJ/iAZpQ+X/IuqHcxo/tWcT/+lXjSHFvGC3T5KIQkx7qT1b4HLojekkLA6MEcwShM0pWSFrHlN6H8dTSez4oL2rA6SKnGqGkS7Cp8pcz7HAA=; c=relaxed/relaxed; s=default; d=rock-chips.com; v=1; bh=LOMeAIx+KSl1dkBA7xVs1jEHQ7IWNjTCWlPoHezWkhE=; h=date:mime-version:subject:message-id:from; Content-Type: text/plain; charset="utf-8" Rename inline helper is_rockchip() to analogix_dp_is_rockchip() to follow driver namespace convention consistently across code. Replace chained equality comparisons with switch-case layout to improve readability and simplify adding new SoC entries later. Signed-off-by: Damon Ding Suggested-by: Nicolas Frattaroli Reviewed-by: Luca Ceresoli --- Changes in v3: - Add Reviewed-by tag. Changes in v4: - Modify the commit msg. --- .../gpu/drm/bridge/analogix/analogix_dp_core.c | 2 +- .../gpu/drm/bridge/analogix/analogix_dp_reg.c | 18 +++++++++--------- include/drm/bridge/analogix_dp.h | 11 +++++++++-- 3 files changed, 19 insertions(+), 12 deletions(-) diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c b/drivers/g= pu/drm/bridge/analogix/analogix_dp_core.c index 8cf6b73bceac..116de3bd83a3 100644 --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c @@ -870,7 +870,7 @@ static int analogix_dp_bridge_atomic_check(struct drm_b= ridge *bridge, struct drm_display_info *di =3D &conn_state->connector->display_info; u32 mask =3D BIT(DRM_OUTPUT_COLOR_FORMAT_YCBCR444) | BIT(DRM_OUTPUT_COLOR= _FORMAT_YCBCR422); =20 - if (is_rockchip(dp->plat_data->dev_type)) { + if (analogix_dp_is_rockchip(dp->plat_data->dev_type)) { if ((di->color_formats & mask)) { DRM_DEBUG_KMS("Swapping display color format from YUV to RGB\n"); di->color_formats &=3D ~mask; diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_reg.c b/drivers/gp= u/drm/bridge/analogix/analogix_dp_reg.c index 38fd8d5014d2..6207ded7ffd5 100644 --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_reg.c +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_reg.c @@ -72,7 +72,7 @@ void analogix_dp_init_analog_param(struct analogix_dp_dev= ice *dp) reg =3D SEL_24M | TX_DVDD_BIT_1_0625V; writel(reg, dp->reg_base + ANALOGIX_DP_ANALOG_CTL_2); =20 - if (dp->plat_data && is_rockchip(dp->plat_data->dev_type)) { + if (dp->plat_data && analogix_dp_is_rockchip(dp->plat_data->dev_type)) { reg =3D REF_CLK_24M; if (dp->plat_data->dev_type =3D=3D RK3288_DP) reg ^=3D REF_CLK_MASK; @@ -123,7 +123,7 @@ void analogix_dp_reset(struct analogix_dp_device *dp) analogix_dp_stop_video(dp); analogix_dp_enable_video_mute(dp, 0); =20 - if (dp->plat_data && is_rockchip(dp->plat_data->dev_type)) + if (dp->plat_data && analogix_dp_is_rockchip(dp->plat_data->dev_type)) reg =3D RK_VID_CAP_FUNC_EN_N | RK_VID_FIFO_FUNC_EN_N | SW_FUNC_EN_N; else @@ -233,7 +233,7 @@ void analogix_dp_set_pll_power_down(struct analogix_dp_= device *dp, bool enable) u32 mask =3D DP_PLL_PD; u32 pd_addr =3D ANALOGIX_DP_PLL_CTL; =20 - if (dp->plat_data && is_rockchip(dp->plat_data->dev_type)) { + if (dp->plat_data && analogix_dp_is_rockchip(dp->plat_data->dev_type)) { pd_addr =3D ANALOGIX_DP_PD; mask =3D RK_PLL_PD; } @@ -254,12 +254,12 @@ void analogix_dp_set_analog_power_down(struct analogi= x_dp_device *dp, u32 phy_pd_addr =3D ANALOGIX_DP_PHY_PD; u32 mask; =20 - if (dp->plat_data && is_rockchip(dp->plat_data->dev_type)) + if (dp->plat_data && analogix_dp_is_rockchip(dp->plat_data->dev_type)) phy_pd_addr =3D ANALOGIX_DP_PD; =20 switch (block) { case AUX_BLOCK: - if (dp->plat_data && is_rockchip(dp->plat_data->dev_type)) + if (dp->plat_data && analogix_dp_is_rockchip(dp->plat_data->dev_type)) mask =3D RK_AUX_PD; else mask =3D AUX_PD; @@ -317,7 +317,7 @@ void analogix_dp_set_analog_power_down(struct analogix_= dp_device *dp, * to power off everything instead of DP_PHY_PD in * Rockchip */ - if (dp->plat_data && is_rockchip(dp->plat_data->dev_type)) + if (dp->plat_data && analogix_dp_is_rockchip(dp->plat_data->dev_type)) mask =3D DP_INC_BG; else mask =3D DP_PHY_PD; @@ -329,7 +329,7 @@ void analogix_dp_set_analog_power_down(struct analogix_= dp_device *dp, reg &=3D ~mask; =20 writel(reg, dp->reg_base + phy_pd_addr); - if (dp->plat_data && is_rockchip(dp->plat_data->dev_type)) + if (dp->plat_data && analogix_dp_is_rockchip(dp->plat_data->dev_type)) usleep_range(10, 15); break; case POWER_ALL: @@ -465,7 +465,7 @@ void analogix_dp_init_aux(struct analogix_dp_device *dp) analogix_dp_reset_aux(dp); =20 /* AUX_BIT_PERIOD_EXPECTED_DELAY doesn't apply to Rockchip IP */ - if (dp->plat_data && is_rockchip(dp->plat_data->dev_type)) + if (dp->plat_data && analogix_dp_is_rockchip(dp->plat_data->dev_type)) reg =3D 0; else reg =3D AUX_BIT_PERIOD_EXPECTED_DELAY(3); @@ -837,7 +837,7 @@ void analogix_dp_config_video_slave_mode(struct analogi= x_dp_device *dp) u32 reg; =20 reg =3D readl(dp->reg_base + ANALOGIX_DP_FUNC_EN_1); - if (dp->plat_data && is_rockchip(dp->plat_data->dev_type)) { + if (dp->plat_data && analogix_dp_is_rockchip(dp->plat_data->dev_type)) { reg &=3D ~(RK_VID_CAP_FUNC_EN_N | RK_VID_FIFO_FUNC_EN_N); } else { reg &=3D ~(MASTER_VID_FUNC_EN_N | SLAVE_VID_FUNC_EN_N); diff --git a/include/drm/bridge/analogix_dp.h b/include/drm/bridge/analogix= _dp.h index 854af692229b..7b670dd769e9 100644 --- a/include/drm/bridge/analogix_dp.h +++ b/include/drm/bridge/analogix_dp.h @@ -19,9 +19,16 @@ enum analogix_dp_devtype { RK3588_EDP, }; =20 -static inline bool is_rockchip(enum analogix_dp_devtype type) +static inline bool analogix_dp_is_rockchip(enum analogix_dp_devtype type) { - return type =3D=3D RK3288_DP || type =3D=3D RK3399_EDP || type =3D=3D RK3= 588_EDP; + switch (type) { + case RK3288_DP: + case RK3399_EDP: + case RK3588_EDP: + return true; + default: + return false; + } } =20 struct analogix_dp_plat_data { --=20 2.34.1 From nobody Mon Jun 8 06:36:57 2026 Received: from mail-m12782.qiye.163.com (mail-m12782.qiye.163.com [115.236.127.82]) (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 36D9838398F; Mon, 1 Jun 2026 07:06:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=115.236.127.82 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780297606; cv=none; b=rc7+m6IZGTtkJs8Sq03S5Iaixz+gnwa008DpZ+K4QXelBho9yOlcbcjjKRyBHa7E43J1bUielpx8KMfXKD8oIBVjjVJNHDDEyU7LfrXB8o9v0Tdb+Kdom31gh5J+Qqhx7KWXW3xh90Aei4YCLCoOFBuMN1B97GqoAqwb7urYjlo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780297606; c=relaxed/simple; bh=Y15rSOUR1fdqfWWTiXlbdUXBQmurn5Y6obbey2Ofl/Y=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=MrlUtvLkPAaqw4erClcRKfu0zYg/hMInh/W9a+0caVp8LCszM2nDqM0vQDrUAl+s3CYehprOT7Td51DENGXpqYPstXzMkUfwwDTAYCvMVzK5JC1E+KaDhqGIv9PjhfgPGaFKo/5yUOeWqNtaxxtNmQhf28zjcBiaRbz44osIkpk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com; spf=pass smtp.mailfrom=rock-chips.com; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b=B7I7J8mS; arc=none smtp.client-ip=115.236.127.82 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b="B7I7J8mS" Received: from zyb-HP-ProDesk-680-G2-MT.. (unknown [61.154.14.86]) by smtp.qiye.163.com (Hmail) with ESMTP id 408ded0ae; Mon, 1 Jun 2026 14:51:17 +0800 (GMT+08:00) From: Damon Ding To: hjc@rock-chips.com, heiko@sntech.de, andy.yan@rock-chips.com, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org Cc: Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, nicolas.frattaroli@collabora.com, cristian.ciocaltea@collabora.com, sebastian.reichel@collabora.com, dmitry.baryshkov@oss.qualcomm.com, luca.ceresoli@bootlin.com, dianders@chromium.org, m.szyprowski@samsung.com, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Damon Ding Subject: [PATCH v10 10/11] drm/bridge: analogix_dp: Add support for RK3576 Date: Mon, 1 Jun 2026 14:50:59 +0800 Message-Id: <20260601065100.1103873-11-damon.ding@rock-chips.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260601065100.1103873-1-damon.ding@rock-chips.com> References: <20260601065100.1103873-1-damon.ding@rock-chips.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-HM-Tid: 0a9e81f378a603a8kunm111da268257e88 X-HM-MType: 1 X-HM-Spam-Status: e1kfGhgUHx5ZQUpXWQgPGg8OCBgUHx5ZQUlOS1dZFg8aDwILHllBWSg2Ly tZV1koWUFITzdXWRgWCB1ZQUpXWS1ZQUlXWQ8JGhUIEh9ZQVlCTEwdVhhMGh1LQkJNH05PGVYVFA kWGhdVEwETFhoSFyQUDg9ZV1kYEgtZQVlNSlVKTk9VSk9VQ01ZV1kWGg8SFR0UWUFZT0tIVUpLSE pKQk1VSktLVUpCWQY+ DKIM-Signature: a=rsa-sha256; b=B7I7J8mSu2E70qiYYffFkOdDltRY2aLcED1AxTAePJkTA/btmpe4aYx+RbwPRu2RgB8doCmRSy0BLPdAnjPCY8IaPA/kKwwP4WBPkF8ERT/wSYul6Ljwpiv9n1PK8S1sdXuD+DKT4kmAsVgPlZih7rtAW0i/tzi4nSH2srB49gQ=; c=relaxed/relaxed; s=default; d=rock-chips.com; v=1; bh=y9jiAV7nJYVINfhoPhgzP8Bt0PPOyyTicmKndbXdNQY=; h=date:mime-version:subject:message-id:from; Content-Type: text/plain; charset="utf-8" Add RK3576_EDP device type entry and extend Rockchip check to match existing hardware capabilities shared with RK3588. Set identical maximum link rate and lane count parameters for RK3576 eDP controller to reuse existing RK3588 config. Reviewed-by: Luca Ceresoli Signed-off-by: Damon Ding --- Changes in v3: - Add Reviewed-by tag. Changes in v4: - Modify the commit msg. --- drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 1 + include/drm/bridge/analogix_dp.h | 2 ++ 2 files changed, 3 insertions(+) diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c b/drivers/g= pu/drm/bridge/analogix/analogix_dp_core.c index 116de3bd83a3..c8eb3511f92a 100644 --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c @@ -1249,6 +1249,7 @@ static int analogix_dp_dt_parse_pdata(struct analogix= _dp_device *dp) video_info->max_link_rate =3D 0x0A; video_info->max_lane_count =3D 0x04; break; + case RK3576_EDP: case RK3588_EDP: video_info->max_link_rate =3D 0x14; video_info->max_lane_count =3D 0x04; diff --git a/include/drm/bridge/analogix_dp.h b/include/drm/bridge/analogix= _dp.h index 7b670dd769e9..0e0b87abee59 100644 --- a/include/drm/bridge/analogix_dp.h +++ b/include/drm/bridge/analogix_dp.h @@ -16,6 +16,7 @@ enum analogix_dp_devtype { EXYNOS_DP, RK3288_DP, RK3399_EDP, + RK3576_EDP, RK3588_EDP, }; =20 @@ -24,6 +25,7 @@ static inline bool analogix_dp_is_rockchip(enum analogix_= dp_devtype type) switch (type) { case RK3288_DP: case RK3399_EDP: + case RK3576_EDP: case RK3588_EDP: return true; default: --=20 2.34.1 From nobody Mon Jun 8 06:36:57 2026 Received: from mail-m49241.qiye.163.com (mail-m49241.qiye.163.com [45.254.49.241]) (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 8DC21383990; Mon, 1 Jun 2026 06:56:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=45.254.49.241 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780297000; cv=none; b=k0Bn1f/zgHBEqvonNzSjkF2t19cH5mPEAsOQaMJx2Y23h3eiyf6Hg2KA5k+SqeEABIG3PYMitgCan5i51m3SOt11VL2EYne7phaP+qkaa7OOfsnf5AqA3zVr5NFSSljolfgePsh+pPsSGqiXCJzfSvQ5NteI/8jvqNS4niSaxPU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780297000; c=relaxed/simple; bh=TFtcFiNkLgRp9RXFe/c0Xkg/ghvO8YSmuwBpDVga2mo=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=QU/znHQ0JHFfKJkqBV5PcTrGomDR5WvREhtt+ZFsmSd37WBgamERyFQ9BkfH1JDUxE8GlY65zGyWTy0pH2aDS0NhuoLzSd2OQ/Mt8mbiMkq4kXVhGvSh9yDckJJYZQBSKCqxav0SpQOqKK98F/CeirXiSJsz2fMgFuPNFRqh3QQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com; spf=pass smtp.mailfrom=rock-chips.com; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b=a9xqn/sd; arc=none smtp.client-ip=45.254.49.241 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=rock-chips.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=rock-chips.com header.i=@rock-chips.com header.b="a9xqn/sd" Received: from zyb-HP-ProDesk-680-G2-MT.. (unknown [61.154.14.86]) by smtp.qiye.163.com (Hmail) with ESMTP id 408ded0ba; Mon, 1 Jun 2026 14:51:18 +0800 (GMT+08:00) From: Damon Ding To: hjc@rock-chips.com, heiko@sntech.de, andy.yan@rock-chips.com, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, andrzej.hajda@intel.com, neil.armstrong@linaro.org, rfoss@kernel.org Cc: Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se, jernej.skrabec@gmail.com, nicolas.frattaroli@collabora.com, cristian.ciocaltea@collabora.com, sebastian.reichel@collabora.com, dmitry.baryshkov@oss.qualcomm.com, luca.ceresoli@bootlin.com, dianders@chromium.org, m.szyprowski@samsung.com, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Damon Ding Subject: [PATCH v10 11/11] drm/rockchip: analogix_dp: Add support for RK3576 Date: Mon, 1 Jun 2026 14:51:00 +0800 Message-Id: <20260601065100.1103873-12-damon.ding@rock-chips.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260601065100.1103873-1-damon.ding@rock-chips.com> References: <20260601065100.1103873-1-damon.ding@rock-chips.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-HM-Tid: 0a9e81f37db003a8kunm111da268257e97 X-HM-MType: 1 X-HM-Spam-Status: e1kfGhgUHx5ZQUpXWQgPGg8OCBgUHx5ZQUlOS1dZFg8aDwILHllBWSg2Ly tZV1koWUFITzdXWRgWCB1ZQUpXWS1ZQUlXWQ8JGhUIEh9ZQVkaHRhKVhkdSU9MTB0eQh0ZGlYVFA kWGhdVEwETFhoSFyQUDg9ZV1kYEgtZQVlNSlVKTk9VSk9VQ01ZV1kWGg8SFR0UWUFZT0tIVUpLSE pKQk1VSktLVUpCWQY+ DKIM-Signature: a=rsa-sha256; b=a9xqn/sd2vouqmgd4pWhm1a4W1O/Y5mZHXYzFu0tFBZ0JHTwsMCwYlJThCqyIVzejOieeQt4+sAJMmipcUj+FDyVMrI+lgWZC7UrvDmuevRDlTBtLC9WdUysxobe7ocvwm5tZd1V8JANsjkf3Ew7rvkIFWwD4qA885uYQiBakmA=; c=relaxed/relaxed; s=default; d=rock-chips.com; v=1; bh=S7ZhlINTuMdpMINdpoMDCgqv5ry/0Pj+nRupk7oBN2c=; h=date:mime-version:subject:message-id:from; Content-Type: text/plain; charset="utf-8" RK3576 integrates Analogix eDP 1.3 TX and Samsung combo PHY hardware blocks that fully match the proven RK3588 design. Add dedicated chip data table and device tree matching entry to bring up basic eDP functionality for the RK3576 platform. Support is limited to RGB output up to 4K@60Hz for now; audio, PSR and other advanced eDP 1.3 features remain unvalidated. Signed-off-by: Damon Ding Reviewed-by: Nicolas Frattaroli Reviewed-by: Luca Ceresoli --- Changes in v2: - Split out a separate patch to enable the "hclk" clock. - Add Reviewed-by tag. Changes in v3: - Add Reviewed-by tag. Changes in v4: - Modify the commit msg. --- drivers/gpu/drm/rockchip/analogix_dp-rockchip.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c b/drivers/gpu/= drm/rockchip/analogix_dp-rockchip.c index b1ed25cefe5e..776954c7d052 100644 --- a/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c +++ b/drivers/gpu/drm/rockchip/analogix_dp-rockchip.c @@ -526,6 +526,14 @@ static const struct rockchip_dp_chip_data rk3288_dp[] = =3D { { /* sentinel */ } }; =20 +static const struct rockchip_dp_chip_data rk3576_edp[] =3D { + { + .chip_type =3D RK3576_EDP, + .reg =3D 0x27dc0000, + }, + { /* sentinel */ } +}; + static const struct rockchip_dp_chip_data rk3588_edp[] =3D { { .edp_mode =3D GRF_REG_FIELD(0x0000, 0, 0), @@ -543,6 +551,7 @@ static const struct rockchip_dp_chip_data rk3588_edp[] = =3D { static const struct of_device_id rockchip_dp_dt_ids[] =3D { {.compatible =3D "rockchip,rk3288-dp", .data =3D &rk3288_dp }, {.compatible =3D "rockchip,rk3399-edp", .data =3D &rk3399_edp }, + {.compatible =3D "rockchip,rk3576-edp", .data =3D &rk3576_edp }, {.compatible =3D "rockchip,rk3588-edp", .data =3D &rk3588_edp }, {} }; --=20 2.34.1