diff options
author | Chia-I Wu <[email protected]> | 2013-05-23 14:02:36 +0800 |
---|---|---|
committer | Chia-I Wu <[email protected]> | 2013-05-27 11:02:57 +0800 |
commit | 11c9aaf30ab63ef856d0fe6f794a74db136afea0 (patch) | |
tree | ef4c6235b224ae4c3c7495a24a43e5a90c6dd2e0 /src/gallium | |
parent | fb40aca8791a8dc6b5777fd4cc0b060553e799ef (diff) |
ilo: advertise supports for pure integer formats
For pure integer formats, no filtering nor blending is needed.
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/ilo/ilo_format.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/gallium/drivers/ilo/ilo_format.c b/src/gallium/drivers/ilo/ilo_format.c index 50c70d43aa7..65fb8201726 100644 --- a/src/gallium/drivers/ilo/ilo_format.c +++ b/src/gallium/drivers/ilo/ilo_format.c @@ -608,6 +608,7 @@ ilo_is_format_supported(struct pipe_screen *screen, { struct ilo_screen *is = ilo_screen(screen); const int gen = ILO_GEN_GET_MAJOR(is->dev.gen * 10); + const bool is_pure_int = util_format_is_pure_integer(format); const struct surface_format_info *info; unsigned bind; @@ -641,7 +642,7 @@ ilo_is_format_supported(struct pipe_screen *screen, if (gen < info->render_target) return false; - if (gen < info->alpha_blend) + if (!is_pure_int && gen < info->alpha_blend) return false; } @@ -652,7 +653,7 @@ ilo_is_format_supported(struct pipe_screen *screen, if (gen < info->sampling) return false; - if (gen < info->filtering) + if (!is_pure_int && gen < info->filtering) return false; } |