debug_uart: Replace debug functions with dummies if CONFIG_DEBUG_UART is not set

In case DEBUG UART is not used, define dummy macros replacing
the actual function implementations that will not be available.
This allows to compile code and avoid linker errors.
Redefine the DEBUG_UART_FUNCS macro if DEBUG UART is not available,
to avoid compilation errors.

Signed-off-by: Lukasz Czechowski <lukasz.czechowski@thaumatec.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
This commit is contained in:
Lukasz Czechowski
2025-05-20 13:36:42 +02:00
committed by Kever Yang
parent 6773a46f11
commit 0fb68337f2

View File

@@ -128,6 +128,8 @@ void printdec(unsigned int value);
(1 << CONFIG_DEBUG_UART_SHIFT), \
CONFIG_DEBUG_UART_SHIFT)
#ifdef CONFIG_DEBUG_UART
/*
* Now define some functions - this should be inserted into the serial driver
*/
@@ -197,4 +199,22 @@ void printdec(unsigned int value);
_DEBUG_UART_ANNOUNCE \
} \
#else
#define DEBUG_UART_FUNCS
#define _printch(ch) (void)(ch)
#define printhex1(digit) (void)(digit)
#define printhex(value, digits) do { (void)(value); (void)(digits); } while(0)
#define printch(ch) (void)(ch)
#define printascii(str) (void)(str)
#define printhex2(value) (void)(value)
#define printhex4(value) (void)(value)
#define printhex8(value) (void)(value)
#define printdec(value) (void)(value)
#define debug_uart_init() ((void)0)
#endif
#endif