[PATCH v3 00/10] Add support for Arm Framebuffer Compression(AFBC) in mali display driver

From: Ayan Halder
Date: Tue Feb 26 2019 - 11:20:58 EST


This patchset aims to add support for AFBC in mali display driver with
the help of format modifiers. AFBC modifiers add some constraints to
framebuffer size, alignment, pitch, formats, etc

In the initial patchset ie
https://lists.freedesktop.org/archives/dri-devel/2018-June/180124.html

I had illustrated how to add support for one format (ie BGR888) with
one valid combination of AFBC modifiers ie
AFBC_SIZE_16X16 | AFBC_YTR | AFBC_SPARSE

Changes from v1:-
Enabled the support for all AFBC modifiers
(which are supported on DP500, DP550 and DP650) with all the pixel formats.
Also, we have introduced some new pixel formats which are supported with
AFBC modifiers only as well some other pixel formats which are supported with
LINEAR only.

Changes from v2 (ie https://patchwork.freedesktop.org/patch/265212/):-
- Addressed the review comments on the previous patchset.
- Rebased on top of the drm-misc-next


Ayan Kumar Halder (9):
drm: Added a new format DRM_FORMAT_XVYU2101010
drm/arm/malidp: Set the AFBC register bits if the framebuffer has AFBC
modifier
drm/arm/malidp:- Added support for new YUV formats for DP500, DP550
and DP650
drm/arm/malidp:- Define a common list of AFBC format modifiers
supported for DP500, DP550 and DP650
drm/arm/malidp: Specified the rotation memory requirements for AFBC
YUV formats
drm/arm/malidp:- Writeback framebuffer does not support any modifiers
drm/arm/malidp:- Use the newly introduced malidp_format_get_bpp()
instead of relying on cpp for calculating framebuffer size
drm/arm/malidp:- Disregard the pitch alignment constraint for AFBC
framebuffer.
drm/arm/malidp: Added support for AFBC modifiers for all layers except
DE_SMART

Brian Starkey (1):
drm/fourcc: Add AFBC yuv fourccs for Mali

drivers/gpu/drm/arm/malidp_drv.c | 48 +++----
drivers/gpu/drm/arm/malidp_drv.h | 6 +
drivers/gpu/drm/arm/malidp_hw.c | 249 +++++++++++++++++++++++++++++----
drivers/gpu/drm/arm/malidp_hw.h | 31 ++++-
drivers/gpu/drm/arm/malidp_mw.c | 7 +-
drivers/gpu/drm/arm/malidp_planes.c | 271 +++++++++++++++++++++++++++++++++---
drivers/gpu/drm/arm/malidp_regs.h | 20 +++
drivers/gpu/drm/drm_fourcc.c | 17 +++
include/uapi/drm/drm_fourcc.h | 23 ++-
9 files changed, 586 insertions(+), 86 deletions(-)

--
2.7.4