[v8,4/5] net/dpaa2: retrieve DPNI API version at init time
Checks
Commit Message
From: Ioana Ciornei <ioana.ciornei@nxp.com>
The list of availabla DPNI APIs depends on the DPNI API version
available on a system. Retrieve the API version in the init stage and
store it in the private structure so that it can be used at a later
stage.
Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
---
.mailmap | 1 +
drivers/net/dpaa2/dpaa2_ethdev.c | 8 ++++++++
drivers/net/dpaa2/dpaa2_ethdev.h | 3 +++
3 files changed, 12 insertions(+)
@@ -611,6 +611,7 @@ Ilya Maximets <i.maximets@ovn.org> <i.maximets@samsung.com>
Ilya V. Matveychikov <matvejchikov@gmail.com>
Ilyes Ben Hamouda <ilyes.ben_hamouda@6wind.com>
Intiyaz Basha <intiyaz.basha@caviumnetworks.com>
+Ioana Ciornei <ioana.ciornei@nxp.com>
Isaac Boukris <iboukris@gmail.com>
Itamar Gozlan <igozlan@nvidia.com>
Itsuro Oda <oda@valinux.co.jp>
@@ -2658,6 +2658,14 @@ dpaa2_dev_init(struct rte_eth_dev *eth_dev)
goto init_err;
}
+ ret = dpni_get_api_version(dpni_dev, CMD_PRI_LOW, &priv->dpni_ver_major,
+ &priv->dpni_ver_minor);
+ if (ret) {
+ DPAA2_PMD_ERR("Failure in get dpni@%d API version, err code %d",
+ hw_id, ret);
+ goto init_err;
+ }
+
priv->num_rx_tc = attr.num_rx_tcs;
priv->num_tx_tc = attr.num_tx_tcs;
priv->qos_entries = attr.qos_entries;
@@ -392,6 +392,9 @@ struct dpaa2_dev_priv {
uint8_t max_cgs;
uint8_t cgid_in_use[MAX_RX_QUEUES];
+ uint16_t dpni_ver_major;
+ uint16_t dpni_ver_minor;
+
enum rte_dpaa2_dev_type ep_dev_type; /**< Endpoint Device Type */
uint16_t ep_object_id; /**< Endpoint DPAA2 Object ID */
char ep_name[RTE_DEV_NAME_MAX_LEN];