]> git.ipfire.org Git - people/ms/u-boot.git/blobdiff - include/env_callback.h
Merge git://git.denx.de/u-boot-sh
[people/ms/u-boot.git] / include / env_callback.h
index f90a7fa3b6463a8cd0b5ffa2c6f8002197567af3..5c4a30c2deeed2fd810f6f7fbb6c7dfdd2aacde0 100644 (file)
 #define SPLASHIMAGE_CALLBACK
 #endif
 
+#ifdef CONFIG_REGEX
+#define ENV_DOT_ESCAPE "\\"
+#define ETHADDR_WILDCARD "\\d?"
+#else
+#define ENV_DOT_ESCAPE
+#define ETHADDR_WILDCARD
+#endif
+
+#ifdef CONFIG_CMD_DNS
+#define DNS_CALLBACK "dnsip:dnsip,"
+#else
+#define DNS_CALLBACK
+#endif
+
+#ifdef CONFIG_NET
+#define NET_CALLBACKS \
+       "bootfile:bootfile," \
+       "ipaddr:ipaddr," \
+       "gatewayip:gatewayip," \
+       "netmask:netmask," \
+       "serverip:serverip," \
+       "nvlan:nvlan," \
+       "vlan:vlan," \
+       DNS_CALLBACK \
+       "eth" ETHADDR_WILDCARD "addr:ethaddr,"
+#else
+#define NET_CALLBACKS
+#endif
+
 /*
  * This list of callback bindings is static, but may be overridden by defining
  * a new association in the ".callbacks" environment variable.
  */
-#define ENV_CALLBACK_LIST_STATIC ENV_CALLBACK_VAR ":callbacks," \
-       ENV_FLAGS_VAR ":flags," \
+#define ENV_CALLBACK_LIST_STATIC ENV_DOT_ESCAPE ENV_CALLBACK_VAR ":callbacks," \
+       ENV_DOT_ESCAPE ENV_FLAGS_VAR ":flags," \
        "baudrate:baudrate," \
-       "bootfile:bootfile," \
+       NET_CALLBACKS \
        "loadaddr:loadaddr," \
        SILENT_CALLBACK \
        SPLASHIMAGE_CALLBACK \
        "stdin:console,stdout:console,stderr:console," \
+       "serial#:serialno," \
        CONFIG_ENV_CALLBACK_LIST_STATIC
 
 struct env_clbk_tbl {
@@ -60,7 +90,7 @@ void env_callback_init(ENTRY *var_entry);
  */
 #ifdef CONFIG_SPL_BUILD
 #define U_BOOT_ENV_CALLBACK(name, callback) \
-       static inline void _u_boot_env_noop_##name(void) \
+       static inline __maybe_unused void _u_boot_env_noop_##name(void) \
        { \
                (void)callback; \
        }