From aa6061c2db8adbe0e75890cfc6f56b800b9995df Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Wed, 12 Jun 2019 17:13:21 +0100 Subject: [PATCH] drm/vc4: In FKMS look at the modifiers correctly for SAND Incorrect masking was used in the switch for the modifier, therefore for SAND (which puts the column pitch in the modifier) it didn't match. Signed-off-by: Dave Stevenson --- drivers/gpu/drm/vc4/vc4_firmware_kms.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) --- a/drivers/gpu/drm/vc4/vc4_firmware_kms.c +++ b/drivers/gpu/drm/vc4/vc4_firmware_kms.c @@ -462,7 +462,7 @@ static void vc4_plane_atomic_update(stru } mb->plane.planes[3] = 0; - switch (fb->modifier) { + switch (fourcc_mod_broadcom_mod(fb->modifier)) { case DRM_FORMAT_MOD_BROADCOM_VC4_T_TILED: switch (mb->plane.vc_image_type) { case VC_IMAGE_XRGB8888: @@ -478,6 +478,9 @@ static void vc4_plane_atomic_update(stru break; case DRM_FORMAT_MOD_BROADCOM_SAND128: mb->plane.vc_image_type = VC_IMAGE_YUV_UV; + /* Note that the column pitch is passed across in lines, not + * bytes. + */ mb->plane.pitch = fourcc_mod_broadcom_param(fb->modifier); break; }