16f971622SJuan Castillo /* 26f971622SJuan Castillo * Copyright (c) 2015, ARM Limited and Contributors. All rights reserved. 36f971622SJuan Castillo * 482cb2c1aSdp-arm * SPDX-License-Identifier: BSD-3-Clause 56f971622SJuan Castillo */ 66f971622SJuan Castillo 7*c3cf06f1SAntonio Nino Diaz #ifndef DEBUG_H 8*c3cf06f1SAntonio Nino Diaz #define DEBUG_H 96f971622SJuan Castillo 106f971622SJuan Castillo #include <stdio.h> 116f971622SJuan Castillo 126f971622SJuan Castillo /* The log output macros print output to the console. These macros produce 136f971622SJuan Castillo * compiled log output only if the LOG_LEVEL defined in the makefile (or the 146f971622SJuan Castillo * make command line) is greater or equal than the level required for that 156f971622SJuan Castillo * type of log output. 166f971622SJuan Castillo * The format expected is the same as for printf(). For example: 176f971622SJuan Castillo * INFO("Info %s.\n", "message") -> INFO: Info message. 186f971622SJuan Castillo * WARN("Warning %s.\n", "message") -> WARNING: Warning message. 196f971622SJuan Castillo */ 206f971622SJuan Castillo 216f971622SJuan Castillo #define LOG_LEVEL_NONE 0 226f971622SJuan Castillo #define LOG_LEVEL_ERROR 10 236f971622SJuan Castillo #define LOG_LEVEL_NOTICE 20 246f971622SJuan Castillo #define LOG_LEVEL_WARNING 30 256f971622SJuan Castillo #define LOG_LEVEL_INFO 40 266f971622SJuan Castillo #define LOG_LEVEL_VERBOSE 50 276f971622SJuan Castillo 286f971622SJuan Castillo 296f971622SJuan Castillo #if LOG_LEVEL >= LOG_LEVEL_NOTICE 306f971622SJuan Castillo # define NOTICE(...) printf("NOTICE: " __VA_ARGS__) 316f971622SJuan Castillo #else 326f971622SJuan Castillo # define NOTICE(...) 336f971622SJuan Castillo #endif 346f971622SJuan Castillo 356f971622SJuan Castillo #if LOG_LEVEL >= LOG_LEVEL_ERROR 366f971622SJuan Castillo # define ERROR(...) printf("ERROR: " __VA_ARGS__) 376f971622SJuan Castillo #else 386f971622SJuan Castillo # define ERROR(...) 396f971622SJuan Castillo #endif 406f971622SJuan Castillo 416f971622SJuan Castillo #if LOG_LEVEL >= LOG_LEVEL_WARNING 426f971622SJuan Castillo # define WARN(...) printf("WARNING: " __VA_ARGS__) 436f971622SJuan Castillo #else 446f971622SJuan Castillo # define WARN(...) 456f971622SJuan Castillo #endif 466f971622SJuan Castillo 476f971622SJuan Castillo #if LOG_LEVEL >= LOG_LEVEL_INFO 486f971622SJuan Castillo # define INFO(...) printf("INFO: " __VA_ARGS__) 496f971622SJuan Castillo #else 506f971622SJuan Castillo # define INFO(...) 516f971622SJuan Castillo #endif 526f971622SJuan Castillo 536f971622SJuan Castillo #if LOG_LEVEL >= LOG_LEVEL_VERBOSE 546f971622SJuan Castillo # define VERBOSE(...) printf("VERBOSE: " __VA_ARGS__) 556f971622SJuan Castillo #else 566f971622SJuan Castillo # define VERBOSE(...) 576f971622SJuan Castillo #endif 586f971622SJuan Castillo 59*c3cf06f1SAntonio Nino Diaz #endif /* DEBUG_H */ 60