summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/sfc/mae.h
diff options
context:
space:
mode:
authorEdward Cree <ecree.xilinx@gmail.com>2022-09-26 20:57:36 +0200
committerDavid S. Miller <davem@davemloft.net>2022-09-28 10:43:22 +0200
commitd902e1a737d44e678eeb981df11c842c2cc1db74 (patch)
treec10d2d1129abd5d32d75c6b7171b1a035ce55186 /drivers/net/ethernet/sfc/mae.h
parentsfc: interrogate MAE capabilities at probe time (diff)
downloadlinux-d902e1a737d44e678eeb981df11c842c2cc1db74.tar.xz
linux-d902e1a737d44e678eeb981df11c842c2cc1db74.zip
sfc: bare bones TC offload on EF100
This is the absolute minimum viable TC implementation to get traffic to VFs and allow them to be tested; it supports no match fields besides ingress port, no actions besides mirred and drop, and no stats. Example usage: tc filter add dev $PF parent ffff: flower skip_sw \ action mirred egress mirror dev $VFREP tc filter add dev $VFREP parent ffff: flower skip_sw \ action mirred egress redirect dev $PF gives a VF unfiltered access to the network out the physical port ($PF acts here as a physical port representor). More matches, actions, and counters will be added in subsequent patches. Signed-off-by: Edward Cree <ecree.xilinx@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/sfc/mae.h')
-rw-r--r--drivers/net/ethernet/sfc/mae.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/ethernet/sfc/mae.h b/drivers/net/ethernet/sfc/mae.h
index 2b49a88b303c..3e0cd238d523 100644
--- a/drivers/net/ethernet/sfc/mae.h
+++ b/drivers/net/ethernet/sfc/mae.h
@@ -37,6 +37,10 @@ struct mae_caps {
int efx_mae_get_caps(struct efx_nic *efx, struct mae_caps *caps);
+int efx_mae_match_check_caps(struct efx_nic *efx,
+ const struct efx_tc_match_fields *mask,
+ struct netlink_ext_ack *extack);
+
int efx_mae_alloc_action_set(struct efx_nic *efx, struct efx_tc_action_set *act);
int efx_mae_free_action_set(struct efx_nic *efx, u32 fw_id);