summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorMichael Olbrich <m.olbrich@pengutronix.de>2017-10-12 12:26:56 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2017-10-17 08:46:08 +0200
commitfb639086d37bb0731562405edbda7f9e842c498f (patch)
treecf5fd1c6a5e4e180f3bf430cdaf84284d1c72957 /arch
parent6690cb957d6d45cae785b41f24502ddaf25efbb3 (diff)
downloadbarebox-fb639086d37bb0731562405edbda7f9e842c498f.tar.gz
barebox-fb639086d37bb0731562405edbda7f9e842c498f.tar.xz
vexpress: add bootstate node to the device tree
Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/dts/vexpress-v2p-ca9.dts63
1 files changed, 63 insertions, 0 deletions
diff --git a/arch/arm/dts/vexpress-v2p-ca9.dts b/arch/arm/dts/vexpress-v2p-ca9.dts
index 541840ae22..d0975330f2 100644
--- a/arch/arm/dts/vexpress-v2p-ca9.dts
+++ b/arch/arm/dts/vexpress-v2p-ca9.dts
@@ -6,6 +6,10 @@
device-path = &barebox_env;
};
+ aliases {
+ state = &state;
+ };
+
smb@4000000 {
motherboard {
flash@0,00000000 {
@@ -21,6 +25,65 @@
label = "barebox-environment";
reg = <0x80000 0x80000>;
};
+
+ state_storage: partition@100000 {
+ label = "barebox-state";
+ reg = <0x100000 0x100000>;
+ };
+ };
+ };
+ };
+
+ /* State: mutable part */
+ state: state {
+ magic = <0x4d433230>;
+ compatible = "barebox,state";
+ backend-type = "raw";
+ backend = <&state_storage>;
+ backend-stridesize = <0x40>;
+ backend-storage-type = "circular";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ bootstate {
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ system0 { /* the node's name here must match the subnode's name in the 'bootstate' node */
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ remaining_attempts@0 {
+ reg = <0x0 0x4>;
+ type = "uint32";
+ default = <3>;
+ };
+ priority@4 {
+ reg = <0x4 0x4>;
+ type = "uint32";
+ default = <20>;
+ };
+ };
+
+ system1 { /* the node's name here must match the subnode's name in the 'bootstate' node */
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ remaining_attempts@8 {
+ reg = <0x8 0x4>;
+ type = "uint32";
+ default = <3>;
+ };
+ priority@c {
+ reg = <0xC 0x4>;
+ type = "uint32";
+ default = <20>;
+ };
+ };
+
+ last_chosen@10 {
+ reg = <0x10 0x4>;
+ type = "uint32";
};
};
};