diff options
author | Lionel Landwerlin <[email protected]> | 2017-01-12 16:12:46 +0000 |
---|---|---|
committer | Lionel Landwerlin <[email protected]> | 2017-03-02 10:34:06 +0000 |
commit | 9f60ed98e501da799df2aa6251536a96a7a513ed (patch) | |
tree | b63285384b4244d75c958dbee7f5b564403ed143 /src/intel/vulkan/anv_private.h | |
parent | 12dee851a3108aabaa80b5c05a633b4bb3d4023b (diff) |
anv: add VK_KHR_push_descriptor support
Signed-off-by: Lionel Landwerlin <[email protected]>
Reviewed-by: Jason Ekstrand <[email protected]>
Diffstat (limited to 'src/intel/vulkan/anv_private.h')
-rw-r--r-- | src/intel/vulkan/anv_private.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h index 2df69c9a350..8ac910adf95 100644 --- a/src/intel/vulkan/anv_private.h +++ b/src/intel/vulkan/anv_private.h @@ -95,6 +95,7 @@ struct gen_l3_config; #define MAX_PUSH_CONSTANTS_SIZE 128 #define MAX_DYNAMIC_BUFFERS 16 #define MAX_IMAGES 8 +#define MAX_PUSH_DESCRIPTORS 32 /* Minimum requirement */ #define ANV_SVGS_VB_INDEX MAX_VBS #define ANV_DRAWID_VB_INDEX (MAX_VBS + 1) @@ -928,6 +929,16 @@ struct anv_buffer_view { struct brw_image_param storage_image_param; }; +struct anv_push_descriptor_set { + struct anv_descriptor_set set; + + /* Put this field right behind anv_descriptor_set so it fills up the + * descriptors[0] field. */ + struct anv_descriptor descriptors[MAX_PUSH_DESCRIPTORS]; + + struct anv_buffer_view buffer_views[MAX_PUSH_DESCRIPTORS]; +}; + struct anv_descriptor_pool { uint32_t size; uint32_t next; @@ -1211,6 +1222,8 @@ struct anv_cmd_state { struct anv_dynamic_state dynamic; bool need_query_wa; + struct anv_push_descriptor_set push_descriptor; + /** * Whether or not the gen8 PMA fix is enabled. We ensure that, at the top * of any command buffer it is disabled by disabling it in EndCommandBuffer |