sfp: add SFP module support
authorRussell King <rmk+kernel@arm.linux.org.uk>
Tue, 25 Jul 2017 14:03:39 +0000 (15:03 +0100)
committerDavid S. Miller <davem@davemloft.net>
Mon, 7 Aug 2017 03:55:29 +0000 (20:55 -0700)
commit73970055450eebc6fc36fd170e56cc45889d0093
tree9f11642c4ca76d2ad62e1ec290492da6be0a13c5
parentda7c1862f05842236490a8e65cc6f57d8160c05d
sfp: add SFP module support

Add support for SFP hotpluggable modules via sfp-bus and phylink.
This supports both copper and optical SFP modules, which require
different Serdes modes in order to properly negotiate the link.

Optical SFP modules typically require the Serdes link to be talking
1000BaseX mode - this is the gigabit ethernet mode defined by the
802.3 standard.

Copper SFP modules typically integrate a PHY in the module to convert
from Serdes to copper, and the PHY will be configured by the vendor
to either present a 1000BaseX Serdes link (for fixed 1000BaseT) or a
SGMII Serdes link.  However, this is vendor defined, so we instead
detect the PHY, switch the link to SGMII mode, and use traditional
PHY based negotiation.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/phy/Kconfig
drivers/net/phy/Makefile
drivers/net/phy/sfp.c [new file with mode: 0644]