[RFC v1 net-next 2/7] mfd: ocelot: add ocelot-serdes capability

Colin Foster posted 7 patches 2 years, 6 months ago
There is a newer version of this series
[RFC v1 net-next 2/7] mfd: ocelot: add ocelot-serdes capability
Posted by Colin Foster 2 years, 6 months ago
Add support for the Ocelot SERDES module to support functionality of all
non-internal phy ports.

Signed-off-by: Colin Foster <colin.foster@in-advantage.com>
---
 drivers/mfd/ocelot-core.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/drivers/mfd/ocelot-core.c b/drivers/mfd/ocelot-core.c
index b0ff05c1759f..c2224f8a16c0 100644
--- a/drivers/mfd/ocelot-core.c
+++ b/drivers/mfd/ocelot-core.c
@@ -45,6 +45,9 @@
 #define VSC7512_SIO_CTRL_RES_START	0x710700f8
 #define VSC7512_SIO_CTRL_RES_SIZE	0x00000100
 
+#define VSC7512_HSIO_RES_START		0x710d0000
+#define VSC7512_HSIO_RES_SIZE		0x00000128
+
 #define VSC7512_ANA_RES_START		0x71880000
 #define VSC7512_ANA_RES_SIZE		0x00010000
 
@@ -129,8 +132,13 @@ static const struct resource vsc7512_sgpio_resources[] = {
 	DEFINE_RES_REG_NAMED(VSC7512_SIO_CTRL_RES_START, VSC7512_SIO_CTRL_RES_SIZE, "gcb_sio"),
 };
 
+static const struct resource vsc7512_serdes_resources[] = {
+	DEFINE_RES_REG_NAMED(VSC7512_HSIO_RES_START, VSC7512_HSIO_RES_SIZE, "hsio"),
+};
+
 static const struct resource vsc7512_switch_resources[] = {
 	DEFINE_RES_REG_NAMED(VSC7512_ANA_RES_START, VSC7512_ANA_RES_SIZE, "ana"),
+	DEFINE_RES_REG_NAMED(VSC7512_HSIO_RES_START, VSC7512_HSIO_RES_SIZE, "hsio"),
 	DEFINE_RES_REG_NAMED(VSC7512_QS_RES_START, VSC7512_QS_RES_SIZE, "qs"),
 	DEFINE_RES_REG_NAMED(VSC7512_QSYS_RES_START, VSC7512_QSYS_RES_SIZE, "qsys"),
 	DEFINE_RES_REG_NAMED(VSC7512_REW_RES_START, VSC7512_REW_RES_SIZE, "rew"),
@@ -176,6 +184,11 @@ static const struct mfd_cell vsc7512_devs[] = {
 		.use_of_reg = true,
 		.num_resources = ARRAY_SIZE(vsc7512_miim1_resources),
 		.resources = vsc7512_miim1_resources,
+	}, {
+		.name = "ocelot-serdes",
+		.of_compatible = "mscc,vsc7514-serdes",
+		.num_resources = ARRAY_SIZE(vsc7512_serdes_resources),
+		.resources = vsc7512_serdes_resources,
 	}, {
 		.name = "ocelot-switch",
 		.of_compatible = "mscc,vsc7512-switch",
-- 
2.25.1
Re: [RFC v1 net-next 2/7] mfd: ocelot: add ocelot-serdes capability
Posted by Lee Jones 2 years, 6 months ago
On Wed, 15 Feb 2023, Colin Foster wrote:

> Add support for the Ocelot SERDES module to support functionality of all
> non-internal phy ports.

Looks non-controversial.

Please provide some explanation of what SERDES means / is.
 
> Signed-off-by: Colin Foster <colin.foster@in-advantage.com>
> ---
>  drivers/mfd/ocelot-core.c | 13 +++++++++++++
>  1 file changed, 13 insertions(+)

I'd expect this to go in via MFD once it comes out of RFC.

> diff --git a/drivers/mfd/ocelot-core.c b/drivers/mfd/ocelot-core.c
> index b0ff05c1759f..c2224f8a16c0 100644
> --- a/drivers/mfd/ocelot-core.c
> +++ b/drivers/mfd/ocelot-core.c
> @@ -45,6 +45,9 @@
>  #define VSC7512_SIO_CTRL_RES_START	0x710700f8
>  #define VSC7512_SIO_CTRL_RES_SIZE	0x00000100
>  
> +#define VSC7512_HSIO_RES_START		0x710d0000
> +#define VSC7512_HSIO_RES_SIZE		0x00000128
> +
>  #define VSC7512_ANA_RES_START		0x71880000
>  #define VSC7512_ANA_RES_SIZE		0x00010000
>  
> @@ -129,8 +132,13 @@ static const struct resource vsc7512_sgpio_resources[] = {
>  	DEFINE_RES_REG_NAMED(VSC7512_SIO_CTRL_RES_START, VSC7512_SIO_CTRL_RES_SIZE, "gcb_sio"),
>  };
>  
> +static const struct resource vsc7512_serdes_resources[] = {
> +	DEFINE_RES_REG_NAMED(VSC7512_HSIO_RES_START, VSC7512_HSIO_RES_SIZE, "hsio"),
> +};
> +
>  static const struct resource vsc7512_switch_resources[] = {
>  	DEFINE_RES_REG_NAMED(VSC7512_ANA_RES_START, VSC7512_ANA_RES_SIZE, "ana"),
> +	DEFINE_RES_REG_NAMED(VSC7512_HSIO_RES_START, VSC7512_HSIO_RES_SIZE, "hsio"),
>  	DEFINE_RES_REG_NAMED(VSC7512_QS_RES_START, VSC7512_QS_RES_SIZE, "qs"),
>  	DEFINE_RES_REG_NAMED(VSC7512_QSYS_RES_START, VSC7512_QSYS_RES_SIZE, "qsys"),
>  	DEFINE_RES_REG_NAMED(VSC7512_REW_RES_START, VSC7512_REW_RES_SIZE, "rew"),
> @@ -176,6 +184,11 @@ static const struct mfd_cell vsc7512_devs[] = {
>  		.use_of_reg = true,
>  		.num_resources = ARRAY_SIZE(vsc7512_miim1_resources),
>  		.resources = vsc7512_miim1_resources,
> +	}, {
> +		.name = "ocelot-serdes",
> +		.of_compatible = "mscc,vsc7514-serdes",
> +		.num_resources = ARRAY_SIZE(vsc7512_serdes_resources),
> +		.resources = vsc7512_serdes_resources,
>  	}, {
>  		.name = "ocelot-switch",
>  		.of_compatible = "mscc,vsc7512-switch",
> -- 
> 2.25.1
> 

-- 
Lee Jones [李琼斯]
Re: [RFC v1 net-next 2/7] mfd: ocelot: add ocelot-serdes capability
Posted by Colin Foster 2 years, 6 months ago
On Fri, Mar 03, 2023 at 10:48:07AM +0000, Lee Jones wrote:
> On Wed, 15 Feb 2023, Colin Foster wrote:
> 
> > Add support for the Ocelot SERDES module to support functionality of all
> > non-internal phy ports.
> 
> Looks non-controversial.
> 
> Please provide some explanation of what SERDES means / is.

Will do.

>  
> > Signed-off-by: Colin Foster <colin.foster@in-advantage.com>
> > ---
> >  drivers/mfd/ocelot-core.c | 13 +++++++++++++
> >  1 file changed, 13 insertions(+)
> 
> I'd expect this to go in via MFD once it comes out of RFC.

Understood. I'll be sure to make it clear that some sync will be needed
between MFD and net-next in the cover letter this time.

Thanks Lee!
Re: [RFC v1 net-next 2/7] mfd: ocelot: add ocelot-serdes capability
Posted by Lee Jones 2 years, 6 months ago
On Fri, 03 Mar 2023, Colin Foster wrote:

> On Fri, Mar 03, 2023 at 10:48:07AM +0000, Lee Jones wrote:
> > On Wed, 15 Feb 2023, Colin Foster wrote:
> > 
> > > Add support for the Ocelot SERDES module to support functionality of all
> > > non-internal phy ports.
> > 
> > Looks non-controversial.
> > 
> > Please provide some explanation of what SERDES means / is.
> 
> Will do.
> 
> >  
> > > Signed-off-by: Colin Foster <colin.foster@in-advantage.com>
> > > ---
> > >  drivers/mfd/ocelot-core.c | 13 +++++++++++++
> > >  1 file changed, 13 insertions(+)
> > 
> > I'd expect this to go in via MFD once it comes out of RFC.
> 
> Understood. I'll be sure to make it clear that some sync will be needed
> between MFD and net-next in the cover letter this time.

To be honest, I don't think that's required this time.

This patch looks orthogonal, unless there's something I'm missing.
 
> Thanks Lee!

NP

-- 
Lee Jones [李琼斯]