X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fintel%2Fvulkan%2Fanv_genX.h;h=9b5665845ef18e34f67150a317ded8a7ee43ac99;hb=f270a0973741724d5bdddd30e4b241caa12a1c29;hp=ccf4357407fc4c731c3f9970f096f6eb93fb0042;hpb=4a6c9e20b88340b5eb91650835b6fa3f0ba3d0f6;p=mesa.git diff --git a/src/intel/vulkan/anv_genX.h b/src/intel/vulkan/anv_genX.h index ccf4357407f..9b5665845ef 100644 --- a/src/intel/vulkan/anv_genX.h +++ b/src/intel/vulkan/anv_genX.h @@ -21,26 +21,29 @@ * 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_set_subpass)(struct anv_cmd_buffer *cmd_buffer, - struct anv_subpass *subpass); - void genX(cmd_buffer_apply_pipe_flushes)(struct anv_cmd_buffer *cmd_buffer); +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); @@ -52,23 +55,32 @@ 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); +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, - unsigned vs_entry_size, unsigned gs_entry_size, - const struct gen_l3_config *l3_config); - -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); + 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);