2022-10-08 19:14:17

by Colin Foster

[permalink] [raw]
Subject: [RFC v4 net-next 12/17] mfd: ocelot: add shared resource names for switch functionality

The switch portion of the Ocelot chip relies on several resources. Define
the resource names here, so they can be referenced by both the switch
driver and the MFD.

Signed-off-by: Colin Foster <[email protected]>
---

v4
* New patch. Previous versions had entire structures shared,
this only requires that the names be shared.

---
include/linux/mfd/ocelot.h | 9 +++++++++
1 file changed, 9 insertions(+)

diff --git a/include/linux/mfd/ocelot.h b/include/linux/mfd/ocelot.h
index dd72073d2d4f..b80f2f5ff1d6 100644
--- a/include/linux/mfd/ocelot.h
+++ b/include/linux/mfd/ocelot.h
@@ -13,6 +13,15 @@

struct resource;

+#define OCELOT_RES_NAME_ANA "ana"
+#define OCELOT_RES_NAME_QS "qs"
+#define OCELOT_RES_NAME_QSYS "qsys"
+#define OCELOT_RES_NAME_REW "rew"
+#define OCELOT_RES_NAME_SYS "sys"
+#define OCELOT_RES_NAME_S0 "s0"
+#define OCELOT_RES_NAME_S1 "s1"
+#define OCELOT_RES_NAME_S2 "s2"
+
static inline struct regmap *
ocelot_regmap_from_resource_optional(struct platform_device *pdev,
unsigned int index,
--
2.25.1


2022-10-31 09:44:31

by Lee Jones

[permalink] [raw]
Subject: Re: [RFC v4 net-next 12/17] mfd: ocelot: add shared resource names for switch functionality

On Sat, 08 Oct 2022, Colin Foster wrote:

> The switch portion of the Ocelot chip relies on several resources. Define
> the resource names here, so they can be referenced by both the switch
> driver and the MFD.
>
> Signed-off-by: Colin Foster <[email protected]>
> ---
>
> v4
> * New patch. Previous versions had entire structures shared,
> this only requires that the names be shared.
>
> ---
> include/linux/mfd/ocelot.h | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/include/linux/mfd/ocelot.h b/include/linux/mfd/ocelot.h
> index dd72073d2d4f..b80f2f5ff1d6 100644
> --- a/include/linux/mfd/ocelot.h
> +++ b/include/linux/mfd/ocelot.h
> @@ -13,6 +13,15 @@
>
> struct resource;
>
> +#define OCELOT_RES_NAME_ANA "ana"
> +#define OCELOT_RES_NAME_QS "qs"
> +#define OCELOT_RES_NAME_QSYS "qsys"
> +#define OCELOT_RES_NAME_REW "rew"
> +#define OCELOT_RES_NAME_SYS "sys"
> +#define OCELOT_RES_NAME_S0 "s0"
> +#define OCELOT_RES_NAME_S1 "s1"
> +#define OCELOT_RES_NAME_S2 "s2"

I've never been a fan of defining name strings.

The end of the define name is identical to the resource names.

This also makes grepping that much harder for little gain.

--
Lee Jones [李琼斯]

2022-11-01 03:18:26

by Colin Foster

[permalink] [raw]
Subject: Re: [RFC v4 net-next 12/17] mfd: ocelot: add shared resource names for switch functionality

Hi Lee,

On Mon, Oct 31, 2022 at 09:35:01AM +0000, Lee Jones wrote:
> On Sat, 08 Oct 2022, Colin Foster wrote:
>
> > The switch portion of the Ocelot chip relies on several resources. Define
> > the resource names here, so they can be referenced by both the switch
> > driver and the MFD.
> >
> > Signed-off-by: Colin Foster <[email protected]>
> > ---
> >
> > v4
> > * New patch. Previous versions had entire structures shared,
> > this only requires that the names be shared.
> >
> > ---
> > include/linux/mfd/ocelot.h | 9 +++++++++
> > 1 file changed, 9 insertions(+)
> >
> > diff --git a/include/linux/mfd/ocelot.h b/include/linux/mfd/ocelot.h
> > index dd72073d2d4f..b80f2f5ff1d6 100644
> > --- a/include/linux/mfd/ocelot.h
> > +++ b/include/linux/mfd/ocelot.h
> > @@ -13,6 +13,15 @@
> >
> > struct resource;
> >
> > +#define OCELOT_RES_NAME_ANA "ana"
> > +#define OCELOT_RES_NAME_QS "qs"
> > +#define OCELOT_RES_NAME_QSYS "qsys"
> > +#define OCELOT_RES_NAME_REW "rew"
> > +#define OCELOT_RES_NAME_SYS "sys"
> > +#define OCELOT_RES_NAME_S0 "s0"
> > +#define OCELOT_RES_NAME_S1 "s1"
> > +#define OCELOT_RES_NAME_S2 "s2"
>
> I've never been a fan of defining name strings.
>
> The end of the define name is identical to the resource names.
>
> This also makes grepping that much harder for little gain.

I defined them here because they'll be directly used in multiple files.
In this case, drivers/net/dsa/ocelot/ocelot_ext.c uses all these defines
as well as drivers/mfd/ocelot-core.c. Future patch sets will also
utilize other resource names by string as well...

But I'll plan to drop this patch next round unless someone disagrees.

Thanks for the feedback!

>
> --
> Lee Jones [李琼斯]