summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2016-07-26 17:32:01 -0700
committerJason Ekstrand <[email protected]>2016-08-23 11:45:24 -0700
commitaba9e25b703ea0c7c9da5fcc6491d17b5e7979b3 (patch)
treeb5e4aaec2a1db6b1fd21c6b4a8ce99e9cb496d49
parentf6967ddd32d2e93b1de149251bce6317a773fd3d (diff)
isl/formats: Report ETC as being samplable on Bay Trail
Signed-off-by: Jason Ekstrand <[email protected]> Reviewed-by: Nanley Chery <[email protected]>
-rw-r--r--src/intel/isl/isl_format.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/intel/isl/isl_format.c b/src/intel/isl/isl_format.c
index ef1324c370a..28f63a75d7c 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;
}