Add a pointer in state_variable to the corresponding variable_type array element. Signed-off-by: Daniel Schultz <d.schultz@xxxxxxxxx> --- Changes: v2: New patch common/state/state.h | 1 + common/state/state_variables.c | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/common/state/state.h b/common/state/state.h index 81aaec2..14b54aa 100644 --- a/common/state/state.h +++ b/common/state/state.h @@ -132,6 +132,7 @@ struct variable_type { struct state_variable { struct state *state; struct list_head list; + struct variable_type *type; const char *name; unsigned int start; unsigned int size; diff --git a/common/state/state_variables.c b/common/state/state_variables.c index 56bcd95..e6571be 100644 --- a/common/state/state_variables.c +++ b/common/state/state_variables.c @@ -116,6 +116,7 @@ static struct state_variable *state_uint8_create(struct state *state, } su32->param = param; + su32->var.type = state_find_type_by_name("uint8"); su32->var.size = sizeof(uint8_t); #ifdef __LITTLE_ENDIAN su32->var.raw = &su32->value; @@ -144,6 +145,7 @@ static struct state_variable *state_uint32_create(struct state *state, } su32->param = param; + su32->var.type = state_find_type_by_name("uint32"); su32->var.size = sizeof(uint32_t); su32->var.raw = &su32->value; su32->var.state = state; @@ -234,6 +236,7 @@ static struct state_variable *state_enum32_create(struct state *state, enum32->names = xzalloc(sizeof(char *) * num_names); enum32->num_names = num_names; + enum32->var.type = state_find_type_by_name("enum32"); enum32->var.size = sizeof(uint32_t); enum32->var.raw = &enum32->value; enum32->var.state = state; @@ -307,6 +310,7 @@ static struct state_variable *state_mac_create(struct state *state, mac = xzalloc(sizeof(*mac)); + mac->var.type = state_find_type_by_name("mac"); mac->var.size = ARRAY_SIZE(mac->value); mac->var.raw = mac->value; mac->var.state = state; @@ -420,6 +424,7 @@ static struct state_variable *state_string_create(struct state *state, return ERR_PTR(-EILSEQ); string = xzalloc(sizeof(*string) + start_size[1]); + string->var.type = state_find_type_by_name("string"); string->var.size = start_size[1]; string->var.raw = &string->raw; string->var.state = state; -- 2.7.4 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox