diff options
-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; }; |