From patchwork Tue Nov 14 11:25:34 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Yan X-Patchwork-Id: 16554 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b909:0:b0:403:3b70:6f57 with SMTP id t9csp1791657vqg; Tue, 14 Nov 2023 03:26:51 -0800 (PST) X-Google-Smtp-Source: AGHT+IHsGN9tuzLVV4MwBt3CfKrGmpfSZJ01hsh25NB4y+phGcVBRDkJgL7o5iUi0Z0UvM+nY24y X-Received: by 2002:a17:90b:380c:b0:280:25ce:58f with SMTP id mq12-20020a17090b380c00b0028025ce058fmr7043931pjb.43.1699961210800; Tue, 14 Nov 2023 03:26:50 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1699961210; cv=none; d=google.com; s=arc-20160816; b=GjbcVykTLRNXlxIiDDMsuQcsKS8nrJ/5Fyi7Z+svXUx7DUNiZaINMxlOBhauJ5+5xQ 6oO5WrbUSMJWE+kUm8mXSUWznR//rUV6YxHt9FozifiMiriPfu+ftvS7w7OlzEer35Dh ZLVjfSVmRqVGxtUUqqF2dV3g50i4NPtA06FzEZSTwuJn+SFv4+0UWf1fx9YXWULnIh3J dOajVVaTXrRdJ8OBoMlGLmMUuT3rr9eKoo/zC4ET6H77J0vrCmXQJq4O8zF7quXio0nu 27PMjHVyC0Gx8/q/9NdqubuAe0p40Z9XdHo0IE8q46ljXq0kn3Ke2yVpA1WGPMdd8mig B0Pg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=QlSOJR6xuGhJSA43BYYZBSnfhPce6GEiq7oGmKa3t6U=; fh=UxFpKtBK5VEiehKMA7YEJ/g9njmupgYZNYvE1WeoN9M=; b=G/R/a+0Fihk5AK1i0yah1o6JMVR9ja5wUjl8mL8eqn1p4K2JV/bWFg9h0VYaTyeVHW zTxSOVSjyV8YBBPLOgX/9hkbbHQ2aIr4aVJXHjOJyzHQO9MbI1yktZ5Uumj+9BCfWPPM rzZ1nwycaX5PkREQQrd83p+ntr3KtYb2pCp9n2FltfxBC7T/bawN1poc3lZQgHhaby1/ 9D4nX6ZoNs/UmOUAgP3TcjKe7Kdf6Z2LR+D3LQFkz6ix94f+LareO4SUMlhZySCSw9gx BQuTLaQgcT0kA1MfITZFK08x5AqnQ81u/CD7qJsteCUbYepOGWUbwQn05qmtDXm1DgSA ewXw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@163.com header.s=s110527 header.b=WapDRQvS; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=163.com Received: from lipwig.vger.email (lipwig.vger.email. [23.128.96.33]) by mx.google.com with ESMTPS id 26-20020a17090a191a00b0026934bf746bsi7819866pjg.62.2023.11.14.03.26.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 14 Nov 2023 03:26:50 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) client-ip=23.128.96.33; Authentication-Results: mx.google.com; dkim=pass header.i=@163.com header.s=s110527 header.b=WapDRQvS; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=163.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by lipwig.vger.email (Postfix) with ESMTP id 55CE780B41A7; Tue, 14 Nov 2023 03:26:48 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at lipwig.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229441AbjKNL0a (ORCPT + 29 others); Tue, 14 Nov 2023 06:26:30 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45138 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231991AbjKNL02 (ORCPT ); Tue, 14 Nov 2023 06:26:28 -0500 Received: from m12.mail.163.com (m12.mail.163.com [220.181.12.216]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id D51D1D9; Tue, 14 Nov 2023 03:26:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:Subject:Date:Message-Id:MIME-Version; bh=QlSOJ R6xuGhJSA43BYYZBSnfhPce6GEiq7oGmKa3t6U=; b=WapDRQvSV8eRGx7nYfanf +2LRdt4egd9/gsC2jYDc5y2WlWYI5SkNvMxbE5XjQ+v1Dy8y0tNxn5Dkxr67NcLh D5x/XwI0Ouyrk0CYg0UwyFELv3C9acnF1Vgq2d9MZu9Mv+grgrbK8/uorxIIyB+w NBK6prOpkSIlM5nK10wQfk= Received: from ProDesk.. (unknown [58.22.7.114]) by zwqz-smtp-mta-g4-2 (Coremail) with SMTP id _____wDXn0AvWVNlhu50DA--.57639S2; Tue, 14 Nov 2023 19:25:39 +0800 (CST) From: Andy Yan To: heiko@sntech.de Cc: hjc@rock-chips.com, dri-devel@lists.freedesktop.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, krzysztof.kozlowski+dt@linaro.org, robh+dt@kernel.org, devicetree@vger.kernel.org, sebastian.reichel@collabora.com, kever.yang@rock-chips.com, chris.obbard@collabora.com, Andy Yan Subject: [PATCH 00/11] Add VOP2 support on rk3588 Date: Tue, 14 Nov 2023 19:25:34 +0800 Message-Id: <20231114112534.1770731-1-andyshrk@163.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 X-CM-TRANSID: _____wDXn0AvWVNlhu50DA--.57639S2 X-Coremail-Antispam: 1Uf129KBjvJXoWxCrW7tr4UArW3uryDAF4rGrg_yoW5GrWkpa n8Cry5ZrWxCFW2qrn3Kwn5CrWft3ZrAayfKwn3G3ZFq3WSkF1UKwnxW3Z5Z39xXw17ZFy2 kr43J347Gr42qr7anT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDUYxBIdaVFxhVjvjDU0xZFpf9x07jolksUUUUU= X-Originating-IP: [58.22.7.114] X-CM-SenderInfo: 5dqg52xkunqiywtou0bp/1tbiTBYoXmI0cP1yEAAAsV X-Spam-Status: No, score=0.9 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RCVD_IN_SORBS_WEB, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lipwig.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (lipwig.vger.email [0.0.0.0]); Tue, 14 Nov 2023 03:26:48 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1782538526326243721 X-GMAIL-MSGID: 1782538526326243721 From: Andy Yan This patch sets aims at enable the VOP2 support on rk3588. Main feature of VOP2 on rk3588: Four video ports: VP0 Max 4096x2160 VP1 Max 4096x2160 VP2 Max 4096x2160 VP3 Max 2048x1080 4 4K Cluster windows with AFBC/line RGB and AFBC-only YUV support 4 4K Esmart windows with line RGB/YUV support The current version support all the 8 windows with all the suppported plane format. And we don't have a upstreamed encoder/connector(HDMI/DP) for rk3588 yet, Cristian from collabora is working on adding upstream support for HDMI on rk3588. My current test is runing with a HDMI driver pick from downstream bsp kernel. A branch based on linux-6.7 rc1 containing all the series and HDMI driver(not compatible with rk3568) picked from downstream bsp kernel is available [0]. [0]https://github.com/andyshrk/linux/tree/rk3588-vop2-hdmi-upstream-linux-6.7-rc1-2023-11-14 Andy Yan (11): drm/rockchip: move output interface related definition to rockchip_drm_drv.h Revert "drm/rockchip: vop2: Use regcache_sync() to fix suspend/resume" drm/rockchip: vop2: set half_block_en bit in all mode drm/rockchip: vop2: clear afbc en and transform bit for cluster window at linear mode drm/rockchip: vop2: Set YUV/RGB overlay mode drm/rockchip: vop2: rename grf to sys_grf dt-bindings: soc: rockchip: add rk3588 vop/vo syscon dt-bindings: display: vop2: Add rk3588 support drm/rockchip: vop2: Add support for rk3588 drm/rockchip: vop2: Add debugfs support arm64: dts: rockchip: Add vop on rk3588 .../display/rockchip/rockchip-vop2.yaml | 25 + .../devicetree/bindings/soc/rockchip/grf.yaml | 2 + arch/arm64/boot/dts/rockchip/rk3588s.dtsi | 96 +++ .../gpu/drm/rockchip/analogix_dp-rockchip.c | 1 - drivers/gpu/drm/rockchip/cdn-dp-core.c | 1 - .../gpu/drm/rockchip/dw-mipi-dsi-rockchip.c | 1 - drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c | 1 - drivers/gpu/drm/rockchip/inno_hdmi.c | 1 - drivers/gpu/drm/rockchip/rk3066_hdmi.c | 1 - drivers/gpu/drm/rockchip/rockchip_drm_drv.h | 18 + drivers/gpu/drm/rockchip/rockchip_drm_vop.h | 12 +- drivers/gpu/drm/rockchip/rockchip_drm_vop2.c | 790 +++++++++++++++++- drivers/gpu/drm/rockchip/rockchip_drm_vop2.h | 73 +- drivers/gpu/drm/rockchip/rockchip_lvds.c | 1 - drivers/gpu/drm/rockchip/rockchip_rgb.c | 1 - drivers/gpu/drm/rockchip/rockchip_vop2_reg.c | 215 +++++ include/dt-bindings/soc/rockchip,vop2.h | 4 + 17 files changed, 1185 insertions(+), 58 deletions(-)