mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 18:18:06 +02:00
turnip: add tu_clear_blit.h
Also drop unused tu_emit_load_gmem_attachment.
(cherry picked from commit 4f759fddba)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17877>
This commit is contained in:
parent
a77322c414
commit
a4a7aa5d1a
4 changed files with 67 additions and 53 deletions
|
|
@ -6,6 +6,7 @@
|
|||
* Jonathan Marek <jonathan@marek.ca>
|
||||
*/
|
||||
|
||||
#include "tu_clear_blit.h"
|
||||
#include "tu_private.h"
|
||||
|
||||
#include "tu_cs.h"
|
||||
|
|
|
|||
64
src/freedreno/vulkan/tu_clear_blit.h
Normal file
64
src/freedreno/vulkan/tu_clear_blit.h
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
/*
|
||||
* Copyright © 2016 Red Hat.
|
||||
* Copyright © 2016 Bas Nieuwenhuizen
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
* based in part on anv driver which is:
|
||||
* Copyright © 2015 Intel Corporation
|
||||
*/
|
||||
|
||||
#ifndef TU_CLEAR_BLIT_H
|
||||
#define TU_CLEAR_BLIT_H
|
||||
|
||||
#include "tu_common.h"
|
||||
|
||||
void tu_init_clear_blit_shaders(struct tu_device *dev);
|
||||
|
||||
void tu_destroy_clear_blit_shaders(struct tu_device *dev);
|
||||
|
||||
void
|
||||
tu6_clear_lrz(struct tu_cmd_buffer *cmd, struct tu_cs *cs, struct tu_image* image, const VkClearValue *value);
|
||||
|
||||
void
|
||||
tu6_dirty_lrz_fc(struct tu_cmd_buffer *cmd, struct tu_cs *cs, struct tu_image* image);
|
||||
|
||||
void
|
||||
tu_resolve_sysmem(struct tu_cmd_buffer *cmd,
|
||||
struct tu_cs *cs,
|
||||
const struct tu_image_view *src,
|
||||
const struct tu_image_view *dst,
|
||||
uint32_t layer_mask,
|
||||
uint32_t layers,
|
||||
const VkRect2D *rect);
|
||||
|
||||
void
|
||||
tu_clear_sysmem_attachment(struct tu_cmd_buffer *cmd,
|
||||
struct tu_cs *cs,
|
||||
uint32_t a,
|
||||
const VkClearValue *value);
|
||||
|
||||
void
|
||||
tu_clear_gmem_attachment(struct tu_cmd_buffer *cmd,
|
||||
struct tu_cs *cs,
|
||||
uint32_t a,
|
||||
const VkClearValue *value);
|
||||
|
||||
void
|
||||
tu_load_gmem_attachment(struct tu_cmd_buffer *cmd,
|
||||
struct tu_cs *cs,
|
||||
uint32_t a,
|
||||
bool cond_exec_allowed,
|
||||
bool force_load);
|
||||
|
||||
/* note: gmem store can also resolve */
|
||||
void
|
||||
tu_store_gmem_attachment(struct tu_cmd_buffer *cmd,
|
||||
struct tu_cs *cs,
|
||||
uint32_t a,
|
||||
uint32_t gmem_a,
|
||||
bool cond_exec_allowed);
|
||||
|
||||
void
|
||||
tu_choose_gmem_layout(struct tu_cmd_buffer *cmd);
|
||||
|
||||
#endif /* TU_CLEAR_BLIT_H */
|
||||
|
|
@ -115,6 +115,7 @@
|
|||
/* vk object types */
|
||||
struct tu_buffer;
|
||||
struct tu_buffer_view;
|
||||
struct tu_cmd_buffer;
|
||||
struct tu_descriptor_pool;
|
||||
struct tu_descriptor_set;
|
||||
struct tu_descriptor_set_layout;
|
||||
|
|
|
|||
|
|
@ -30,6 +30,7 @@
|
|||
|
||||
#include "tu_common.h"
|
||||
#include "tu_autotune.h"
|
||||
#include "tu_clear_blit.h"
|
||||
#include "tu_cs.h"
|
||||
#include "tu_descriptor_set.h"
|
||||
#include "tu_drm.h"
|
||||
|
|
@ -429,10 +430,6 @@ struct tu_device
|
|||
bool use_z24uint_s8uint;
|
||||
};
|
||||
|
||||
void tu_init_clear_blit_shaders(struct tu_device *dev);
|
||||
|
||||
void tu_destroy_clear_blit_shaders(struct tu_device *dev);
|
||||
|
||||
VkResult tu_init_dynamic_rendering(struct tu_device *dev);
|
||||
|
||||
void tu_destroy_dynamic_rendering(struct tu_device *dev);
|
||||
|
|
@ -1305,12 +1302,6 @@ struct tu_event
|
|||
struct tu_bo *bo;
|
||||
};
|
||||
|
||||
void
|
||||
tu6_clear_lrz(struct tu_cmd_buffer *cmd, struct tu_cs *cs, struct tu_image* image, const VkClearValue *value);
|
||||
|
||||
void
|
||||
tu6_dirty_lrz_fc(struct tu_cmd_buffer *cmd, struct tu_cs *cs, struct tu_image* image);
|
||||
|
||||
void
|
||||
tu6_emit_lrz(struct tu_cmd_buffer *cmd, struct tu_cs *cs);
|
||||
|
||||
|
|
@ -1363,49 +1354,6 @@ void tu_disable_draw_states(struct tu_cmd_buffer *cmd, struct tu_cs *cs);
|
|||
void tu6_apply_depth_bounds_workaround(struct tu_device *device,
|
||||
uint32_t *rb_depth_cntl);
|
||||
|
||||
void
|
||||
tu_resolve_sysmem(struct tu_cmd_buffer *cmd,
|
||||
struct tu_cs *cs,
|
||||
const struct tu_image_view *src,
|
||||
const struct tu_image_view *dst,
|
||||
uint32_t layer_mask,
|
||||
uint32_t layers,
|
||||
const VkRect2D *rect);
|
||||
|
||||
void
|
||||
tu_clear_sysmem_attachment(struct tu_cmd_buffer *cmd,
|
||||
struct tu_cs *cs,
|
||||
uint32_t a,
|
||||
const VkClearValue *value);
|
||||
|
||||
void
|
||||
tu_clear_gmem_attachment(struct tu_cmd_buffer *cmd,
|
||||
struct tu_cs *cs,
|
||||
uint32_t a,
|
||||
const VkClearValue *value);
|
||||
|
||||
void
|
||||
tu_load_gmem_attachment(struct tu_cmd_buffer *cmd,
|
||||
struct tu_cs *cs,
|
||||
uint32_t a,
|
||||
bool cond_exec_allowed,
|
||||
bool force_load);
|
||||
|
||||
/* expose this function to be able to emit load without checking LOAD_OP */
|
||||
void
|
||||
tu_emit_load_gmem_attachment(struct tu_cmd_buffer *cmd, struct tu_cs *cs, uint32_t a);
|
||||
|
||||
/* note: gmem store can also resolve */
|
||||
void
|
||||
tu_store_gmem_attachment(struct tu_cmd_buffer *cmd,
|
||||
struct tu_cs *cs,
|
||||
uint32_t a,
|
||||
uint32_t gmem_a,
|
||||
bool cond_exec_allowed);
|
||||
|
||||
void
|
||||
tu_choose_gmem_layout(struct tu_cmd_buffer *cmd);
|
||||
|
||||
struct tu_sampler {
|
||||
struct vk_object_base base;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue