
On 2020/3/30 下午1:29, Heinrich Schuchardt wrote:
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 kever.yang@rock-chips.com Reviewed-by: Punit Agrawal punit1.agrawal@toshiba.co.jp
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-do...
This is a directly copy from include/fdtdec.h, maybe we need a clean up after this patch?
Because at least many comment's style are like this in fdtdec.h and fdt_support.h.
Thanks,
- Kever
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; +}