]> git.ipfire.org Git - thirdparty/linux.git/blob - Documentation/devicetree/bindings/reserved-memory/ramoops.txt
Merge tag 'x86-fpu-2020-06-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
[thirdparty/linux.git] / Documentation / devicetree / bindings / reserved-memory / ramoops.txt
1 Ramoops oops/panic logger
2 =========================
3
4 ramoops provides persistent RAM storage for oops and panics, so they can be
5 recovered after a reboot. This is a child-node of "/reserved-memory", and
6 is named "ramoops" after the backend, rather than "pstore" which is the
7 subsystem.
8
9 Parts of this storage may be set aside for other persistent log buffers, such
10 as kernel log messages, or for optional ECC error-correction data. The total
11 size of these optional buffers must fit in the reserved region.
12
13 Any remaining space will be used for a circular buffer of oops and panic
14 records. These records have a configurable size, with a size of 0 indicating
15 that they should be disabled.
16
17 At least one of "record-size", "console-size", "ftrace-size", or "pmsg-size"
18 must be set non-zero, but are otherwise optional as listed below.
19
20
21 Required properties:
22
23 - compatible: must be "ramoops"
24
25 - reg: region of memory that is preserved between reboots
26
27
28 Optional properties:
29
30 - ecc-size: enables ECC support and specifies ECC buffer size in bytes
31 (defaults to 0: no ECC)
32
33 - record-size: maximum size in bytes of each kmsg dump.
34 (defaults to 0: disabled)
35
36 - console-size: size in bytes of log buffer reserved for kernel messages
37 (defaults to 0: disabled)
38
39 - ftrace-size: size in bytes of log buffer reserved for function tracing and
40 profiling (defaults to 0: disabled)
41
42 - pmsg-size: size in bytes of log buffer reserved for userspace messages
43 (defaults to 0: disabled)
44
45 - unbuffered: if present, use unbuffered mappings to map the reserved region
46 (defaults to buffered mappings)
47
48 - max-reason: if present, sets maximum type of kmsg dump reasons to store
49 (defaults to 2: log Oopses and Panics). This can be set to INT_MAX to
50 store all kmsg dumps. See include/linux/kmsg_dump.h KMSG_DUMP_* for other
51 kmsg dump reason values. Setting this to 0 (KMSG_DUMP_UNDEF), means the
52 reason filtering will be controlled by the printk.always_kmsg_dump boot
53 param: if unset, it will be KMSG_DUMP_OOPS, otherwise KMSG_DUMP_MAX.
54
55 - no-dump-oops: deprecated, use max_reason instead. If present, and
56 max_reason is not specified, it is equivalent to max_reason = 1
57 (KMSG_DUMP_PANIC).
58
59 - flags: if present, pass ramoops behavioral flags (defaults to 0,
60 see include/linux/pstore_ram.h RAMOOPS_FLAG_* for flag values).