pon., 20 cze 2022 o 19:41 Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> napisał(a): > > 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? I left it to satisfy possible issues with backward compatibility - I migrated mv88e6xxx, other DSA drivers still rely on of_* and may use this field. > > > + 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(). > Ok, thanks - will do for all occurences. > ... > > > -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? > I thought about it and can perform such naming update in next iteration. > ... > > > - 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. > OK. > ... > > > slave_dev->dev.of_node = port->dn; > > + slave_dev->dev.fwnode = port->fwnode; > > device_set_node() > OK. Thanks, Marcin