diff options
author | Dave Airlie <[email protected]> | 2017-01-20 11:06:52 +1000 |
---|---|---|
committer | Dave Airlie <[email protected]> | 2017-01-31 09:30:19 +1000 |
commit | 1fa5b755c23f97d6a92465b08d460bb4406e44dd (patch) | |
tree | d1c7eb48846f24e5c1ed7ce9c648493dc017e7c8 /src/amd/vulkan/radv_private.h | |
parent | 8f41fe4389a820d243651a31c7e44ba57735b3ff (diff) |
radv: emit geometry ring size and pointers via preamble (v2)
This uses the scratch infrastructure to handle the esgs
and gsvs rings.
(this replaces the old code that did this with patching).
v2: fix correct ring sizes, reset sizes (Bas)
Reviewed-by: Bas Nieuwenhuizen <[email protected]>
Signed-off-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/amd/vulkan/radv_private.h')
-rw-r--r-- | src/amd/vulkan/radv_private.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/amd/vulkan/radv_private.h b/src/amd/vulkan/radv_private.h index 3a0318b9fc2..57aa9ead9b7 100644 --- a/src/amd/vulkan/radv_private.h +++ b/src/amd/vulkan/radv_private.h @@ -470,10 +470,14 @@ struct radv_queue { uint32_t scratch_size; uint32_t compute_scratch_size; + uint32_t esgs_ring_size; + uint32_t gsvs_ring_size; struct radeon_winsys_bo *scratch_bo; struct radeon_winsys_bo *descriptor_bo; struct radeon_winsys_bo *compute_scratch_bo; + struct radeon_winsys_bo *esgs_ring_bo; + struct radeon_winsys_bo *gsvs_ring_bo; struct radeon_winsys_cs *preamble_cs; }; @@ -742,6 +746,10 @@ struct radv_cmd_buffer { uint32_t scratch_size_needed; uint32_t compute_scratch_size_needed; + uint32_t esgs_ring_size_needed; + uint32_t gsvs_ring_size_needed; + + int ring_offsets_idx; /* just used for verification */ }; struct radv_image; |