[PATCH 1/3] state: only build circular backend if MTD is enabled
Lucas Stach
l.stach at pengutronix.de
Fri Jul 22 06:00:19 PDT 2016
The circular backend depends on MTD symbols and is only useful
if MTD is present. Exclude it from the build if MTD is not enabled.
Signed-off-by: Lucas Stach <l.stach at pengutronix.de>
---
common/state/Makefile | 2 +-
common/state/backend_storage.c | 6 ++++--
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/common/state/Makefile b/common/state/Makefile
index 23f72862b995..3e0e2c6e5516 100644
--- a/common/state/Makefile
+++ b/common/state/Makefile
@@ -5,5 +5,5 @@ obj-y += backend_format_dtb.o
obj-y += backend_format_raw.o
obj-y += backend_storage.o
obj-y += backend_bucket_direct.o
-obj-y += backend_bucket_circular.o
+obj-$(CONFIG_MTD) += backend_bucket_circular.o
obj-y += backend_bucket_cached.o
diff --git a/common/state/backend_storage.c b/common/state/backend_storage.c
index c4508a8aba67..5dc8c5026733 100644
--- a/common/state/backend_storage.c
+++ b/common/state/backend_storage.c
@@ -471,7 +471,7 @@ int state_storage_init(struct state_backend_storage *storage,
off_t offset, size_t max_size, uint32_t stridesize,
const char *storagetype)
{
- int ret;
+ int ret = -ENODEV;
struct mtd_info_user meminfo;
INIT_LIST_HEAD(&storage->buckets);
@@ -479,7 +479,9 @@ int state_storage_init(struct state_backend_storage *storage,
storage->name = storagetype;
storage->stridesize = stridesize;
- ret = mtd_get_meminfo(path, &meminfo);
+ if (IS_ENABLED(CONFIG_MTD))
+ ret = mtd_get_meminfo(path, &meminfo);
+
if (!ret && !(meminfo.flags & MTD_NO_ERASE)) {
bool non_circular = false;
if (!storagetype) {
--
2.8.1
More information about the barebox
mailing list