diff mbox series

[net-next] net: sfp: add 2500base-X quirk for Lantech SFP module

Message ID 20220312205014.4154907-1-michael@walle.cc (mailing list archive)
State Accepted
Commit 00eec9fe4f3b9588b4bfa8ef9dd0aae96407d5d7
Delegated to: Netdev Maintainers
Headers show
Series [net-next] net: sfp: add 2500base-X quirk for Lantech SFP module | expand

Checks

Context Check Description
netdev/tree_selection success Clearly marked for net-next
netdev/fixes_present success Fixes tag not required for -next series
netdev/subject_prefix success Link
netdev/cover_letter success Single patches do not need cover letters
netdev/patch_count success Link
netdev/header_inline success No static functions without inline keyword in header files
netdev/build_32bit success Errors and warnings before: 2 this patch: 2
netdev/cc_maintainers success CCed 6 of 6 maintainers
netdev/build_clang success Errors and warnings before: 18 this patch: 18
netdev/module_param success Was 0 now: 0
netdev/verify_signedoff success Signed-off-by tag matches author and committer
netdev/verify_fixes success No Fixes tag
netdev/build_allmodconfig_warn success Errors and warnings before: 7 this patch: 7
netdev/checkpatch success total: 0 errors, 0 warnings, 0 checks, 12 lines checked
netdev/kdoc success Errors and warnings before: 0 this patch: 0
netdev/source_inline success Was 0 now: 0

Commit Message

Michael Walle March 12, 2022, 8:50 p.m. UTC
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>
---
 drivers/net/phy/sfp-bus.c | 6 ++++++
 1 file changed, 6 insertions(+)

Comments

Jakub Kicinski March 15, 2022, 5:07 a.m. UTC | #1
On Sat, 12 Mar 2022 21:50:14 +0100 Michael Walle wrote:
> 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

Any idea what the "Extremely Compatible" is referring to? :-D

> Signed-off-by: Michael Walle <michael@walle.cc>

A quirk like this seems safe to apply to net and 5.17, still.
Would you prefer that or net-next as marked?
Michael Walle March 15, 2022, 8:30 a.m. UTC | #2
Am 2022-03-15 06:07, schrieb Jakub Kicinski:
> On Sat, 12 Mar 2022 21:50:14 +0100 Michael Walle wrote:
>> 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
> 
> Any idea what the "Extremely Compatible" is referring to? :-D

Haha, I smirked on that, too. Anything between 60 and 7f
is vendor specific. So.. good for a laugh?

>> Signed-off-by: Michael Walle <michael@walle.cc>
> 
> A quirk like this seems safe to apply to net and 5.17, still.
> Would you prefer that or net-next as marked?

Personally, I don't have any preference because the board
is just in the process of being upstreamed. Just pick one ;)
I'd say net-next because 5.17 development is almost at the
end.

-michael
patchwork-bot+netdevbpf@kernel.org March 15, 2022, 11 a.m. UTC | #3
Hello:

This patch was applied to netdev/net-next.git (master)
by Paolo Abeni <pabeni@redhat.com>:

On Sat, 12 Mar 2022 21:50:14 +0100 you wrote:
> 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:
> 
> [...]

Here is the summary with links:
  - [net-next] net: sfp: add 2500base-X quirk for Lantech SFP module
    https://git.kernel.org/netdev/net-next/c/00eec9fe4f3b

You are awesome, thank you!
diff mbox series

Patch

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",