mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-23 02:08:10 +02:00
mali_ptr is no shorter than uint64_t, and we already have a few places where we use uint64_t to store GPU virtual addresses in src/panfrost, so let's just kill this typedef and use uint64_t types everywhere. That's one step towards panfrost-job.h removal. Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com> Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32899>
80 lines
2 KiB
C
80 lines
2 KiB
C
/*
|
|
* Copyright © 2021 Collabora Ltd.
|
|
* SPDX-License-Identifier: MIT
|
|
*/
|
|
|
|
#ifndef PANVK_CMD_META_H
|
|
#define PANVK_CMD_META_H
|
|
|
|
#ifndef PAN_ARCH
|
|
#error "PAN_ARCH must be defined"
|
|
#endif
|
|
|
|
#include "panvk_cmd_buffer.h"
|
|
#include "panvk_cmd_desc_state.h"
|
|
#include "panvk_cmd_push_constant.h"
|
|
#include "panvk_descriptor_set.h"
|
|
|
|
struct panvk_shader;
|
|
|
|
struct panvk_cmd_meta_compute_save_ctx {
|
|
struct {
|
|
const struct panvk_shader *shader;
|
|
struct panvk_shader_desc_state desc;
|
|
} cs;
|
|
const struct panvk_descriptor_set *set0;
|
|
struct {
|
|
struct panvk_opaque_desc desc_storage[MAX_PUSH_DESCS];
|
|
uint64_t descs_dev_addr;
|
|
uint32_t desc_count;
|
|
} push_set0;
|
|
struct panvk_push_constant_state push_constants;
|
|
};
|
|
|
|
void panvk_per_arch(cmd_meta_compute_start)(
|
|
struct panvk_cmd_buffer *cmdbuf,
|
|
struct panvk_cmd_meta_compute_save_ctx *save_ctx);
|
|
|
|
void panvk_per_arch(cmd_meta_compute_end)(
|
|
struct panvk_cmd_buffer *cmdbuf,
|
|
const struct panvk_cmd_meta_compute_save_ctx *save_ctx);
|
|
|
|
struct panvk_cmd_meta_graphics_save_ctx {
|
|
const struct panvk_graphics_pipeline *pipeline;
|
|
const struct panvk_descriptor_set *set0;
|
|
struct {
|
|
struct panvk_opaque_desc desc_storage[MAX_PUSH_DESCS];
|
|
uint64_t descs_dev_addr;
|
|
uint32_t desc_count;
|
|
} push_set0;
|
|
struct panvk_push_constant_state push_constants;
|
|
struct panvk_attrib_buf vb0;
|
|
|
|
struct {
|
|
struct vk_dynamic_graphics_state all;
|
|
struct vk_vertex_input_state vi;
|
|
struct vk_sample_locations_state sl;
|
|
} dyn_state;
|
|
|
|
struct {
|
|
const struct panvk_shader *shader;
|
|
struct panvk_shader_desc_state desc;
|
|
} fs;
|
|
|
|
struct {
|
|
const struct panvk_shader *shader;
|
|
struct panvk_shader_desc_state desc;
|
|
} vs;
|
|
|
|
struct panvk_occlusion_query_state occlusion_query;
|
|
};
|
|
|
|
void panvk_per_arch(cmd_meta_gfx_start)(
|
|
struct panvk_cmd_buffer *cmdbuf,
|
|
struct panvk_cmd_meta_graphics_save_ctx *save_ctx);
|
|
|
|
void panvk_per_arch(cmd_meta_gfx_end)(
|
|
struct panvk_cmd_buffer *cmdbuf,
|
|
const struct panvk_cmd_meta_graphics_save_ctx *save_ctx);
|
|
|
|
#endif
|