summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLiviu Dudau <Liviu.Dudau@arm.com>2018-10-05 14:30:48 +0200
committerLiviu Dudau <Liviu.Dudau@arm.com>2018-10-05 16:39:51 +0200
commitfd99bd8b805c7c01af7dd66e22bb31c8cfe64310 (patch)
treef832e76cba93ba41a132cf5fa5ebddb234c3f6c1
parentMerge branch 'for-upstream/mali-dp' of git://linux-arm.org/linux-ld into drm-... (diff)
downloadlinux-fd99bd8b805c7c01af7dd66e22bb31c8cfe64310.tar.xz
linux-fd99bd8b805c7c01af7dd66e22bb31c8cfe64310.zip
drm: malidp: Add the size of the superblocks when calculating total
size for AFBC buffers The size of the superblocks being added to the total AFBC buffer size got lost in the upstreaming process. Add it back. Reviewed-by: Ayan Kumar Halder <ayan.halder@arm.com> Signed-off-by: Liviu Dudau <liviu.dudau@arm.com>
-rw-r--r--drivers/gpu/drm/arm/malidp_drv.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/arm/malidp_drv.c b/drivers/gpu/drm/arm/malidp_drv.c
index 90214851637f..505f316a192e 100644
--- a/drivers/gpu/drm/arm/malidp_drv.c
+++ b/drivers/gpu/drm/arm/malidp_drv.c
@@ -38,6 +38,7 @@
#define MALIDP_CONF_VALID_TIMEOUT 250
#define AFBC_HEADER_SIZE 16
+#define AFBC_SUPERBLK_ALIGNMENT 128
static void malidp_write_gamma_table(struct malidp_hw_device *hwdev,
u32 data[MALIDP_COEFFTAB_NUM_COEFFS])
@@ -336,7 +337,8 @@ malidp_verify_afbc_framebuffer_size(struct drm_device *dev,
afbc_superblock_size = info->cpp[0] * afbc_superblock_width *
afbc_superblock_height;
- afbc_size = ALIGN(n_superblocks * AFBC_HEADER_SIZE, 128);
+ afbc_size = ALIGN(n_superblocks * AFBC_HEADER_SIZE, AFBC_SUPERBLK_ALIGNMENT);
+ afbc_size += n_superblocks * ALIGN(afbc_superblock_size, AFBC_SUPERBLK_ALIGNMENT);
if (mode_cmd->width * info->cpp[0] != mode_cmd->pitches[0]) {
DRM_DEBUG_KMS("Invalid value of pitch (=%u) should be same as width (=%u) * cpp (=%u)\n",