asahi: Move query functions to agx_query.c

New file. They're just stubs now but will get nontrivial in a moment.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20123>
This commit is contained in:
Alyssa Rosenzweig
2022-11-23 13:15:43 -05:00
parent 7a5f88cb38
commit 4dabbb761b
4 changed files with 65 additions and 50 deletions
+2 -50
View File
@@ -95,50 +95,6 @@ uint64_t agx_best_modifiers[] = {
void agx_init_state_functions(struct pipe_context *ctx);
static struct pipe_query *
agx_create_query(struct pipe_context *ctx, unsigned query_type, unsigned index)
{
struct agx_query *query = CALLOC_STRUCT(agx_query);
return (struct pipe_query *)query;
}
static void
agx_destroy_query(struct pipe_context *ctx, struct pipe_query *query)
{
FREE(query);
}
static bool
agx_begin_query(struct pipe_context *ctx, struct pipe_query *query)
{
return true;
}
static bool
agx_end_query(struct pipe_context *ctx, struct pipe_query *query)
{
return true;
}
static bool
agx_get_query_result(struct pipe_context *ctx,
struct pipe_query *query,
bool wait,
union pipe_query_result *vresult)
{
uint64_t *result = (uint64_t*)vresult;
*result = 0;
return true;
}
static void
agx_set_active_query_state(struct pipe_context *pipe, bool enable)
{
}
/*
* resource
*/
@@ -1177,12 +1133,6 @@ agx_create_context(struct pipe_screen *screen,
pctx->resource_copy_region = util_resource_copy_region;
pctx->blit = agx_blit;
pctx->flush_resource = agx_flush_resource;
pctx->create_query = agx_create_query;
pctx->destroy_query = agx_destroy_query;
pctx->begin_query = agx_begin_query;
pctx->end_query = agx_end_query;
pctx->get_query_result = agx_get_query_result;
pctx->set_active_query_state = agx_set_active_query_state;
pctx->buffer_map = u_transfer_helper_transfer_map;
pctx->buffer_unmap = u_transfer_helper_transfer_unmap;
@@ -1194,7 +1144,9 @@ agx_create_context(struct pipe_screen *screen,
pctx->texture_subdata = u_default_texture_subdata;
pctx->set_debug_callback = u_default_set_debug_callback;
pctx->invalidate_resource = agx_invalidate_resource;
agx_init_state_functions(pctx);
agx_init_query_functions(pctx);
agx_meta_init(&ctx->meta, agx_device(screen), ctx);
+60
View File
@@ -0,0 +1,60 @@
/*
* Copyright 2022 Alyssa Rosenzweig
* SPDX-License-Identifier: MIT
*/
#include "agx_state.h"
static struct pipe_query *
agx_create_query(struct pipe_context *ctx, unsigned query_type, unsigned index)
{
struct agx_query *query = calloc(1, sizeof(struct agx_query));
return (struct pipe_query *)query;
}
static void
agx_destroy_query(struct pipe_context *ctx, struct pipe_query *query)
{
free(query);
}
static bool
agx_begin_query(struct pipe_context *ctx, struct pipe_query *query)
{
return true;
}
static bool
agx_end_query(struct pipe_context *ctx, struct pipe_query *query)
{
return true;
}
static bool
agx_get_query_result(struct pipe_context *ctx,
struct pipe_query *query,
bool wait,
union pipe_query_result *vresult)
{
uint64_t *result = (uint64_t*)vresult;
*result = 0;
return true;
}
static void
agx_set_active_query_state(struct pipe_context *pipe, bool enable)
{
}
void
agx_init_query_functions(struct pipe_context *pctx)
{
pctx->create_query = agx_create_query;
pctx->destroy_query = agx_destroy_query;
pctx->begin_query = agx_begin_query;
pctx->end_query = agx_end_query;
pctx->get_query_result = agx_get_query_result;
pctx->set_active_query_state = agx_set_active_query_state;
}
+2
View File
@@ -245,6 +245,8 @@ agx_context(struct pipe_context *pctx)
return (struct agx_context *) pctx;
}
void agx_init_query_functions(struct pipe_context *ctx);
static inline void
agx_dirty_all(struct agx_context *ctx)
{
+1
View File
@@ -22,6 +22,7 @@ files_asahi = files(
'agx_batch.c',
'agx_blit.c',
'agx_pipe.c',
'agx_query.c',
'agx_state.c',
'agx_uniforms.c',
'magic.c',