struct mlx5_hca_attr attr;
char name[RTE_REGEXDEV_NAME_MAX_LEN];
int ret;
+ uint32_t val;
ibv = mlx5_regex_get_ib_device_match(&pci_dev->addr);
if (!ibv) {
}
priv->ctx = ctx;
priv->nb_engines = 2; /* attr.regexp_num_of_engines */
+ ret = mlx5_devx_regex_register_read(priv->ctx, 0,
+ MLX5_RXP_CSR_IDENTIFIER, &val);
+ if (ret) {
+ DRV_LOG(ERR, "CSR read failed!");
+ return -1;
+ }
+ if (val == MLX5_RXP_BF2_IDENTIFIER)
+ priv->is_bf2 = 1;
/* Default RXP programming mode to Shared. */
priv->prog_mode = MLX5_RXP_SHARED_PROG_MODE;
mlx5_regex_get_name(name, pci_dev);
rte_errno = rte_errno ? rte_errno : EINVAL;
goto error;
}
- ret = mlx5_glue->devx_query_eqn(ctx, 0, &priv->eqn);
- if (ret) {
- DRV_LOG(ERR, "can't query event queue number.");
- rte_errno = ENOMEM;
- goto error;
- }
/*
* This PMD always claims the write memory barrier on UAR
* registers writings, it is safe to allocate UAR with any