[Mesa-dev] [PATCH 2/5] isl/formats: Report ETC as being samplable on Bay Trail

Jason Ekstrand jason at jlekstrand.net
Wed Jul 27 05:04:23 UTC 2016


---
 src/intel/isl/isl_format.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/src/intel/isl/isl_format.c b/src/intel/isl/isl_format.c
index e0b91bb..366d32e 100644
--- a/src/intel/isl/isl_format.c
+++ b/src/intel/isl/isl_format.c
@@ -372,6 +372,15 @@ isl_format_supports_sampling(const struct brw_device_info *devinfo,
    if (!format_info[format].exists)
       return false;
 
+   if (devinfo->is_baytrail) {
+      const struct isl_format_layout *fmtl = isl_format_get_layout(format);
+      /* Support for ETC1 and ETC2 exists on Bay Trail even though big-core
+       * GPUs didn't get it until Broadwell.
+       */
+      if (fmtl->txc == ISL_TXC_ETC1 || fmtl->txc == ISL_TXC_ETC2)
+         return true;
+   }
+
    return format_gen(devinfo) >= format_info[format].sampling;
 }
 
@@ -382,6 +391,15 @@ isl_format_supports_filtering(const struct brw_device_info *devinfo,
    if (!format_info[format].exists)
       return false;
 
+   if (devinfo->is_baytrail) {
+      const struct isl_format_layout *fmtl = isl_format_get_layout(format);
+      /* Support for ETC1 and ETC2 exists on Bay Trail even though big-core
+       * GPUs didn't get it until Broadwell.
+       */
+      if (fmtl->txc == ISL_TXC_ETC1 || fmtl->txc == ISL_TXC_ETC2)
+         return true;
+   }
+
    return format_gen(devinfo) >= format_info[format].filtering;
 }
 
-- 
2.5.0.400.gff86faf



More information about the mesa-dev mailing list