[PATCH] of: Add more stubs for non-OF builds

Bryan Wu cooloney at gmail.com
Fri Jun 21 10:36:18 EST 2013


On Thu, Jun 20, 2013 at 5:26 PM, Grant Likely <grant.likely at linaro.org> wrote:
> On Thu, 20 Jun 2013 16:49:54 -0700, Bryan Wu <cooloney at gmail.com> wrote:
>> Hi Rob,
>>
>> Is this patch good for merging?
>>
>> In Alex's one patch to add device tree supporting for a leds driver,
>> we got building errors due to miss definitions of some of_xxx api
>> functions.
>>
>> It looks obviously to me that we need to fix this in device tree core
>> instead put #ifdef CONFIG_OF everywhere.
>
> Actually, the reason those things aren't universally defined is to catch
> exactly what it caught. The "leds-mc13783: Add devicetree support" patch
> interleaves DT and non-DT parsing which isn't generally a good idea. The
> DT parsing code should be shuffled off into a separate function and/or
> contained with "if (IS_ENABLED(CONFIG_OF)) {}".
>

Agree, reasonable! I will remove this patch from my tree firstly.

Alex, could you please update your patch with Grant's feedback?

Thanks,
-Bryan


> So, no, I don't want this patch merged.
>
> g.
>
>
>>
>> Thanks,
>> -Bryan
>>
>> On Tue, Jun 18, 2013 at 9:35 AM, Alexander Shiyan <shc_work at mail.ru> wrote:
>> >> Perhaps a more specific subject.
>> >
>> > I can just specify stub function names in the subject.
>> > Is this enough?
>> >
>> >> On 06/17/2013 12:24 PM, Alexander Shiyan wrote:
>> >> > Patch adds of_get_next_child and of_get_next_available_child
>> >> > stubs for non-OF builds.
>> >> >
>> >> > Signed-off-by: Alexander Shiyan <shc_work at mail.ru>
>> >> > ---
>> >>
>> >> What changed for v2?
>> >
>> > v1 not contain "inline" for prototypes.
>> >
>> >> >  include/linux/of.h | 16 ++++++++++++++--
>> >> >  1 file changed, 14 insertions(+), 2 deletions(-)
>> >> >
>> >> > diff --git a/include/linux/of.h b/include/linux/of.h
>> >> > index 1fd08ca..df0e644 100644
>> >> > --- a/include/linux/of.h
>> >> > +++ b/include/linux/of.h
>> >> > @@ -366,8 +366,17 @@ static inline bool of_have_populated_dt(void)
>> >> >     return false;
>> >> >  }
>> >> >
>> >> > -#define for_each_child_of_node(parent, child) \
>> >> > -   while (0)
>> >> > +static struct device_node *of_get_next_child(const struct device_node *node,
>> >> > +                                        struct device_node *prev)
>> >> > +{
>> >> > +   return NULL;
>> >> > +}
>> >> > +
>> >> > +static struct device_node *of_get_next_available_child(
>> >> > +   const struct device_node *node, struct device_node *prev)
>> >> > +{
>> >> > +   return NULL;
>> >> > +}
>> >> >
>> >> >  static inline struct device_node *of_get_child_by_name(
>> >> >                                     const struct device_node *node,
>> >> > @@ -376,6 +385,9 @@ static inline struct device_node *of_get_child_by_name(
>> >> >     return NULL;
>> >> >  }
>> >> >
>> >> > +#define for_each_child_of_node(parent, child) \
>> >>
>> >> parent and child need unused annotations to avoid unused variable warnings.
>> >
>> > This define has been moved just for keep same order as for OF-version.
>> >
>> > ---
>
> --
> email sent from notmuch.vim plugin


More information about the devicetree-discuss mailing list