Re: [PATCH v3 06/14] include: fwnode.h: Define format macros for ports and endpoints

From: Sakari Ailus
Date: Mon Dec 28 2020 - 12:15:52 EST


On Mon, Dec 28, 2020 at 06:30:24PM +0200, Sakari Ailus wrote:
> Hi Daniel, Andy,
>
> On Thu, Dec 24, 2020 at 01:08:59AM +0000, Daniel Scally wrote:
> > OF, ACPI and software_nodes all implement graphs including nodes for ports
> > and endpoints. These are all intended to be named with a common schema,
> > as "port@n" and "endpoint@n" where n is an unsigned int representing the
> > index of the node. To ensure commonality across the subsystems, provide a
> > set of macros to define the format.
> >
> > Suggested-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
> > Signed-off-by: Daniel Scally <djrscally@xxxxxxxxx>
> > ---
> > Changes in v3
> > - Patch introduced
> >
> > include/linux/fwnode.h | 13 +++++++++++++
> > 1 file changed, 13 insertions(+)
> >
> > diff --git a/include/linux/fwnode.h b/include/linux/fwnode.h
> > index 9506f8ec0974..52889efceb7d 100644
> > --- a/include/linux/fwnode.h
> > +++ b/include/linux/fwnode.h
> > @@ -32,6 +32,19 @@ struct fwnode_endpoint {
> > const struct fwnode_handle *local_fwnode;
> > };
> >
> > +/*
> > + * ports and endpoints defined in OF, ACPI and as software_nodes should all
> > + * follow a common naming scheme; use these macros to ensure commonality across
> > + * the subsystems.
> > + *
> > + * The *PREFIX_LEN macros refer to the length of the "port@" and "endpoint@"
> > + * sections of the naming scheme.
> > + */
> > +#define FWNODE_GRAPH_PORT_NAME_FORMAT "port@%u"
> > +#define FWNODE_GRAPH_PORT_NAME_PREFIX_LEN 5
> > +#define FWNODE_GRAPH_ENDPOINT_NAME_FORMAT "endpoint@%u"
> > +#define FWNODE_GRAPH_ENDPOINT_PREFIX_LEN 9
> > +
> > #define NR_FWNODE_REFERENCE_ARGS 8
>
> I'd keep such definitions local to the swnode implementation as neither
> ACPI nor DT have an apparent need for them. They do use the naming, but
> don't appear to format such strings.

Ah, I noticed these are used by the later patches. Please ignore that
comment then.

But these are still definitions, so I'd use SWNODE prefix rather than
FWNODE. That should also be reflected in the comment.

ACPI does not have a format port concept so the definitions that are being
used can be said to be specific to Linux.

--
Kind regards,

Sakari Ailus