linux/drivers/net/ethernet/intel/ice
Michal Swiatkowski e4c46abc72 ice: remove VF pointer reference in eswitch code
Make eswitch code generic by removing VF pointer reference in functions.
It is needed to support eswitch mode for other type of devices.

Previously queue id used for Rx was based on VF number. Use ::q_id saved
in port representor instead.

After adding or removing port representor ::q_id value can change. It
isn't good idea to iterate over representors list using this value.
Use xa_find starting from the first one instead to get next port
representor to remap.

The number of port representors has to be equal to ::num_rx/tx_q. Warn if
it isn't true.

Reviewed-by: Przemek Kitszel <przemyslaw.kitszel@intel.com>
Reviewed-by: Wojciech Drewek <wojciech.drewek@intel.com>
Reviewed-by: Jacob Keller <jacob.e.keller@intel.com>
Signed-off-by: Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
Tested-by: Sujai Buvaneswaran <sujai.buvaneswaran@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
2023-11-13 11:42:14 -08:00
..
ice.h ice: track port representors in xarray 2023-11-13 11:42:14 -08:00
ice_adminq_cmd.h ice: Add ice_get_link_status_datalen 2023-10-26 20:32:38 -07:00
ice_arfs.c
ice_arfs.h
ice_base.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2023-08-24 10:51:39 -07:00
ice_base.h
ice_cgu_regs.h
ice_common.c ice: Add ice_get_link_status_datalen 2023-10-26 20:32:38 -07:00
ice_common.h ice: fix linking when CONFIG_PTP_1588_CLOCK=n 2023-10-04 09:27:48 -07:00
ice_controlq.c
ice_controlq.h
ice_dcb.c
ice_dcb.h
ice_dcb_lib.c
ice_dcb_lib.h
ice_dcb_nl.c
ice_dcb_nl.h
ice_ddp.c ice: Add support for E830 DDP package segment 2023-10-26 20:32:39 -07:00
ice_ddp.h ice: Add support for E830 DDP package segment 2023-10-26 20:32:39 -07:00
ice_devids.h ice: Add E830 device IDs, MAC type and registers 2023-10-26 20:32:38 -07:00
ice_devlink.c
ice_devlink.h
ice_dpll.c ice: dpll: implement phase related callbacks 2023-10-15 16:08:24 +01:00
ice_dpll.h ice: dpll: implement phase related callbacks 2023-10-15 16:08:24 +01:00
ice_eswitch.c ice: remove VF pointer reference in eswitch code 2023-11-13 11:42:14 -08:00
ice_eswitch.h ice: remove VF pointer reference in eswitch code 2023-11-13 11:42:14 -08:00
ice_eswitch_br.c ice: rename switchdev to eswitch 2023-11-13 11:42:12 -08:00
ice_eswitch_br.h
ice_ethtool.c ice: Add 200G speed/phy type use 2023-10-26 20:32:38 -07:00
ice_ethtool.h ice: Add 200G speed/phy type use 2023-10-26 20:32:38 -07:00
ice_ethtool_fdir.c ice: Add E830 device IDs, MAC type and registers 2023-10-26 20:32:38 -07:00
ice_fdir.c
ice_fdir.h
ice_flex_pipe.c
ice_flex_pipe.h
ice_flex_type.h
ice_flow.c ice: remove unused ice_flow_entry fields 2023-10-20 12:53:05 +01:00
ice_flow.h ice: remove unused ice_flow_entry fields 2023-10-20 12:53:05 +01:00
ice_fltr.c
ice_fltr.h
ice_fw_update.c
ice_fw_update.h
ice_gnss.c ice: check netlist before enabling ICE_F_GNSS 2023-09-18 11:27:33 -07:00
ice_gnss.h
ice_hw_autogen.h ice: Add E830 device IDs, MAC type and registers 2023-10-26 20:32:38 -07:00
ice_idc.c
ice_idc_int.h
ice_irq.c
ice_irq.h
ice_lag.c ice: lag: in RCU, use atomic allocation 2023-11-06 16:42:41 -08:00
ice_lag.h ice: add drop rule matching on not active lport 2023-10-20 12:53:05 +01:00
ice_lan_tx_rx.h
ice_lib.c ice: implement num_msix field per VF 2023-10-20 12:53:05 +01:00
ice_lib.h
ice_main.c ice: track port representors in xarray 2023-11-13 11:42:14 -08:00
ice_nvm.c
ice_nvm.h
ice_osdep.h
ice_pf_vsi_vlan_ops.c
ice_pf_vsi_vlan_ops.h
ice_protocol_type.h
ice_ptp.c intel: fix string truncation warnings 2023-10-18 18:10:16 -07:00
ice_ptp.h ice: PTP: add clock domain number to auxiliary interface 2023-09-20 09:05:32 -07:00
ice_ptp_consts.h
ice_ptp_hw.c ice: make ice_get_pf_c827_idx static 2023-10-20 12:53:06 +01:00
ice_ptp_hw.h ice: make ice_get_pf_c827_idx static 2023-10-20 12:53:06 +01:00
ice_repr.c ice: remove VF pointer reference in eswitch code 2023-11-13 11:42:14 -08:00
ice_repr.h ice: track port representors in xarray 2023-11-13 11:42:14 -08:00
ice_sbq_cmd.h
ice_sched.c ice: drop two params of ice_aq_move_sched_elems() 2023-10-03 12:17:11 -07:00
ice_sched.h ice: drop two params of ice_aq_move_sched_elems() 2023-10-03 12:17:11 -07:00
ice_sriov.c ice: manage VFs MSI-X using resource tracking 2023-10-20 12:53:05 +01:00
ice_sriov.h ice: set MSI-X vector count on VF 2023-10-20 12:53:05 +01:00
ice_switch.c ice: make use of DEFINE_FLEX() in ice_switch.c 2023-10-03 12:17:11 -07:00
ice_switch.h
ice_tc_lib.c ice: rename switchdev to eswitch 2023-11-13 11:42:12 -08:00
ice_tc_lib.h
ice_trace.h
ice_txrx.c
ice_txrx.h
ice_txrx_lib.c net: Tree wide: Replace xdp_do_flush_map() with xdp_do_flush(). 2023-10-03 07:34:51 -07:00
ice_txrx_lib.h
ice_type.h ice: Add support for E830 DDP package segment 2023-10-26 20:32:39 -07:00
ice_vf_lib.c ice: remove VF pointer reference in eswitch code 2023-11-13 11:42:14 -08:00
ice_vf_lib.h ice: implement num_msix field per VF 2023-10-20 12:53:05 +01:00
ice_vf_lib_private.h
ice_vf_mbx.c
ice_vf_mbx.h
ice_vf_vsi_vlan_ops.c
ice_vf_vsi_vlan_ops.h
ice_virtchnl.c ice: implement num_msix field per VF 2023-10-20 12:53:05 +01:00
ice_virtchnl.h
ice_virtchnl_allowlist.c
ice_virtchnl_allowlist.h
ice_virtchnl_fdir.c ice: Add E830 device IDs, MAC type and registers 2023-10-26 20:32:38 -07:00
ice_virtchnl_fdir.h
ice_vlan.h
ice_vlan_mode.c
ice_vlan_mode.h
ice_vsi_vlan_lib.c
ice_vsi_vlan_lib.h
ice_vsi_vlan_ops.c
ice_vsi_vlan_ops.h
ice_xsk.c ice: make use of DEFINE_FLEX() for struct ice_aqc_add_tx_qgrp 2023-10-03 12:17:11 -07:00
ice_xsk.h
Makefile ice: fix linking when CONFIG_PTP_1588_CLOCK=n 2023-10-04 09:27:48 -07:00