From mboxrd@z Thu Jan 1 00:00:00 1970 From: Heinrich Schuchardt Date: Mon, 30 Mar 2020 07:29:44 +0200 Subject: [PATCH v4 7/8] libfdt: Make fdtdec_get_child_count() available for HOST In-Reply-To: <20200330035625.25164-7-kever.yang@rock-chips.com> References: <20200330035625.25164-1-kever.yang@rock-chips.com> <20200330035625.25164-7-kever.yang@rock-chips.com> Message-ID: <42e56853-e765-3880-7f62-e8d728e20b1e@gmx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 3/30/20 5:56 AM, Kever Yang wrote: > The tool need to use fdtdec_get_child_count(), make it available for > HOST_CC. > > Signed-off-by: Kever Yang > Reviewed-by: Punit Agrawal > --- > > Changes in v4: > - add function comment for fdtdec_get_child_count() in fdt_support.h > > Changes in v3: None > Changes in v2: None > > include/fdt_support.h | 9 +++++++++ > lib/fdtdec.c | 11 ----------- > lib/fdtdec_common.c | 11 +++++++++++ > 3 files changed, 20 insertions(+), 11 deletions(-) > > diff --git a/include/fdt_support.h b/include/fdt_support.h > index ba14acd7f6..2eff311fa4 100644 > --- a/include/fdt_support.h > +++ b/include/fdt_support.h > @@ -343,6 +343,15 @@ int fdt_get_cells_len(const void *blob, char *nr_cells_name); > #ifdef USE_HOSTCC > int fdtdec_get_int(const void *blob, int node, const char *prop_name, > int default_val); > + > +/* > + * Count child nodes of one parent node. > + * > + * @param blob FDT blob > + * @param node parent node > + * @return number of child node; 0 if there is not child node Please, use Sphinx style for function comments. See https://www.kernel.org/doc/html/latest/doc-guide/kernel-doc.html#function-documentation Best regards Heinrich > + */ > +int fdtdec_get_child_count(const void *blob, int node); > #endif > #ifdef CONFIG_FMAN_ENET > int fdt_update_ethernet_dt(void *blob); > diff --git a/lib/fdtdec.c b/lib/fdtdec.c > index eb11fc898e..e13af283a1 100644 > --- a/lib/fdtdec.c > +++ b/lib/fdtdec.c > @@ -810,17 +810,6 @@ int fdtdec_parse_phandle_with_args(const void *blob, int src_node, > return rc; > } > > -int fdtdec_get_child_count(const void *blob, int node) > -{ > - int subnode; > - int num = 0; > - > - fdt_for_each_subnode(subnode, blob, node) > - num++; > - > - return num; > -} > - > int fdtdec_get_byte_array(const void *blob, int node, const char *prop_name, > u8 *array, int count) > { > diff --git a/lib/fdtdec_common.c b/lib/fdtdec_common.c > index 088e9e9063..5775992ef3 100644 > --- a/lib/fdtdec_common.c > +++ b/lib/fdtdec_common.c > @@ -53,3 +53,14 @@ unsigned int fdtdec_get_uint(const void *blob, int node, const char *prop_name, > debug("(not found)\n"); > return default_val; > } > + > +int fdtdec_get_child_count(const void *blob, int node) > +{ > + int subnode; > + int num = 0; > + > + fdt_for_each_subnode(subnode, blob, node) > + num++; > + > + return num; > +} >