X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fintel%2Fvulkan%2Fanv_genX.h;h=9b5665845ef18e34f67150a317ded8a7ee43ac99;hb=1e941a05283b6873d2501f17944e545f6c76166f;hp=a5ec27da2bdbdb0ad903fe2c7fdfdf798bc6324a;hpb=8a80af282091e692da7bf4e412918ba2362dfb4f;p=mesa.git diff --git a/src/intel/vulkan/anv_genX.h b/src/intel/vulkan/anv_genX.h index a5ec27da2bd..9b5665845ef 100644 --- a/src/intel/vulkan/anv_genX.h +++ b/src/intel/vulkan/anv_genX.h @@ -21,48 +21,66 @@ * IN THE SOFTWARE. */ +/* + * NOTE: The header can be included multiple times, from the same file. + */ + /* * Gen-specific function declarations. This header must *not* be included - * directly. Instead, it is included multiple times by gen8_private.h. + * directly. Instead, it is included multiple times by anv_private.h. * * In this header file, the usual genx() macro is available. */ +#ifndef ANV_PRIVATE_H +#error This file is included by means other than anv_private.h +#endif + VkResult genX(init_device_state)(struct anv_device *device); void genX(cmd_buffer_emit_state_base_address)(struct anv_cmd_buffer *cmd_buffer); -struct anv_state -genX(cmd_buffer_alloc_null_surface_state)(struct anv_cmd_buffer *cmd_buffer, - struct anv_framebuffer *fb); +void genX(cmd_buffer_apply_pipe_flushes)(struct anv_cmd_buffer *cmd_buffer); -void genX(cmd_buffer_set_subpass)(struct anv_cmd_buffer *cmd_buffer, - struct anv_subpass *subpass); +void genX(cmd_buffer_emit_gen7_depth_flush)(struct anv_cmd_buffer *cmd_buffer); void genX(flush_pipeline_select_3d)(struct anv_cmd_buffer *cmd_buffer); void genX(flush_pipeline_select_gpgpu)(struct anv_cmd_buffer *cmd_buffer); -void genX(setup_pipeline_l3_config)(struct anv_pipeline *pipeline); - void genX(cmd_buffer_config_l3)(struct anv_cmd_buffer *cmd_buffer, - const struct anv_pipeline *pipeline); + const struct gen_l3_config *cfg); void genX(cmd_buffer_flush_state)(struct anv_cmd_buffer *cmd_buffer); void genX(cmd_buffer_flush_dynamic_state)(struct anv_cmd_buffer *cmd_buffer); void genX(cmd_buffer_flush_compute_state)(struct anv_cmd_buffer *cmd_buffer); -VkResult -genX(graphics_pipeline_create)(VkDevice _device, - struct anv_pipeline_cache *cache, - const VkGraphicsPipelineCreateInfo *pCreateInfo, - const struct anv_graphics_pipeline_create_info *extra, - const VkAllocationCallbacks *alloc, - VkPipeline *pPipeline); - -VkResult -genX(compute_pipeline_create)(VkDevice _device, - struct anv_pipeline_cache *cache, - const VkComputePipelineCreateInfo *pCreateInfo, - const VkAllocationCallbacks *alloc, - VkPipeline *pPipeline); +void genX(cmd_buffer_enable_pma_fix)(struct anv_cmd_buffer *cmd_buffer, + bool enable); + +void genX(cmd_buffer_mark_image_written)(struct anv_cmd_buffer *cmd_buffer, + const struct anv_image *image, + VkImageAspectFlagBits aspect, + enum isl_aux_usage aux_usage, + uint32_t level, + uint32_t base_layer, + uint32_t layer_count); + +void +genX(emit_urb_setup)(struct anv_device *device, struct anv_batch *batch, + const struct gen_l3_config *l3_config, + VkShaderStageFlags active_stages, + const unsigned entry_size[4]); + +void genX(cmd_buffer_so_memcpy)(struct anv_cmd_buffer *cmd_buffer, + struct anv_bo *dst, uint32_t dst_offset, + struct anv_bo *src, uint32_t src_offset, + uint32_t size); + +void genX(cmd_buffer_mi_memcpy)(struct anv_cmd_buffer *cmd_buffer, + struct anv_bo *dst, uint32_t dst_offset, + struct anv_bo *src, uint32_t src_offset, + uint32_t size); + +void genX(blorp_exec)(struct blorp_batch *batch, + const struct blorp_params *params);