environment: Use accessor functions for default environment path
default_environment_path only exists when CONFIG_ENV_HANDLING is enabled. Boards would have to #ifdef this if they wanted to use default_environment_path. Use accessor functions instead which can be ifdeffed on a single place. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
parent
dac65f99e8
commit
25cee7ec17
|
@ -53,13 +53,13 @@ static int gk802_env_init(void)
|
||||||
bootsource_name = "mmc2";
|
bootsource_name = "mmc2";
|
||||||
barebox_name = "mmc2.barebox";
|
barebox_name = "mmc2.barebox";
|
||||||
default_environment_name = "mmc2.bareboxenv";
|
default_environment_name = "mmc2.bareboxenv";
|
||||||
default_environment_path = "/dev/mmc2.bareboxenv";
|
default_environment_path_set("/dev/mmc2.bareboxenv");
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
bootsource_name = "mmc3";
|
bootsource_name = "mmc3";
|
||||||
barebox_name = "mmc3.barebox";
|
barebox_name = "mmc3.barebox";
|
||||||
default_environment_name = "mmc3.bareboxenv";
|
default_environment_name = "mmc3.bareboxenv";
|
||||||
default_environment_path = "/dev/mmc3.bareboxenv";
|
default_environment_path_set("/dev/mmc3.bareboxenv");
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return 0;
|
return 0;
|
||||||
|
|
|
@ -132,7 +132,7 @@ static int rpi_env_init(void)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
default_environment_path = "/boot/barebox.env";
|
default_environment_path_set("/boot/barebox.env");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -129,7 +129,7 @@ static int tqma6x_env_init(void)
|
||||||
|
|
||||||
device_detect_by_name("mmc2");
|
device_detect_by_name("mmc2");
|
||||||
|
|
||||||
default_environment_path = "/dev/mmc2.boot1";
|
default_environment_path_set("/dev/mmc2.boot1");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -142,7 +142,7 @@ static int omap_env_init(void)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
default_environment_path = "/boot/barebox.env";
|
default_environment_path_set("/boot/barebox.env");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -103,7 +103,7 @@ static int socfpga_env_init(void)
|
||||||
goto out_free;
|
goto out_free;
|
||||||
}
|
}
|
||||||
|
|
||||||
default_environment_path = "/boot/barebox.env";
|
default_environment_path_set("/boot/barebox.env");
|
||||||
|
|
||||||
out_free:
|
out_free:
|
||||||
free(partname);
|
free(partname);
|
||||||
|
|
|
@ -53,7 +53,7 @@ static int do_loadenv(int argc, char *argv[])
|
||||||
dirname = argv[optind + 1];
|
dirname = argv[optind + 1];
|
||||||
|
|
||||||
if (argc - optind < 1)
|
if (argc - optind < 1)
|
||||||
filename = default_environment_path;
|
filename = default_environment_path_get();
|
||||||
else
|
else
|
||||||
filename = argv[optind];
|
filename = argv[optind];
|
||||||
|
|
||||||
|
|
|
@ -38,7 +38,7 @@ static int do_saveenv(int argc, char *argv[])
|
||||||
else
|
else
|
||||||
dirname = argv[2];
|
dirname = argv[2];
|
||||||
if (argc < 2)
|
if (argc < 2)
|
||||||
filename = default_environment_path;
|
filename = default_environment_path_get();
|
||||||
else
|
else
|
||||||
filename = argv[1];
|
filename = argv[1];
|
||||||
|
|
||||||
|
|
|
@ -48,7 +48,19 @@ struct action_data {
|
||||||
};
|
};
|
||||||
#define PAD4(x) ((x + 3) & ~3)
|
#define PAD4(x) ((x + 3) & ~3)
|
||||||
|
|
||||||
char *default_environment_path = "/dev/env0";
|
#ifdef __BAREBOX__
|
||||||
|
static char *default_environment_path = "/dev/env0";
|
||||||
|
|
||||||
|
void default_environment_path_set(char *path)
|
||||||
|
{
|
||||||
|
default_environment_path = path;
|
||||||
|
}
|
||||||
|
|
||||||
|
char *default_environment_path_get(void)
|
||||||
|
{
|
||||||
|
return default_environment_path;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
static int file_size_action(const char *filename, struct stat *statbuf,
|
static int file_size_action(const char *filename, struct stat *statbuf,
|
||||||
void *userdata, int depth)
|
void *userdata, int depth)
|
||||||
|
|
|
@ -121,6 +121,7 @@ void __noreturn start_barebox(void)
|
||||||
|
|
||||||
if (IS_ENABLED(CONFIG_ENV_HANDLING)) {
|
if (IS_ENABLED(CONFIG_ENV_HANDLING)) {
|
||||||
int ret;
|
int ret;
|
||||||
|
char *default_environment_path = default_environment_path_get();
|
||||||
|
|
||||||
ret = envfs_load(default_environment_path, "/env", 0);
|
ret = envfs_load(default_environment_path, "/env", 0);
|
||||||
|
|
||||||
|
|
|
@ -59,7 +59,7 @@ static int environment_probe(struct device_d *dev)
|
||||||
|
|
||||||
dev_info(dev, "setting default environment path to %s\n", path);
|
dev_info(dev, "setting default environment path to %s\n", path);
|
||||||
|
|
||||||
default_environment_path = path;
|
default_environment_path_set(path);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -94,7 +94,19 @@ int envfs_load(char *filename, char *dirname, unsigned flags);
|
||||||
int envfs_save(char *filename, char *dirname);
|
int envfs_save(char *filename, char *dirname);
|
||||||
|
|
||||||
/* defaults to /dev/env0 */
|
/* defaults to /dev/env0 */
|
||||||
extern char *default_environment_path;
|
#ifdef CONFIG_ENV_HANDLING
|
||||||
|
void default_environment_path_set(char *path);
|
||||||
|
char *default_environment_path_get(void);
|
||||||
|
#else
|
||||||
|
static inline void default_environment_path_set(char *path)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline char *default_environment_path_get(void)
|
||||||
|
{
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
int envfs_register_partition(const char *devname, unsigned int partnr);
|
int envfs_register_partition(const char *devname, unsigned int partnr);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue