summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYiwei Zhang <zzyiwei@chromium.org>2023-01-17 19:57:04 -0800
committerMarge Bot <emma+marge@anholt.net>2023-02-01 01:18:07 +0000
commitc2f17cc7b508c820e4ff72c266a05b03eacb60ad (patch)
treefac796962bc62bee42c81de24fc21913564d187d
parent12e546d9362ac306a1d6b91bfcac0c6756f8bf80 (diff)
vkr: move debug option to vkr_common
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org> Part-of: <https://gitlab.freedesktop.org/virgl/virglrenderer/-/merge_requests/973>
-rw-r--r--src/venus/vkr_common.c16
-rw-r--r--src/venus/vkr_common.h3
-rw-r--r--src/venus/vkr_renderer.c11
3 files changed, 21 insertions, 9 deletions
diff --git a/src/venus/vkr_common.c b/src/venus/vkr_common.c
index e3c3362..7e76b90 100644
--- a/src/venus/vkr_common.c
+++ b/src/venus/vkr_common.c
@@ -8,6 +8,7 @@
#include <stdarg.h>
#include <stdio.h>
+#include "util/u_debug.h"
#include "venus-protocol/vn_protocol_renderer_info.h"
#include "vkr_context.h"
@@ -123,6 +124,21 @@ static const struct vn_info_extension_table vkr_extension_table = {
.VALVE_mutable_descriptor_type = true,
};
+static const struct debug_named_value vkr_debug_options[] = {
+ { "validate", VKR_DEBUG_VALIDATE, "Force enabling the validation layer" },
+ DEBUG_NAMED_VALUE_END
+};
+
+uint32_t vkr_debug_flags;
+
+DEBUG_GET_ONCE_FLAGS_OPTION(vkr_debug_flags, "VKR_DEBUG", vkr_debug_options, 0)
+
+void
+vkr_debug_init(void)
+{
+ vkr_debug_flags = debug_get_option_vkr_debug_flags();
+}
+
void
vkr_log(const char *fmt, ...)
{
diff --git a/src/venus/vkr_common.h b/src/venus/vkr_common.h
index c6e58b3..27ae28d 100644
--- a/src/venus/vkr_common.h
+++ b/src/venus/vkr_common.h
@@ -153,6 +153,9 @@ struct vkr_region {
extern uint32_t vkr_debug_flags;
void
+vkr_debug_init(void);
+
+void
vkr_log(const char *fmt, ...);
static inline uint32_t
diff --git a/src/venus/vkr_renderer.c b/src/venus/vkr_renderer.c
index 848a762..c38f75f 100644
--- a/src/venus/vkr_renderer.c
+++ b/src/venus/vkr_renderer.c
@@ -6,20 +6,13 @@
#include "vkr_common.h"
#include "util/os_file.h"
-#include "util/u_debug.h"
#include "venus-protocol/vn_protocol_renderer_info.h"
#include "virgl_context.h"
#include "virglrenderer_hw.h"
#include "vkr_context.h"
-static const struct debug_named_value vkr_debug_options[] = {
- { "validate", VKR_DEBUG_VALIDATE, "Force enabling the validation layer" },
- DEBUG_NAMED_VALUE_END
-};
-
const struct virgl_renderer_callbacks *vkr_renderer_cbs;
-uint32_t vkr_debug_flags;
size_t
vkr_get_capset(void *capset)
@@ -72,7 +65,8 @@ vkr_renderer_init(uint32_t flags,
virgl_log_set_logger(debug_cb);
vkr_renderer_cbs = cbs;
- vkr_debug_flags = debug_get_flags_option("VKR_DEBUG", vkr_debug_options, 0);
+
+ vkr_debug_init();
int ret = virgl_resource_table_init(NULL);
if (ret)
@@ -93,7 +87,6 @@ vkr_renderer_fini(void)
virgl_context_table_cleanup();
virgl_resource_table_cleanup();
- vkr_debug_flags = 0;
vkr_renderer_cbs = NULL;
}