From mboxrd@z Thu Jan 1 00:00:00 1970 From: Simon Glass Date: Thu, 11 Mar 2021 21:45:38 -0700 Subject: [PATCH 01/16] dm: core: Add helper to compare node names In-Reply-To: <20210309122748.31842-2-kishon@ti.com> References: <20210309122748.31842-1-kishon@ti.com> <20210309122748.31842-2-kishon@ti.com> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Kishon, On Tue, 9 Mar 2021 at 05:27, Kishon Vijay Abraham I wrote: > > Add helper to compare node names. > > Signed-off-by: Kishon Vijay Abraham I > --- > drivers/core/ofnode.c | 13 +++++++++++++ > include/dm/ofnode.h | 9 +++++++++ > 2 files changed, 22 insertions(+) > > diff --git a/drivers/core/ofnode.c b/drivers/core/ofnode.c > index fa0bd2a9c4..4e196d680e 100644 > --- a/drivers/core/ofnode.c > +++ b/drivers/core/ofnode.c > @@ -18,6 +18,19 @@ > #include > #include > > +bool ofnode_name_eq(ofnode node, const char *name) > +{ > + const char *node_name; > + size_t len; > + > + assert(ofnode_valid(node)); > + > + node_name = ofnode_get_name(node); > + len = strchrnul(node_name, '@') - node_name; > + > + return (strlen(name) == len) && (strncmp(node_name, name, len) == 0); Can you use !strncmp() instead of == 0 ? > +} > + > int ofnode_read_u32(ofnode node, const char *propname, u32 *outp) > { > return ofnode_read_u32_index(node, propname, 0, outp); > diff --git a/include/dm/ofnode.h b/include/dm/ofnode.h > index 2c0597c407..86a139276b 100644 > --- a/include/dm/ofnode.h > +++ b/include/dm/ofnode.h > @@ -231,6 +231,15 @@ static inline ofnode ofnode_root(void) > return node; > } > > +/** > + * ofnode_name_eq() - Check if the node name is equivalent to a given name > + * How about a comment indicating this ignores the unit address? > + * @node: valid node reference that has to be compared > + * @name: name that has to be compared with the node name > + * @return 1 if matches, 0 if it doesn't match > + */ > +bool ofnode_name_eq(ofnode node, const char *name); > + > /** > * ofnode_read_u32() - Read a 32-bit integer from a property > * > -- > 2.17.1 > Please add a test for this in test/dm Regards, SImon