linux-stable/drivers/net/ethernet
Grishma Kotecha 7715ec3247 ice: implement low level recipes functions
Add code to manage recipes and profiles on admin queue layer.

Allow the driver to add a new recipe and update an existing one. Get a
recipe and get a recipe to profile association is mostly used in update
existing recipes code.

Only default recipes can be updated. An update is done by reading recipes
from HW, changing their params and calling add recipe command.

Support following admin queue commands:
- ice_aqc_opc_add_recipe (0x0290) - create a recipe with protocol
header information and other details that determine how this recipe
filter works
- ice_aqc_opc_recipe_to_profile (0x0291) - associate a switch recipe
to a profile
- ice_aqc_opc_get_recipe (0x0292) - get details of an existing recipe
- ice_aqc_opc_get_recipe_to_profile (0x0293) - get a recipe associated
with profile ID

Define ICE_AQC_RES_TYPE_RECIPE resource type to hold a switch
recipe. It is needed when a new switch recipe needs to be created.

Co-developed-by: Dan Nowlin <dan.nowlin@intel.com>
Signed-off-by: Dan Nowlin <dan.nowlin@intel.com>
Signed-off-by: Grishma Kotecha  <grishma.kotecha@intel.com>
Signed-off-by: Wojciech Drewek <wojciech.drewek@intel.com>
Tested-by: Sandeep Penigalapati <sandeep.penigalapati@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
2021-10-11 07:41:49 -07:00
..
3com ethernet: use eth_hw_addr_set() - casts 2021-10-02 14:18:26 +01:00
8390 ethernet: 8390: remove direct netdev->dev_addr writes 2021-10-09 11:46:57 +01:00
actions ethernet: use platform_get_ethdev_address() 2021-10-08 14:54:34 +01:00
adaptec
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 ethernet: Remove redundant 'flush_workqueue()' calls 2021-10-10 11:33:15 +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 bnxt: use netif_is_rxfh_configured instead of open code 2021-10-10 11:18:48 +01:00
brocade ethernet: Remove redundant 'flush_workqueue()' calls 2021-10-10 11:33:15 +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 ethernet: Remove redundant 'flush_workqueue()' calls 2021-10-10 11:33:15 +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: tulip: remove direct netdev->dev_addr writes 2021-10-09 11:46:56 +01:00
dlink ethernet: use eth_hw_addr_set() 2021-10-02 14:18:25 +01:00
emulex ethernet: Remove redundant 'flush_workqueue()' calls 2021-10-10 11:33:15 +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 net: enetc: add support for software TSO 2021-10-08 16:59:08 +01:00
fujitsu
google Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-10-07 15:24:06 -07: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
ibm ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
intel ice: implement low level recipes functions 2021-10-11 07:41:49 -07:00
litex ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
marvell octeontx2-pf: Simplify the receive buffer size calculation 2021-10-10 11:46:54 +01:00
mediatek ethernet: use platform_get_ethdev_address() 2021-10-08 14:54:34 +01:00
mellanox ethernet: Remove redundant 'flush_workqueue()' calls 2021-10-10 11:33:15 +01: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 Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-10-07 15:24:06 -07:00
myricom ethernet: use eth_hw_addr_set() 2021-10-02 14:18:25 +01:00
natsemi
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: forcedeth: remove direct netdev->dev_addr writes 2021-10-09 11:46:56 +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
pasemi ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
pensando ionic: tame the filter no space message 2021-10-10 10:42:47 +01:00
qlogic ethernet: Remove redundant 'flush_workqueue()' calls 2021-10-10 11:33:15 +01:00
qualcomm ethernet: make more use of device_get_ethdev_address() 2021-10-07 13:39:51 +01:00
rdc
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
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 Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-10-07 15:24:06 -07:00
sun ethernet: sun: add missing semicolon, fix build 2021-10-11 07:34:04 -07: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
via
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
xscale ethernet: use eth_hw_addr_set() 2021-10-02 14:18:25 +01:00
dnet.c
dnet.h
ec_bhf.c
ethoc.c ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
fealnx.c
jme.c ethernet: use eth_hw_addr_set() for dev->addr_len cases 2021-10-05 13:16:48 +01:00
jme.h
Kconfig
korina.c ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
lantiq_etop.c
lantiq_xrx200.c ethernet: use of_get_ethdev_address() 2021-10-07 13:39:51 +01:00
Makefile