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
Showing
- drivers/gpu/drm/rockchip/Kconfig 6 additions, 0 deletionsdrivers/gpu/drm/rockchip/Kconfig
- drivers/gpu/drm/rockchip/Makefile 1 addition, 0 deletionsdrivers/gpu/drm/rockchip/Makefile
- drivers/gpu/drm/rockchip/rockchip_drm_drv.c 1 addition, 0 deletionsdrivers/gpu/drm/rockchip/rockchip_drm_drv.c
- drivers/gpu/drm/rockchip/rockchip_drm_drv.h 5 additions, 1 deletiondrivers/gpu/drm/rockchip/rockchip_drm_drv.h
- drivers/gpu/drm/rockchip/rockchip_drm_fb.c 2 additions, 0 deletionsdrivers/gpu/drm/rockchip/rockchip_drm_fb.c
- drivers/gpu/drm/rockchip/rockchip_drm_vop.h 14 additions, 0 deletionsdrivers/gpu/drm/rockchip/rockchip_drm_vop.h
- drivers/gpu/drm/rockchip/rockchip_drm_vop2.c 2706 additions, 0 deletionsdrivers/gpu/drm/rockchip/rockchip_drm_vop2.c
- drivers/gpu/drm/rockchip/rockchip_drm_vop2.h 477 additions, 0 deletionsdrivers/gpu/drm/rockchip/rockchip_drm_vop2.h
- drivers/gpu/drm/rockchip/rockchip_vop2_reg.c 281 additions, 0 deletionsdrivers/gpu/drm/rockchip/rockchip_vop2_reg.c
- include/dt-bindings/soc/rockchip,vop2.h 14 additions, 0 deletionsinclude/dt-bindings/soc/rockchip,vop2.h
Loading