Add alloc_marker

- Add helper to allocate new marker

Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Ayush Singh <ayush@beagleboard.org>
Message-ID: <20250311-previous-value-v2-1-e4a8611e956f@beagleboard.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
Ayush Singh 2025-03-11 21:05:37 +05:30 committed by David Gibson
parent ecb21febfd
commit e0b7749c26
2 changed files with 17 additions and 5 deletions

20
data.c
View file

@ -228,11 +228,7 @@ struct data data_add_marker(struct data d, enum markertype type, char *ref)
{
struct marker *m;
m = xmalloc(sizeof(*m));
m->offset = d.len;
m->type = type;
m->ref = ref;
m->next = NULL;
m = alloc_marker(d.len, type, ref);
return data_append_markers(d, m);
}
@ -254,3 +250,17 @@ bool data_is_one_string(struct data d)
return true;
}
struct marker *alloc_marker(unsigned int offset, enum markertype type,
char *ref)
{
struct marker *m;
m = xmalloc(sizeof(*m));
m->offset = offset;
m->type = type;
m->ref = ref;
m->next = NULL;
return m;
}

2
dtc.h
View file

@ -183,6 +183,8 @@ struct data data_append_byte(struct data d, uint8_t byte);
struct data data_append_zeroes(struct data d, int len);
struct data data_append_align(struct data d, int align);
struct marker *alloc_marker(unsigned int offset, enum markertype type,
char *ref);
struct data data_add_marker(struct data d, enum markertype type, char *ref);
bool data_is_one_string(struct data d);