1
0
Fork 0
alistair23-linux/drivers/net/ethernet
Brett Creeley e0ef26fbe2 iavf: fix speed reporting over virtchnl
Link speeds are communicated over virtchnl using an enum
virtchnl_link_speed. Currently, the highest link speed is 40Gbps which
leaves us unable to reflect some speeds that an ice VF is capable of.
This causes link speed to be misreported on the iavf driver.

Allow for communicating link speeds using Mbps so that the proper speed can
be reported for an ice VF. Moving away from the enum allows us to
communicate future speed changes without requiring a new enum to be added.

In order to support communicating link speeds over virtchnl in Mbps the
following functionality was added:
    - Added u32 link_speed_mbps in the iavf_adapter structure.
    - Added the macro ADV_LINK_SUPPORT(_a) to determine if the VF
      driver supports communicating link speeds in Mbps.
    - Added the function iavf_get_vpe_link_status() to fill the
      correct link_status in the event_data union based on the
      ADV_LINK_SUPPORT(_a) macro.
    - Added the function iavf_set_adapter_link_speed_from_vpe()
      to determine whether or not to fill the u32 link_speed_mbps or
      enum virtchnl_link_speed link_speed field in the iavf_adapter
      structure based on the ADV_LINK_SUPPORT(_a) macro.
    - Do not free vf_res in iavf_init_get_resources() as vf_res will be
      accessed in iavf_get_link_ksettings(); memset to 0 instead. This
      memory is subsequently freed in iavf_remove().

Fixes: 7c710869d6 ("ice: Add handlers for VF netdevice operations")
Signed-off-by: Brett Creeley <brett.creeley@intel.com>
Signed-off-by: Sergey Nemov <sergey.nemov@intel.com>
Signed-off-by: Paul Greenwalt <paul.greenwalt@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2020-06-11 14:53:50 -07:00
..
3com docs: networking: device drivers: convert 3com/vortex.txt to ReST 2020-05-01 12:24:41 -07:00
8390 ne2k-pci: Fix various coding-style issues and improve printk() usage 2020-05-26 23:19:28 -07:00
adaptec drivers: Remove inclusion of vermagic header 2020-04-21 13:27:37 -07:00
aeroflex
agere net: agere: use true,false for bool variable 2020-05-05 11:39:42 -07:00
alacritech
allwinner net: allwinner: Fix use correct return type for ndo_start_xmit() 2020-05-05 11:14:40 -07:00
alteon
altera net: altera: Fix use correct return type for ndo_start_xmit() 2020-05-05 11:15:41 -07:00
amazon net: ena: xdp: update napi budget for DROP and ABORTED 2020-06-04 15:43:01 -07:00
amd net: atarilance: Replace zero-length array with flexible-array 2020-05-11 13:18:54 -07:00
apm
apple net: bmac: Fix read of MAC address from ROM 2020-05-19 12:03:37 -07:00
aquantia net: atlantic: proper rss_ctrl1 (54c0) initialization 2020-05-22 14:08:29 -07:00
arc
atheros net/atheros: remove redundant assignment to variable size 2020-05-08 22:46:36 -07:00
aurora
broadcom bnxt_tc: update indirect block support 2020-06-01 11:41:50 -07:00
brocade
cadence net: cadence: macb: disable NAPI on error 2020-06-10 16:20:07 -07:00
calxeda
cavium net: octeon: mgmt: Repair filling of RX ring 2020-06-01 11:45:20 -07:00
chelsio cxgb4: Use kfree() instead kvfree() where appropriate 2020-06-05 13:22:49 -07:00
cirrus docs: networking: device drivers: convert cirrus/cs89x0.txt to ReST 2020-05-01 12:24:41 -07:00
cisco
cortina net: cortina: Fix use correct return type for ndo_start_xmit() 2020-05-06 13:57:30 -07:00
davicom
dec net: tulip: de4x5: make PCI_signature() return void 2020-05-07 13:04:21 -07:00
dlink docs: networking: device drivers: convert dlink/dl2k.txt to ReST 2020-05-01 12:24:42 -07:00
emulex
ezchip
faraday net/faraday: Fix unnecessary check in ftmac100_probe() 2020-04-30 12:20:54 -07:00
freescale drivers: dpaa2: Use devm_kcalloc() in setup_dpni() 2020-06-11 12:41:12 -07:00
fujitsu
google
hisilicon net: hns3: remove some unused codes in hns3_nic_set_features() 2020-05-30 17:41:22 -07:00
huawei hinic: add set_channels ethtool_ops support 2020-06-02 15:10:24 -07:00
i825xx
ibm drivers/net/ibmvnic: Update VNIC protocol version reporting 2020-05-29 17:20:59 -07:00
intel iavf: fix speed reporting over virtchnl 2020-06-11 14:53:50 -07:00
marvell net: mvneta: do not redirect frames during reconfiguration 2020-06-09 14:29:15 -07:00
mediatek net: ethernet: mtk-star-emac: use regmap bitops 2020-06-01 11:35:18 -07:00
mellanox Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-06-07 17:27:45 -07:00
micrel net: ks8851: Remove ks8851_mll.c 2020-05-28 16:30:04 -07:00
microchip lan743x: Use correct MAC_CR configuration for 1 GBit speed 2020-06-04 15:57:03 -07:00
moxa Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-05-06 22:10:13 -07:00
mscc net: mscc: allow offloading timestamping operations to the PHY 2020-05-27 14:54:31 -07:00
myricom myri10ge: Remove unused inline function myri10ge_vlan_ip_csum 2020-05-05 12:07:43 -07:00
natsemi net/sonic: Fix a resource leak in an error handling path in 'jazz_sonic_probe()' 2020-04-27 12:07:46 -07:00
neterion docs: networking: device drivers: convert neterion/vxge.txt to ReST 2020-05-01 12:24:42 -07:00
netronome nfp: update indirect block support 2020-06-01 11:41:50 -07:00
ni net: ni: Fix use correct return type for ndo_start_xmit() 2020-05-05 11:39:43 -07:00
nvidia
nxp net: nxp: Fix use correct return type for ndo_start_xmit() 2020-05-05 11:17:56 -07:00
oki-semi
packetengines
pasemi
pensando ionic: remove support for mgmt device 2020-06-11 12:43:29 -07:00
qlogic Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-06-07 17:27:45 -07:00
qualcomm net: emac: Fix use correct return type for ndo_start_xmit() 2020-05-05 11:20:23 -07:00
rdc
realtek r8169: fix failing WoL 2020-06-04 15:51:54 -07:00
renesas ravb: Mask PHY mode to avoid inserting delays twice 2020-05-30 21:50:37 -07:00
rocker
samsung net: sxgbe: reject unsupported coalescing params 2020-03-14 21:13:55 -07:00
seeq net: seeq: Use %pM format specifier for MAC addresses 2020-05-18 17:43:13 -07:00
sfc Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next 2020-06-01 15:53:08 -07:00
sgi net: sgi: ioc3-eth: Fix return value check in ioc3eth_probe() 2020-05-21 17:26:54 -07:00
silan
sis
smsc Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-05-24 13:47:27 -07:00
socionext xdp: Rename convert_to_xdp_frame in xdp_convert_buff_to_frame 2020-06-01 15:02:53 -07:00
stmicro net: ethernet: dwmac: Fix an error code in imx_dwmac_probe() 2020-06-04 15:51:25 -07:00
sun Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-05-24 13:47:27 -07:00
synopsys net: dwc-xlgmac: let core reject the unsupported coalescing parameters 2020-03-17 20:56:57 -07:00
tehuti net: tehuti: remove unused inline function bdx_tx_db_size 2020-05-05 12:07:42 -07:00
ti xdp: Rename convert_to_xdp_frame in xdp_convert_buff_to_frame 2020-06-01 15:02:53 -07:00
toshiba powerpc updates for 5.8 2020-06-05 12:39:30 -07:00
tundra
via via-rhine: Add platform dependencies 2020-05-07 13:16:53 -07:00
wiznet
xilinx net: ll_temac: Fix return value check in temac_probe() 2020-04-30 20:39:22 -07:00
xircom
xscale net: ethernet: ixp4xx: Add error handling in ixp4xx_eth_probe() 2020-04-23 15:32:45 -07:00
Kconfig
Makefile
dnet.c net: ethernet: dnet: convert to devm_platform_get_and_ioremap_resource 2020-04-20 12:18:13 -07:00
dnet.h
ec_bhf.c
ethoc.c
fealnx.c
jme.c net: jme: reject unsupported coalescing params 2020-03-14 21:13:54 -07:00
jme.h
korina.c
lantiq_etop.c
lantiq_xrx200.c net: lantiq: Fix use correct return type for ndo_start_xmit() 2020-05-06 14:24:06 -07:00