[v4,4/9] net/dpaa2: add default values for Rx params in info

Message ID 20200507104645.31990-5-hemant.agrawal@nxp.com (mailing list archive)
State Changes Requested, archived
Delegated to: Ferruh Yigit
Headers
Series NXP DPAAx fixes and enhancements |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Hemant Agrawal May 7, 2020, 10:46 a.m. UTC
  This patch adds default/preferred rx/tx params in dev info,
specially the advertised burst size.

Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
---
 doc/guides/nics/features/dpaa2.ini |  2 +-
 drivers/net/dpaa/dpaa_ethdev.c     |  4 ++++
 drivers/net/dpaa/dpaa_ethdev.h     |  1 +
 drivers/net/dpaa2/dpaa2_ethdev.c   | 16 ++++++++++++++++
 drivers/net/dpaa2/dpaa2_ethdev.h   |  2 ++
 5 files changed, 24 insertions(+), 1 deletion(-)
  

Comments

Ferruh Yigit May 7, 2020, 2:30 p.m. UTC | #1
On 5/7/2020 11:46 AM, Hemant Agrawal wrote:
> This patch adds default/preferred rx/tx params in dev info,
> specially the advertised burst size.
> 
> Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
> ---
>  doc/guides/nics/features/dpaa2.ini |  2 +-
>  drivers/net/dpaa/dpaa_ethdev.c     |  4 ++++
>  drivers/net/dpaa/dpaa_ethdev.h     |  1 +
>  drivers/net/dpaa2/dpaa2_ethdev.c   | 16 ++++++++++++++++
>  drivers/net/dpaa2/dpaa2_ethdev.h   |  2 ++
>  5 files changed, 24 insertions(+), 1 deletion(-)
> 
> diff --git a/doc/guides/nics/features/dpaa2.ini b/doc/guides/nics/features/dpaa2.ini
> index 6ebbab4b80..c2214fbd50 100644
> --- a/doc/guides/nics/features/dpaa2.ini
> +++ b/doc/guides/nics/features/dpaa2.ini
> @@ -4,7 +4,7 @@
>  ; Refer to default.ini for the full list of available PMD features.
>  ;
>  [Features]
> -Speed capabilities   = P
> +Speed capabilities   = Y
>  Link status          = Y
>  Link status event    = Y
>  Queue start/stop     = Y
> diff --git a/drivers/net/dpaa/dpaa_ethdev.c b/drivers/net/dpaa/dpaa_ethdev.c
> index 5f81968d80..56eb5ec47c 100644
> --- a/drivers/net/dpaa/dpaa_ethdev.c
> +++ b/drivers/net/dpaa/dpaa_ethdev.c
> @@ -363,6 +363,10 @@ static int dpaa_eth_dev_info(struct rte_eth_dev *dev,
>  					dev_tx_offloads_nodis;
>  	dev_info->default_rxportconf.burst_size = DPAA_DEF_RX_BURST_SIZE;
>  	dev_info->default_txportconf.burst_size = DPAA_DEF_TX_BURST_SIZE;
> +	dev_info->default_rxportconf.nb_queues = 1;
> +	dev_info->default_txportconf.nb_queues = 1;
> +	dev_info->default_txportconf.ring_size = CGR_TX_CGR_THRESH;
> +	dev_info->default_rxportconf.ring_size = CGR_RX_PERFQ_THRESH;
>  
>  	return 0;
>  }
> diff --git a/drivers/net/dpaa/dpaa_ethdev.h b/drivers/net/dpaa/dpaa_ethdev.h
> index da06f1faa1..af9fc2105d 100644
> --- a/drivers/net/dpaa/dpaa_ethdev.h
> +++ b/drivers/net/dpaa/dpaa_ethdev.h
> @@ -42,6 +42,7 @@
>  
>  /* RX queue tail drop threshold (CGR Based) in frame count */
>  #define CGR_RX_PERFQ_THRESH 256
> +#define CGR_TX_CGR_THRESH 512
>  
>  /*max mac filter for memac(8) including primary mac addr*/
>  #define DPAA_MAX_MAC_FILTER (MEMAC_NUM_OF_PADDRS + 1)
> diff --git a/drivers/net/dpaa2/dpaa2_ethdev.c b/drivers/net/dpaa2/dpaa2_ethdev.c
> index 4fc550a885..b70a2ac01c 100644
> --- a/drivers/net/dpaa2/dpaa2_ethdev.c
> +++ b/drivers/net/dpaa2/dpaa2_ethdev.c
> @@ -275,6 +275,22 @@ dpaa2_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info)
>  	dev_info->max_vmdq_pools = ETH_16_POOLS;
>  	dev_info->flow_type_rss_offloads = DPAA2_RSS_OFFLOAD_ALL;
>  
> +	dev_info->default_rxportconf.burst_size = dpaa2_dqrr_size;
> +	/* same is rx size for best perf */
> +	dev_info->default_txportconf.burst_size = dpaa2_dqrr_size;
> +
> +	dev_info->default_rxportconf.nb_queues = 1;
> +	dev_info->default_txportconf.nb_queues = 1;
> +	dev_info->default_txportconf.ring_size = CONG_ENTER_TX_THRESHOLD;
> +	dev_info->default_rxportconf.ring_size = DPAA2_RX_DEFAULT_NBDESC;
> +
> +	if (dpaa2_svr_family == SVR_LX2160A) {
> +		dev_info->speed_capa |= ETH_LINK_SPEED_25G |
> +				ETH_LINK_SPEED_40G |
> +				ETH_LINK_SPEED_50G |
> +				ETH_LINK_SPEED_100G;
> +	}

Can you please split the speed_capa changes into another patch? In case if we
need to fix related to it later it would be confusing to refer default values patch.

> +
>  	return 0;
>  }
>  
> diff --git a/drivers/net/dpaa2/dpaa2_ethdev.h b/drivers/net/dpaa2/dpaa2_ethdev.h
> index 31dca8c7b6..2c49a7f01f 100644
> --- a/drivers/net/dpaa2/dpaa2_ethdev.h
> +++ b/drivers/net/dpaa2/dpaa2_ethdev.h
> @@ -24,6 +24,8 @@
>  #define MAX_TX_QUEUES		16
>  #define MAX_DPNI		8
>  
> +#define DPAA2_RX_DEFAULT_NBDESC 512
> +
>  /*default tc to be used for ,congestion, distribution etc configuration. */
>  #define DPAA2_DEF_TC		0
>  
>
  

Patch

diff --git a/doc/guides/nics/features/dpaa2.ini b/doc/guides/nics/features/dpaa2.ini
index 6ebbab4b80..c2214fbd50 100644
--- a/doc/guides/nics/features/dpaa2.ini
+++ b/doc/guides/nics/features/dpaa2.ini
@@ -4,7 +4,7 @@ 
 ; Refer to default.ini for the full list of available PMD features.
 ;
 [Features]
-Speed capabilities   = P
+Speed capabilities   = Y
 Link status          = Y
 Link status event    = Y
 Queue start/stop     = Y
diff --git a/drivers/net/dpaa/dpaa_ethdev.c b/drivers/net/dpaa/dpaa_ethdev.c
index 5f81968d80..56eb5ec47c 100644
--- a/drivers/net/dpaa/dpaa_ethdev.c
+++ b/drivers/net/dpaa/dpaa_ethdev.c
@@ -363,6 +363,10 @@  static int dpaa_eth_dev_info(struct rte_eth_dev *dev,
 					dev_tx_offloads_nodis;
 	dev_info->default_rxportconf.burst_size = DPAA_DEF_RX_BURST_SIZE;
 	dev_info->default_txportconf.burst_size = DPAA_DEF_TX_BURST_SIZE;
+	dev_info->default_rxportconf.nb_queues = 1;
+	dev_info->default_txportconf.nb_queues = 1;
+	dev_info->default_txportconf.ring_size = CGR_TX_CGR_THRESH;
+	dev_info->default_rxportconf.ring_size = CGR_RX_PERFQ_THRESH;
 
 	return 0;
 }
diff --git a/drivers/net/dpaa/dpaa_ethdev.h b/drivers/net/dpaa/dpaa_ethdev.h
index da06f1faa1..af9fc2105d 100644
--- a/drivers/net/dpaa/dpaa_ethdev.h
+++ b/drivers/net/dpaa/dpaa_ethdev.h
@@ -42,6 +42,7 @@ 
 
 /* RX queue tail drop threshold (CGR Based) in frame count */
 #define CGR_RX_PERFQ_THRESH 256
+#define CGR_TX_CGR_THRESH 512
 
 /*max mac filter for memac(8) including primary mac addr*/
 #define DPAA_MAX_MAC_FILTER (MEMAC_NUM_OF_PADDRS + 1)
diff --git a/drivers/net/dpaa2/dpaa2_ethdev.c b/drivers/net/dpaa2/dpaa2_ethdev.c
index 4fc550a885..b70a2ac01c 100644
--- a/drivers/net/dpaa2/dpaa2_ethdev.c
+++ b/drivers/net/dpaa2/dpaa2_ethdev.c
@@ -275,6 +275,22 @@  dpaa2_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info)
 	dev_info->max_vmdq_pools = ETH_16_POOLS;
 	dev_info->flow_type_rss_offloads = DPAA2_RSS_OFFLOAD_ALL;
 
+	dev_info->default_rxportconf.burst_size = dpaa2_dqrr_size;
+	/* same is rx size for best perf */
+	dev_info->default_txportconf.burst_size = dpaa2_dqrr_size;
+
+	dev_info->default_rxportconf.nb_queues = 1;
+	dev_info->default_txportconf.nb_queues = 1;
+	dev_info->default_txportconf.ring_size = CONG_ENTER_TX_THRESHOLD;
+	dev_info->default_rxportconf.ring_size = DPAA2_RX_DEFAULT_NBDESC;
+
+	if (dpaa2_svr_family == SVR_LX2160A) {
+		dev_info->speed_capa |= ETH_LINK_SPEED_25G |
+				ETH_LINK_SPEED_40G |
+				ETH_LINK_SPEED_50G |
+				ETH_LINK_SPEED_100G;
+	}
+
 	return 0;
 }
 
diff --git a/drivers/net/dpaa2/dpaa2_ethdev.h b/drivers/net/dpaa2/dpaa2_ethdev.h
index 31dca8c7b6..2c49a7f01f 100644
--- a/drivers/net/dpaa2/dpaa2_ethdev.h
+++ b/drivers/net/dpaa2/dpaa2_ethdev.h
@@ -24,6 +24,8 @@ 
 #define MAX_TX_QUEUES		16
 #define MAX_DPNI		8
 
+#define DPAA2_RX_DEFAULT_NBDESC 512
+
 /*default tc to be used for ,congestion, distribution etc configuration. */
 #define DPAA2_DEF_TC		0