From d47905ce270b5934a2e8952a64bcc316fd27fda0 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Sun, 3 Jun 2012 11:03:57 -0700 Subject: Make ASSERT() report assertion failures Rather than just reset the board, report assertion failures to aid debugging. To enable this, use CONFIG_ASSERT_HELP. BUG=chrome-os-partner:10149 TEST=manual Enable the option for snow, add a failing ASSERT() to the rw command and see the a nice message is printed now. ASSERTION FAILURE 'address' in command_read_word() at common/memory_commands.c:00000037 Change-Id: Ice59434c5daf610832dd0e1fcfa5630dc847bb67 Signed-off-by: Simon Glass Reviewed-on: https://gerrit.chromium.org/gerrit/25411 --- include/panic.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'include/panic.h') diff --git a/include/panic.h b/include/panic.h index 2cfda9bcee..2bef50f541 100644 --- a/include/panic.h +++ b/include/panic.h @@ -56,6 +56,18 @@ void panic_vprintf(const char *format, va_list args); */ void panic_printf(const char *format, ...); + +/** + * Report an assertion failure and reset + * + * @param msg Assertion expression or other message + * @param func Function name where assertion happened + * @param fname File name where assertion happened + * @param linenum Line number where assertion happened + */ +void panic_assert_fail(const char *msg, const char *func, const char *fname, + int linenum); + /** * Report a panic to the panic reporting device * -- cgit v1.2.1