mirror of
https://github.com/Ysurac/openmptcprouter.git
synced 2025-02-15 04:42:02 +00:00
67 lines
2.8 KiB
Diff
67 lines
2.8 KiB
Diff
From 604be85547ce4d61b89292d2f9a78c721b778c16 Mon Sep 17 00:00:00 2001
|
|
From: Andy Yan <andy.yan@rock-chips.com>
|
|
Date: Fri, 22 Apr 2022 09:28:39 +0200
|
|
Subject: [PATCH] drm/rockchip: Add VOP2 driver
|
|
|
|
The VOP2 unit is found on Rockchip SoCs beginning with rk3566/rk3568.
|
|
It replaces the VOP unit found in the older Rockchip SoCs.
|
|
|
|
This driver has been derived from the downstream Rockchip Kernel and
|
|
heavily modified:
|
|
|
|
- All nonstandard DRM properties have been removed
|
|
- dropped struct vop2_plane_state and pass around less data between
|
|
functions
|
|
- Dropped all DRM_FORMAT_* not known on upstream
|
|
- rework register access to get rid of excessively used macros
|
|
- Drop all waiting for framesyncs
|
|
|
|
The driver is tested with HDMI and MIPI-DSI display on a RK3568-EVB
|
|
board. Overlay support is tested with the modetest utility. AFBC support
|
|
on the cluster windows is tested with weston-simple-dmabuf-egl on
|
|
weston using the (yet to be upstreamed) panfrost driver support.
|
|
|
|
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
|
|
Co-Developed-by: Sascha Hauer <s.hauer@pengutronix.de>
|
|
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
|
Tested-by: Michael Riesch <michael.riesch@wolfvision.net>
|
|
[dt-binding-header:]
|
|
Acked-by: Rob Herring <robh@kernel.org>
|
|
[moved dt-binding header from dt-nodes patch to here
|
|
and made checkpatch --strict happier]
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
Link: https://patchwork.freedesktop.org/patch/msgid/20220422072841.2206452-23-s.hauer@pengutronix.de
|
|
---
|
|
drivers/gpu/drm/rockchip/Kconfig | 6 +
|
|
drivers/gpu/drm/rockchip/Makefile | 1 +
|
|
drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 1 +
|
|
drivers/gpu/drm/rockchip/rockchip_drm_drv.h | 6 +-
|
|
drivers/gpu/drm/rockchip/rockchip_drm_fb.c | 2 +
|
|
drivers/gpu/drm/rockchip/rockchip_drm_vop.h | 14 +
|
|
drivers/gpu/drm/rockchip/rockchip_drm_vop2.c | 2706 ++++++++++++++++++
|
|
drivers/gpu/drm/rockchip/rockchip_drm_vop2.h | 477 +++
|
|
drivers/gpu/drm/rockchip/rockchip_vop2_reg.c | 281 ++
|
|
include/dt-bindings/soc/rockchip,vop2.h | 14 +
|
|
10 files changed, 3507 insertions(+), 1 deletion(-)
|
|
create mode 100644 drivers/gpu/drm/rockchip/rockchip_drm_vop2.c
|
|
create mode 100644 drivers/gpu/drm/rockchip/rockchip_drm_vop2.h
|
|
create mode 100644 drivers/gpu/drm/rockchip/rockchip_vop2_reg.c
|
|
create mode 100644 include/dt-bindings/soc/rockchip,vop2.h
|
|
|
|
--- /dev/null
|
|
+++ b/include/dt-bindings/soc/rockchip,vop2.h
|
|
@@ -0,0 +1,14 @@
|
|
+/* SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause */
|
|
+
|
|
+#ifndef __DT_BINDINGS_ROCKCHIP_VOP2_H
|
|
+#define __DT_BINDINGS_ROCKCHIP_VOP2_H
|
|
+
|
|
+#define ROCKCHIP_VOP2_EP_RGB0 1
|
|
+#define ROCKCHIP_VOP2_EP_HDMI0 2
|
|
+#define ROCKCHIP_VOP2_EP_EDP0 3
|
|
+#define ROCKCHIP_VOP2_EP_MIPI0 4
|
|
+#define ROCKCHIP_VOP2_EP_LVDS0 5
|
|
+#define ROCKCHIP_VOP2_EP_MIPI1 6
|
|
+#define ROCKCHIP_VOP2_EP_LVDS1 7
|
|
+
|
|
+#endif /* __DT_BINDINGS_ROCKCHIP_VOP2_H */
|