[dpdk-stable] [PATCH 1/2] net/octeontx: add channel to port id mapping

Yuanhan Liu yliu at fridaylinux.org
Thu Feb 8 15:03:18 CET 2018


On Thu, Feb 08, 2018 at 01:56:02PM +0530, Pavan Nikhilesh wrote:
> The channel to port id map is used by event octeontx to map the received
> wqe to the respective ethdev port.
> 
> [ backported from upstream commit 989d492620f1 ]
> 
> Signed-off-by: Pavan Nikhilesh <pbhagavatula at caviumnetworks.com>
> Acked-by: Santosh Shukla <santosh.shukla at caviumnetworks.com>

Both patches applied to dpdk-stable/17.11.

Thanks!

	--yliu
> ---
>  drivers/net/octeontx/octeontx_ethdev.c            | 6 ++++++
>  drivers/net/octeontx/octeontx_ethdev.h            | 6 ++++++
>  drivers/net/octeontx/rte_pmd_octeontx_version.map | 3 +++
>  3 files changed, 15 insertions(+)
> 
> diff --git a/drivers/net/octeontx/octeontx_ethdev.c b/drivers/net/octeontx/octeontx_ethdev.c
> index b52700e4c..eca3a39fd 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
> +rte_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);
>  
> +	rte_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..d37bb8a23 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
> +rte_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..40d68c79e 100644
> --- a/drivers/net/octeontx/rte_pmd_octeontx_version.map
> +++ b/drivers/net/octeontx/rte_pmd_octeontx_version.map
> @@ -1,4 +1,7 @@
>  DPDK_17.11 {
> +	global:
> +
> +	rte_octeontx_pchan_map;
>  
>  	local: *;
>  };
> -- 
> 2.16.1


More information about the stable mailing list