Message ID | 1454222326-32590-1-git-send-email-van.freenix@gmail.com |
---|---|
State | Superseded |
Headers | show |
On Sun, Jan 31, 2016 at 4:38 AM, Peng Fan <van.freenix@gmail.com> wrote:
> Introudce fdt_get_child_count for get the number of subnodes of
s/Introudce/Introduce
Same error in Subject.
Hi Peng, On 30 January 2016 at 23:38, Peng Fan <van.freenix@gmail.com> wrote: > Introudce fdt_get_child_count for get the number of subnodes of > one parent node. > > Signed-off-by: Peng Fan <van.freenix@gmail.com> > Cc: Simon Glass <sjg@chromium.org> > --- > include/libfdt.h | 18 ++++++++++++++++++ > 1 file changed, 18 insertions(+) > > diff --git a/include/libfdt.h b/include/libfdt.h > index e48c21a..94d29e6 100644 > --- a/include/libfdt.h > +++ b/include/libfdt.h > @@ -193,6 +193,24 @@ int fdt_next_subnode(const void *fdt, int offset); > node >= 0; \ > node = fdt_next_subnode(fdt, node)) > > +/** > + * fdt_get_child_count() - get the number of subnodes of one node > + * > + * @fdt: FDT blob > + * @node: Offset of node > + * @return number of child nodes of node, or 0 if there is no subnode. > + */ > +static inline int fdt_get_child_count(void *fdt, int node) Does this need to be inline. It doesn't seem important to me. > +{ > + int subnode; > + int num = 0; > + > + fdt_for_each_subnode(fdt, subnode, node) > + num++; > + > + return num; > +} > + > /**********************************************************************/ > /* General functions */ > /**********************************************************************/ > -- > 2.6.2 > Regards, Simon
Hi Simon, On Sun, Jan 31, 2016 at 08:37:45AM -0700, Simon Glass wrote: >Hi Peng, > >On 30 January 2016 at 23:38, Peng Fan <van.freenix@gmail.com> wrote: >> Introudce fdt_get_child_count for get the number of subnodes of >> one parent node. >> >> Signed-off-by: Peng Fan <van.freenix@gmail.com> >> Cc: Simon Glass <sjg@chromium.org> >> --- >> include/libfdt.h | 18 ++++++++++++++++++ >> 1 file changed, 18 insertions(+) >> >> diff --git a/include/libfdt.h b/include/libfdt.h >> index e48c21a..94d29e6 100644 >> --- a/include/libfdt.h >> +++ b/include/libfdt.h >> @@ -193,6 +193,24 @@ int fdt_next_subnode(const void *fdt, int offset); >> node >= 0; \ >> node = fdt_next_subnode(fdt, node)) >> >> +/** >> + * fdt_get_child_count() - get the number of subnodes of one node >> + * >> + * @fdt: FDT blob >> + * @node: Offset of node >> + * @return number of child nodes of node, or 0 if there is no subnode. >> + */ >> +static inline int fdt_get_child_count(void *fdt, int node) > >Does this need to be inline. It doesn't seem important to me. I just follow linux kernel and add inline. If inline is not needed, I can move the piece code to lib/fdtdec.c. You mean this API is not important? Thanks, Peng > >> +{ >> + int subnode; >> + int num = 0; >> + >> + fdt_for_each_subnode(fdt, subnode, node) >> + num++; >> + >> + return num; >> +} >> + >> /**********************************************************************/ >> /* General functions */ >> /**********************************************************************/ >> -- >> 2.6.2 >> > >Regards, >Simon
diff --git a/include/libfdt.h b/include/libfdt.h index e48c21a..94d29e6 100644 --- a/include/libfdt.h +++ b/include/libfdt.h @@ -193,6 +193,24 @@ int fdt_next_subnode(const void *fdt, int offset); node >= 0; \ node = fdt_next_subnode(fdt, node)) +/** + * fdt_get_child_count() - get the number of subnodes of one node + * + * @fdt: FDT blob + * @node: Offset of node + * @return number of child nodes of node, or 0 if there is no subnode. + */ +static inline int fdt_get_child_count(void *fdt, int node) +{ + int subnode; + int num = 0; + + fdt_for_each_subnode(fdt, subnode, node) + num++; + + return num; +} + /**********************************************************************/ /* General functions */ /**********************************************************************/
Introudce fdt_get_child_count for get the number of subnodes of one parent node. Signed-off-by: Peng Fan <van.freenix@gmail.com> Cc: Simon Glass <sjg@chromium.org> --- include/libfdt.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+)