diff options
author | Michael Grzeschik <m.grzeschik@pengutronix.de> | 2016-07-06 10:19:45 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2016-07-08 08:59:31 +0200 |
commit | e703d1ed730df92011f37692780b40fef110dd07 (patch) | |
tree | cbddc69fc9a112d9b10ae66a33390348468e827e /common | |
parent | 46f26c0dee4d4733a386d787a690496575a10c3a (diff) | |
download | barebox-e703d1ed730df92011f37692780b40fef110dd07.tar.gz barebox-e703d1ed730df92011f37692780b40fef110dd07.tar.xz |
state: also append backend storage stridesize
Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'common')
-rw-r--r-- | common/state/backend_storage.c | 1 | ||||
-rw-r--r-- | common/state/state.c | 7 | ||||
-rw-r--r-- | common/state/state.h | 2 |
3 files changed, 10 insertions, 0 deletions
diff --git a/common/state/backend_storage.c b/common/state/backend_storage.c index efe8bac05d..c4508a8aba 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 9f4553d69a..3997f8150c 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 cd54767830..7f9651abd8 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; }; |