summaryrefslogtreecommitdiffstats
path: root/common/state
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2017-03-22 12:36:40 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2017-03-31 18:43:53 +0200
commit8b5b42537ab59b78d24dca35cb010f93ca71deb2 (patch)
tree23a8cb4da9f93c2e7a0c04a73267af73cc6643ea /common/state
parent4b7957533e1d9d2bc690b87456ad803d52cef33b (diff)
downloadbarebox-8b5b42537ab59b78d24dca35cb010f93ca71deb2.tar.gz
barebox-8b5b42537ab59b78d24dca35cb010f93ca71deb2.tar.xz
state: pass struct state * to storage functions
We can get a state_backend_storage * and the device * from struct state, so pass this to the storage functions rather than the two pointers. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'common/state')
-rw-r--r--common/state/backend_storage.c7
-rw-r--r--common/state/state.c2
-rw-r--r--common/state/state.h3
3 files changed, 5 insertions, 7 deletions
diff --git a/common/state/backend_storage.c b/common/state/backend_storage.c
index 5481f27df9..e1869830bd 100644
--- a/common/state/backend_storage.c
+++ b/common/state/backend_storage.c
@@ -454,7 +454,6 @@ static int state_storage_file_buckets_init(struct state_backend_storage *storage
/**
* state_storage_init - Init backend storage
- * @param storage Storage object
* @param path Path to the backend storage file
* @param dev_offset Offset in the device to start writing at.
* @param max_size Maximum size of the data. May be 0 for infinite.
@@ -465,16 +464,16 @@ static int state_storage_file_buckets_init(struct state_backend_storage *storage
*
* Depending on the filetype, we create mtd buckets or normal file buckets.
*/
-int state_storage_init(struct state_backend_storage *storage,
- struct device_d *dev, const char *path,
+int state_storage_init(struct state *state, const char *path,
off_t offset, size_t max_size, uint32_t stridesize,
const char *storagetype)
{
+ struct state_backend_storage *storage = &state->storage;
int ret = -ENODEV;
struct mtd_info_user meminfo;
INIT_LIST_HEAD(&storage->buckets);
- storage->dev = dev;
+ storage->dev = &state->dev;
storage->name = storagetype;
storage->stridesize = stridesize;
diff --git a/common/state/state.c b/common/state/state.c
index 87b704feba..8d2dca2523 100644
--- a/common/state/state.c
+++ b/common/state/state.c
@@ -602,7 +602,7 @@ struct state *state_new_from_node(struct device_node *node, char *path,
if (ret)
goto out_release_state;
- ret = state_storage_init(&state->storage, &state->dev, path, offset,
+ ret = state_storage_init(state, path, offset,
max_size, stridesize, storage_type);
if (ret)
goto out_release_state;
diff --git a/common/state/state.h b/common/state/state.h
index 254ff31a06..4ef46693c6 100644
--- a/common/state/state.h
+++ b/common/state/state.h
@@ -186,8 +186,7 @@ int backend_format_raw_create(struct state_backend_format **format,
struct device_d *dev);
int backend_format_dtb_create(struct state_backend_format **format,
struct device_d *dev);
-int state_storage_init(struct state_backend_storage *storage,
- struct device_d *dev, const char *path,
+int state_storage_init(struct state *state, const char *path,
off_t offset, size_t max_size, uint32_t stridesize,
const char *storagetype);
void state_storage_set_readonly(struct state_backend_storage *storage);