mbox series

[net-next,0/7] net: freescale: ucc_geth: Phylink conversion

Message ID 20241107170255.1058124-1-maxime.chevallier@bootlin.com (mailing list archive)
Headers show
Series net: freescale: ucc_geth: Phylink conversion | expand

Message

Maxime Chevallier Nov. 7, 2024, 5:02 p.m. UTC
Hello everyone,

This series aims at converting ucc_geth to phylink, one one part for
better SFP handling, and on the other hand as a preparation for complex
topology support with multiple PHYs being attached, which could involve
phylink. Even without considering the multi-phy case, this series brings
proper SFP support for that driver.

This driver is pretty old, which shows in the coding style. I did not
include a cleanup pass to get checkpatch happy, so a few patches will
complain about the CamelCase used in some internal structure
attrubutes...

The first 6 patches are preparation for the phylink conversion that's
done in patch 7.

The first patch removes support for the "interface" DT property which
has been deprecated for 17 years, allowing to simplify the phy mode
parsing.

The second patch splits the adjust_link function, as advised in the
phylink porting guide. This makes patch 7 easier to process.

Patches 3, 5 and 6 perform some cleanup on unsued or leftover constructs
to again make patch 7 easier to process.

Patch 5 addresses the WoL configuration in that driver.

Finally, patch 7 does the phylink conversion.

Note that there are some things that I wasn't able to test, namely the
TBI/RTBI handling. I did my best to replicate the existing logic, but I
don't have the hardware to test it.

Thanks,

Maxime

Maxime Chevallier (7):
  net: freescale: ucc_geth: Drop support for the "interface" DT property
  net: freescale: ucc_geth: split adjust_link for phylink conversion
  net: freescale: ucc_geth: Use netdev->phydev to access the PHY
  net: freescale: ucc_geth: Fix WOL configuration
  net: freescale: ucc_geth: Simplify frame length check
  net: freescale: ucc_geth: Hardcode the preamble length to 7 bytes
  net: freescale: ucc_geth: phylink conversion

 drivers/net/ethernet/freescale/Kconfig        |   3 +-
 drivers/net/ethernet/freescale/ucc_geth.c     | 600 +++++++-----------
 drivers/net/ethernet/freescale/ucc_geth.h     |  19 +-
 .../net/ethernet/freescale/ucc_geth_ethtool.c |  57 +-
 4 files changed, 247 insertions(+), 432 deletions(-)