On Saturday 09 December 2017 06:25 PM, Pavan Nikhilesh wrote: > The channel to port id map is used by event octeontx to map the received > wqe to the respective ethdev port. > > Signed-off-by: Pavan Nikhilesh <pbhagavat...@caviumnetworks.com> > --- > > v2 changes: > - Used extern instead of defining global variable > > drivers/net/octeontx/octeontx_ethdev.c | 6 ++++++ > drivers/net/octeontx/octeontx_ethdev.h | 6 ++++++ > drivers/net/octeontx/rte_pmd_octeontx_version.map | 6 ++++++ > 3 files changed, 18 insertions(+) > > diff --git a/drivers/net/octeontx/octeontx_ethdev.c > b/drivers/net/octeontx/octeontx_ethdev.c > index bd24ec330..46cb061b4 100644 > --- a/drivers/net/octeontx/octeontx_ethdev.c > +++ b/drivers/net/octeontx/octeontx_ethdev.c > @@ -54,6 +54,9 @@ struct octeontx_vdev_init_params { > uint8_t nr_port; > }; > > +uint16_t > +octeontx_pchan_map[OCTEONTX_MAX_BGX_PORTS][OCTEONTX_MAX_LMAC_PER_BGX]; > + > enum octeontx_link_speed { > OCTEONTX_LINK_SPEED_SGMII, > OCTEONTX_LINK_SPEED_XAUI, > @@ -1133,6 +1136,9 @@ octeontx_create(struct rte_vdev_device *dev, int port, > uint8_t evdev, > nic->num_tx_queues); > PMD_INIT_LOG(DEBUG, "speed %d mtu %d", nic->speed, nic->mtu); > > + octeontx_pchan_map[(nic->base_ochan >> 8) & 0x7] > + [(nic->base_ochan >> 4) & 0xF] = data->port_id; > + > return data->port_id; > > err: > diff --git a/drivers/net/octeontx/octeontx_ethdev.h > b/drivers/net/octeontx/octeontx_ethdev.h > index c47d4c6d3..f046595a8 100644 > --- a/drivers/net/octeontx/octeontx_ethdev.h > +++ b/drivers/net/octeontx/octeontx_ethdev.h > @@ -52,12 +52,18 @@ > #define OCTEONTX_VDEV_NR_PORT_ARG ("nr_port") > #define OCTEONTX_MAX_NAME_LEN 32 > > +#define OCTEONTX_MAX_BGX_PORTS 4 > +#define OCTEONTX_MAX_LMAC_PER_BGX 4 > + > static inline struct octeontx_nic * > octeontx_pmd_priv(struct rte_eth_dev *dev) > { > return dev->data->dev_private; > } > > +extern uint16_t > +octeontx_pchan_map[OCTEONTX_MAX_BGX_PORTS][OCTEONTX_MAX_LMAC_PER_BGX]; > + > /* Octeontx ethdev nic */ > struct octeontx_nic { > struct rte_eth_dev *dev; > diff --git a/drivers/net/octeontx/rte_pmd_octeontx_version.map > b/drivers/net/octeontx/rte_pmd_octeontx_version.map > index a70bd197b..3ec12ddb1 100644 > --- a/drivers/net/octeontx/rte_pmd_octeontx_version.map > +++ b/drivers/net/octeontx/rte_pmd_octeontx_version.map > @@ -2,3 +2,9 @@ DPDK_17.11 { > > local: *; > }; > + > +DPDK_18.04 { > + global: > + > + octeontx_pchan_map; > +};
nits: better be rte_octeontx_pchan_map refer http://dpdk.org/browse/dpdk/tree/drivers/mempool/dpaa2/rte_mempool_dpaa2_version.map#n4 Acked-by: Santosh Shukla <santosh.shu...@caviumnetworks.com>