From patchwork Sun Feb 23 11:30:23 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Andy Yan X-Patchwork-Id: 13986957 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 677F5C021B2 for ; Sun, 23 Feb 2025 11:43:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Transfer-Encoding: Content-Type:MIME-Version:Message-ID:Date:Subject:Cc:To:From:Reply-To: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=azLeyf2xC4uh93jZO6CQCigHAVXnNrkCBQPDkD3e1Tg=; b=AWVytIFUsxmAb9L061SKsPa3jb yyTb0njm4KHqQvkvjPFsPB8rVVMpF4Pv7SJUu9IMyHFv6s4D4ojBr5XzCkM4OnCBud/wWQlounv1z qPnqJ+/FWl+d/xV84wsmhNI4M7rd71z2DxuBZ+IzgGIikVIfrd0UMLGYmolPQGEyIpEcpy+zO1n/h 0DDSDnUn1MV4tPRQExM2xW8M7LunBWrXMbDRsC/ZxMlvDDMcvh7kYQE0lQnQwEt2ooaJaOOOkSK0Y 6YooioKTomNOxIo3qNu5t7QbAnzY/kWljqrg9CY4Lru8b1X408R70XJRmtLvfGhF9J00TI7Wg+Gzx ZObAYiBA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tmAOV-0000000B0Vv-3IA5; Sun, 23 Feb 2025 11:43:35 +0000 Received: from m16.mail.163.com ([220.197.31.2]) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tmACQ-0000000AyMd-3ZeL; Sun, 23 Feb 2025 11:31:12 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:Subject:Date:Message-ID:MIME-Version: Content-Type; bh=azLeyf2xC4uh93jZO6CQCigHAVXnNrkCBQPDkD3e1Tg=; b=JBCxw3IMHEjmkAbdWSPa6aNuVY073ScWKpqbpR8TjwohgVbhz0Zxfhf8U3pm4t NSwYSM8uXgjWinpoyGDZGEwwEy1uhzxAk/oykFm6ZyIMp/m8t6uaMapx9a4BpxWo AFJtoKdJqeh1+Gv79a98XsKOMxY4ufPgb+CxxuxkhMR4s= Received: from ProDesk.. (unknown []) by gzsmtp4 (Coremail) with SMTP id PygvCgBHWqbdBrtnleHpAg--.47651S2; Sun, 23 Feb 2025 19:30:41 +0800 (CST) From: Andy Yan To: heiko@sntech.de Cc: hjc@rock-chips.com, mripard@kernel.org, cristian.ciocaltea@collabora.com, neil.armstrong@linaro.org, yubing.zhang@rock-chips.com, krzk+dt@kernel.org, devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-rockchip@lists.infradead.org, robh@kernel.org, sebastian.reichel@collabora.com, Andy Yan Subject: [PATCH 0/6] Add support for RK3588 DisplayPort Controller Date: Sun, 23 Feb 2025 19:30:23 +0800 Message-ID: <20250223113036.74252-1-andyshrk@163.com> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 X-CM-TRANSID: PygvCgBHWqbdBrtnleHpAg--.47651S2 X-Coremail-Antispam: 1Uf129KBjvJXoWxJr1fKF18CryfAr17JrW7CFg_yoW8KrWxpa nrAFy5try8GFWaqrZ2kF1DCrZ3A3Z2yayrKws7J3sFqrn2kFyDCrnxCFsxXr9rGF17AFyI 9rsxX34xGr42qF7anT9S1TB71UUUUU7qnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDUYxBIdaVFxhVjvjDU0xZFpf9x07UvD7-UUUUU= X-Originating-IP: [58.22.7.114] X-CM-SenderInfo: 5dqg52xkunqiywtou0bp/xtbBkBD8Xme7AH88NgABsK X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250223_033107_199741_83BE0BC8 X-CRM114-Status: GOOD ( 10.00 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org From: Andy Yan There are two DW DPTX based DisplayPort Controller on rk3588 which are compliant with the DisplayPort Specification Version 1.4 with the following features: * DisplayPort 1.4a * Main Link: 1/2/4 lanes * Main Link Support 1.62Gbps, 2.7Gbps, 5.4Gbps and 8.1Gbps * AUX channel 1Mbps * Single Stream Transport(SST) * Multistream Transport (MST) *Type-C support (alternate mode) * HDCP 2.2, HDCP 1.3 * Supports up to 8/10 bits per color component * Supports RBG, YCbCr4:4:4, YCbCr4:2:2, YCbCr4:2:0 * Pixel clock up to 594MHz * I2S, SPDIF audio interface The current version of this patch series only supports basic display outputs. I conducted tests in 1080p and 4K@60 YCbCr4:2:0 modes; the ALT/Type-C mode hasn't been tested yet, but I suspect it will likely work. HDCP and audio features remain unimplemented. For RK3588, it's only support SST, while in the upcoming RK3576, it can support MST output. Andy Yan (6): dt-bindings: display: rockchip: Add schema for RK3588 DPTX Controller drm/bridge: synopsys: Add DW DPTX Controller support library drm/rockchip: Add RK3588 DPTX output support arm64: dts: rockchip: Add DP0 for rk3588 arm64: dts: rockchip: Add DP1 for rk3588 arm64: dts: rockchip: Enable DisplayPort for rk3588s Cool Pi 4B .../display/rockchip/rockchip,dw-dp.yaml | 150 ++ arch/arm64/boot/dts/rockchip/rk3588-base.dtsi | 30 + .../arm64/boot/dts/rockchip/rk3588-extra.dtsi | 30 + .../boot/dts/rockchip/rk3588s-coolpi-4b.dts | 37 + drivers/gpu/drm/bridge/synopsys/Kconfig | 7 + drivers/gpu/drm/bridge/synopsys/Makefile | 1 + drivers/gpu/drm/bridge/synopsys/dw-dp.c | 2155 +++++++++++++++++ drivers/gpu/drm/rockchip/Kconfig | 7 + drivers/gpu/drm/rockchip/Makefile | 1 + drivers/gpu/drm/rockchip/dw_dp-rockchip.c | 162 ++ drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 1 + drivers/gpu/drm/rockchip/rockchip_drm_drv.h | 1 + include/drm/bridge/dw_dp.h | 19 + 13 files changed, 2601 insertions(+) create mode 100644 Documentation/devicetree/bindings/display/rockchip/rockchip,dw-dp.yaml create mode 100644 drivers/gpu/drm/bridge/synopsys/dw-dp.c create mode 100644 drivers/gpu/drm/rockchip/dw_dp-rockchip.c create mode 100644 include/drm/bridge/dw_dp.h