diff options
author | Roland Scheidegger <[email protected]> | 2014-09-30 19:23:37 +0200 |
---|---|---|
committer | Roland Scheidegger <[email protected]> | 2014-10-01 02:16:57 +0200 |
commit | e3da8c110c06c6f0c797bf6a6ab91d482092b93c (patch) | |
tree | 683ec09af71f2c72c6d14ef41afb6034103f5364 /src/gallium/drivers/galahad/glhd_screen.c | |
parent | 3e7f8005db3e8f5f493ab83c1438bb6cf8c840b5 (diff) |
galahad: (trivial) handle cubemap arrays
Reviewed-by: Jose Fonseca <[email protected]>
Diffstat (limited to 'src/gallium/drivers/galahad/glhd_screen.c')
-rw-r--r-- | src/gallium/drivers/galahad/glhd_screen.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gallium/drivers/galahad/glhd_screen.c b/src/gallium/drivers/galahad/glhd_screen.c index 5a910779948..11ab1a9ae55 100644 --- a/src/gallium/drivers/galahad/glhd_screen.c +++ b/src/gallium/drivers/galahad/glhd_screen.c @@ -176,6 +176,13 @@ galahad_screen_resource_create(struct pipe_screen *_screen, glhd_check("%u", templat->height0, == templat->width0); glhd_check("%u", templat->depth0, == 1); glhd_check("%u", templat->array_size, == 6); + } else if (templat->target == PIPE_TEXTURE_CUBE_ARRAY) { + unsigned max_texture_cube_levels = screen->get_param(screen, PIPE_CAP_MAX_TEXTURE_CUBE_LEVELS); + glhd_check("%u", templat->last_level, < max_texture_cube_levels); + glhd_check("%u", templat->width0, <= (1 << (max_texture_cube_levels - 1))); + glhd_check("%u", templat->height0, == templat->width0); + glhd_check("%u", templat->depth0, == 1); + glhd_check("%u", templat->array_size, % 6 == 0); } else if (templat->target == PIPE_TEXTURE_RECT) { unsigned max_texture_2d_levels = screen->get_param(screen, PIPE_CAP_MAX_TEXTURE_2D_LEVELS); glhd_check("%u", templat->last_level, == 0); |