[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAL_JsqJ6wg3Q9FxKOzrnRo_s1ZznLurfsDuWJ+XVQzA5YS6Rsw@mail.gmail.com>
Date: Tue, 11 Feb 2025 08:22:48 -0600
From: Rob Herring <robh@...nel.org>
To: Zijun Hu <zijun_hu@...oud.com>
Cc: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>, "Rafael J. Wysocki" <rafael@...nel.org>,
Saravana Kannan <saravanak@...gle.com>, Len Brown <lenb@...nel.org>,
Daniel Scally <djrscally@...il.com>, Heikki Krogerus <heikki.krogerus@...ux.intel.com>,
Sakari Ailus <sakari.ailus@...ux.intel.com>, linux-acpi@...r.kernel.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
Zijun Hu <quic_zijuhu@...cinc.com>
Subject: Re: [PATCH v3] of: property: Increase NR_FWNODE_REFERENCE_ARGS
On Tue, Feb 11, 2025 at 7:40 AM Zijun Hu <zijun_hu@...oud.com> wrote:
>
> On 2025/2/11 20:24, Andy Shevchenko wrote:
> >>>> -#define NR_FWNODE_REFERENCE_ARGS 8
> >>>> +#define NR_FWNODE_REFERENCE_ARGS 16
> >>> Thinking of the case, perhaps you also want
> >>>
> >>> static_assert(NR_FWNODE_REFERENCE_ARGS == MAX_PHANDLE_ARGS);
> >>>
> >>> to be put somewhere, but I don't think we can do it in this header file.
> >> thank you Andy for code review.
> >>
> >> yes. it seems there are good location to place the static_assert().
> >>
> >> is it okay to associate two macros by
> >> #define MAX_PHANDLE_ARGS NR_FWNODE_REFERENCE_ARGS
> > I was thinking about this and I don't see how it can be done without
> > introducing more chaos (dependency hell) into the headers. So, I won't
> > take this path or even consider it deeper.
> >
>
> i have confirmed that:
>
> of.h includes fwnode.h indirectly
> fwnode.h does not include of.h directly or indirectly
Only for struct fwnode_handle. I don't think we want to add to that.
For the most part, fwnode is a layer above DT and the DT code should
know nothing about fwnode.
> in theory, dependency between both headers should also be like this.
>
> So, it is simple to use below define in of.h
> #define MAX_PHANDLE_ARGS NR_FWNODE_REFERENCE_ARGS
>
> >> OR
> >> replace all MAX_PHANDLE_ARGS instances with NR_FWNODE_REFERENCE_ARGS
> >> ?
> > This sounds plausible to me, but you need a blessing from OF people as
> > the naming may be a bit confusing (for them) as "phandle" is well established
> > term in OF realm.
>
> phandle is a type of DT firmware node reference. so this solution
> seems suitable as well.
>
> struct software_node_ref_args also uses NR_FWNODE_REFERENCE_ARGS directly.
>
> let us wait for more comments.
I prefer what you have here with the static_assert() added.
Rob
Powered by blists - more mailing lists