diff options
author | Eric Anholt <[email protected]> | 2019-04-29 15:38:24 -0700 |
---|---|---|
committer | Eric Anholt <[email protected]> | 2019-05-13 12:03:08 -0700 |
commit | 0c31fe9ee743f699bcabcb638ccc83e515f0d1bd (patch) | |
tree | 7a8e3fba596796d27e75bc40ba110c24a13c0dec /src/gallium/drivers/v3d/v3d_screen.c | |
parent | f33cb272f0890f115c36fb96173123bc699b7b2c (diff) |
gallium: Redefine the max texture 2d cap from _LEVELS to _SIZE.
The _LEVELS assumes that the max is always power of two. For V3D 4.2, we
can support up to 7680 non-power-of-two MSAA textures, which will let X11
support dual 4k displays on newer hardware.
Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/gallium/drivers/v3d/v3d_screen.c')
-rw-r--r-- | src/gallium/drivers/v3d/v3d_screen.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/gallium/drivers/v3d/v3d_screen.c b/src/gallium/drivers/v3d/v3d_screen.c index 6a2dc15179d..e902be05474 100644 --- a/src/gallium/drivers/v3d/v3d_screen.c +++ b/src/gallium/drivers/v3d/v3d_screen.c @@ -205,7 +205,11 @@ v3d_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param) return V3D_MAX_FS_INPUTS / 4; /* Texturing. */ - case PIPE_CAP_MAX_TEXTURE_2D_LEVELS: + case PIPE_CAP_MAX_TEXTURE_2D_SIZE: + if (screen->devinfo.ver < 40) + return 2048; + else + return 4096; case PIPE_CAP_MAX_TEXTURE_CUBE_LEVELS: case PIPE_CAP_MAX_TEXTURE_3D_LEVELS: if (screen->devinfo.ver < 40) |