diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2009-06-10 23:37:32 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2009-07-21 16:41:46 +0200 |
commit | db0d705898f5bcca10a916dbed1b3f2e5e6212a1 (patch) | |
tree | 6ee98eabfcfa376d43f7d30e1933e209196fad64 /common | |
parent | 4b34297cfbf8b6d88a602898f0db05b5bf5bf8fd (diff) | |
download | barebox-db0d705898f5bcca10a916dbed1b3f2e5e6212a1.tar.gz barebox-db0d705898f5bcca10a916dbed1b3f2e5e6212a1.tar.xz |
move some init work into initcalls
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'common')
-rw-r--r-- | common/startup.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/common/startup.c b/common/startup.c index 0f67ca43af..f0448e6f2b 100644 --- a/common/startup.c +++ b/common/startup.c @@ -86,17 +86,25 @@ static struct device_d default_env_dev = { .platform_data = &default_env_platform_data, }; -static void register_default_env(void) +static int register_default_env(void) { default_env_dev.map_base = (unsigned long)default_environment; default_env_dev.size = sizeof(default_environment); register_device(&default_env_dev); + return 0; } -#else -static void register_default_env(void) + +device_initcall(register_default_env); +#endif + +static int mount_root(void) { + mount("none", "ramfs", "/"); + mkdir("/dev", 0); + mount("none", "devfs", "/dev"); + return 0; } -#endif +fs_initcall(mount_root); void start_uboot (void) { @@ -125,12 +133,6 @@ void start_uboot (void) display_meminfo(); - register_default_env(); - - mount("none", "ramfs", "/"); - mkdir("/dev", 0); - mount("none", "devfs", "/dev"); - #ifdef CONFIG_ENV_HANDLING if (envfs_load("/dev/env0", "/env")) { #ifdef CONFIG_DEFAULT_ENVIRONMENT |