aboutsummaryrefslogtreecommitdiff
path: root/doc/console-log.rst
diff options
context:
space:
mode:
authorStewart Smith <stewart@linux.vnet.ibm.com>2016-07-27 17:43:04 +1000
committerStewart Smith <stewart@linux.vnet.ibm.com>2016-08-02 17:31:12 +1000
commitcce80be2fc7d9114ea0000349cc52f0947ea00f1 (patch)
tree14670835d17bd6967b2d09c9973fb0e2dd88feca /doc/console-log.rst
parent68bf986c37252eed2e8fa3db07de02bbd47ff97a (diff)
downloadskiboot-cce80be2fc7d9114ea0000349cc52f0947ea00f1.zip
skiboot-cce80be2fc7d9114ea0000349cc52f0947ea00f1.tar.gz
skiboot-cce80be2fc7d9114ea0000349cc52f0947ea00f1.tar.bz2
doc/*.txt: rename .txt to .rst
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'doc/console-log.rst')
-rw-r--r--doc/console-log.rst60
1 files changed, 60 insertions, 0 deletions
diff --git a/doc/console-log.rst b/doc/console-log.rst
new file mode 100644
index 0000000..fbdd33b
--- /dev/null
+++ b/doc/console-log.rst
@@ -0,0 +1,60 @@
+SkiBoot Console Log
+-------------------
+
+Skiboot maintains a circular textual log buffer in memory.
+
+It can be accessed using any debugging method that can peek at
+memory contents. While the debug_descriptor does hold the location
+of the memory console, we're pretty keen on keeping its location
+static.
+
+Events are logged in the following format:
+[timebase,log_level] message
+
+You should use the new prlog() call for any log message and set the
+log level/priority appropriately.
+
+printf() is mapped to PR_PRINTF and should be phased out and replaced
+with prlog() calls.
+
+See timebase.h for full timebase explanation.
+
+Log level from skiboot.h:
+#define PR_EMERG 0
+#define PR_ALERT 1
+#define PR_CRIT 2
+#define PR_ERR 3
+#define PR_WARNING 4
+#define PR_NOTICE 5
+#define PR_PRINTF PR_NOTICE
+#define PR_INFO 6
+#define PR_DEBUG 7
+#define PR_TRACE 8
+#define PR_INSANE 9
+
+The console_log_levels byte in the debug_descriptor controls what
+messages are written to any console drivers (e.g. fsp, uart) and
+what level is just written to the in memory console (or not at all).
+
+This enables (advanced) users to vary what level of output they want
+at runtime in the memory console and through console drivers (fsp/uart)
+
+You can vary two things by poking in the debug descriptor:
+a) what log level is printed at all
+ e.g. only turn on PR_TRACE at specific points during runtime
+b) what log level goes out the fsp/uart console
+ defaults to PR_PRINTF
+
+We use two 4bit numbers (1 byte) for this in debug descriptor (saving
+some space, not needlessly wasting space that we may want in future).
+
+The default is 0x75 (7=PR_DEBUG to in memory console, 5=PR_PRINTF to drivers
+
+If you write 0x77 you will get debug info on uart/fsp console as
+well as in memory. If you write 0x95 you get PR_INSANE in memory but
+still only PR_NOTICE through drivers.
+
+People who write something like 0x1f will get a very quiet boot indeed.
+
+
+