[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20191211104821.GB25745@shell.armlinux.org.uk>
Date: Wed, 11 Dec 2019 10:48:21 +0000
From: Russell King - ARM Linux admin <linux@...linux.org.uk>
To: Andrew Lunn <andrew@...n.ch>,
Florian Fainelli <f.fainelli@...il.com>,
Heiner Kallweit <hkallweit1@...il.com>
Cc: "David S. Miller" <davem@...emloft.net>, netdev@...r.kernel.org
Subject: [PATCH net-next v3 00/14] Add support for SFP+ copper modules
Hi,
This series adds support for Copper SFP+ modules with Clause 45 PHYs.
Specifically the patches:
1. drop support for the probably never tested 100BASE-*X modules.
2. drop EEPROM ID from sfp_select_interface()
3. add more compliance code definitions from SFF-8024, renaming the
existing definitions.
4. add module start/stop methods so phylink knows when a module is
about to become active. The module start method is called after
we have probed for a PHY on the module.
5. move start/stop of module PHY down into phylink using the new
module start/stop methods.
6. add support for Clause 45 I2C accesses, tested with Methode DM7052.
Other modules appear to use the same protocol, but slight
differences, but I do not have those modules to test with.
(if someone does, please holler!)
7. rearrange how we attach to PHYs so that we can support Clause 45
PHYs with indeterminant interface modes. (Clause 45 PHYs appear
to like to change their PHY interface mode depending on the
negotiated speed.)
8. add support for phylink to connect to a clause 45 PHY on a SFP
module.
9. split the link_an_mode between the configured value and the
currently selected mode value; some clause 45 PHYs have no
capability to provide in-band negotiation.
10. split the link configuration on SFP module insertion in phylink
so we can use it in other code paths.
11. delay MAC configuration for copper modules without a PHY to the
module start method - after any module PHY has been probed. If
the module has a PHY, then we setup the MAC when the PHY is
detected.
12. the Broadcom 84881 PHY does not support in-band negotiation even
though it uses SGMII and 2500BASE-X. Having the MAC operating
with in-band negotiation enabled, even with AN bypass enabled,
results in no link - Broadcom say that the host MAC must always
be forced.
13. add support for the Broadcom 84881 PHY found on the Methode
DM7052 module.
14. add support to SFP to probe for a Clause 45 PHY on copper SFP+
modules.
v3: now bisectable!
drivers/net/phy/Kconfig | 6 +
drivers/net/phy/Makefile | 1 +
drivers/net/phy/bcm84881.c | 269 +++++++++++++++++++++++++++++++++++++++++++
drivers/net/phy/marvell10g.c | 2 +-
drivers/net/phy/mdio-i2c.c | 28 +++--
drivers/net/phy/phylink.c | 229 ++++++++++++++++++++++++++----------
drivers/net/phy/sfp-bus.c | 122 ++++++++++++++------
drivers/net/phy/sfp.c | 69 ++++++++---
drivers/net/phy/sfp.h | 2 +
include/linux/sfp.h | 95 ++++++++++-----
10 files changed, 670 insertions(+), 153 deletions(-)
create mode 100644 drivers/net/phy/bcm84881.c
--
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 12.1Mbps down 622kbps up
According to speedtest.net: 11.9Mbps down 500kbps up
Powered by blists - more mailing lists