[Mesa-dev] [PATCH 4/5] intel/screen: Report the correct number of image planes

Jason Ekstrand jason at jlekstrand.net
Wed Aug 16 19:30:58 UTC 2017


For non-CCS images, we were reporting just one plane even though they
may have multiple in the case of YUV.

Cc: <mesa-stable at lists.freedesktop.org>
---
 src/mesa/drivers/dri/i965/intel_screen.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/mesa/drivers/dri/i965/intel_screen.c b/src/mesa/drivers/dri/i965/intel_screen.c
index 9e65273..39b4ef6 100644
--- a/src/mesa/drivers/dri/i965/intel_screen.c
+++ b/src/mesa/drivers/dri/i965/intel_screen.c
@@ -799,7 +799,12 @@ intel_query_image(__DRIimage *image, int attrib, int *value)
    case __DRI_IMAGE_ATTRIB_FOURCC:
       return intel_lookup_fourcc(image->dri_format, value);
    case __DRI_IMAGE_ATTRIB_NUM_PLANES:
-      *value = isl_drm_modifier_has_aux(image->modifier) ? 2 : 1;
+      if (isl_drm_modifier_has_aux(image->modifier))
+         *value = 2;
+      else if (image->planar_format)
+         *value = image->planar_format->nplanes;
+      else
+         *value = 1;
       return true;
    case __DRI_IMAGE_ATTRIB_OFFSET:
       *value = image->offset;
-- 
2.5.0.400.gff86faf



More information about the mesa-dev mailing list