summaryrefslogtreecommitdiffstats
path: root/Documentation/filesystems/pstore.rst
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/filesystems/pstore.rst')
-rw-r--r--Documentation/filesystems/pstore.rst74
1 files changed, 37 insertions, 37 deletions
diff --git a/Documentation/filesystems/pstore.rst b/Documentation/filesystems/pstore.rst
index 22e89b3f1f..b8c2cb825c 100644
--- a/Documentation/filesystems/pstore.rst
+++ b/Documentation/filesystems/pstore.rst
@@ -1,17 +1,17 @@
.. index:: pstore (filesystem)
-pstore filesystem with RAM backend (RAMOOPS)
-============================================
+*pstore* filesystem with RAM backend (RAMOOPS)
+==============================================
-Barebox supports the pstore filesystem known from the kernel. The main backend
+Barebox supports the *pstore* filesystem known from the kernel. The main backend
implementation is RAM. All other backends are currently not implemented by
Barebox.
-pstore is a filesystem to store kernel log or kernel panic messages. These
+*pstore* is a filesystem to store kernel log or kernel panic messages. These
messages are stored by the kernel in a specified RAM area which is never
overwritten by any user. This data can be accessed after a reboot through
-/pstore in Barebox or the kernel. The pstore filesystem is automatically mounted
-at boot:
+``/pstore`` in Barebox or the kernel. The *pstore* filesystem is automatically
+mounted at boot:
.. code-block:: none
@@ -19,7 +19,7 @@ at boot:
none on /dev type devfs
none on /pstore type pstore
-pstore may add additional warnings during boot due to wrong ECCs (no data
+*pstore* may add additional warnings during boot due to wrong ECCs (no data
written):
.. code-block:: none
@@ -40,44 +40,44 @@ written):
pstore: Registered ramoops as persistent store backend
ramoops: attached 0x200000@0x1fdf4000, ecc: 16/0
-To use pstore/RAMOOPS both Barebox and Kernel have to be compiled with pstore
+To use *pstore/RAMOOPS* both Barebox and Kernel have to be compiled with *pstore*
and RAM backend support. The kernel receives the parameters describing the
-layout over the kernel command line. These parameters are automatically
-generated by Barebox. You can change these parameters in Barebox menuconfig. The
-RAMOOPS parameters for the Kernel are stored in the variable
-global.linux.bootargs.ramoops.
+layout via devicetree or - as a fallback - over the kernel command line.
+To ensure both worlds are using the same memory layout, the required
+configuration data for the kernel is generated on-the-fly prior booting a kernel.
+For the devicetree use case Barebox adapts the kernel's devicetree, for the
+kernel command line fallback the variable ``global.linux.bootargs.ramoops`` is
+created and its content used to build the kernel command line.
-To see where the RAMOOPS area is located, you can execute iomem in Barebox. The
-RAMOOPS area is listed as 'persistent ram':
+You can adapt the *pstore* parameters in Barebox menuconfig.
+
+To see where the RAMOOPS area is located, you can execute the ``iomem`` command
+in the Barebox shell. The RAMOOPS area is listed as 'persistent ram':
.. code-block:: none
0x10000000 - 0x1fffffff (size 0x10000000) ram0
- 0x17e7c0c0 - 0x1fcf817f (size 0x07e7c0c0) malloc space
- 0x1fcf8180 - 0x1fcfffff (size 0x00007e80) board data
- 0x1fd00000 - 0x1fd6eeff (size 0x0006ef00) barebox
- 0x1fd6ef00 - 0x1fd88dff (size 0x00019f00) barebox data
- 0x1fd88e00 - 0x1fd8c3db (size 0x000035dc) bss
- 0x1fdf4000 - 0x1fe13fff (size 0x00020000) persistent ram
- 0x1fe14000 - 0x1fe33fff (size 0x00020000) persistent ram
- 0x1fe34000 - 0x1fe53fff (size 0x00020000) persistent ram
- 0x1fe54000 - 0x1fe73fff (size 0x00020000) persistent ram
- 0x1fe74000 - 0x1fe93fff (size 0x00020000) persistent ram
- 0x1fe94000 - 0x1feb3fff (size 0x00020000) persistent ram
- 0x1feb4000 - 0x1fed3fff (size 0x00020000) persistent ram
- 0x1fed4000 - 0x1fef3fff (size 0x00020000) persistent ram
- 0x1fef4000 - 0x1ff13fff (size 0x00020000) persistent ram
- 0x1ff14000 - 0x1ff33fff (size 0x00020000) persistent ram
- 0x1ff34000 - 0x1ff53fff (size 0x00020000) persistent ram
- 0x1ff54000 - 0x1ff73fff (size 0x00020000) persistent ram
- 0x1ff74000 - 0x1ff93fff (size 0x00020000) persistent ram
- 0x1ff94000 - 0x1ffb3fff (size 0x00020000) persistent ram
- 0x1ffb4000 - 0x1ffd3fff (size 0x00020000) persistent ram
- 0x1ffd4000 - 0x1fff3fff (size 0x00020000) persistent ram
- 0x1fff4000 - 0x1fff7fff (size 0x00004000) ttb
- 0x1fff8000 - 0x1fffffff (size 0x00008000) stack
+ 0x247f59c0 - 0x2fbf59bf (size 0x0b400000) malloc space
+ 0x2fbf59c0 - 0x2fbffffe (size 0x0000a63f) board data
+ 0x2fc00000 - 0x2fc8619f (size 0x000861a0) barebox
+ 0x2fc861a0 - 0x2fca35ef (size 0x0001d450) barebox data
+ 0x2fca35f0 - 0x2fca9007 (size 0x00005a18) bss
+ 0x2fdd4000 - 0x2fdf3fff (size 0x00020000) ramoops:dump(0/4)
+ 0x2fdf4000 - 0x2fe13fff (size 0x00020000) ramoops:dump(1/4)
+ 0x2fe14000 - 0x2fe33fff (size 0x00020000) ramoops:dump(2/4)
+ 0x2fe34000 - 0x2fe53fff (size 0x00020000) ramoops:dump(3/4)
+ 0x2fe54000 - 0x2fe73fff (size 0x00020000) ramoops:dump(4/4)
+ 0x2fe74000 - 0x2fe93fff (size 0x00020000) ramoops:console
+ 0x2fe94000 - 0x2feb3fff (size 0x00020000) ramoops:ftrace
+ 0x2feb4000 - 0x2fed3fff (size 0x00020000) ramoops:pmsg
+ 0x2fee4000 - 0x2fee7fff (size 0x00004000) ttb
+ 0x2fee8000 - 0x2feeffff (size 0x00008000) stack
All pstore files that could be found are added to the /pstore directory. This is
a read-only filesystem. If you disable the Kconfig option FS_PSTORE_RAMOOPS_RO,
the RAMOOPS area is reset and its ECC recalculated. But that does not allow any
writes from Barebox into that area.
+
+If the menu entry ``FS_PSTORE_CONSOLE`` is enabled, Barebox itself will add all
+its own console output to the *ramoops:console* part, which enables the regular
+userland later on to have access to the bootloaders output.