[net-next: PATCH v2 0/8] DSA: switch to fwnode_/device_

From: Marcin Wojtas
Date: Fri Jul 15 2022 - 04:50:55 EST


Hi,

This is a re-spin of the DSA migration to fwnode_/device_ API.
As agreed, the ACPI-specific patches were kept aside for now,
until the MDIOSerialBus is submitted and accepted in the ACPI
Specification.

The patchset addresses all comments from the first version,
mostly related to usage of proper device_ helpers. Also,
as it was suggested, fwnode_dev_node_match() routine
was taken out of the network code and introduced as a generic
one in drivers/base/property.c

The details can be found in the changelog below. Any comments or
remarks will be appreciated.

Each patch was tested on:
* On EspressoBIN
* On SolidRun CN913x CEx7 Eval Board

IMPORTANT NOTE:
This patchset is rebased on top of the one from Russell
(https://lore.kernel.org/all/Ys7RdzGgHbYiPyB1@xxxxxxxxxxxxxxxxxxxxx/),
so a care should be taken, when merging to the net-next tree.

Best regards,
Marcin

Changelog v1->v2:
1/8
* Drop unnecessary check in fixed_phy_get_gpiod()
* Improve line breaking
* Use device_set_node & dev_fwnode

2/8
* Switch to fwnode_property_count_u32 and fix comparison
in if statement.

3/8
* Drop dn usage entirely and use dp->fwnode only. Update
all dependent drivers to use to_of_node.
* Use device_set_node, dev_fwnode & device_get_named_child_node
* Replace '_of' routines suffix with '_fw'

4/8
* Use device_set_node

5/8
* New patch

6/8
* Use device_match_fwnode
* Restore EXPORT_SYMBOL()

7/8
* Get rid of of_mdiobus_register_device

8/8
* Use dev_fwnode in mv88e6xxx_probe
* Simplify condition checks in mv88e6xxx_probe as suggested by Andy

Marcin Wojtas (8):
net: phy: fixed_phy: switch to fwnode_ API
net: mdio: switch fixed-link PHYs API to fwnode_
net: dsa: switch to device_/fwnode_ APIs
net: mvpp2: initialize port fwnode pointer
device property: introduce fwnode_dev_node_match
net: core: switch to fwnode_find_net_device_by_node()
net: mdio: introduce fwnode_mdiobus_register_device()
net: dsa: mv88e6xxx: switch to device_/fwnode_ APIs

include/linux/etherdevice.h | 1 +
include/linux/fwnode_mdio.h | 22 ++++
include/linux/of_net.h | 6 -
include/linux/phy_fixed.h | 4 +-
include/linux/property.h | 2 +
include/net/dsa.h | 2 +-
net/dsa/dsa_priv.h | 4 +-
drivers/base/property.c | 22 ++++
drivers/net/dsa/mt7530.c | 2 +-
drivers/net/dsa/mv88e6xxx/chip.c | 57 ++++-----
drivers/net/dsa/qca8k.c | 2 +-
drivers/net/dsa/realtek/rtl8365mb.c | 2 +-
drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c | 2 +-
drivers/net/mdio/fwnode_mdio.c | 129 ++++++++++++++++++++
drivers/net/mdio/of_mdio.c | 111 +----------------
drivers/net/phy/fixed_phy.c | 39 +++---
net/core/net-sysfs.c | 25 ++--
net/dsa/dsa2.c | 101 ++++++++-------
net/dsa/port.c | 70 ++++++-----
net/dsa/slave.c | 7 +-
20 files changed, 328 insertions(+), 282 deletions(-)

--
2.29.0