xref: /rockchip-linux_mpp/mpp/vproc/vdpp/hwpq_debug.h (revision 437bfbeb9567cca9cd9080e3f6954aa9d6a94f18)
1*437bfbebSnyanmisaka /* SPDX-License-Identifier: Apache-2.0 OR MIT */
2*437bfbebSnyanmisaka /*
3*437bfbebSnyanmisaka  * Copyright (c) 2024 Rockchip Electronics Co., Ltd.
4*437bfbebSnyanmisaka  */
5*437bfbebSnyanmisaka 
6*437bfbebSnyanmisaka #ifndef __HWPQ_DEBUG_H_
7*437bfbebSnyanmisaka #define __HWPQ_DEBUG_H_
8*437bfbebSnyanmisaka 
9*437bfbebSnyanmisaka #include <stdio.h>
10*437bfbebSnyanmisaka #include "mpp_log.h"
11*437bfbebSnyanmisaka 
12*437bfbebSnyanmisaka #define HWPQ_VDPP_TRACE           (0x00000001)
13*437bfbebSnyanmisaka #define HWPQ_VDPP_INFO            (0x00000002)
14*437bfbebSnyanmisaka #define HWPQ_VDPP_DUMP_IN         (0x00000010)
15*437bfbebSnyanmisaka #define HWPQ_VDPP_DUMP_OUT        (0x00000020)
16*437bfbebSnyanmisaka 
17*437bfbebSnyanmisaka #define HWPQ_VDPP_DBG(flag, fmt, ...)    _mpp_dbg(hwpq_vdpp_debug, flag, fmt, ## __VA_ARGS__)
18*437bfbebSnyanmisaka #define HWPQ_VDPP_DBG_F(flag, fmt, ...)  _mpp_dbg_f(hwpq_vdpp_debug, flag, fmt, ## __VA_ARGS__)
19*437bfbebSnyanmisaka 
20*437bfbebSnyanmisaka #define hwpq_vdpp_dbg(type, fmt, ...) \
21*437bfbebSnyanmisaka     do {\
22*437bfbebSnyanmisaka         if (hwpq_vdpp_debug & type)\
23*437bfbebSnyanmisaka             mpp_log(fmt, ## __VA_ARGS__);\
24*437bfbebSnyanmisaka     } while (0)
25*437bfbebSnyanmisaka 
26*437bfbebSnyanmisaka #define hwpq_vdpp_enter() \
27*437bfbebSnyanmisaka     do {\
28*437bfbebSnyanmisaka         if (hwpq_vdpp_debug & HWPQ_VDPP_TRACE)\
29*437bfbebSnyanmisaka             mpp_log("line(%d), func(%s), enter", __LINE__, __FUNCTION__);\
30*437bfbebSnyanmisaka     } while (0)
31*437bfbebSnyanmisaka 
32*437bfbebSnyanmisaka #define hwpq_vdpp_leave() \
33*437bfbebSnyanmisaka     do {\
34*437bfbebSnyanmisaka         if (hwpq_vdpp_debug & HWPQ_VDPP_TRACE)\
35*437bfbebSnyanmisaka             mpp_log("line(%d), func(%s), leave", __LINE__, __FUNCTION__);\
36*437bfbebSnyanmisaka     } while (0)
37*437bfbebSnyanmisaka 
38*437bfbebSnyanmisaka #define hwpq_vdpp_info(fmt, ...) \
39*437bfbebSnyanmisaka     do {\
40*437bfbebSnyanmisaka         if (hwpq_vdpp_debug & HWPQ_VDPP_INFO)\
41*437bfbebSnyanmisaka             mpp_log(fmt, ## __VA_ARGS__);\
42*437bfbebSnyanmisaka     } while (0)
43*437bfbebSnyanmisaka 
44*437bfbebSnyanmisaka extern RK_U32 hwpq_vdpp_debug;
45*437bfbebSnyanmisaka 
46*437bfbebSnyanmisaka #endif // __HWPQ_DEBUG_H_