[PATCH v5 4/6] debug_uart: Replace debug functions with dummies if CONFIG_DEBUG_UART is not set
Kever Yang
kever.yang at rock-chips.com
Wed May 21 03:57:12 CEST 2025
On 2025/5/20 19:36, Lukasz Czechowski wrote:
> 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 at thaumatec.com>
Reviewed-by: Kever Yang <kever.yang at rock-chips.com>
Thanks,
- Kever
> ---
> include/debug_uart.h | 20 ++++++++++++++++++++
> 1 file changed, 20 insertions(+)
>
> diff --git a/include/debug_uart.h b/include/debug_uart.h
> index 714b369e6fed..d5e397d5e0ad 100644
> --- a/include/debug_uart.h
> +++ b/include/debug_uart.h
> @@ -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
>
More information about the U-Boot
mailing list