]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
Merge branch 'for-upstream/mali-dp' of git://linux-arm.org/linux-ld into drm-next
authorDave Airlie <airlied@redhat.com>
Mon, 8 Oct 2018 06:38:48 +0000 (16:38 +1000)
committerDave Airlie <airlied@redhat.com>
Mon, 8 Oct 2018 06:45:40 +0000 (16:45 +1000)
I've realised that the commit 3dae1c0919d8 ("drm/arm/malidp: Implemented
the size validation for AFBC framebuffers") got bungled up in the
upstreaming process and it was missing an important line from the
function that calculates the size of the AFBC framebuffer

Signed-off-by: Dave Airlie <airlied@redhat.com>
From: Liviu Dudau <Liviu.Dudau@arm.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20181005152423.GF1156@e110455-lin.cambridge.arm.com
drivers/gpu/drm/arm/malidp_drv.c

index 90214851637f4892ac315893f36d4e2366d0c2dc..505f316a192ec915581fb014eec4b380019f24c0 100644 (file)
@@ -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",