[PATCH v3 4/4] state: also append backend storage stridesize

Markus Pargmann mpa at pengutronix.de
Wed Jul 6 01:19:45 PDT 2016


From: Michael Grzeschik <m.grzeschik at pengutronix.de>

Signed-off-by: Michael Grzeschik <m.grzeschik at pengutronix.de>
---
 common/state/backend_storage.c | 1 +
 common/state/state.c           | 7 +++++++
 common/state/state.h           | 2 ++
 3 files changed, 10 insertions(+)

diff --git a/common/state/backend_storage.c b/common/state/backend_storage.c
index efe8bac05da0..c4508a8aba67 100644
--- a/common/state/backend_storage.c
+++ b/common/state/backend_storage.c
@@ -477,6 +477,7 @@ int state_storage_init(struct state_backend_storage *storage,
 	INIT_LIST_HEAD(&storage->buckets);
 	storage->dev = dev;
 	storage->name = storagetype;
+	storage->stridesize = stridesize;
 
 	ret = mtd_get_meminfo(path, &meminfo);
 	if (!ret && !(meminfo.flags & MTD_NO_ERASE)) {
diff --git a/common/state/state.c b/common/state/state.c
index 9f4553d69a55..3997f8150cc4 100644
--- a/common/state/state.c
+++ b/common/state/state.c
@@ -370,6 +370,13 @@ static int of_state_fixup(struct device_node *root, void *ctx)
 		}
 	}
 
+	if (state->backend.storage.stridesize) {
+		ret = of_property_write_u32(new_node, "backend-stridesize",
+				state->backend.storage.stridesize);
+		if (ret)
+			goto out;
+	}
+
 	/* address-cells + size-cells */
 	ret = of_property_write_u32(new_node, "#address-cells", 1);
 	if (ret)
diff --git a/common/state/state.h b/common/state/state.h
index cd5476783056..7f9651abd847 100644
--- a/common/state/state.h
+++ b/common/state/state.h
@@ -72,6 +72,8 @@ struct state_backend_storage {
 
 	const char *name;
 
+	uint32_t stridesize;
+
 	bool readonly;
 };
 
-- 
2.8.1




More information about the barebox mailing list