env: Move env import/export functions to env.h
authorSimon Glass <sjg@chromium.org>
Thu, 1 Aug 2019 15:46:58 +0000 (09:46 -0600)
committerTom Rini <trini@konsulko.com>
Sun, 11 Aug 2019 20:43:41 +0000 (16:43 -0400)
Move these functions to the new header file.

Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
include/env.h
include/environment.h

index 69ccfb706e030bedbff8ae8c30f0d25fff2f2e5b..0b03f8aa427298aa33e69841b0935aa8e5dfb7bb 100644 (file)
@@ -12,6 +12,8 @@
 #include <stdbool.h>
 #include <linux/types.h>
 
+struct environment_s;
+
 /**
  * env_get_id() - Gets a sequence number for the environment
  *
@@ -219,4 +221,40 @@ int env_save(void);
  */
 int env_erase(void);
 
+/**
+ * env_import() - Import from a binary representation into hash table
+ *
+ * This imports the environment from a buffer. The format for each variable is
+ * var=value\0 with a double \0 at the end of the buffer.
+ *
+ * @buf: Buffer containing the environment (struct environemnt_s *)
+ * @check: non-zero to check the CRC at the start of the environment, 0 to
+ *     ignore it
+ * @return 0 if imported successfully, -ENOMSG if the CRC was bad, -EIO if
+ *     something else went wrong
+ */
+int env_import(const char *buf, int check);
+
+/**
+ * env_export() - Export the environment to a buffer
+ *
+ * Export from hash table into binary representation
+ *
+ * @env_out: Buffer to contain the environment (must be large enough!)
+ * @return 0 if OK, 1 on error
+ */
+int env_export(struct environment_s *env_out);
+
+/**
+ * env_import_redund() - Select and import one of two redundant environments
+ *
+ * @buf1: First environment (struct environemnt_s *)
+ * @buf1_read_fail: 0 if buf1 is valid, non-zero if invalid
+ * @buf2: Second environment (struct environemnt_s *)
+ * @buf2_read_fail: 0 if buf2 is valid, non-zero if invalid
+ * @return 0 if OK, -EIO if no environment is valid, -ENOMSG if the CRC was bad
+ */
+int env_import_redund(const char *buf1, int buf1_read_fail,
+                     const char *buf2, int buf2_read_fail);
+
 #endif
index b921b8f28ea9fe1c852308da240faa6f1a8cf428..c740d5a2165bee8659356e09fb64f036fee0bdd3 100644 (file)
@@ -274,18 +274,6 @@ char *env_get_default(const char *name);
 /* [re]set to the default environment */
 void set_default_env(const char *s, int flags);
 
-/* Import from binary representation into hash table */
-int env_import(const char *buf, int check);
-
-/* Export from hash table into binary representation */
-int env_export(env_t *env_out);
-
-#ifdef CONFIG_SYS_REDUNDAND_ENVIRONMENT
-/* Select and import one of two redundant environments */
-int env_import_redund(const char *buf1, int buf1_status,
-                     const char *buf2, int buf2_status);
-#endif
-
 /**
  * env_get_char() - Get a character from the early environment
  *