summaryrefslogtreecommitdiff
path: root/mali_kbase/debug/backend/mali_kbase_debug_ktrace_jm.h
diff options
context:
space:
mode:
Diffstat (limited to 'mali_kbase/debug/backend/mali_kbase_debug_ktrace_jm.h')
-rw-r--r--mali_kbase/debug/backend/mali_kbase_debug_ktrace_jm.h254
1 files changed, 121 insertions, 133 deletions
diff --git a/mali_kbase/debug/backend/mali_kbase_debug_ktrace_jm.h b/mali_kbase/debug/backend/mali_kbase_debug_ktrace_jm.h
index ffae8d4..71c98b2 100644
--- a/mali_kbase/debug/backend/mali_kbase_debug_ktrace_jm.h
+++ b/mali_kbase/debug/backend/mali_kbase_debug_ktrace_jm.h
@@ -1,7 +1,7 @@
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
/*
*
- * (C) COPYRIGHT 2020-2021 ARM Limited. All rights reserved.
+ * (C) COPYRIGHT 2020-2023 ARM Limited. All rights reserved.
*
* This program is free software and is provided to you under the terms of the
* GNU General Public License version 2 as published by the Free Software
@@ -40,33 +40,31 @@
*
* PRIVATE: do not use directly. Use KBASE_KTRACE_ADD_JM() instead.
*/
-void kbasep_ktrace_add_jm(struct kbase_device *kbdev,
- enum kbase_ktrace_code code,
- struct kbase_context *kctx,
- const struct kbase_jd_atom *katom, u64 gpu_addr,
- kbase_ktrace_flag_t flags, int refcount, int jobslot,
- u64 info_val);
+void kbasep_ktrace_add_jm(struct kbase_device *kbdev, enum kbase_ktrace_code code,
+ struct kbase_context *kctx, const struct kbase_jd_atom *katom,
+ u64 gpu_addr, kbase_ktrace_flag_t flags, int refcount,
+ unsigned int jobslot, u64 info_val);
-#define KBASE_KTRACE_RBUF_ADD_JM(kbdev, code, kctx, katom, gpu_addr, flags, \
- refcount, jobslot, info_val) \
- kbasep_ktrace_add_jm(kbdev, KBASE_KTRACE_CODE(code), kctx, katom, \
- gpu_addr, flags, refcount, jobslot, info_val)
+#define KBASE_KTRACE_RBUF_ADD_JM(kbdev, code, kctx, katom, gpu_addr, flags, refcount, jobslot, \
+ info_val) \
+ kbasep_ktrace_add_jm(kbdev, KBASE_KTRACE_CODE(code), kctx, katom, gpu_addr, flags, \
+ refcount, jobslot, info_val)
#else /* KBASE_KTRACE_TARGET_RBUF */
-#define KBASE_KTRACE_RBUF_ADD_JM(kbdev, code, kctx, katom, gpu_addr, flags, \
- refcount, jobslot, info_val) \
- do {\
- CSTD_UNUSED(kbdev);\
- CSTD_NOP(code);\
- CSTD_UNUSED(kctx);\
- CSTD_UNUSED(katom);\
- CSTD_UNUSED(gpu_addr);\
- CSTD_UNUSED(flags);\
- CSTD_UNUSED(refcount);\
- CSTD_UNUSED(jobslot);\
- CSTD_UNUSED(info_val);\
- CSTD_NOP(0);\
+#define KBASE_KTRACE_RBUF_ADD_JM(kbdev, code, kctx, katom, gpu_addr, flags, refcount, jobslot, \
+ info_val) \
+ do { \
+ CSTD_UNUSED(kbdev); \
+ CSTD_NOP(code); \
+ CSTD_UNUSED(kctx); \
+ CSTD_UNUSED(katom); \
+ CSTD_UNUSED(gpu_addr); \
+ CSTD_UNUSED(flags); \
+ CSTD_UNUSED(refcount); \
+ CSTD_UNUSED(jobslot); \
+ CSTD_UNUSED(info_val); \
+ CSTD_NOP(0); \
} while (0)
#endif /* KBASE_KTRACE_TARGET_RBUF */
@@ -77,85 +75,79 @@ void kbasep_ktrace_add_jm(struct kbase_device *kbdev,
* included by the parent header file
*/
#if KBASE_KTRACE_TARGET_FTRACE
-#define KBASE_KTRACE_FTRACE_ADD_JM_SLOT(kbdev, code, kctx, katom, gpu_addr, \
- jobslot) \
+#define KBASE_KTRACE_FTRACE_ADD_JM_SLOT(kbdev, code, kctx, katom, gpu_addr, jobslot) \
trace_mali_##code(kctx, jobslot, 0)
-#define KBASE_KTRACE_FTRACE_ADD_JM_SLOT_INFO(kbdev, code, kctx, katom, \
- gpu_addr, jobslot, info_val) \
+#define KBASE_KTRACE_FTRACE_ADD_JM_SLOT_INFO(kbdev, code, kctx, katom, gpu_addr, jobslot, \
+ info_val) \
trace_mali_##code(kctx, jobslot, info_val)
-#define KBASE_KTRACE_FTRACE_ADD_JM_REFCOUNT(kbdev, code, kctx, katom, \
- gpu_addr, refcount) \
+#define KBASE_KTRACE_FTRACE_ADD_JM_REFCOUNT(kbdev, code, kctx, katom, gpu_addr, refcount) \
trace_mali_##code(kctx, refcount, 0)
-#define KBASE_KTRACE_FTRACE_ADD_JM_REFCOUNT_INFO(kbdev, code, kctx, katom, \
- gpu_addr, refcount, info_val) \
+#define KBASE_KTRACE_FTRACE_ADD_JM_REFCOUNT_INFO(kbdev, code, kctx, katom, gpu_addr, refcount, \
+ info_val) \
trace_mali_##code(kctx, refcount, info_val)
-#define KBASE_KTRACE_FTRACE_ADD_JM(kbdev, code, kctx, katom, gpu_addr, \
- info_val) \
+#define KBASE_KTRACE_FTRACE_ADD_JM(kbdev, code, kctx, katom, gpu_addr, info_val) \
trace_mali_##code(kctx, gpu_addr, info_val)
#else /* KBASE_KTRACE_TARGET_FTRACE */
-#define KBASE_KTRACE_FTRACE_ADD_JM_SLOT(kbdev, code, kctx, katom, gpu_addr, \
- jobslot) \
- do {\
- CSTD_UNUSED(kbdev);\
- CSTD_NOP(code);\
- CSTD_UNUSED(kctx);\
- CSTD_UNUSED(katom);\
- CSTD_UNUSED(gpu_addr);\
- CSTD_UNUSED(jobslot);\
- CSTD_NOP(0);\
+#define KBASE_KTRACE_FTRACE_ADD_JM_SLOT(kbdev, code, kctx, katom, gpu_addr, jobslot) \
+ do { \
+ CSTD_UNUSED(kbdev); \
+ CSTD_NOP(code); \
+ CSTD_UNUSED(kctx); \
+ CSTD_UNUSED(katom); \
+ CSTD_UNUSED(gpu_addr); \
+ CSTD_UNUSED(jobslot); \
+ CSTD_NOP(0); \
} while (0)
-#define KBASE_KTRACE_FTRACE_ADD_JM_SLOT_INFO(kbdev, code, kctx, katom, \
- gpu_addr, jobslot, info_val) \
- do {\
- CSTD_UNUSED(kbdev);\
- CSTD_NOP(code);\
- CSTD_UNUSED(kctx);\
- CSTD_UNUSED(katom);\
- CSTD_UNUSED(gpu_addr);\
- CSTD_UNUSED(jobslot);\
- CSTD_UNUSED(info_val);\
- CSTD_NOP(0);\
+#define KBASE_KTRACE_FTRACE_ADD_JM_SLOT_INFO(kbdev, code, kctx, katom, gpu_addr, jobslot, \
+ info_val) \
+ do { \
+ CSTD_UNUSED(kbdev); \
+ CSTD_NOP(code); \
+ CSTD_UNUSED(kctx); \
+ CSTD_UNUSED(katom); \
+ CSTD_UNUSED(gpu_addr); \
+ CSTD_UNUSED(jobslot); \
+ CSTD_UNUSED(info_val); \
+ CSTD_NOP(0); \
} while (0)
-#define KBASE_KTRACE_FTRACE_ADD_JM_REFCOUNT(kbdev, code, kctx, katom, \
- gpu_addr, refcount) \
- do {\
- CSTD_UNUSED(kbdev);\
- CSTD_NOP(code);\
- CSTD_UNUSED(kctx);\
- CSTD_UNUSED(katom);\
- CSTD_UNUSED(gpu_addr);\
- CSTD_UNUSED(refcount);\
- CSTD_NOP(0);\
+#define KBASE_KTRACE_FTRACE_ADD_JM_REFCOUNT(kbdev, code, kctx, katom, gpu_addr, refcount) \
+ do { \
+ CSTD_UNUSED(kbdev); \
+ CSTD_NOP(code); \
+ CSTD_UNUSED(kctx); \
+ CSTD_UNUSED(katom); \
+ CSTD_UNUSED(gpu_addr); \
+ CSTD_UNUSED(refcount); \
+ CSTD_NOP(0); \
} while (0)
-#define KBASE_KTRACE_FTRACE_ADD_JM_REFCOUNT_INFO(kbdev, code, kctx, katom, \
- gpu_addr, refcount, info_val) \
- do {\
- CSTD_UNUSED(kbdev);\
- CSTD_NOP(code);\
- CSTD_UNUSED(kctx);\
- CSTD_UNUSED(katom);\
- CSTD_UNUSED(gpu_addr);\
- CSTD_UNUSED(info_val);\
- CSTD_NOP(0);\
+#define KBASE_KTRACE_FTRACE_ADD_JM_REFCOUNT_INFO(kbdev, code, kctx, katom, gpu_addr, refcount, \
+ info_val) \
+ do { \
+ CSTD_UNUSED(kbdev); \
+ CSTD_NOP(code); \
+ CSTD_UNUSED(kctx); \
+ CSTD_UNUSED(katom); \
+ CSTD_UNUSED(gpu_addr); \
+ CSTD_UNUSED(info_val); \
+ CSTD_NOP(0); \
} while (0)
-#define KBASE_KTRACE_FTRACE_ADD_JM(kbdev, code, kctx, katom, gpu_addr, \
- info_val)\
- do {\
- CSTD_UNUSED(kbdev);\
- CSTD_NOP(code);\
- CSTD_UNUSED(kctx);\
- CSTD_UNUSED(katom);\
- CSTD_UNUSED(gpu_addr);\
- CSTD_UNUSED(info_val);\
- CSTD_NOP(0);\
+#define KBASE_KTRACE_FTRACE_ADD_JM(kbdev, code, kctx, katom, gpu_addr, info_val) \
+ do { \
+ CSTD_UNUSED(kbdev); \
+ CSTD_NOP(code); \
+ CSTD_UNUSED(kctx); \
+ CSTD_UNUSED(katom); \
+ CSTD_UNUSED(gpu_addr); \
+ CSTD_UNUSED(info_val); \
+ CSTD_NOP(0); \
} while (0)
#endif /* KBASE_KTRACE_TARGET_FTRACE */
@@ -179,15 +171,13 @@ void kbasep_ktrace_add_jm(struct kbase_device *kbdev,
* a) be static or static inline, and
* b) just return 0 and have no other statements present in the body.
*/
-#define KBASE_KTRACE_ADD_JM_SLOT(kbdev, code, kctx, katom, gpu_addr, \
- jobslot) \
- do { \
- /* capture values that could come from non-pure function calls */ \
- u64 __gpu_addr = gpu_addr; \
- int __jobslot = jobslot; \
- KBASE_KTRACE_RBUF_ADD_JM(kbdev, code, kctx, katom, __gpu_addr, \
- KBASE_KTRACE_FLAG_JM_JOBSLOT, 0, __jobslot, \
- 0); \
+#define KBASE_KTRACE_ADD_JM_SLOT(kbdev, code, kctx, katom, gpu_addr, jobslot) \
+ do { \
+ /* capture values that could come from non-pure function calls */ \
+ u64 __gpu_addr = gpu_addr; \
+ unsigned int __jobslot = jobslot; \
+ KBASE_KTRACE_RBUF_ADD_JM(kbdev, code, kctx, katom, __gpu_addr, \
+ KBASE_KTRACE_FLAG_JM_JOBSLOT, 0, __jobslot, 0); \
KBASE_KTRACE_FTRACE_ADD_JM_SLOT(kbdev, code, kctx, katom, __gpu_addr, __jobslot); \
} while (0)
@@ -208,17 +198,16 @@ void kbasep_ktrace_add_jm(struct kbase_device *kbdev,
* a) be static or static inline, and
* b) just return 0 and have no other statements present in the body.
*/
-#define KBASE_KTRACE_ADD_JM_SLOT_INFO(kbdev, code, kctx, katom, gpu_addr, \
- jobslot, info_val) \
- do { \
- /* capture values that could come from non-pure function calls */ \
- u64 __gpu_addr = gpu_addr; \
- int __jobslot = jobslot; \
- u64 __info_val = info_val; \
- KBASE_KTRACE_RBUF_ADD_JM(kbdev, code, kctx, katom, __gpu_addr, \
- KBASE_KTRACE_FLAG_JM_JOBSLOT, 0, __jobslot, \
- __info_val); \
- KBASE_KTRACE_FTRACE_ADD_JM_SLOT_INFO(kbdev, code, kctx, katom, __gpu_addr, __jobslot, __info_val); \
+#define KBASE_KTRACE_ADD_JM_SLOT_INFO(kbdev, code, kctx, katom, gpu_addr, jobslot, info_val) \
+ do { \
+ /* capture values that could come from non-pure function calls */ \
+ u64 __gpu_addr = gpu_addr; \
+ unsigned int __jobslot = jobslot; \
+ u64 __info_val = info_val; \
+ KBASE_KTRACE_RBUF_ADD_JM(kbdev, code, kctx, katom, __gpu_addr, \
+ KBASE_KTRACE_FLAG_JM_JOBSLOT, 0, __jobslot, __info_val); \
+ KBASE_KTRACE_FTRACE_ADD_JM_SLOT_INFO(kbdev, code, kctx, katom, __gpu_addr, \
+ __jobslot, __info_val); \
} while (0)
/**
@@ -237,16 +226,15 @@ void kbasep_ktrace_add_jm(struct kbase_device *kbdev,
* a) be static or static inline, and
* b) just return 0 and have no other statements present in the body.
*/
-#define KBASE_KTRACE_ADD_JM_REFCOUNT(kbdev, code, kctx, katom, gpu_addr, \
- refcount) \
- do { \
- /* capture values that could come from non-pure function calls */ \
- u64 __gpu_addr = gpu_addr; \
- int __refcount = refcount; \
- KBASE_KTRACE_RBUF_ADD_JM(kbdev, code, kctx, katom, __gpu_addr, \
- KBASE_KTRACE_FLAG_JM_REFCOUNT, __refcount, 0, \
- 0u); \
- KBASE_KTRACE_FTRACE_ADD_JM_REFCOUNT(kbdev, code, kctx, katom, __gpu_addr, __refcount); \
+#define KBASE_KTRACE_ADD_JM_REFCOUNT(kbdev, code, kctx, katom, gpu_addr, refcount) \
+ do { \
+ /* capture values that could come from non-pure function calls */ \
+ u64 __gpu_addr = gpu_addr; \
+ int __refcount = refcount; \
+ KBASE_KTRACE_RBUF_ADD_JM(kbdev, code, kctx, katom, __gpu_addr, \
+ KBASE_KTRACE_FLAG_JM_REFCOUNT, __refcount, 0, 0u); \
+ KBASE_KTRACE_FTRACE_ADD_JM_REFCOUNT(kbdev, code, kctx, katom, __gpu_addr, \
+ (unsigned int)__refcount); \
} while (0)
/**
@@ -267,17 +255,17 @@ void kbasep_ktrace_add_jm(struct kbase_device *kbdev,
* a) be static or static inline, and
* b) just return 0 and have no other statements present in the body.
*/
-#define KBASE_KTRACE_ADD_JM_REFCOUNT_INFO(kbdev, code, kctx, katom, \
- gpu_addr, refcount, info_val) \
- do { \
- /* capture values that could come from non-pure function calls */ \
- u64 __gpu_addr = gpu_addr; \
- int __refcount = refcount; \
- u64 __info_val = info_val; \
- KBASE_KTRACE_RBUF_ADD_JM(kbdev, code, kctx, katom, __gpu_addr, \
- KBASE_KTRACE_FLAG_JM_REFCOUNT, __refcount, 0, \
- __info_val); \
- KBASE_KTRACE_FTRACE_ADD_JM_REFCOUNT(kbdev, code, kctx, katom, __gpu_addr, __refcount, __info_val); \
+#define KBASE_KTRACE_ADD_JM_REFCOUNT_INFO(kbdev, code, kctx, katom, gpu_addr, refcount, info_val) \
+ do { \
+ /* capture values that could come from non-pure function calls */ \
+ u64 __gpu_addr = gpu_addr; \
+ int __refcount = refcount; \
+ u64 __info_val = info_val; \
+ KBASE_KTRACE_RBUF_ADD_JM(kbdev, code, kctx, katom, __gpu_addr, \
+ KBASE_KTRACE_FLAG_JM_REFCOUNT, __refcount, 0, \
+ __info_val); \
+ KBASE_KTRACE_FTRACE_ADD_JM_REFCOUNT(kbdev, code, kctx, katom, __gpu_addr, \
+ (unsigned int)__refcount, __info_val); \
} while (0)
/**
@@ -296,13 +284,13 @@ void kbasep_ktrace_add_jm(struct kbase_device *kbdev,
* a) be static or static inline, and
* b) just return 0 and have no other statements present in the body.
*/
-#define KBASE_KTRACE_ADD_JM(kbdev, code, kctx, katom, gpu_addr, info_val) \
- do { \
- /* capture values that could come from non-pure function calls */ \
- u64 __gpu_addr = gpu_addr; \
- u64 __info_val = info_val; \
- KBASE_KTRACE_RBUF_ADD_JM(kbdev, code, kctx, katom, __gpu_addr, \
- 0u, 0, 0, __info_val); \
+#define KBASE_KTRACE_ADD_JM(kbdev, code, kctx, katom, gpu_addr, info_val) \
+ do { \
+ /* capture values that could come from non-pure function calls */ \
+ u64 __gpu_addr = gpu_addr; \
+ u64 __info_val = info_val; \
+ KBASE_KTRACE_RBUF_ADD_JM(kbdev, code, kctx, katom, __gpu_addr, 0u, 0, 0, \
+ __info_val); \
KBASE_KTRACE_FTRACE_ADD_JM(kbdev, code, kctx, katom, __gpu_addr, __info_val); \
} while (0)