summaryrefslogtreecommitdiffstats
path: root/Documentation/user
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2017-12-11 15:49:00 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2017-12-11 15:58:56 +0100
commit7518e1c47765bb66ee854acb97bd285e9320df36 (patch)
treed87495489ff111d31bc3460d738bfd9b625527c3 /Documentation/user
parentab8a0debc6c42ef1f8fa57e5bdf7096a0a4b8f52 (diff)
downloadbarebox-7518e1c47765bb66ee854acb97bd285e9320df36.tar.gz
barebox-7518e1c47765bb66ee854acb97bd285e9320df36.tar.xz
Documentation: state: mention SD/eMMC devices
The state framework also has support for SD/eMMC devices, so mention them in the documentation. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'Documentation/user')
-rw-r--r--Documentation/user/state.rst46
1 files changed, 44 insertions, 2 deletions
diff --git a/Documentation/user/state.rst b/Documentation/user/state.rst
index 7d6c5770d5..d17f39befb 100644
--- a/Documentation/user/state.rst
+++ b/Documentation/user/state.rst
@@ -39,8 +39,8 @@ Backends (e.g. Supported Memory Types)
Some non-volatile memory is need for storing a *state* variable set:
-- all kinds of NOR flash memories
-- all kinds of NAND flash memories
+- Disk like devices: SD, (e)MMC, ATA
+- all kinds of NAND and NOR flash memories (mtd)
- MRAM
- EEPROM
- all kind of SRAMs (backup battery assumed)
@@ -531,6 +531,48 @@ content, its backend-type and *state* variable layout.
};
};
+SD/eMMC and ATA
+###############
+
+The following devicetree node entry defines some kind of SD/eMMC memory and
+a partition at a specific offset inside it to be used as the backend for the
+*state* variable set. Note that currently there is no support for on-disk
+partition tables. Instead, a ofpart partition description must be used. You
+have to make sure that this partition does not conflict with any other partition
+in the partition table.
+
+.. code-block:: text
+
+ backend_state_sd: part@100000 {
+ label = "state";
+ reg = <0x100000 0x20000>;
+ };
+
+With this 'backend' definition its possible to define the *state* variable set
+content, its backend-type and *state* variable layout.
+
+.. code-block:: text
+
+ aliases {
+ state = &state_sd;
+ };
+
+ state_sd: state_memory {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "barebox,state";
+ magic = <0xab67421f>;
+ backend-type = "raw";
+ backend = <&backend_state_sd>;
+ backend-stridesize = <0x40>;
+
+ variable {
+ reg = <0x0 0x1>;
+ type ="uint8";
+ default = <0x1>;
+ };
+ };
+
SRAM
####