[PATCH v6 00/16] VOP Support for rk3576

Andy Yan
2024-12-14T08:16:07Z

Thanks for the basic work from Collabora, I can bringup a HDMI
display out on rk3576.

PATCH 1 is a carryover from the working when add support for
rk3588[0], is very usefull when some people want me
help debug some issue online, so I really hope it can
be merged at this round.
PATCH 2~8 are bugfix of rk3588 alpha blending which report and
test by Derek
PATCH 9~13 are preparations for rk3576 support
PATCH 17~18 are real support for rk376

I test it with a 1080P/4K HDMI output with modetest and weston
output.

If there are some one want to have a try, I have a tree based on
Linux 6.13-rc2 here[1]

[0]https://patchwork.kernel.org/project/linux-rockchip/cover/20231211115547.1784587-1-andyshrk@163.com/
[1]https://github.com/andyshrk/linux/tree/rk3576-vop2-upstream-v5

Changes in v6:
- Remove unnecessary blank line.
- Limit line length not exceeds 100
- Move the linear check to format_mod_supported() hook
- Move 32 bpp check to format_mod_supported() hook
- Add a blank line after hardware version check code
- More specific explanation about the AXI_BUS_ID register bit of
cluster window.
- Collect Tested-by

Changes in v5:
- Added in V5
- Added in V5
- Added in V5
- Add axi id configuration
- Remove the non-existent CBCR scale register.

Changes in v4:
- Typo fix: selet->select

Changes in v3:
- Split it from 10/15, as it fix a exiting compile warning.
- Add comments for why we should treat rk3566 with special care.
- Add hardware version check
- Add comments for why we should treat rk3566 with special care.
- ordered by soc name
- Add description for newly added interrupt
- Share the alpha setup function with rk3568
- recoder the code block by soc

Changes in v2:
- split it from main patch add support for rk3576
- Add platform specific callback
- Introduce vop hardware version
- Add dt bindings
- Add platform specific callback

Andy Yan (15):
drm/rockchip: vop2: Add debugfs support
drm/rockchip: vop2: Fix the windows switch between different layers
drm/rockchip: vop2: Set AXI id for rk3588
drm/rockchip: vop2: Setup delay cycle for Esmart2/3
drm/rockchip: vop2: Check linear format for Cluster windows on
rk3566/8
drm/rockchip: vop2: Add check for 32 bpp format for rk3588
drm/rockchip: vop2: Support 32x8 superblock afbc
drm/rockchip: vop2: Add platform specific callback
drm/rockchip: vop2: Support for different layer select configuration
between VPs
drm/rockchip: vop2: Introduce vop hardware version
drm/rockchip: vop2: Register the primary plane and overlay plane
separately
drm/rockchip: vop2: Set plane possible crtcs by possible vp mask
drm/rockchip: vop2: Add uv swap for cluster window
dt-bindings: display: vop2: Add rk3576 support
drm/rockchip: vop2: Add support for rk3576

Min-Hua Chen (1):
drm/rockchip: vop2: include rockchip_drm_drv.h

.../display/rockchip/rockchip-vop2.yaml | 13 +-
drivers/gpu/drm/rockchip/rockchip_drm_vop2.c | 1638 ++++----------
drivers/gpu/drm/rockchip/rockchip_drm_vop2.h | 292 ++-
drivers/gpu/drm/rockchip/rockchip_vop2_reg.c | 2014 ++++++++++++++++-
4 files changed, 2793 insertions(+), 1164 deletions(-)

--
2.34.1