freedreno/a6xx: fix ssbo alignment
authorRob Clark <robdclark@gmail.com>
Mon, 25 Feb 2019 15:15:29 +0000 (10:15 -0500)
committerRob Clark <robdclark@gmail.com>
Tue, 26 Feb 2019 18:19:44 +0000 (13:19 -0500)
Fixes a bunch of deqp ssbo tests that use multiple ssbo blocks packed
into a single buffer.

Note the a5xx value seems suspicious, but this is what blob seems to
advertise.

Signed-off-by: Rob Clark <robdclark@gmail.com>
src/gallium/drivers/freedreno/freedreno_screen.c

index d9918f45c37bfc4b105e240da7257365cd9bb2ba..5b107b87ba8e3f7209f84319e3dfe7a5f6f92137 100644 (file)
@@ -279,7 +279,8 @@ fd_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
                return is_ir3(screen) ? 140 : 120;
 
        case PIPE_CAP_SHADER_BUFFER_OFFSET_ALIGNMENT:
-               if (is_a5xx(screen) || is_a6xx(screen))
+               if (is_a6xx(screen)) return 64;
+               if (is_a5xx(screen)) return 4;
                        return 4;
                return 0;