Skip to content
Snippets Groups Projects
Commit 4ceaed78 authored by Lionel Landwerlin's avatar Lionel Landwerlin Committed by Marge Bot
Browse files

anv: split internal surface states from descriptors


On Intel HW we use the same mechanism for internal operations surfaces
as well as application surfaces (VkDescriptor).

This change splits the surface pool in 2, one part dedicated to
internal allocations, the other to application VkDescriptors.

To do so, the STATE_BASE_ADDRESS::SurfaceStateBaseAddress points to a
4Gb area, with the following layout :
   - 1Gb of binding table pool
   - 2Gb of internal surface states
   - 1Gb of bindless surface states

That way any entry from the binding table can refer to both internal &
bindless surface states but none of the driver allocations interfere
with the allocation of the application.

Based off a change from Sviatoslav Peleshko.

v2: Allocate image view null surface state from bindless heap (Sviatoslav)
    Removed debug stuff (Sviatoslav)

Signed-off-by: default avatarLionel Landwerlin <lionel.g.landwerlin@intel.com>
Closes: #7110


Cc: mesa-stable
Tested-by: default avatarSviatoslav Peleshko <sviatoslav.peleshko@globallogic.com>
Reviewed-by: default avatarTapani Pälli <tapani.palli@intel.com>
Part-of: <!19275>
parent 917d992b
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment