summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/intel/isl/gen_format_layout.py8
-rw-r--r--src/intel/isl/isl.h2
2 files changed, 10 insertions, 0 deletions
diff --git a/src/intel/isl/gen_format_layout.py b/src/intel/isl/gen_format_layout.py
index 0ca42dbab8d..53cdd3b8110 100644
--- a/src/intel/isl/gen_format_layout.py
+++ b/src/intel/isl/gen_format_layout.py
@@ -89,6 +89,14 @@ isl_format_layouts[] = {
% endfor
};
+bool
+isl_format_is_valid(enum isl_format format)
+{
+ if (format >= sizeof(isl_format_layouts) / sizeof(isl_format_layouts[0]))
+ return false;
+ return isl_format_layouts[format].name;
+}
+
enum isl_format
isl_format_srgb_to_linear(enum isl_format format)
{
diff --git a/src/intel/isl/isl.h b/src/intel/isl/isl.h
index 863b6e4befa..0da6abb71d4 100644
--- a/src/intel/isl/isl.h
+++ b/src/intel/isl/isl.h
@@ -1410,6 +1410,8 @@ isl_format_get_layout(enum isl_format fmt)
return &isl_format_layouts[fmt];
}
+bool isl_format_is_valid(enum isl_format);
+
static inline const char * ATTRIBUTE_CONST
isl_format_get_name(enum isl_format fmt)
{