From 8edb3a0545c0931d6bf59af9d58aa2e7f8c780ac Mon Sep 17 00:00:00 2001 From: Sascha Hauer Date: Mon, 8 Dec 2014 10:11:04 +0100 Subject: printf: move panic() to common/misc.c panic() is not really a printf like function, so move it to common/misc.c. This is done because we want to have printf support in the PBL, but PBL has it's own panic() implementation. Signed-off-by: Sascha Hauer --- common/misc.c | 22 ++++++++++++++++++++++ lib/vsprintf.c | 21 --------------------- 2 files changed, 22 insertions(+), 21 deletions(-) diff --git a/common/misc.c b/common/misc.c index 65f3306bee..6da71c7ab7 100644 --- a/common/misc.c +++ b/common/misc.c @@ -22,6 +22,7 @@ #include #include #include +#include #include int errno; @@ -188,3 +189,24 @@ EXPORT_SYMBOL(barebox_get_hostname); BAREBOX_MAGICVAR_NAMED(global_hostname, global.hostname, "shortname of the board. Also used as hostname for DHCP requests"); + +void __noreturn panic(const char *fmt, ...) +{ + va_list args; + va_start(args, fmt); + vprintf(fmt, args); + putchar('\n'); + va_end(args); + + dump_stack(); + + led_trigger(LED_TRIGGER_PANIC, TRIGGER_ENABLE); + + if (IS_ENABLED(CONFIG_PANIC_HANG)) { + hang(); + } else { + udelay(100000); /* allow messages to go out */ + reset_cpu(0); + } +} +EXPORT_SYMBOL(panic); diff --git a/lib/vsprintf.c b/lib/vsprintf.c index 512c88247f..a1f95fed26 100644 --- a/lib/vsprintf.c +++ b/lib/vsprintf.c @@ -680,24 +680,3 @@ char *asprintf(const char *fmt, ...) return p; } EXPORT_SYMBOL(asprintf); - -void __noreturn panic(const char *fmt, ...) -{ - va_list args; - va_start(args, fmt); - vprintf(fmt, args); - putchar('\n'); - va_end(args); - - dump_stack(); - - led_trigger(LED_TRIGGER_PANIC, TRIGGER_ENABLE); - - if (IS_ENABLED(CONFIG_PANIC_HANG)) { - hang(); - } else { - udelay(100000); /* allow messages to go out */ - reset_cpu(0); - } -} -EXPORT_SYMBOL(panic); -- cgit v1.2.3