2022-06-20 15:15:10

by Marcin Wojtas

[permalink] [raw]
Subject: [net-next: PATCH 04/12] net: mvpp2: initialize port fwnode pointer

As a preparation to switch the DSA subsystem from using
of_find_net_device_by_node() to its more generic fwnode_
equivalent, the port's device structure should be updated
with its fwnode pointer, similarly to of_node - see analogous
commit c4053ef32208 ("net: mvpp2: initialize port of_node pointer").

This patch is required to prevent a regression before updating
the DSA API on boards that connect the mvpp2 port to switch,
such as Clearfog GT-8K or CN913x CEx7 Evaluation Board.

Signed-off-by: Marcin Wojtas <[email protected]>
---
drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c b/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
index b84128b549b4..cd2f113bb1a4 100644
--- a/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
+++ b/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c
@@ -6869,6 +6869,7 @@ static int mvpp2_port_probe(struct platform_device *pdev,
/* 9704 == 9728 - 20 and rounding to 8 */
dev->max_mtu = MVPP2_BM_JUMBO_PKT_SIZE;
dev->dev.of_node = port_node;
+ dev->dev.fwnode = port_fwnode;

port->pcs_gmac.ops = &mvpp2_phylink_gmac_pcs_ops;
port->pcs_xlg.ops = &mvpp2_phylink_xlg_pcs_ops;
--
2.29.0


2022-06-20 17:51:22

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [net-next: PATCH 04/12] net: mvpp2: initialize port fwnode pointer

On Mon, Jun 20, 2022 at 05:02:17PM +0200, Marcin Wojtas wrote:
> As a preparation to switch the DSA subsystem from using
> of_find_net_device_by_node() to its more generic fwnode_
> equivalent, the port's device structure should be updated
> with its fwnode pointer, similarly to of_node - see analogous
> commit c4053ef32208 ("net: mvpp2: initialize port of_node pointer").
>
> This patch is required to prevent a regression before updating
> the DSA API on boards that connect the mvpp2 port to switch,
> such as Clearfog GT-8K or CN913x CEx7 Evaluation Board.

...

> dev->dev.of_node = port_node;
> + dev->dev.fwnode = port_fwnode;

device_set_node() ?

--
With Best Regards,
Andy Shevchenko


2022-06-20 17:56:06

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [net-next: PATCH 04/12] net: mvpp2: initialize port fwnode pointer

On Mon, Jun 20, 2022 at 08:43:05PM +0300, Andy Shevchenko wrote:
> On Mon, Jun 20, 2022 at 05:02:17PM +0200, Marcin Wojtas wrote:
> > As a preparation to switch the DSA subsystem from using
> > of_find_net_device_by_node() to its more generic fwnode_
> > equivalent, the port's device structure should be updated
> > with its fwnode pointer, similarly to of_node - see analogous
> > commit c4053ef32208 ("net: mvpp2: initialize port of_node pointer").
> >
> > This patch is required to prevent a regression before updating
> > the DSA API on boards that connect the mvpp2 port to switch,
> > such as Clearfog GT-8K or CN913x CEx7 Evaluation Board.
>
> ...
>
> > dev->dev.of_node = port_node;
> > + dev->dev.fwnode = port_fwnode;
>
> device_set_node() ?

Ah, important remark to all device_set_node() comments. It assumes that you
replace _both_ assignments with _single_ call.

--
With Best Regards,
Andy Shevchenko


2022-06-21 10:07:54

by Marcin Wojtas

[permalink] [raw]
Subject: Re: [net-next: PATCH 04/12] net: mvpp2: initialize port fwnode pointer

pon., 20 cze 2022 o 19:44 Andy Shevchenko
<[email protected]> napisaƂ(a):
>
> On Mon, Jun 20, 2022 at 08:43:05PM +0300, Andy Shevchenko wrote:
> > On Mon, Jun 20, 2022 at 05:02:17PM +0200, Marcin Wojtas wrote:
> > > As a preparation to switch the DSA subsystem from using
> > > of_find_net_device_by_node() to its more generic fwnode_
> > > equivalent, the port's device structure should be updated
> > > with its fwnode pointer, similarly to of_node - see analogous
> > > commit c4053ef32208 ("net: mvpp2: initialize port of_node pointer").
> > >
> > > This patch is required to prevent a regression before updating
> > > the DSA API on boards that connect the mvpp2 port to switch,
> > > such as Clearfog GT-8K or CN913x CEx7 Evaluation Board.
> >
> > ...
> >
> > > dev->dev.of_node = port_node;
> > > + dev->dev.fwnode = port_fwnode;
> >
> > device_set_node() ?
>
> Ah, important remark to all device_set_node() comments. It assumes that you
> replace _both_ assignments with _single_ call.
>

OK, will do.

Thanks,
Marcin