From: marek.vasut@gmail.com (Marek Vasut)
To: linux-arm-kernel@lists.infradead.org
Subject: [RFC PATCH v3 1/5] dt: add of_get_child_count helper function
Date: Tue, 20 Dec 2011 20:47:10 +0100 [thread overview]
Message-ID: <201112202047.10308.marek.vasut@gmail.com> (raw)
In-Reply-To: <1324402840-32451-2-git-send-email-b29396@freescale.com>
> From: Dong Aisheng <dong.aisheng@linaro.org>
>
> Currently most code to get child count in kernel are almost same,
> add a helper to implement this function for dt to use.
>
> ---
> Changes v1->v2:
> * change the name from of_get_child_number to of_get_child_count
>
> Signed-off-by: Dong Aisheng <dong.aisheng@linaro.org>
> Cc: Grant Likely <grant.likely@secretlab.ca>
> Cc: Rob Herring <rob.herring@calxeda.com>
> ---
> include/linux/of.h | 16 ++++++++++++++++
> 1 files changed, 16 insertions(+), 0 deletions(-)
>
> diff --git a/include/linux/of.h b/include/linux/of.h
> index 4948552..d0d91a1 100644
> --- a/include/linux/of.h
> +++ b/include/linux/of.h
> @@ -189,6 +189,17 @@ extern struct device_node *of_get_next_child(const
> struct device_node *node, for (child = of_get_next_child(parent, NULL);
> child != NULL; \
> child = of_get_next_child(parent, child))
>
> +static inline int of_get_child_count(const struct device_node *np)
> +{
> + struct device_node *child = NULL;
> + int num = 0;
> +
> + while ((child = of_get_next_child(np, child)))
The assignment in this condition really looks eerie, maybe just rewrite it to do
{ } while () ? Also, aren't the parenthesis unnecessary?
M
> + num++;
> +
> + return num;
> +}
> +
> extern struct device_node *of_find_node_with_property(
> struct device_node *from, const char *prop_name);
> #define for_each_node_with_property(dn, prop_name) \
> @@ -262,6 +273,11 @@ static inline bool of_have_populated_dt(void)
> #define for_each_child_of_node(parent, child) \
> while (0)
>
> +static inline int of_get_child_count(const struct device_node *np)
> +{
> + return -ENOSYS;
> +}
> +
> static inline int of_device_is_compatible(const struct device_node
> *device, const char *name)
> {
WARNING: multiple messages have this Message-ID (diff)
From: Marek Vasut <marek.vasut@gmail.com>
To: linux-arm-kernel@lists.infradead.org
Cc: Dong Aisheng <b29396@freescale.com>,
linux-kernel@vger.kernel.org, linus.walleij@stericsson.com,
s.hauer@pengutronix.de, w.sang@pengutronix.de,
rob.herring@calxeda.com, grant.likely@secretlab.ca,
kernel@pengutronix.de, cjb@laptop.org,
devicetree-discuss@lists.ozlabs.org, shawn.guo@freescale.com
Subject: Re: [RFC PATCH v3 1/5] dt: add of_get_child_count helper function
Date: Tue, 20 Dec 2011 20:47:10 +0100 [thread overview]
Message-ID: <201112202047.10308.marek.vasut@gmail.com> (raw)
In-Reply-To: <1324402840-32451-2-git-send-email-b29396@freescale.com>
> From: Dong Aisheng <dong.aisheng@linaro.org>
>
> Currently most code to get child count in kernel are almost same,
> add a helper to implement this function for dt to use.
>
> ---
> Changes v1->v2:
> * change the name from of_get_child_number to of_get_child_count
>
> Signed-off-by: Dong Aisheng <dong.aisheng@linaro.org>
> Cc: Grant Likely <grant.likely@secretlab.ca>
> Cc: Rob Herring <rob.herring@calxeda.com>
> ---
> include/linux/of.h | 16 ++++++++++++++++
> 1 files changed, 16 insertions(+), 0 deletions(-)
>
> diff --git a/include/linux/of.h b/include/linux/of.h
> index 4948552..d0d91a1 100644
> --- a/include/linux/of.h
> +++ b/include/linux/of.h
> @@ -189,6 +189,17 @@ extern struct device_node *of_get_next_child(const
> struct device_node *node, for (child = of_get_next_child(parent, NULL);
> child != NULL; \
> child = of_get_next_child(parent, child))
>
> +static inline int of_get_child_count(const struct device_node *np)
> +{
> + struct device_node *child = NULL;
> + int num = 0;
> +
> + while ((child = of_get_next_child(np, child)))
The assignment in this condition really looks eerie, maybe just rewrite it to do
{ } while () ? Also, aren't the parenthesis unnecessary?
M
> + num++;
> +
> + return num;
> +}
> +
> extern struct device_node *of_find_node_with_property(
> struct device_node *from, const char *prop_name);
> #define for_each_node_with_property(dn, prop_name) \
> @@ -262,6 +273,11 @@ static inline bool of_have_populated_dt(void)
> #define for_each_child_of_node(parent, child) \
> while (0)
>
> +static inline int of_get_child_count(const struct device_node *np)
> +{
> + return -ENOSYS;
> +}
> +
> static inline int of_device_is_compatible(const struct device_node
> *device, const char *name)
> {
next prev parent reply other threads:[~2011-12-20 19:47 UTC|newest]
Thread overview: 239+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-12-20 17:40 [RFC PATCH v3 0/5] pinctrl: imx: add pinnmux support Dong Aisheng
2011-12-20 17:40 ` Dong Aisheng
2011-12-20 17:40 ` Dong Aisheng
2011-12-20 17:40 ` [RFC PATCH v3 1/5] dt: add of_get_child_count helper function Dong Aisheng
2011-12-20 17:40 ` Dong Aisheng
2011-12-20 17:40 ` Dong Aisheng
2011-12-20 18:35 ` Rob Herring
2011-12-20 18:35 ` Rob Herring
2011-12-20 18:35 ` Rob Herring
2011-12-21 2:56 ` Dong Aisheng-B29396
2011-12-21 2:56 ` Dong Aisheng-B29396
2011-12-21 2:56 ` Dong Aisheng-B29396
2012-01-01 13:58 ` Linus Walleij
2012-01-01 13:58 ` Linus Walleij
2012-01-01 13:58 ` Linus Walleij
2011-12-20 19:47 ` Marek Vasut [this message]
2011-12-20 19:47 ` Marek Vasut
2011-12-21 3:27 ` Dong Aisheng-B29396
2011-12-21 3:27 ` Dong Aisheng-B29396
2011-12-21 3:27 ` Dong Aisheng-B29396
2011-12-21 6:05 ` Lothar Waßmann
2011-12-21 6:05 ` Lothar Waßmann
2011-12-21 6:05 ` Lothar Waßmann
2011-12-20 23:58 ` Stephen Warren
2011-12-20 23:58 ` Stephen Warren
2011-12-21 3:18 ` Dong Aisheng-B29396
2011-12-21 3:18 ` Dong Aisheng-B29396
2011-12-21 3:18 ` Dong Aisheng-B29396
2011-12-20 17:40 ` [RFC PATCH v3 2/5] pinctrl: add dt binding support for pinmux mappings Dong Aisheng
2011-12-20 17:40 ` Dong Aisheng
2011-12-20 17:40 ` Dong Aisheng
2011-12-20 19:48 ` Marek Vasut
2011-12-20 19:48 ` Marek Vasut
2011-12-21 0:39 ` Stephen Warren
2011-12-21 0:39 ` Stephen Warren
2011-12-22 8:18 ` Dong Aisheng-B29396
2011-12-22 8:18 ` Dong Aisheng-B29396
2011-12-25 3:37 ` Stephen Warren
2011-12-25 3:37 ` Stephen Warren
2011-12-27 14:41 ` Dong Aisheng-B29396
2011-12-27 14:41 ` Dong Aisheng-B29396
2011-12-29 2:46 ` Shawn Guo
2011-12-29 2:46 ` Shawn Guo
2011-12-29 2:46 ` Shawn Guo
2012-01-05 13:14 ` Dong Aisheng
2012-01-05 13:14 ` Dong Aisheng
2012-01-05 23:45 ` Stephen Warren
2012-01-05 23:45 ` Stephen Warren
2012-01-06 6:21 ` Shawn Guo
2012-01-06 6:21 ` Shawn Guo
2012-01-05 23:38 ` Stephen Warren
2012-01-05 23:38 ` Stephen Warren
2012-01-06 10:51 ` Dong Aisheng-B29396
2012-01-06 10:51 ` Dong Aisheng-B29396
2012-01-06 17:23 ` Stephen Warren
2012-01-06 17:23 ` Stephen Warren
2012-01-10 7:02 ` Dong Aisheng-B29396
2012-01-10 7:02 ` Dong Aisheng-B29396
2012-01-10 7:02 ` Dong Aisheng-B29396
2012-01-05 13:47 ` Dong Aisheng
2012-01-05 13:47 ` Dong Aisheng
2012-01-05 13:47 ` Dong Aisheng
2012-01-06 1:05 ` Stephen Warren
2012-01-06 1:05 ` Stephen Warren
2012-01-06 5:27 ` Shawn Guo
2012-01-06 5:27 ` Shawn Guo
2012-01-06 11:33 ` Dong Aisheng-B29396
2012-01-06 11:33 ` Dong Aisheng-B29396
2012-01-06 13:14 ` Shawn Guo
2012-01-06 13:14 ` Shawn Guo
2012-01-06 13:14 ` Shawn Guo
2012-01-06 18:03 ` Stephen Warren
2012-01-06 18:03 ` Stephen Warren
2012-01-07 13:54 ` Shawn Guo
2012-01-07 13:54 ` Shawn Guo
2012-01-07 13:54 ` Shawn Guo
2012-01-08 12:51 ` Richard Zhao
2012-01-08 12:51 ` Richard Zhao
2012-01-09 1:56 ` Shawn Guo
2012-01-09 1:56 ` Shawn Guo
2012-01-09 6:18 ` Simon Glass
2012-01-09 6:18 ` Simon Glass
2012-01-10 11:30 ` Dong Aisheng-B29396
2012-01-10 11:30 ` Dong Aisheng-B29396
2012-01-11 19:19 ` Stephen Warren
2012-01-11 19:19 ` Stephen Warren
2012-01-11 18:37 ` Stephen Warren
2012-01-11 18:37 ` Stephen Warren
2012-01-11 23:56 ` Shawn Guo
2012-01-11 23:56 ` Shawn Guo
2012-01-11 23:59 ` Stephen Warren
2012-01-11 23:59 ` Stephen Warren
2012-01-12 4:03 ` Shawn Guo
2012-01-12 4:03 ` Shawn Guo
2012-01-12 4:03 ` Shawn Guo
2012-01-12 7:45 ` Dong Aisheng-B29396
2012-01-12 7:45 ` Dong Aisheng-B29396
2012-01-12 7:45 ` Dong Aisheng-B29396
2012-01-11 18:28 ` Stephen Warren
2012-01-11 18:28 ` Stephen Warren
2012-01-11 18:28 ` Stephen Warren
2012-01-11 18:17 ` Stephen Warren
2012-01-11 18:17 ` Stephen Warren
2012-01-12 3:39 ` Shawn Guo
2012-01-12 3:39 ` Shawn Guo
2012-01-12 3:39 ` Shawn Guo
2012-01-12 7:40 ` Dong Aisheng-B29396
2012-01-12 7:40 ` Dong Aisheng-B29396
2012-01-12 20:46 ` Stephen Warren
2012-01-12 20:46 ` Stephen Warren
2012-01-12 21:10 ` Stephen Warren
2012-01-12 21:10 ` Stephen Warren
2012-01-13 3:46 ` Shawn Guo
2012-01-13 3:46 ` Shawn Guo
2012-01-13 3:46 ` Shawn Guo
2012-01-13 18:16 ` Stephen Warren
2012-01-13 18:16 ` Stephen Warren
2012-01-14 1:22 ` Shawn Guo
2012-01-14 1:22 ` Shawn Guo
2012-01-14 1:22 ` Shawn Guo
2012-01-14 18:21 ` Dong Aisheng
2012-01-14 18:21 ` Dong Aisheng
2012-01-16 16:08 ` Linus Walleij
2012-01-16 16:08 ` Linus Walleij
2012-01-17 2:32 ` Shawn Guo
2012-01-17 2:32 ` Shawn Guo
2012-01-17 19:50 ` Stephen Warren
2012-01-17 19:50 ` Stephen Warren
2012-01-18 2:30 ` Shawn Guo
2012-01-18 2:30 ` Shawn Guo
2012-01-18 2:30 ` Shawn Guo
2012-01-19 16:55 ` Linus Walleij
2012-01-19 16:55 ` Linus Walleij
2012-01-19 16:55 ` Linus Walleij
2012-01-19 19:30 ` Stephen Warren
2012-01-19 19:30 ` Stephen Warren
2012-01-20 17:51 ` Linus Walleij
2012-01-20 17:51 ` Linus Walleij
2012-01-20 17:51 ` Linus Walleij
2012-01-10 8:21 ` Dong Aisheng-B29396
2012-01-10 8:21 ` Dong Aisheng-B29396
2012-01-10 8:21 ` Dong Aisheng-B29396
2012-01-10 13:05 ` Shawn Guo
2012-01-10 13:05 ` Shawn Guo
2012-01-11 19:41 ` Stephen Warren
2012-01-11 19:41 ` Stephen Warren
2012-01-11 19:41 ` Stephen Warren
2012-01-11 23:01 ` Shawn Guo
2012-01-11 23:01 ` Shawn Guo
2012-01-11 23:01 ` Shawn Guo
2012-01-11 22:58 ` Stephen Warren
2012-01-11 22:58 ` Stephen Warren
2012-01-11 20:17 ` Stephen Warren
2012-01-11 20:17 ` Stephen Warren
2012-01-11 23:21 ` Shawn Guo
2012-01-11 23:21 ` Shawn Guo
2012-01-11 23:21 ` Shawn Guo
2012-01-12 8:36 ` Dong Aisheng-B29396
2012-01-12 8:36 ` Dong Aisheng-B29396
2012-01-12 8:36 ` Dong Aisheng-B29396
2012-01-12 20:56 ` Stephen Warren
2012-01-12 20:56 ` Stephen Warren
2012-01-13 3:55 ` Shawn Guo
2012-01-13 3:55 ` Shawn Guo
2012-01-13 3:55 ` Shawn Guo
2012-01-13 8:07 ` Dong Aisheng-B29396
2012-01-13 8:07 ` Dong Aisheng-B29396
2012-01-13 8:07 ` Dong Aisheng-B29396
2012-01-13 13:35 ` Shawn Guo
2012-01-13 13:35 ` Shawn Guo
2012-01-13 13:35 ` Shawn Guo
2012-01-13 13:48 ` Linus Walleij
2012-01-13 13:48 ` Linus Walleij
2012-01-13 14:23 ` Shawn Guo
2012-01-13 14:23 ` Shawn Guo
2012-01-13 17:11 ` Dong Aisheng
2012-01-13 17:11 ` Dong Aisheng
2012-01-13 18:33 ` Stephen Warren
2012-01-13 18:33 ` Stephen Warren
2012-01-14 1:10 ` Shawn Guo
2012-01-14 1:10 ` Shawn Guo
2012-01-14 1:10 ` Shawn Guo
2012-01-17 19:35 ` Stephen Warren
2012-01-17 19:35 ` Stephen Warren
2012-01-17 19:48 ` Rob Herring
2012-01-17 19:48 ` Rob Herring
2012-01-17 19:48 ` Rob Herring
2012-01-14 17:58 ` Dong Aisheng
2012-01-14 17:58 ` Dong Aisheng
2012-01-14 17:58 ` Dong Aisheng
2012-01-17 19:44 ` Stephen Warren
2012-01-17 19:44 ` Stephen Warren
2012-01-01 14:07 ` Linus Walleij
2012-01-01 14:07 ` Linus Walleij
2012-01-01 14:07 ` Linus Walleij
2012-01-01 15:22 ` Rob Herring
2012-01-01 15:22 ` Rob Herring
2012-01-01 15:22 ` Rob Herring
2012-01-05 13:59 ` Dong Aisheng
2012-01-05 13:59 ` Dong Aisheng
2011-12-20 17:40 ` [RFC PATCH v3 3/5] pinctrl: imx: add pinctrl imx driver Dong Aisheng
2011-12-20 17:40 ` Dong Aisheng
2011-12-20 17:40 ` Dong Aisheng
2011-12-20 19:50 ` Marek Vasut
2011-12-20 19:50 ` Marek Vasut
2011-12-21 3:09 ` Dong Aisheng-B29396
2011-12-21 3:09 ` Dong Aisheng-B29396
2012-01-01 14:02 ` Linus Walleij
2012-01-01 14:02 ` Linus Walleij
2012-01-08 13:05 ` Richard Zhao
2012-01-08 13:05 ` Richard Zhao
2012-01-09 2:08 ` Shawn Guo
2012-01-09 2:08 ` Shawn Guo
2012-01-09 2:17 ` Richard Zhao
2012-01-09 2:17 ` Richard Zhao
2012-01-09 2:17 ` Richard Zhao
2012-01-09 6:32 ` Shawn Guo
2012-01-09 6:32 ` Shawn Guo
2012-01-10 8:38 ` Richard Zhao
2012-01-10 8:38 ` Richard Zhao
2012-01-10 8:38 ` Richard Zhao
2012-01-10 10:43 ` Linus Walleij
2012-01-10 10:43 ` Linus Walleij
2012-01-10 10:43 ` Linus Walleij
2012-01-10 10:55 ` Dong Aisheng-B29396
2012-01-10 10:55 ` Dong Aisheng-B29396
2012-01-10 13:51 ` Shawn Guo
2012-01-10 13:51 ` Shawn Guo
2012-01-11 9:28 ` Linus Walleij
2012-01-11 9:28 ` Linus Walleij
2012-01-11 9:28 ` Linus Walleij
2011-12-20 17:40 ` [RFC PATCH v3 4/5] ARM: imx6q: using pinmux subsystem Dong Aisheng
2011-12-20 17:40 ` Dong Aisheng
2011-12-20 17:40 ` Dong Aisheng
2011-12-20 17:40 ` [RFC PATCH v3 5/5] mmc: sdhci-esdhc-imx: " Dong Aisheng
2011-12-20 17:40 ` Dong Aisheng
2011-12-20 17:40 ` Dong Aisheng
2012-01-01 13:54 ` Linus Walleij
2012-01-01 13:54 ` Linus Walleij
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=201112202047.10308.marek.vasut@gmail.com \
--to=marek.vasut@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.