Re: [PATCH v3 06/14] include: fwnode.h: Define format macros for ports and endpoints
From: Daniel Scally
Date: Mon Dec 28 2020 - 18:02:28 EST
Hi Sakari
On 28/12/2020 17:11, Sakari Ailus wrote:
> 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.
Fine by me; I shall change that.
> ACPI does not have a format port concept so the definitions that are being
> used can be said to be specific to Linux.
>