From 1aeb1e4fdff012e7382599df5ea59de9383228d5 Mon Sep 17 00:00:00 2001 From: Ulrich Ölmann Date: Mon, 30 Sep 2019 09:26:11 +0200 Subject: state: harmonize code with barebox MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This ports the following barebox commit: | commit cdbeddf62b7a01f09f00e0fe94430789f4b0b05e | Author: Uwe Kleine-König | Date: Wed Sep 11 21:27:38 2019 +0200 | | state: provide dummy implementations for some functions when STATE is | disabled | | This allows to simplify some callers as can be seen from the | phytec-som-am335x/board.c change. (The check for state != NULL could be | dropped already before.) | | Signed-off-by: Uwe Kleine-König | Signed-off-by: Sascha Hauer Signed-off-by: Ulrich Ölmann --- configure.ac | 2 ++ src/state.h | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+) diff --git a/configure.ac b/configure.ac index 3033262..c2486af 100644 --- a/configure.ac +++ b/configure.ac @@ -43,6 +43,8 @@ AS_IF([test "x${enable_state_backward_compatibility}" = "xyes"], [ AC_DEFINE(CONFIG_MTD, [1], [Statically define to be enabled to harmonize barebox' & dt-utils' code base.]) +AC_DEFINE(CONFIG_STATE, [1], [Statically define to be enabled to harmonize barebox' & dt-utils' code base.]) + AC_CHECK_FUNCS([__secure_getenv secure_getenv]) my_CFLAGS="-Wall \ diff --git a/src/state.h b/src/state.h index a49155e..d98b781 100644 --- a/src/state.h +++ b/src/state.h @@ -5,6 +5,7 @@ struct state; +#if IS_ENABLED(CONFIG_STATE) struct state *state_new_from_node(struct device_node *node, bool readonly); void state_release(struct state *state); @@ -19,4 +20,39 @@ void state_info(void); int state_read_mac(struct state *state, const char *name, u8 *buf); +#else /* #if IS_ENABLED(CONFIG_STATE) */ + +static inline struct state *state_new_from_node(struct device_node *node, + bool readonly) +{ + return ERR_PTR(-ENOSYS); +} + +static inline struct state *state_by_name(const char *name) +{ + return NULL; +} + +static inline struct state *state_by_node(const struct device_node *node) +{ + return NULL; +}; + +static inline int state_load(struct state *state) +{ + return -ENOSYS; +} + +static inline int state_save(struct state *state) +{ + return -ENOSYS; +} + +static inline int state_read_mac(struct state *state, const char *name, u8 *buf) +{ + return -ENOSYS; +} + +#endif /* #if IS_ENABLED(CONFIG_STATE) / #else */ + #endif /* __STATE_H */ -- cgit v1.2.3