anv: Use BINDING_TABLE_POOL_ALLOC instead of SBA on Gen11+

On Gen11, they dropped the resource streamer hardware but left one very
useful bit lying around: 3DSTATE_BINDING_TABLE_POOL_ALLOC.  Prior to
Gen11, binding table pools implied hardware binding tables which implied
using the resource streamer.  On Gen11, however, binding table pools
simply mean a separate base address for binding tables which is what
we've wanted for Vulkan all along.

Now, instead of having to set surface state base address to the start of
the binding table block and offset all of our surface states, we can
set surface state base address to the start of the surface states and
the binding table pool address to the start of the binding table block.
This lets us emit STATE_BASE_ADDRESS once at context creation rather
than having to re-emit it in every batch.  While this shouldn't have any
performance implications (we still have to stall), it definitely makes
the driver a lot cleaner on Gen11+.
Status Job ID Name Coverage
  Container
manual #2638188
aarch64 manual
arm_build
manual #2638189
aarch64 manual
arm_test
manual #2638190
windows shell 1809 mesa manual
windows_build_vs2019
manual #2638184
manual
x86_build
manual #2638187
manual
x86_build_old
manual #2638185
manual
x86_test-gl
manual #2638186
manual
x86_test-vk
 
  Meson X86 64
created #2638194
meson-clang
created #2638193
meson-classic
created #2638195
meson-clover
created #2638196
meson-clover-old-llvm
created #2638192
meson-gallium
created #2638191
meson-testing
created #2638197
meson-vulkan
 
  Scons
created #2638198
allowed to fail
scons-win64
 
  Meson Misc
created #2638200
aarch64
meson-arm64
created #2638201
aarch64
meson-arm64-build-test
created #2638199
aarch64
meson-armhf
created #2638203
meson-i386
created #2638206
meson-mingw32-x86_64
created #2638205
kvm
meson-ppc64el
created #2638204
kvm
meson-s390x
created #2638202
windows docker 1809 mesa
meson-windows-vs2019
 
  Llvmpipe
created #2638210
llvmpipe-gles2
created #2638211
llvmpipe-traces
created #2638208
piglit-glslparser
created #2638207
piglit-quick_gl
created #2638209
piglit-quick_shader
 
  Softpipe
created #2638212
softpipe-gles2
created #2638215
softpipe-gles31 1/4
created #2638213
softpipe-gles3 1/2
created #2638216
softpipe-gles31 2/4
created #2638217
softpipe-gles31 3/4
created #2638218
softpipe-gles31 4/4
created #2638214
softpipe-gles3 2/2
 
  Freedreno
created #2638223
google-freedreno-db410c
arm64_a306_gles2
created #2638224
google-freedreno-db410c
arm64_a306_gles3
created #2638225
google-freedreno-db820c
arm64_a530_gles2
created #2638226
google-freedreno-db820c
arm64_a530_gles3
created #2638227
google-freedreno-db820c
arm64_a530_gles31
created #2638219
mesa-cheza
arm64_a630_gles2
created #2638221
mesa-cheza
arm64_a630_gles3
created #2638220
mesa-cheza
arm64_a630_gles31
created #2638222
mesa-cheza
arm64_a630_gles31_options
 
  Panfrost
created #2638228
mesa-ci-aarch64-lava-collabora
panfrost-t860-gles2:arm64
created #2638229
mesa-ci-aarch64-lava-collabora
panfrost-t860-gles3:arm64
 
  Radv
created #2638230
radv-fossils
 
  Virgl
created #2638231
virgl-gles2
created #2638232
virgl-gles3
created #2638233
virgl-gles31
created #2638234
virgl-traces