> >2016-10-31 11:35, Rasesh Mody: >> From: Harish Patil <harish.patil at qlogic.com> >> >> Fix to advertise device's link speed capability based on NVM >> port configuration instead of returning driver supported speeds. >> >> Fixes: 95e67b479506 ("net/qede: add 100G link speed capability") >> >> Signed-off-by: Harish Patil <harish.patil at qlogic.com> >[...] >> + /* Fill up the native advertised speed */ >> + switch (params.speed.advertised_speeds) { >> + case NVM_CFG1_PORT_DRV_SPEED_CAPABILITY_MASK_10G: >> + adv_speed = 10000; >> + break; >> + case NVM_CFG1_PORT_DRV_SPEED_CAPABILITY_MASK_25G: >> + adv_speed = 25000; >> + break; >> + case NVM_CFG1_PORT_DRV_SPEED_CAPABILITY_MASK_40G: >> + adv_speed = 40000; >> + break; >> + case NVM_CFG1_PORT_DRV_SPEED_CAPABILITY_MASK_50G: >> + adv_speed = 50000; >> + break; >> + case NVM_CFG1_PORT_DRV_SPEED_CAPABILITY_MASK_BB_100G: >> + adv_speed = 100000; >> + break; >> + default: >> + DP_NOTICE(hwfn, false, "Unknown speed\n"); >> + adv_speed = 0; >> + } >> + if_link->adv_speed = adv_speed; > >The qede devices support only one speed? >I guess it is wrong but it is a step in right direction so it >will be enough for 16.11. > >Applied > qede device is capable of 10, 25, 40, 50, 100Gb speeds. It's configured at factory to have 100Gb, 50Gb, 40Gb or 25Gb speeds. A unique PCI ID gets assigned to the device based on the speed configured. 25G device can auto-negotiate down to 10G speeds when connected to a 10G switch.
So only for 25G case the above logic does not work correctly, for which I have a submitted a minor fix today: ("[PATCH] net/qede: fix unknown speed errmsg for 25G link?). Pls include it in 16.11. Thanks, Harish