static void bnxt_free_mem(struct bnxt *bp, bool reconfig)
{
- bnxt_free_flow_stats_info(bp);
-
bnxt_free_filter_mem(bp);
bnxt_free_vnic_attributes(bp);
bnxt_free_vnic_mem(bp);
* Device configuration and status function
*/
-static uint32_t bnxt_get_speed_capabilities(struct bnxt *bp)
+uint32_t bnxt_get_speed_capabilities(struct bnxt *bp)
{
uint32_t link_speed = bp->link_info->support_speeds;
uint32_t speed_capa = 0;
DEV_RX_OFFLOAD_OUTER_IPV4_CKSUM |
DEV_RX_OFFLOAD_RSS_HASH |
DEV_RX_OFFLOAD_VLAN_FILTER)) &&
- !bp->truflow) {
+ !BNXT_TRUFLOW_EN(bp)) {
PMD_DRV_LOG(INFO, "Using vector mode receive for port %d\n",
eth_dev->data->port_id);
bp->flags |= BNXT_FLAG_RX_VECTOR_PKT_MODE;
bnxt_schedule_fw_health_check(bp);
pthread_mutex_unlock(&bp->def_cp_lock);
- if (bp->truflow)
+ if (BNXT_TRUFLOW_EN(bp))
bnxt_ulp_init(bp);
return 0;
struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(eth_dev);
struct rte_intr_handle *intr_handle = &pci_dev->intr_handle;
- if (bp->truflow)
+ if (BNXT_TRUFLOW_EN(bp))
bnxt_ulp_deinit(bp);
eth_dev->data->dev_started = 0;
case RTE_ETH_FILTER_GENERIC:
if (filter_op != RTE_ETH_FILTER_GET)
return -EINVAL;
- if (bp->truflow)
+ if (BNXT_TRUFLOW_EN(bp))
*(const void **)arg = &bnxt_ulp_rte_flow_ops;
else
*(const void **)arg = &bnxt_flow_ops;
return -EINVAL;
}
- bp->truflow = truflow;
- if (bp->truflow)
+ bp->flags |= BNXT_FLAG_TRUFLOW_EN;
+ if (BNXT_TRUFLOW_EN(bp))
PMD_DRV_LOG(INFO, "Host-based truflow feature enabled.\n");
return 0;
bnxt_uninit_ctx_mem(bp);
bnxt_uninit_locks(bp);
+ bnxt_free_flow_stats_info(bp);
rte_free(bp->ptp_cfg);
bp->ptp_cfg = NULL;
return rc;