| From 95dfdd3c9ad17f9ab848fe4f438422c4e51d1b35 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Sat, 12 Mar 2022 21:50:14 +0100 |
| Subject: net: sfp: add 2500base-X quirk for Lantech SFP module |
| |
| From: Michael Walle <michael@walle.cc> |
| |
| [ Upstream commit 00eec9fe4f3b9588b4bfa8ef9dd0aae96407d5d7 ] |
| |
| The Lantech 8330-262D-E module is 2500base-X capable, but it reports the |
| nominal bitrate as 2500MBd instead of 3125MBd. Add a quirk for the |
| module. |
| |
| The following in an EEPROM dump of such a SFP with the serial number |
| redacted: |
| |
| 00: 03 04 07 00 00 00 01 20 40 0c 05 01 19 00 00 00 ???...? @????... |
| 10: 1e 0f 00 00 4c 61 6e 74 65 63 68 20 20 20 20 20 ??..Lantech |
| 20: 20 20 20 20 00 00 00 00 38 33 33 30 2d 32 36 32 ....8330-262 |
| 30: 44 2d 45 20 20 20 20 20 56 31 2e 30 03 52 00 cb D-E V1.0?R.? |
| 40: 00 1a 00 00 46 43 XX XX XX XX XX XX XX XX XX XX .?..FCXXXXXXXXXX |
| 50: 20 20 20 20 32 32 30 32 31 34 20 20 68 b0 01 98 220214 h??? |
| 60: 45 58 54 52 45 4d 45 4c 59 20 43 4f 4d 50 41 54 EXTREMELY COMPAT |
| 70: 49 42 4c 45 20 20 20 20 20 20 20 20 20 20 20 20 IBLE |
| |
| Signed-off-by: Michael Walle <michael@walle.cc> |
| Link: https://lore.kernel.org/r/20220312205014.4154907-1-michael@walle.cc |
| Signed-off-by: Paolo Abeni <pabeni@redhat.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/net/phy/sfp-bus.c | 6 ++++++ |
| 1 file changed, 6 insertions(+) |
| |
| diff --git a/drivers/net/phy/sfp-bus.c b/drivers/net/phy/sfp-bus.c |
| index c1512c9925a6..15aa5ac1ff49 100644 |
| --- a/drivers/net/phy/sfp-bus.c |
| +++ b/drivers/net/phy/sfp-bus.c |
| @@ -74,6 +74,12 @@ static const struct sfp_quirk sfp_quirks[] = { |
| .vendor = "HUAWEI", |
| .part = "MA5671A", |
| .modes = sfp_quirk_2500basex, |
| + }, { |
| + // Lantech 8330-262D-E can operate at 2500base-X, but |
| + // incorrectly report 2500MBd NRZ in their EEPROM |
| + .vendor = "Lantech", |
| + .part = "8330-262D-E", |
| + .modes = sfp_quirk_2500basex, |
| }, { |
| .vendor = "UBNT", |
| .part = "UF-INSTANT", |
| -- |
| 2.35.1 |
| |