sfxge(4): get actions MARK and FLAG support

Filter actions MARK and FLAG are supported on Medford2 by DPDK
firmware variant.

Submitted by:   Roman Zhukov <roman.zhukov at oktetlabs.ru>
Sponsored by:   Solarflare Communications, Inc.
Differential Revision:  https://reviews.freebsd.org/D18238
This commit is contained in:
arybchik 2018-11-29 06:46:01 +00:00
parent fc6c6eb925
commit 22c14987c5
3 changed files with 16 additions and 0 deletions

View File

@ -1321,6 +1321,16 @@ ef10_get_datapath_caps(
*/
encp->enc_rx_scale_l4_hash_supported = B_TRUE;
}
/* Check if the firmware supports "FLAG" and "MARK" filter actions */
if (CAP_FLAGS2(req, FILTER_ACTION_FLAG))
encp->enc_filter_action_flag_supported = B_TRUE;
else
encp->enc_filter_action_flag_supported = B_FALSE;
if (CAP_FLAGS2(req, FILTER_ACTION_MARK))
encp->enc_filter_action_mark_supported = B_TRUE;
else
encp->enc_filter_action_mark_supported = B_FALSE;
#undef CAP_FLAGS1
#undef CAP_FLAGS2

View File

@ -1321,6 +1321,9 @@ typedef struct efx_nic_cfg_s {
/* Firmware support for extended MAC_STATS buffer */
uint32_t enc_mac_stats_nstats;
boolean_t enc_fec_counters;
/* Firmware support for "FLAG" and "MARK" filter actions */
boolean_t enc_filter_action_flag_supported;
boolean_t enc_filter_action_mark_supported;
} efx_nic_cfg_t;
#define EFX_PCI_FUNCTION_IS_PF(_encp) ((_encp)->enc_vf == 0xffff)

View File

@ -201,6 +201,9 @@ siena_board_cfg(
encp->enc_mac_stats_nstats = MC_CMD_MAC_NSTATS;
encp->enc_filter_action_flag_supported = B_FALSE;
encp->enc_filter_action_mark_supported = B_FALSE;
return (0);
fail2: