diff options
author | Jason Ekstrand <[email protected]> | 2019-02-12 01:02:28 -0600 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2019-04-19 19:56:42 +0000 |
commit | c0d9926df7d33ab72b386444569fd0c384b115b8 (patch) | |
tree | e5c9581d54dcdf5aed3829926a3fbf7a32305525 /src/intel/vulkan/anv_private.h | |
parent | 83af92e593ccb316f33fc6a9a7cf8ea0f8ea3486 (diff) |
anv: Use bindless handles for images
Reviewed-by: Lionel Landwerlin <[email protected]>
Reviewed-by: Caio Marcelo de Oliveira Filho <[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 9f525d1e21a..cb00d8c8731 100644 --- a/src/intel/vulkan/anv_private.h +++ b/src/intel/vulkan/anv_private.h @@ -1546,6 +1546,17 @@ struct anv_sampled_image_descriptor { uint32_t sampler; }; +/** Struct representing a storage image descriptor */ +struct anv_storage_image_descriptor { + /** Bindless image handles + * + * These are expected to already be shifted such that the 20-bit + * SURFACE_STATE table index is in the top 20 bits. + */ + uint32_t read_write; + uint32_t write_only; +}; + /** Struct representing a address/range descriptor * * The fields of this struct correspond directly to the data layout of @@ -1574,6 +1585,8 @@ enum anv_descriptor_data { ANV_DESCRIPTOR_ADDRESS_RANGE = (1 << 5), /** Bindless surface handle */ ANV_DESCRIPTOR_SAMPLED_IMAGE = (1 << 6), + /** Storage image handles */ + ANV_DESCRIPTOR_STORAGE_IMAGE = (1 << 7), }; struct anv_descriptor_set_binding_layout { |