summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>2010-08-27 07:15:16 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2010-08-27 14:25:19 +0200
commitfe5a1bd4f59efafb7cd7904fe5bfdc2b3f162dd7 (patch)
tree03987ea6003c6aa9c6a3249f4413ea60d05e90ec /include
parentafcb5966efb3f882662dc90cc15b8ef422273458 (diff)
downloadbarebox-fe5a1bd4f59efafb7cd7904fe5bfdc2b3f162dd7.tar.gz
barebox-fe5a1bd4f59efafb7cd7904fe5bfdc2b3f162dd7.tar.xz
introduce pure_initcall
A "pure" initcall has no dependencies on anything else, and purely initializes variables that couldn't be statically initialized. This only exists for built-in code, not for modules. Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'include')
-rw-r--r--include/init.h15
1 files changed, 11 insertions, 4 deletions
diff --git a/include/init.h b/include/init.h
index accc4d0e57..bc708743b8 100644
--- a/include/init.h
+++ b/include/init.h
@@ -14,10 +14,17 @@ typedef int (*initcall_t)(void);
__attribute__((__section__(".initcall." level))) = fn
-#define core_initcall(fn) __define_initcall("0",fn,0)
-#define postcore_initcall(fn) __define_initcall("1",fn,1)
-#define console_initcall(fn) __define_initcall("2",fn,2)
-#define postconsole_initcall(fn) __define_initcall("3",fn,3)
+/*
+ * A "pure" initcall has no dependencies on anything else, and purely
+ * initializes variables that couldn't be statically initialized.
+ *
+ * This only exists for built-in code, not for modules.
+ */
+#define pure_initcall(fn) __define_initcall("0",fn,0)
+
+#define core_initcall(fn) __define_initcall("1",fn,1)
+#define postcore_initcall(fn) __define_initcall("2",fn,2)
+#define console_initcall(fn) __define_initcall("3",fn,3)
#define coredevice_initcall(fn) __define_initcall("4",fn,4)
#define fs_initcall(fn) __define_initcall("5",fn,5)
#define device_initcall(fn) __define_initcall("6",fn,6)