This serie of patches adds a new pstore command allowing to display or save
ramoops logs (oops, panic, console, ftrace and user) generated by a previous
kernel crash.
PStore parameters can be set in U-Boot configuration file, or at run-time
using "pstore set" command. For kernel using Device Tree, the parameters are
dynamically added to Device Tree.
Records size should be the same as the ones used by kernel, and should be a
power of 2.
Changes in v5:
- Fix test_pstore.py license
- Change log level on error messages in fdt_fixup_pstore()
- Replace fdt_appendprop_?() by fdt_setprop_?() when adding a new property
Changes in v4:
- Fix PStore memory address in sandbox defconfig files for tests
Changes in v3:
- Add default value for PStore memory size
- Remove default value of PStore memory address
- Update config entry helps
- Replace calls to debug() by log_debug()
- Update documentation
- Replace 1M test file by 3 * 4K files and build pstore memory during test
- Add fdt_fixup_pstore() to pass PStore/Ramoops parameters to kernel
Changes in v2:
- Fix 64bit mode build warnings
- Add documentation
- Add function description comments
- Replace calls to pr_debug() by debug()
- Add CONFIG_CMD_PSTORE to sandbox and sandbox64
- Add unit tests
Fr?d?ric Danis (3):
cmd: Add command to display or save Linux PStore dumps
test: Add PStore command tests
cmd: Fixup DT to pass PStore Ramoops parameters
cmd/Kconfig | 71 +++
cmd/Makefile | 1 +
cmd/pstore.c | 543 +++++++++++++++++++++
common/image-fdt.c | 4 +
configs/sandbox64_defconfig | 2 +
configs/sandbox_defconfig | 2 +
doc/index.rst | 7 +
doc/pstore.rst | 76 +++
include/fdt_support.h | 3 +
test/py/tests/test_pstore.py | 73 +++
test/py/tests/test_pstore_data_console.hex | Bin 0 -> 4096 bytes
test/py/tests/test_pstore_data_panic1.hex | Bin 0 -> 4096 bytes
test/py/tests/test_pstore_data_panic2.hex | Bin 0 -> 4096 bytes
13 files changed, 782 insertions(+)
create mode 100644 cmd/pstore.c
create mode 100644 doc/pstore.rst
create mode 100644 test/py/tests/test_pstore.py
create mode 100644 test/py/tests/test_pstore_data_console.hex
create mode 100644 test/py/tests/test_pstore_data_panic1.hex
create mode 100644 test/py/tests/test_pstore_data_panic2.hex