From: Erik Ekman <hidden> Date: 2021-10-18 18:37:46
These modes were added to ethtool.h in 5711a98221443 ("net: ethtool: add support
for 1000BaseX and missing 10G link modes") back in 2016.
Only setting CR mode for 10G, similar to how 25/40/50/100G modes are set up.
Tested using SFN5122F-R7 (with 2 SFP+ ports) and a 1000BASE-BX10 SFP module.
Before:
$ ethtool ext
Settings for ext:
Supported ports: [ FIBRE ]
Supported link modes: 1000baseT/Full
10000baseT/Full
Supported pause frame use: Symmetric Receive-only
Supports auto-negotiation: No
Supported FEC modes: Not reported
Advertised link modes: Not reported
Advertised pause frame use: No
Advertised auto-negotiation: No
Advertised FEC modes: Not reported
Link partner advertised link modes: Not reported
Link partner advertised pause frame use: No
Link partner advertised auto-negotiation: No
Link partner advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Auto-negotiation: off
Port: FIBRE
PHYAD: 255
Transceiver: internal
Current message level: 0x000020f7 (8439)
drv probe link ifdown ifup rx_err tx_err hw
Link detected: yes
After:
$ ethtool ext
Settings for ext:
Supported ports: [ FIBRE ]
Supported link modes: 1000baseX/Full
10000baseCR/Full
Supported pause frame use: Symmetric Receive-only
Supports auto-negotiation: No
Supported FEC modes: Not reported
Advertised link modes: Not reported
Advertised pause frame use: No
Advertised auto-negotiation: No
Advertised FEC modes: Not reported
Link partner advertised link modes: Not reported
Link partner advertised pause frame use: No
Link partner advertised auto-negotiation: No
Link partner advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Auto-negotiation: off
Port: FIBRE
PHYAD: 255
Transceiver: internal
Supports Wake-on: g
Wake-on: d
Current message level: 0x000020f7 (8439)
drv probe link ifdown ifup rx_err tx_err hw
Link detected: yes
Signed-off-by: Erik Ekman <redacted>
---
drivers/net/ethernet/sfc/mcdi_port_common.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
From: Andrew Lunn <andrew@lunn.ch> Date: 2021-10-19 15:31:59
On Mon, Oct 18, 2021 at 08:37:08PM +0200, Erik Ekman wrote:
These modes were added to ethtool.h in 5711a98221443 ("net: ethtool: add support
for 1000BaseX and missing 10G link modes") back in 2016.
Only setting CR mode for 10G, similar to how 25/40/50/100G modes are set up.
Tested using SFN5122F-R7 (with 2 SFP+ ports) and a 1000BASE-BX10 SFP module.
I'm wondering if you should have both? The MAC is doing 1000BaseX. But
it could then be connected to a copper PHY which then does
1000baseT_Full? At 1G, it is however more likely to be using SGMII,
not 1000BaseX.
Andrew
From: Martin Habets <hidden> Date: 2021-10-19 15:53:17
On Tue, Oct 19, 2021 at 05:31:52PM +0200, Andrew Lunn wrote:
On Mon, Oct 18, 2021 at 08:37:08PM +0200, Erik Ekman wrote:
quoted
These modes were added to ethtool.h in 5711a98221443 ("net: ethtool: add support
for 1000BaseX and missing 10G link modes") back in 2016.
Only setting CR mode for 10G, similar to how 25/40/50/100G modes are set up.
Tested using SFN5122F-R7 (with 2 SFP+ ports) and a 1000BASE-BX10 SFP module.
I'm wondering if you should have both? The MAC is doing 1000BaseX. But
it could then be connected to a copper PHY which then does
1000baseT_Full? At 1G, it is however more likely to be using SGMII,
not 1000BaseX.
Yes, they should both be set. We actually did a 10Gbase-T version of Siena,
the SFN51x1T.
Martin
From: Erik Ekman <hidden> Date: 2021-10-19 17:35:43
On Tue, 19 Oct 2021 at 17:53, Martin Habets [off-list ref] wrote:
On Tue, Oct 19, 2021 at 05:31:52PM +0200, Andrew Lunn wrote:
quoted
On Mon, Oct 18, 2021 at 08:37:08PM +0200, Erik Ekman wrote:
quoted
These modes were added to ethtool.h in 5711a98221443 ("net: ethtool: add support
for 1000BaseX and missing 10G link modes") back in 2016.
Only setting CR mode for 10G, similar to how 25/40/50/100G modes are set up.
Tested using SFN5122F-R7 (with 2 SFP+ ports) and a 1000BASE-BX10 SFP module.
Did you test with a Copper SFP modules?
I have tested it with a copper SFP PHY at 1G and that works fine.
I don't have the hardware to test copper 10G (RJ45).
I'm wondering if you should have both? The MAC is doing 1000BaseX. But
it could then be connected to a copper PHY which then does
1000baseT_Full? At 1G, it is however more likely to be using SGMII,
not 1000BaseX.
Yes, we can return both.
Similarly, is there a reason only CR modes are set for fiber ports,
when I expect LR/SR/etc to work as well?
I can set the modes for 10G similar to the example in 5711a98221443
("net: ethtool: add support
for 1000BaseX and missing 10G link modes"): CR/SR/LR/ER
I inserted a LR SFP+ module and ethtool -m could list its settings at least.
Yes, they should both be set. We actually did a 10Gbase-T version of Siena,
the SFN51x1T.
From: Erik Ekman <hidden> Date: 2021-10-19 17:51:33
On Tue, 19 Oct 2021 at 19:34, Erik Ekman [off-list ref] wrote:
On Tue, 19 Oct 2021 at 17:53, Martin Habets [off-list ref] wrote:
quoted
On Tue, Oct 19, 2021 at 05:31:52PM +0200, Andrew Lunn wrote:
quoted
On Mon, Oct 18, 2021 at 08:37:08PM +0200, Erik Ekman wrote:
quoted
These modes were added to ethtool.h in 5711a98221443 ("net: ethtool: add support
for 1000BaseX and missing 10G link modes") back in 2016.
Only setting CR mode for 10G, similar to how 25/40/50/100G modes are set up.
Tested using SFN5122F-R7 (with 2 SFP+ ports) and a 1000BASE-BX10 SFP module.
Did you test with a Copper SFP modules?
I have tested it with a copper SFP PHY at 1G and that works fine.
I don't have the hardware to test copper 10G (RJ45).
I'm wondering if you should have both? The MAC is doing 1000BaseX. But
it could then be connected to a copper PHY which then does
1000baseT_Full? At 1G, it is however more likely to be using SGMII,
not 1000BaseX.
Yes, we can return both.
Similarly, is there a reason only CR modes are set for fiber ports,
when I expect LR/SR/etc to work as well?
I can set the modes for 10G similar to the example in 5711a98221443
("net: ethtool: add support
for 1000BaseX and missing 10G link modes"): CR/SR/LR/ER
I inserted a LR SFP+ module and ethtool -m could list its settings at least.
quoted
Yes, they should both be set. We actually did a 10Gbase-T version of Siena,
the SFN51x1T.
From: Andrew Lunn <andrew@lunn.ch> Date: 2021-10-19 18:27:09
On Tue, Oct 19, 2021 at 07:34:16PM +0200, Erik Ekman wrote:
On Tue, 19 Oct 2021 at 17:53, Martin Habets [off-list ref] wrote:
quoted
On Tue, Oct 19, 2021 at 05:31:52PM +0200, Andrew Lunn wrote:
quoted
On Mon, Oct 18, 2021 at 08:37:08PM +0200, Erik Ekman wrote:
quoted
These modes were added to ethtool.h in 5711a98221443 ("net: ethtool: add support
for 1000BaseX and missing 10G link modes") back in 2016.
Only setting CR mode for 10G, similar to how 25/40/50/100G modes are set up.
Tested using SFN5122F-R7 (with 2 SFP+ ports) and a 1000BASE-BX10 SFP module.
Did you test with a Copper SFP modules?
I have tested it with a copper SFP PHY at 1G and that works fine.
Meaning ethtool returns 1000BaseT_FULL? Does the SFP also support
10/100? Does ethtool list 10BaseT_Half, 10BaseT_Full, etc.
Andrew
From: Erik Ekman <hidden> Date: 2021-10-19 18:55:39
On Tue, 19 Oct 2021 at 20:27, Andrew Lunn [off-list ref] wrote:
On Tue, Oct 19, 2021 at 07:34:16PM +0200, Erik Ekman wrote:
quoted
On Tue, 19 Oct 2021 at 17:53, Martin Habets [off-list ref] wrote:
quoted
On Tue, Oct 19, 2021 at 05:31:52PM +0200, Andrew Lunn wrote:
quoted
On Mon, Oct 18, 2021 at 08:37:08PM +0200, Erik Ekman wrote:
quoted
These modes were added to ethtool.h in 5711a98221443 ("net: ethtool: add support
for 1000BaseX and missing 10G link modes") back in 2016.
Only setting CR mode for 10G, similar to how 25/40/50/100G modes are set up.
Tested using SFN5122F-R7 (with 2 SFP+ ports) and a 1000BASE-BX10 SFP module.
Did you test with a Copper SFP modules?
I have tested it with a copper SFP PHY at 1G and that works fine.
Meaning ethtool returns 1000BaseT_FULL? Does the SFP also support
10/100? Does ethtool list 10BaseT_Half, 10BaseT_Full, etc.
The supported modes do not change based on the module used. From the
code it looks to only be based on the phy capability bits
(MC_CMD_PHY_CAP_1000FDX_LBN, MC_CMD_PHY_CAP_10000FDX_LBN).
The copper SFP does not link at 100Mbps, only at 1Gbps (from my testing).
From the 'Solarflare Server Adapter User Guide': "SFP 1000BASE‐T
module, Autonegotiation: No, Speed: 1G, Comment: These modules
support only 1G and will not link up at 100Mbps"
10G SFP+ Base-T modules are not mentioned, maybe they did not exist
back then. Do you think the 1000BaseT_Full should be used because of
this?
Reading the user guide further I see lists of supported SFP+ -LR and
-SR modules as well as QSFP+ SR4 modules so I am planning to add them.
/Erik
From: Martin Habets <hidden> Date: 2021-10-19 19:18:13
On Mon, Oct 18, 2021 at 08:37:08PM +0200, Erik Ekman wrote:
These modes were added to ethtool.h in 5711a98221443 ("net: ethtool: add support
for 1000BaseX and missing 10G link modes") back in 2016.
Only setting CR mode for 10G, similar to how 25/40/50/100G modes are set up.
Tested using SFN5122F-R7 (with 2 SFP+ ports) and a 1000BASE-BX10 SFP module.
Before:
$ ethtool ext
Settings for ext:
Supported ports: [ FIBRE ]
Supported link modes: 1000baseT/Full
10000baseT/Full
Supported pause frame use: Symmetric Receive-only
Supports auto-negotiation: No
Supported FEC modes: Not reported
Advertised link modes: Not reported
Advertised pause frame use: No
Advertised auto-negotiation: No
Advertised FEC modes: Not reported
Link partner advertised link modes: Not reported
Link partner advertised pause frame use: No
Link partner advertised auto-negotiation: No
Link partner advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Auto-negotiation: off
Port: FIBRE
PHYAD: 255
Transceiver: internal
Current message level: 0x000020f7 (8439)
drv probe link ifdown ifup rx_err tx_err hw
Link detected: yes
After:
$ ethtool ext
Settings for ext:
Supported ports: [ FIBRE ]
Supported link modes: 1000baseX/Full
10000baseCR/Full
Supported pause frame use: Symmetric Receive-only
Supports auto-negotiation: No
Supported FEC modes: Not reported
Advertised link modes: Not reported
Advertised pause frame use: No
Advertised auto-negotiation: No
Advertised FEC modes: Not reported
Link partner advertised link modes: Not reported
Link partner advertised pause frame use: No
Link partner advertised auto-negotiation: No
Link partner advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Auto-negotiation: off
Port: FIBRE
PHYAD: 255
Transceiver: internal
Supports Wake-on: g
Wake-on: d
Current message level: 0x000020f7 (8439)
drv probe link ifdown ifup rx_err tx_err hw
Link detected: yes
Signed-off-by: Erik Ekman <redacted>
From: Andrew Lunn <andrew@lunn.ch> Date: 2021-10-19 19:56:22
quoted
From the 'Solarflare Server Adapter User Guide': "SFP 1000BASE‐T
module, Autonegotiation: No, Speed: 1G, Comment: These modules
support only 1G and will not link up at 100Mbps"
10G SFP+ Base-T modules are not mentioned, maybe they did not exist
back then. Do you think the 1000BaseT_Full should be used because of
this?
With a MAC connected to an SFP cage, i would list the T modes
supported, since you have no idea what SFP module the user will
install, copper or fibre.
Andrew
From: Erik Ekman <hidden> Date: 2021-10-19 20:09:31
On Tue, 19 Oct 2021 at 21:18, Martin Habets [off-list ref] wrote:
On Mon, Oct 18, 2021 at 08:37:08PM +0200, Erik Ekman wrote:
quoted
These modes were added to ethtool.h in 5711a98221443 ("net: ethtool: add support
for 1000BaseX and missing 10G link modes") back in 2016.
Only setting CR mode for 10G, similar to how 25/40/50/100G modes are set up.
Tested using SFN5122F-R7 (with 2 SFP+ ports) and a 1000BASE-BX10 SFP module.
Before:
$ ethtool ext
Settings for ext:
Supported ports: [ FIBRE ]
Supported link modes: 1000baseT/Full
10000baseT/Full
Supported pause frame use: Symmetric Receive-only
Supports auto-negotiation: No
Supported FEC modes: Not reported
Advertised link modes: Not reported
Advertised pause frame use: No
Advertised auto-negotiation: No
Advertised FEC modes: Not reported
Link partner advertised link modes: Not reported
Link partner advertised pause frame use: No
Link partner advertised auto-negotiation: No
Link partner advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Auto-negotiation: off
Port: FIBRE
PHYAD: 255
Transceiver: internal
Current message level: 0x000020f7 (8439)
drv probe link ifdown ifup rx_err tx_err hw
Link detected: yes
After:
$ ethtool ext
Settings for ext:
Supported ports: [ FIBRE ]
Supported link modes: 1000baseX/Full
10000baseCR/Full
Supported pause frame use: Symmetric Receive-only
Supports auto-negotiation: No
Supported FEC modes: Not reported
Advertised link modes: Not reported
Advertised pause frame use: No
Advertised auto-negotiation: No
Advertised FEC modes: Not reported
Link partner advertised link modes: Not reported
Link partner advertised pause frame use: No
Link partner advertised auto-negotiation: No
Link partner advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Auto-negotiation: off
Port: FIBRE
PHYAD: 255
Transceiver: internal
Supports Wake-on: g
Wake-on: d
Current message level: 0x000020f7 (8439)
drv probe link ifdown ifup rx_err tx_err hw
Link detected: yes
Signed-off-by: Erik Ekman <redacted>
Acked-by: Martin Habets <redacted>
I will send a v2 patch with more modes marked supported.
/Erik