On Sun, Apr 19, 2020 at 9:27 AM Edgar E. Iglesias <edgar.igles...@gmail.com> wrote: > > From: "Edgar E. Iglesias" <edgar.igles...@xilinx.com> > > Allow name wildcards in qemu_fdt_node_path(). This is useful > to find all nodes with a given compatibility string. > > Signed-off-by: Edgar E. Iglesias <edgar.igles...@xilinx.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com> Alistair > --- > device_tree.c | 2 +- > include/sysemu/device_tree.h | 3 +++ > 2 files changed, 4 insertions(+), 1 deletion(-) > > diff --git a/device_tree.c b/device_tree.c > index bba6cc2164..f5b4699aed 100644 > --- a/device_tree.c > +++ b/device_tree.c > @@ -308,7 +308,7 @@ char **qemu_fdt_node_path(void *fdt, const char *name, > char *compat, > offset = len; > break; > } > - if (!strcmp(iter_name, name)) { > + if (!name || !strcmp(iter_name, name)) { > char *path; > > path = g_malloc(path_len); > diff --git a/include/sysemu/device_tree.h b/include/sysemu/device_tree.h > index c16fd69bc0..7c53ef7634 100644 > --- a/include/sysemu/device_tree.h > +++ b/include/sysemu/device_tree.h > @@ -39,6 +39,9 @@ void *load_device_tree_from_sysfs(void); > * NULL. If there is no error but no matching node was found, the > * returned array contains a single element equal to NULL. If an error > * was encountered when parsing the blob, the function returns NULL > + * > + * @name may be NULL to wildcard names and only match compatibility > + * strings. > */ > char **qemu_fdt_node_path(void *fdt, const char *name, char *compat, > Error **errp); > -- > 2.20.1 > >