Re: [net-next: PATCH 03/12] net: dsa: switch to device_/fwnode_ APIs
From: Andy Shevchenko
Date: Mon Jun 20 2022 - 13:41:52 EST
On Mon, Jun 20, 2022 at 05:02:16PM +0200, Marcin Wojtas wrote:
> In order to support both ACPI and DT, modify the generic
> DSA code to use device_/fwnode_ equivalent routines.
> No functional change is introduced by this patch.
...
> struct device_node *dn;
What prevents us from removing this?
> + struct fwnode_handle *fwnode;
...
> - dn = of_get_child_by_name(ds->dev->of_node, "mdio");
> + fwnode = fwnode_get_named_child_node(ds->dev->fwnode, "mdio");
The rule of thumb is avoid dereferencing fwnode from struct device. So
dev_fwnode(), but here it would be achieved by device_get_named_child_node().
...
> -static int dsa_switch_parse_of(struct dsa_switch *ds, struct device_node *dn)
> +static int dsa_switch_parse_of(struct dsa_switch *ds, struct fwnode_handle *fwnode)
Shouldn't _of suffix be replaced by, let's say, _fw?
...
> - return dsa_switch_parse_ports_of(ds, dn);
> + return dsa_switch_parse_ports_of(ds, fwnode);
Ditto.
...
> + fwnode = ds->dev->fwnode;
dev_fwnode() or corresponding device_property_ API.
...
> slave_dev->dev.of_node = port->dn;
> + slave_dev->dev.fwnode = port->fwnode;
device_set_node()
--
With Best Regards,
Andy Shevchenko