linux/drivers/net/ethernet
Grzegorz Nitka b3be918dcc ice: rebuild switchdev when resetting all VFs
As resetting all VFs behaves mostly like creating new VFs also
eswitch infrastructure has to be recreated. The easiest way to
do that is to rebuild eswitch after resetting VFs.

Implement helper functions to start and stop all representors
queues. This is used to disable traffic on port representors.

In rebuild path:
- NAPI has to be disabled
- eswitch environment has to be set up
- new port representors have to be created, because the old
one had pointer to not existing VFs
- new control plane VSI ring should be remapped
- NAPI hast to be enabled
- rxdid has to be set to FLEX_NIC_2, because this descriptor id
support source_vsi, which is needed on control plane VSI queues
- port representors queues have to be started

Signed-off-by: Grzegorz Nitka <grzegorz.nitka@intel.com>
Tested-by: Sandeep Penigalapati <sandeep.penigalapati@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
2021-10-07 10:41:42 -07:00
..
3com ethernet: use eth_hw_addr_set() - casts 2021-10-02 14:18:26 +01:00
8390 ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
actions ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
adaptec dev_ioctl: split out ndo_eth_ioctl 2021-07-27 20:11:45 +01:00
aeroflex ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
agere ethernet: use eth_hw_addr_set() instead of ether_addr_copy() 2021-10-02 14:18:25 +01:00
alacritech ethernet: use eth_hw_addr_set() instead of ether_addr_copy() 2021-10-02 14:18:25 +01:00
allwinner ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
alteon ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
altera ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
amazon ethernet: use eth_hw_addr_set() instead of ether_addr_copy() 2021-10-02 14:18:25 +01:00
amd of: net: move of_net under net/ 2021-10-07 13:39:51 +01:00
apm ethernet: use device_get_ethdev_address() 2021-10-07 13:39:51 +01:00
apple
aquantia ethernet: use eth_hw_addr_set() instead of ether_addr_copy() 2021-10-02 14:18:25 +01:00
arc ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
atheros ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
broadcom net: broadcom: bcm4908_enet: use kcalloc() instead of kzalloc() 2021-10-07 09:08:16 -07:00
brocade ethernet: use eth_hw_addr_set() instead of ether_addr_copy() 2021-10-02 14:18:25 +01:00
cadence ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
calxeda ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
cavium eth: fwnode: remove the addr len from mac helpers 2021-10-07 13:39:51 +01:00
chelsio ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
cirrus ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
cisco ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
cortina ethernet: use eth_hw_addr_set() - casts 2021-10-02 14:18:26 +01:00
davicom ethernet: use eth_hw_addr_set() 2021-10-02 14:18:25 +01:00
dec ethernet: use eth_hw_addr_set() 2021-10-02 14:18:25 +01:00
dlink ethernet: use eth_hw_addr_set() 2021-10-02 14:18:25 +01:00
emulex ethernet: use eth_hw_addr_set() instead of ether_addr_copy() 2021-10-02 14:18:25 +01:00
ezchip ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
faraday ethernet: make more use of device_get_ethdev_address() 2021-10-07 13:39:51 +01:00
freescale ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
fujitsu
google ethernet: use eth_hw_addr_set() instead of ether_addr_copy() 2021-10-02 14:18:25 +01:00
hisilicon ethernet: use device_get_ethdev_address() 2021-10-07 13:39:51 +01:00
huawei ethernet: use eth_hw_addr_set() 2021-10-02 14:18:25 +01:00
i825xx net: i825xx: Use absolute_pointer for memcpy from fixed memory location 2021-09-15 12:04:28 -07:00
ibm ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
intel ice: rebuild switchdev when resetting all VFs 2021-10-07 10:41:42 -07:00
litex ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
marvell eth: fwnode: remove the addr len from mac helpers 2021-10-07 13:39:51 +01:00
mediatek ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
mellanox mlxsw: Add support for transceiver module extended state 2021-10-06 17:47:50 -07:00
micrel ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
microchip ethernet: make more use of device_get_ethdev_address() 2021-10-07 13:39:51 +01:00
microsoft net: mana: Use kcalloc() instead of kzalloc() 2021-10-07 09:08:24 -07:00
moxa ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
mscc of: net: move of_net under net/ 2021-10-07 13:39:51 +01:00
myricom ethernet: use eth_hw_addr_set() 2021-10-02 14:18:25 +01:00
natsemi Driver core update for 5.15-rc1 2021-09-01 08:44:42 -07:00
neterion ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
netronome ethernet: use eth_hw_addr_set() instead of ether_addr_copy() 2021-10-02 14:18:25 +01:00
ni ethernet: use eth_hw_addr_set() instead of ether_addr_copy() 2021-10-02 14:18:25 +01:00
nvidia ethernet: use eth_hw_addr_set() 2021-10-02 14:18:25 +01:00
nxp ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
oki-semi ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
packetengines dev_ioctl: split out ndo_eth_ioctl 2021-07-27 20:11:45 +01:00
pasemi ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
pensando ionic: add lif param to ionic_qcq_disable 2021-10-02 14:00:22 +01:00
qlogic qed: Fix spelling mistake "ctx_bsaed" -> "ctx_based" 2021-10-06 15:25:04 +01:00
qualcomm ethernet: make more use of device_get_ethdev_address() 2021-10-07 13:39:51 +01:00
rdc r6040: Restore MDIO clock frequency after MAC reset 2021-09-10 10:00:08 +01:00
realtek ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
renesas ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
rocker ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
samsung ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
seeq ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
sfc ethernet: use eth_hw_addr_set() instead of ether_addr_copy() 2021-10-02 14:18:25 +01:00
sgi ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
silan
sis net: sis: Fix a function name in comments 2021-09-27 12:44:33 +01:00
smsc eth: fwnode: remove the addr len from mac helpers 2021-10-07 13:39:51 +01:00
socionext ethernet: make more use of device_get_ethdev_address() 2021-10-07 13:39:51 +01:00
stmicro net: stmmac: selftests: Use kcalloc() instead of kzalloc() 2021-10-07 09:08:33 -07:00
sun ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
synopsys ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
tehuti ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
ti ethernet: ti: cpts: Use devm_kcalloc() instead of devm_kzalloc() 2021-10-07 09:08:43 -07:00
toshiba ethernet: fix up ps3_gelic_net.c for "ethernet: use eth_hw_addr_set()" 2021-10-05 18:52:16 -07:00
tundra dev_ioctl: split out ndo_eth_ioctl 2021-07-27 20:11:45 +01:00
via ethtool: extend coalesce setting uAPI with CQE mode 2021-08-24 07:38:29 -07:00
wiznet ethernet: use eth_hw_addr_set() 2021-10-02 14:18:25 +01:00
xilinx ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
xircom dev_ioctl: split out ndo_eth_ioctl 2021-07-27 20:11:45 +01:00
xscale ethernet: use eth_hw_addr_set() 2021-10-02 14:18:25 +01:00
dnet.c dev_ioctl: split out ndo_eth_ioctl 2021-07-27 20:11:45 +01:00
dnet.h
ec_bhf.c net: ec_bhf: switch from 'pci_' to 'dma_' API 2021-08-23 11:56:57 +01:00
ethoc.c ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
fealnx.c dev_ioctl: split out ndo_eth_ioctl 2021-07-27 20:11:45 +01:00
jme.c ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
jme.h
Kconfig net: Add driver for LiteX's LiteETH network interface 2021-08-26 12:13:52 +01:00
korina.c ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
lantiq_etop.c net: lantiq: configure the burst length in ethernet drivers 2021-09-15 11:02:01 +01:00
lantiq_xrx200.c ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
Makefile net: Add driver for LiteX's LiteETH network interface 2021-08-26 12:13:52 +01:00