summaryrefslogtreecommitdiffstats
path: root/src/mesa/state_tracker/st_extensions.c
diff options
context:
space:
mode:
authorIlia Mirkin <[email protected]>2015-11-21 12:19:52 -0500
committerIlia Mirkin <[email protected]>2015-11-23 11:17:15 -0500
commit6b21d3c92e5878284c008edb68a0155edfcf89b4 (patch)
tree5e200ee9b08ec24f5cb56776b90f2ef002cca9ef /src/mesa/state_tracker/st_extensions.c
parent33339775565154040e0c4ea2e196217dccc08cdf (diff)
st/mesa: add astc support
This doesn't account for the ldr/hdr distinction... that will probably have to be exposed via a separate cap. When relevant hardware appears, this can be worked out. Signed-off-by: Ilia Mirkin <[email protected]> Reviewed-by: Marek Olšák <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]>
Diffstat (limited to 'src/mesa/state_tracker/st_extensions.c')
-rw-r--r--src/mesa/state_tracker/st_extensions.c32
1 files changed, 31 insertions, 1 deletions
diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c
index 99e96e1f3ae..a2418e28a91 100644
--- a/src/mesa/state_tracker/st_extensions.c
+++ b/src/mesa/state_tracker/st_extensions.c
@@ -343,7 +343,7 @@ struct st_extension_cap_mapping {
struct st_extension_format_mapping {
int extension_offset[2];
- enum pipe_format format[8];
+ enum pipe_format format[32];
/* If TRUE, at least one format must be supported for the extensions to be
* advertised. If FALSE, all the formats must be supported. */
@@ -569,6 +569,36 @@ void st_init_extensions(struct pipe_screen *screen,
PIPE_FORMAT_BPTC_RGB_FLOAT,
PIPE_FORMAT_BPTC_RGB_UFLOAT } },
+ { { o(KHR_texture_compression_astc_ldr) },
+ { PIPE_FORMAT_ASTC_4x4,
+ PIPE_FORMAT_ASTC_5x4,
+ PIPE_FORMAT_ASTC_5x5,
+ PIPE_FORMAT_ASTC_6x5,
+ PIPE_FORMAT_ASTC_6x6,
+ PIPE_FORMAT_ASTC_8x5,
+ PIPE_FORMAT_ASTC_8x6,
+ PIPE_FORMAT_ASTC_8x8,
+ PIPE_FORMAT_ASTC_10x5,
+ PIPE_FORMAT_ASTC_10x6,
+ PIPE_FORMAT_ASTC_10x8,
+ PIPE_FORMAT_ASTC_10x10,
+ PIPE_FORMAT_ASTC_12x10,
+ PIPE_FORMAT_ASTC_12x12,
+ PIPE_FORMAT_ASTC_4x4_SRGB,
+ PIPE_FORMAT_ASTC_5x4_SRGB,
+ PIPE_FORMAT_ASTC_5x5_SRGB,
+ PIPE_FORMAT_ASTC_6x5_SRGB,
+ PIPE_FORMAT_ASTC_6x6_SRGB,
+ PIPE_FORMAT_ASTC_8x5_SRGB,
+ PIPE_FORMAT_ASTC_8x6_SRGB,
+ PIPE_FORMAT_ASTC_8x8_SRGB,
+ PIPE_FORMAT_ASTC_10x5_SRGB,
+ PIPE_FORMAT_ASTC_10x6_SRGB,
+ PIPE_FORMAT_ASTC_10x8_SRGB,
+ PIPE_FORMAT_ASTC_10x10_SRGB,
+ PIPE_FORMAT_ASTC_12x10_SRGB,
+ PIPE_FORMAT_ASTC_12x12_SRGB } },
+
{ { o(EXT_texture_shared_exponent) },
{ PIPE_FORMAT_R9G9B9E5_FLOAT } },