Home
last modified time | relevance | path

Searched hist:"329 a3678ec69962aa67c91397efbd46d36635f91" (Results 1 – 1 of 1) sorted by relevance

/linux/drivers/net/ethernet/intel/igc/
H A Digc_ethtool.cdiff 329a3678ec69962aa67c91397efbd46d36635f91 Tue Nov 17 20:50:40 CET 2020 Corinna Vinschen <vinschen@redhat.com> igc: fix link speed advertising

Link speed advertising in igc has two problems:

- When setting the advertisement via ethtool, the link speed is converted
to the legacy 32 bit representation for the intel PHY code.
This inadvertently drops ETHTOOL_LINK_MODE_2500baseT_Full_BIT (being
beyond bit 31). As a result, any call to `ethtool -s ...' drops the
2500Mbit/s link speed from the PHY settings. Only reloading the driver
alleviates that problem.

Fix this by converting the ETHTOOL_LINK_MODE_2500baseT_Full_BIT to the
Intel PHY ADVERTISE_2500_FULL bit explicitly.

- Rather than checking the actual PHY setting, the .get_link_ksettings
function always fills link_modes.advertising with all link speeds
the device is capable of.

Fix this by checking the PHY autoneg_advertised settings and report
only the actually advertised speeds up to ethtool.

Fixes: 8c5ad0dae93c ("igc: Add ethtool support")
Signed-off-by: Corinna Vinschen <vinschen@redhat.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>