Introduce logging to disk feature into rockbox.

Logs information, errors, etc to disk using the register_storage_idle_func
mechanism to write to the disk when available.  Currently, this is disabled
in normal builds, but can be enabled by adding ROCKBOX_HAS_LOGDISKF to the
config file.  By default, it uses a 2KB buffer and drops text if the buffer
overflows.

The system includes a simple warning level mechanism that can be used to by
default exclude non-serious errors from logging on release builds.

Change-Id: I0a3d186a93625c7c93dae37b993a0d37e5a3a925
Reviewed-on: http://gerrit.rockbox.org/288
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
Tested-by: Michael Giacomelli <mgiacomelli@gmail.com>
Reviewed-by: Michael Giacomelli <mgiacomelli@gmail.com>
This commit is contained in:
Michael Giacomelli 2012-07-03 21:45:29 -04:00 committed by Michael Giacomelli
parent 7c31ff2fb0
commit d46b090771
4 changed files with 190 additions and 27 deletions

View file

@ -76,6 +76,7 @@
#include "skin_engine/skin_engine.h"
#include "statusbar-skinned.h"
#include "bootchart.h"
#include "logdiskf.h"
#if (CONFIG_PLATFORM & PLATFORM_ANDROID)
#include "notification.h"
#endif
@ -489,6 +490,10 @@ static void init(void)
#endif
#endif
#ifdef ROCKBOX_HAS_LOGDISKF
init_logdiskf();
#endif
#if CONFIG_RTC
rtc_init();
#endif