Skip to content

Commit

Permalink
Revert "globalvar: make globalvar functions more consistent"
Browse files Browse the repository at this point in the history
This reverts commit 1b4a05c.
  • Loading branch information
saschahauer committed Jun 13, 2017
1 parent 7917ad2 commit b2cb923
Show file tree
Hide file tree
Showing 14 changed files with 55 additions and 123 deletions.
2 changes: 1 addition & 1 deletion arch/arm/boards/beaglebone/board.c
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ static int beaglebone_devices_init(void)

defaultenv_append_directory(defaultenv_beaglebone);

globalvar_add_simple_string_fixed("board.variant", black ? "boneblack" : "bone");
globalvar_add_simple("board.variant", black ? "boneblack" : "bone");

printf("detected 'BeagleBone %s'\n", black ? "Black" : "White");

Expand Down
2 changes: 1 addition & 1 deletion arch/arm/boards/crystalfontz-cfa10036/hwdetect.c
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ void cfa10036_detect_hw(void)
return;
}

globalvar_add_simple_string_fixed("board.variant", board_name);
globalvar_add_simple("board.variant", board_name);

pr_info("Booting on a CFA10036 with %s\n", board_name);
}
Expand Down
2 changes: 1 addition & 1 deletion arch/arm/boards/phytec-som-imx6/board.c
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ static int physom_imx6_devices_init(void)
phyflex_err006282_workaround();

pfla02_module_revision = get_module_rev();
globalvar_add_simple_uint32_fixed("board.revision", pfla02_module_revision, "%u");
globalvar_add_simple_int("board.revision", &pfla02_module_revision, "%u");
pr_info("Module Revision: %u\n", pfla02_module_revision);

barebox_set_hostname("phyFLEX-i.MX6");
Expand Down
7 changes: 4 additions & 3 deletions arch/arm/boards/vscom-baltos/board.c
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ static int baltos_read_eeprom(void)
{
struct bsp_vs_hwparam hw_param;
size_t size;
char *buf;
char *buf, var_buf[32];
int rc;
unsigned char mac_addr[6];

Expand Down Expand Up @@ -107,7 +107,8 @@ static int baltos_read_eeprom(void)
hw_param.SystemId = 0;
}

globalvar_add_simple_uint32_fixed("board.id", hw_param.SystemId, "%u");
sprintf(var_buf, "%d", hw_param.SystemId);
globalvar_add_simple("board.id", var_buf);

/* enable mPCIe slot */
gpio_direction_output(100, 1);
Expand All @@ -130,7 +131,7 @@ static int baltos_devices_init(void)
if (!of_machine_is_compatible("vscom,onrisc"))
return 0;

globalvar_add_simple_string_fixed("board.variant", "baltos");
globalvar_add_simple("board.variant", "baltos");

if (bootsource_get() == BOOTSOURCE_MMC)
omap_set_bootmmc_devname("mmc0");
Expand Down
4 changes: 2 additions & 2 deletions arch/ppc/boards/pcm030/eeprom.c
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ static void pcm030_read_factory_data(const struct pcm030_eeprom *buf)
continue;
board = xstrndup(&buf->product[u], l);
u += l + 1;
globalvar_add_simple_string_fixed("model.type", board);
globalvar_add_simple("model.type", board);
free(board);
}

Expand All @@ -62,7 +62,7 @@ static void pcm030_read_factory_data(const struct pcm030_eeprom *buf)
continue;
serial = xstrndup(&buf->product[u], l);
u += l + 1;
globalvar_add_simple_string_fixed("model.serial", serial);
globalvar_add_simple("model.serial", serial);
free(serial);
}

Expand Down
2 changes: 1 addition & 1 deletion common/boot.c
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ void boot_set_watchdog_timeout(unsigned int timeout)

static int init_boot_watchdog_timeout(void)
{
return globalvar_add_simple_uint32("boot.watchdog_timeout",
return globalvar_add_simple_int("boot.watchdog_timeout",
&boot_watchdog_timeout, "%u");
}
late_initcall(init_boot_watchdog_timeout);
Expand Down
4 changes: 2 additions & 2 deletions common/bootchooser.c
Original file line number Diff line number Diff line change
Expand Up @@ -907,8 +907,8 @@ static int bootchooser_init(void)
globalvar_add_simple_bool("bootchooser.retry", &retry);
globalvar_add_simple_string("bootchooser.targets", &available_targets);
globalvar_add_simple_string("bootchooser.state_prefix", &state_prefix);
globalvar_add_simple_uint32("bootchooser.default_attempts", &global_default_attempts, "%u");
globalvar_add_simple_uint32("bootchooser.default_priority", &global_default_priority, "%u");
globalvar_add_simple_int("bootchooser.default_attempts", &global_default_attempts, "%u");
globalvar_add_simple_int("bootchooser.default_priority", &global_default_priority, "%u");
globalvar_add_simple_bitmask("bootchooser.reset_attempts", &reset_attempts,
reset_attempts_names, ARRAY_SIZE(reset_attempts_names));
globalvar_add_simple_bitmask("bootchooser.reset_priorities", &reset_priorities,
Expand Down
2 changes: 1 addition & 1 deletion common/bootm.c
Original file line number Diff line number Diff line change
Expand Up @@ -668,7 +668,7 @@ static int bootm_init(void)
if (IS_ENABLED(CONFIG_BOOTM_FORCE_SIGNED_IMAGES))
bootm_verify_mode = BOOTM_VERIFY_SIGNATURE;

globalvar_add_simple_uint32("bootm.verbose", &bootm_verbosity, "%u");
globalvar_add_simple_int("bootm.verbose", &bootm_verbosity, "%u");

globalvar_add_simple_enum("bootm.verify", (unsigned int *)&bootm_verify_mode,
bootm_verify_names, ARRAY_SIZE(bootm_verify_names));
Expand Down
6 changes: 3 additions & 3 deletions common/console_common.c
Original file line number Diff line number Diff line change
Expand Up @@ -148,10 +148,10 @@ int dev_printf(int level, const struct device_d *dev, const char *format, ...)
static int loglevel_init(void)
{
if (IS_ENABLED(CONFIG_LOGBUF))
globalvar_add_simple_uint32("log_max_messages",
&barebox_log_max_messages, "%u");
globalvar_add_simple_int("log_max_messages",
&barebox_log_max_messages, "%d");

return globalvar_add_simple_uint32("loglevel", &barebox_loglevel, "%u");
return globalvar_add_simple_int("loglevel", &barebox_loglevel, "%d");
}
device_initcall(loglevel_init);

Expand Down
28 changes: 21 additions & 7 deletions common/globalvar.c
Original file line number Diff line number Diff line change
Expand Up @@ -424,7 +424,7 @@ int globalvar_add_simple(const char *name, const char *value)
return 0;
}

int __globalvar_add_simple_string(const char *name, char **value)
int globalvar_add_simple_string(const char *name, char **value)
{
struct param_d *p;

Expand All @@ -439,14 +439,28 @@ int __globalvar_add_simple_string(const char *name, char **value)
return 0;
}

int __globalvar_add_simple_int(const char *name, void *value,
enum param_type type,
const char *format)
int globalvar_add_simple_int(const char *name, int *value,
const char *format)
{
struct param_d *p;

p = __dev_add_param_int(&global_device, name, NULL, NULL,
value, type, format, NULL);
p = dev_add_param_int(&global_device, name, NULL, NULL,
value, format, NULL);

if (IS_ERR(p))
return PTR_ERR(p);

globalvar_nv_sync(name);

return 0;
}

int globalvar_add_simple_bool(const char *name, int *value)
{
struct param_d *p;

p = dev_add_param_bool(&global_device, name, NULL, NULL,
value, NULL);

if (IS_ERR(p))
return PTR_ERR(p);
Expand Down Expand Up @@ -508,7 +522,7 @@ static int globalvar_init(void)
if (IS_ENABLED(CONFIG_NVVAR))
register_device(&nv_device);

globalvar_add_simple_string_fixed("version", UTS_RELEASE);
globalvar_add_simple("version", UTS_RELEASE);

return 0;
}
Expand Down
2 changes: 1 addition & 1 deletion common/password.c
Original file line number Diff line number Diff line change
Expand Up @@ -443,7 +443,7 @@ static int login_global_init(void)
{
login_fail_command = xstrdup("boot");

globalvar_add_simple_uint32("login.timeout", &login_timeout, "%u");
globalvar_add_simple_int("login.timeout", &login_timeout, "%d");
globalvar_add_simple_string("login.fail_command", &login_fail_command);

return 0;
Expand Down
2 changes: 1 addition & 1 deletion common/reset_source.c
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ EXPORT_SYMBOL(reset_source_set_priority);

static int reset_source_init(void)
{
globalvar_add_simple_enum_ro("system.reset", (unsigned int *)&reset_source,
globalvar_add_simple_enum("system.reset", (unsigned int *)&reset_source,
reset_src_names, ARRAY_SIZE(reset_src_names));

return 0;
Expand Down
6 changes: 3 additions & 3 deletions drivers/mtd/peb.c
Original file line number Diff line number Diff line change
Expand Up @@ -76,11 +76,11 @@ static int mtd_peb_emulate_erase_failure(void)
#ifdef CONFIG_MTD_PEB_DEBUG
static int mtd_peb_debug_init(void)
{
globalvar_add_simple_uint32("mtd_peb.mtd_peb_emulate_bitflip",
globalvar_add_simple_int("mtd_peb.mtd_peb_emulate_bitflip",
&__mtd_peb_emulate_bitflip, "%u");
globalvar_add_simple_uint32("mtd_peb.mtd_peb_emulate_write_failure",
globalvar_add_simple_int("mtd_peb.mtd_peb_emulate_write_failure",
&__mtd_peb_emulate_write_failure, "%u");
globalvar_add_simple_uint32("mtd_peb.mtd_peb_emulate_erase_failures",
globalvar_add_simple_int("mtd_peb.mtd_peb_emulate_erase_failures",
&__mtd_peb_emulate_erase_failures, "%u");
globalvar_add_simple_bool("mtd_peb.mtd_peb_chk_io",
&__mtd_peb_chk_io);
Expand Down
109 changes: 13 additions & 96 deletions include/globalvar.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,10 @@ void globalvar_remove(const char *name);
char *globalvar_get_match(const char *match, const char *separator);
void globalvar_set_match(const char *match, const char *val);

int __globalvar_add_simple_string(const char *name, char **value);
int __globalvar_add_simple_int(const char *name, void *value,
enum param_type type, const char *format);
int globalvar_add_simple_string(const char *name, char **value);
int globalvar_add_simple_int(const char *name, int *value,
const char *format);
int globalvar_add_simple_bool(const char *name, int *value);
int globalvar_add_simple_enum(const char *name, int *value,
const char * const *names, int max);
int globalvar_add_simple_bitmask(const char *name, unsigned long *value,
Expand All @@ -38,13 +39,19 @@ static inline int globalvar_add_simple(const char *name, const char *value)
return 0;
}

static inline int __globalvar_add_simple_int(const char *name, void *value,
enum param_type type, const char *format)
static inline int globalvar_add_simple_string(const char *name, char **value)
{
return 0;
}

static inline int __globalvar_add_simple_string(const char *name, char **value)
static inline int globalvar_add_simple_int(const char *name,
int *value, const char *format)
{
return 0;
}

static inline int globalvar_add_simple_bool(const char *name,
int *value)
{
return 0;
}
Expand Down Expand Up @@ -108,96 +115,6 @@ static inline void dev_param_init_from_nv(struct device_d *dev, const char *name

#endif

#define DECLARE_GLOBALVAR_INT(intname, inttype, paramtype) \
static inline int globalvar_add_simple_##intname(const char *name, \
inttype *value, \
const char *format) \
{ \
return __globalvar_add_simple_int(name, value, \
paramtype, \
format); \
}

DECLARE_GLOBALVAR_INT(uint32, uint32_t, PARAM_TYPE_UINT32)
DECLARE_GLOBALVAR_INT(int32, int32_t, PARAM_TYPE_INT32)
DECLARE_GLOBALVAR_INT(uint64, uint64_t, PARAM_TYPE_UINT64)
DECLARE_GLOBALVAR_INT(int64, int64_t, PARAM_TYPE_INT64)

static inline int globalvar_add_simple_bool(const char *name, uint32_t *value)
{
return __globalvar_add_simple_int(name, value, PARAM_TYPE_BOOL, "%u");
}

static inline int globalvar_add_simple_string(const char *name, char **value)
{
return __globalvar_add_simple_string(name, value);
}

#define DECLARE_GLOBALVAR_INT_RO(intname, inttype, paramtype) \
static inline int globalvar_add_simple_##intname##_ro(const char *name, \
inttype *value, \
const char *format) \
{ \
return PTR_ERR_OR_ZERO(__dev_add_param_int(&global_device, name,\
param_set_readonly, \
NULL, value, \
paramtype, \
format, NULL)); \
}

DECLARE_GLOBALVAR_INT_RO(uint32, uint32_t, PARAM_TYPE_UINT32)
DECLARE_GLOBALVAR_INT_RO(int32, int32_t, PARAM_TYPE_INT32)
DECLARE_GLOBALVAR_INT_RO(uint64, uint64_t, PARAM_TYPE_UINT64)
DECLARE_GLOBALVAR_INT_RO(int64, int64_t, PARAM_TYPE_INT64)

static inline int globalvar_add_simple_bool_ro(const char *name, uint32_t *value)
{
return PTR_ERR_OR_ZERO(__dev_add_param_int(&global_device, name,
param_set_readonly, NULL,
value, PARAM_TYPE_BOOL, "%u",
NULL));
}

static inline int globalvar_add_simple_string_ro(const char *name, char **value)
{
return __globalvar_add_simple_string(name, value);
}

#define DECLARE_GLOBALVAR_INT_FIXED(intname, inttype, paramtype) \
static inline int globalvar_add_simple_##intname##_fixed(const char *name, \
inttype value, \
const char *format) \
{ \
return PTR_ERR_OR_ZERO(__dev_add_param_int(&global_device, name, \
ERR_PTR(-EROFS), NULL, \
&value, paramtype, \
format, NULL)); \
}

DECLARE_GLOBALVAR_INT_FIXED(uint32, uint32_t, PARAM_TYPE_UINT32)
DECLARE_GLOBALVAR_INT_FIXED(int32, int32_t, PARAM_TYPE_INT32)
DECLARE_GLOBALVAR_INT_FIXED(uint64, uint64_t, PARAM_TYPE_UINT64)
DECLARE_GLOBALVAR_INT_FIXED(int64, int64_t, PARAM_TYPE_INT64)

static inline int globalvar_add_simple_bool_fixed(const char *name, uint32_t value)
{
return PTR_ERR_OR_ZERO(__dev_add_param_int(&global_device, name, ERR_PTR(-EROFS),
NULL, &value, PARAM_TYPE_BOOL, "%u",
NULL));
}

static inline int globalvar_add_simple_string_fixed(const char *name, char *value)
{
return PTR_ERR_OR_ZERO(dev_add_param_string_fixed(&global_device, name, value));
}

static inline int globalvar_add_simple_enum_ro(const char *name, int *value,
const char * const *names, int max)
{
return PTR_ERR_OR_ZERO(dev_add_param_enum_ro(&global_device, name, value, names,
max));
}

void nv_var_set_clean(void);
int nvvar_save(void);
int nv_global_complete(struct string_list *sl, char *instr);
Expand Down

0 comments on commit b2cb923

Please sign in to comment.