[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID:
<176218882404.2759873.8174527156326754449.stgit@ahduyck-xeon-server.home.arpa>
Date: Mon, 03 Nov 2025 08:59:55 -0800
From: Alexander Duyck <alexander.duyck@...il.com>
To: netdev@...r.kernel.org
Cc: kuba@...nel.org, kernel-team@...a.com, andrew+netdev@...n.ch,
hkallweit1@...il.com, linux@...linux.org.uk, pabeni@...hat.com,
davem@...emloft.net
Subject: [net-next PATCH v2 00/11] net: phy: Add support for fbnic PHY w/ 25G,
50G, and 100G support
This first half of this patch set introduces the necessary bits to the
generic c45 driver code to enable it to read 25G, 50G, and 100G speeds from
the PHY and updates the XPCS driver to to enable 25, 50G, and 100G
interfaces matching those supported by the fbnic driver.
The rest of this patch set enables the changes to fbnic to make use of
these interfaces and expose a phydev that can provide a necessary link
delay to avoid link flapping in the event that a cable is disconnected and
reconnected, and to correctly provide the count for the link down events.
With this we have the basic groundwork laid as with this all the bits and
pieces are in place in terms of reading the configuration. The general plan
for follow-on patch sets is to start enabling changing of the configuration
in environments where that is supported.
v2: Added XPCS code to the patch set
Dropped adding bits for extended ability registers
Switched from using generic c45 to fbnic_phy
Fixed several bugs related to phy state machine and use of resume
Moved PHY connection/disconnection into ndo_init/uninit
Renamed fbnic_swmii.c to fbnic_mdio.c
---
Alexander Duyck (11):
net: phy: Add support for 25, 50 and 100Gbps PMA to genphy_c45_read_pma
net: phy: Add support for 25G, 50G, and 100G interfaces to xpcs driver
net: phy: Fix PMA identifier handling in XPCS
net: phy: Add identifier for fbnic PMA and use it to skip initial reset
net: phy: Add fbnic specific PHY driver fbnic_phy
fbnic: Rename PCS IRQ to MAC IRQ as it is actually a MAC interrupt
fbnic: Add logic to track PMD state via MAC/PCS signals
fbnic: Cleanup handling for link down event statistics
fbnic: Add SW shim for MDIO interface to PMA/PMD and PCS
fbnic: Add phydev representing PMD to phylink setup
fbnic: Replace use of internal PCS w/ Designware XPCS
MAINTAINERS | 1 +
drivers/net/ethernet/meta/Kconfig | 2 +
drivers/net/ethernet/meta/fbnic/Makefile | 1 +
drivers/net/ethernet/meta/fbnic/fbnic.h | 15 +-
drivers/net/ethernet/meta/fbnic/fbnic_csr.h | 2 +
.../net/ethernet/meta/fbnic/fbnic_ethtool.c | 9 +
drivers/net/ethernet/meta/fbnic/fbnic_irq.c | 42 ++--
drivers/net/ethernet/meta/fbnic/fbnic_mac.c | 71 ++++---
drivers/net/ethernet/meta/fbnic/fbnic_mac.h | 40 +++-
drivers/net/ethernet/meta/fbnic/fbnic_mdio.c | 190 +++++++++++++++++
.../net/ethernet/meta/fbnic/fbnic_netdev.c | 27 ++-
.../net/ethernet/meta/fbnic/fbnic_netdev.h | 8 +-
drivers/net/ethernet/meta/fbnic/fbnic_pci.c | 8 +
.../net/ethernet/meta/fbnic/fbnic_phylink.c | 194 ++++++++++++------
drivers/net/pcs/pcs-xpcs.c | 72 ++++++-
drivers/net/phy/Kconfig | 6 +
drivers/net/phy/Makefile | 1 +
drivers/net/phy/fbnic_phy.c | 52 +++++
drivers/net/phy/phy-c45.c | 9 +
include/linux/pcs/pcs-xpcs.h | 4 +-
include/uapi/linux/mdio.h | 14 ++
21 files changed, 629 insertions(+), 139 deletions(-)
create mode 100644 drivers/net/ethernet/meta/fbnic/fbnic_mdio.c
create mode 100644 drivers/net/phy/fbnic_phy.c
--
Powered by blists - more mailing lists