Verisilicon display controllers have the hardware cursor feature. The hardware cursor layer is a simplistic and restrictive layer as the topmost layer of the display output. It can only support ARGB8888 images and some certain square power-of-two sizes (32x32 is supported on all DCs).
This patchset adds support for the hardware cursor as a cursor plane. Icenowy Zheng (2): drm: verisilicon: add max cursor size to HWDB drm: verisilicon: add support for cursor planes drivers/gpu/drm/verisilicon/Makefile | 3 +- drivers/gpu/drm/verisilicon/vs_crtc.c | 11 +- drivers/gpu/drm/verisilicon/vs_cursor_plane.c | 273 ++++++++++++++++++ .../drm/verisilicon/vs_cursor_plane_regs.h | 44 +++ drivers/gpu/drm/verisilicon/vs_hwdb.c | 4 + drivers/gpu/drm/verisilicon/vs_hwdb.h | 1 + drivers/gpu/drm/verisilicon/vs_plane.h | 1 + .../drm/verisilicon/vs_primary_plane_regs.h | 5 +- 8 files changed, 338 insertions(+), 4 deletions(-) create mode 100644 drivers/gpu/drm/verisilicon/vs_cursor_plane.c create mode 100644 drivers/gpu/drm/verisilicon/vs_cursor_plane_regs.h -- 2.52.0
