Implement a leaner printf for Trusted Firmware

This patch implements a "tf_printf" which supports only the commonly
used format specifiers in Trusted Firmware, which uses a lot less
stack space than the stdlib printf function.

Fixes ARM-software/tf-issues#116

Change-Id: I7dfa1944f4c1e634b3e2d571f49afe02d109a351
This commit is contained in:
Soby Mathew 2014-06-12 17:23:58 +01:00
parent a1a441775f
commit b79af93445
11 changed files with 180 additions and 38 deletions

View file

@ -43,14 +43,14 @@
* TODO : add debug levels.
*/
#if DEBUG
#define INFO(...) printf("INFO: " __VA_ARGS__)
#define WARN(...) printf("WARN: " __VA_ARGS__)
#define INFO(...) tf_printf("INFO: " __VA_ARGS__)
#define WARN(...) tf_printf("WARN: " __VA_ARGS__)
#else
#define INFO(...)
#define WARN(...)
#endif
#define ERROR(...) printf("ERROR: " __VA_ARGS__)
#define ERROR(...) tf_printf("ERROR: " __VA_ARGS__)
/* For the moment this Panic function is very basic, Report an error and
@ -67,5 +67,7 @@ void __dead2 do_panic(void);
#endif
void print_string_value(char *s, unsigned long *mem);
void tf_printf(const char *fmt, ...);
#endif /* __DEBUG_H__ */