diff options
Diffstat (limited to 'arch/blackfin/cpu/os_log.c')
-rw-r--r-- | arch/blackfin/cpu/os_log.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/arch/blackfin/cpu/os_log.c b/arch/blackfin/cpu/os_log.c new file mode 100644 index 0000000..e1c8e29 --- /dev/null +++ b/arch/blackfin/cpu/os_log.c @@ -0,0 +1,30 @@ +/* + * functions for handling OS log buffer + * + * Copyright (c) 2009 Analog Devices Inc. + * + * Licensed under the 2-clause BSD. + */ + +#include <common.h> + +#define OS_LOG_MAGIC 0xDEADBEEF +#define OS_LOG_MAGIC_ADDR ((unsigned long *)0x4f0) +#define OS_LOG_PTR_ADDR ((char **)0x4f4) + +bool bfin_os_log_check(void) +{ + if (*OS_LOG_MAGIC_ADDR != OS_LOG_MAGIC) + return false; + *OS_LOG_MAGIC_ADDR = 0; + return true; +} + +void bfin_os_log_dump(void) +{ + char *log = *OS_LOG_PTR_ADDR; + while (*log) { + puts(log); + log += strlen(log) + 1; + } +} |