diff mbox series

[net-next] net: sfp: Set 1000BaseX support flag for 1000BaseT modules

Message ID 1559330285-30246-1-git-send-email-hancock@sedsystems.ca
State Rejected
Delegated to: David Miller
Headers show
Series [net-next] net: sfp: Set 1000BaseX support flag for 1000BaseT modules | expand

Commit Message

Robert Hancock May 31, 2019, 7:18 p.m. UTC
Modules which support 1000BaseT should also have 1000BaseX support. Set
this support flag to allow drivers supporting only 1000BaseX to work.

Signed-off-by: Robert Hancock <hancock@sedsystems.ca>
---
 drivers/net/phy/sfp-bus.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Russell King (Oracle) May 31, 2019, 8:11 p.m. UTC | #1
Sorry, didn't see this.

On Fri, May 31, 2019 at 01:18:01PM -0600, Robert Hancock wrote:
> Modules which support 1000BaseT should also have 1000BaseX support. Set
> this support flag to allow drivers supporting only 1000BaseX to work.
> 
> Signed-off-by: Robert Hancock <hancock@sedsystems.ca>
> ---
>  drivers/net/phy/sfp-bus.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/net/phy/sfp-bus.c b/drivers/net/phy/sfp-bus.c
> index e9c1879..96cdf85 100644
> --- a/drivers/net/phy/sfp-bus.c
> +++ b/drivers/net/phy/sfp-bus.c
> @@ -158,6 +158,7 @@ void sfp_parse_support(struct sfp_bus *bus, const struct sfp_eeprom_id *id,
>  	if (id->base.e1000_base_t) {
>  		phylink_set(modes, 1000baseT_Half);
>  		phylink_set(modes, 1000baseT_Full);
> +		phylink_set(modes, 1000baseX_Full);

None of my RJ45 modules have 1000base-X support, in fact they use SGMII
on the host side and don't offer 1000base-X (fiber) on the connector
side.

Please explain the logic here.
diff mbox series

Patch

diff --git a/drivers/net/phy/sfp-bus.c b/drivers/net/phy/sfp-bus.c
index e9c1879..96cdf85 100644
--- a/drivers/net/phy/sfp-bus.c
+++ b/drivers/net/phy/sfp-bus.c
@@ -158,6 +158,7 @@  void sfp_parse_support(struct sfp_bus *bus, const struct sfp_eeprom_id *id,
 	if (id->base.e1000_base_t) {
 		phylink_set(modes, 1000baseT_Half);
 		phylink_set(modes, 1000baseT_Full);
+		phylink_set(modes, 1000baseX_Full);
 	}
 
 	/* 1000Base-PX or 1000Base-BX10 */