summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--common/reset_source.c10
-rw-r--r--include/reset_source.h6
2 files changed, 16 insertions, 0 deletions
diff --git a/common/reset_source.c b/common/reset_source.c
index 3a11d26..6026af1 100644
--- a/common/reset_source.c
+++ b/common/reset_source.c
@@ -27,8 +27,18 @@ static const char * const reset_src_names[] = {
[RESET_JTAG] = "JTAG",
};
+static enum reset_src_type reset_source;
+
+enum reset_src_type reset_source_get(void)
+{
+ return reset_source;
+}
+EXPORT_SYMBOL(reset_source_get);
+
void reset_source_set(enum reset_src_type st)
{
+ reset_source = st;
+
setenv("global.system.reset", reset_src_names[st]);
}
EXPORT_SYMBOL(reset_source_set);
diff --git a/include/reset_source.h b/include/reset_source.h
index f3a203a..bff7f97 100644
--- a/include/reset_source.h
+++ b/include/reset_source.h
@@ -24,10 +24,16 @@ enum reset_src_type {
#ifdef CONFIG_RESET_SOURCE
void reset_source_set(enum reset_src_type);
+enum reset_src_type reset_source_get(void);
#else
static inline void reset_source_set(enum reset_src_type unused)
{
}
+
+static inline enum reset_src_type reset_source_get(void)
+{
+ return RESET_UKWN;
+}
#endif
#endif /* __INCLUDE_RESET_SOURCE_H */