[1/2] net/hns3: declare support rule keep capability

Message ID 20221215014142.15750-2-fengchengwen@huawei.com (mailing list archive)
State Accepted, archived
Delegated to: Ferruh Yigit
Headers
Series net/hns3: support rule keep capability |

Checks

Context Check Description
ci/checkpatch success coding style OK

Commit Message

fengchengwen Dec. 15, 2022, 1:41 a.m. UTC
  The driver supports create flow rules when device is stopped, and
re-setup flow rules when restarting, so declare support
RTE_ETH_DEV_CAPA_FLOW_RULE_KEEP.

The driver also supports to create indirect actions when device is
stopped, and keeps the indirect actions when restarting, so declare
support RTE_ETH_DEV_CAPA_FLOW_SHARED_OBJECT_KEEP.

Cc: stable@dpdk.org

Signed-off-by: Chengwen Feng <fengchengwen@huawei.com>
---
 drivers/net/hns3/hns3_common.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
  

Comments

Dongdong Liu Dec. 15, 2022, 1:56 a.m. UTC | #1
Acked-by: Dongdong Liu <liudongdong3@huawei.com>

Thanks,
Dongdong
On 2022/12/15 9:41, Chengwen Feng wrote:
> The driver supports create flow rules when device is stopped, and
> re-setup flow rules when restarting, so declare support
> RTE_ETH_DEV_CAPA_FLOW_RULE_KEEP.
>
> The driver also supports to create indirect actions when device is
> stopped, and keeps the indirect actions when restarting, so declare
> support RTE_ETH_DEV_CAPA_FLOW_SHARED_OBJECT_KEEP.
>
> Cc: stable@dpdk.org
>
> Signed-off-by: Chengwen Feng <fengchengwen@huawei.com>
> ---
>  drivers/net/hns3/hns3_common.c | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/net/hns3/hns3_common.c b/drivers/net/hns3/hns3_common.c
> index 7adc6a4972..da0a481f15 100644
> --- a/drivers/net/hns3/hns3_common.c
> +++ b/drivers/net/hns3/hns3_common.c
> @@ -90,10 +90,11 @@ hns3_dev_infos_get(struct rte_eth_dev *eth_dev, struct rte_eth_dev_info *info)
>  	if (hns3_dev_get_support(hw, OUTER_UDP_CKSUM))
>  		info->tx_offload_capa |= RTE_ETH_TX_OFFLOAD_OUTER_UDP_CKSUM;
>
> +	info->dev_capa = RTE_ETH_DEV_CAPA_FLOW_RULE_KEEP |
> +			 RTE_ETH_DEV_CAPA_FLOW_SHARED_OBJECT_KEEP;
>  	if (hns3_dev_get_support(hw, INDEP_TXRX))
> -		info->dev_capa = RTE_ETH_DEV_CAPA_RUNTIME_RX_QUEUE_SETUP |
> -				 RTE_ETH_DEV_CAPA_RUNTIME_TX_QUEUE_SETUP;
> -	info->dev_capa &= ~RTE_ETH_DEV_CAPA_FLOW_RULE_KEEP;
> +		info->dev_capa |= RTE_ETH_DEV_CAPA_RUNTIME_RX_QUEUE_SETUP |
> +				  RTE_ETH_DEV_CAPA_RUNTIME_TX_QUEUE_SETUP;
>
>  	if (hns3_dev_get_support(hw, PTP))
>  		info->rx_offload_capa |= RTE_ETH_RX_OFFLOAD_TIMESTAMP;
>
  

Patch

diff --git a/drivers/net/hns3/hns3_common.c b/drivers/net/hns3/hns3_common.c
index 7adc6a4972..da0a481f15 100644
--- a/drivers/net/hns3/hns3_common.c
+++ b/drivers/net/hns3/hns3_common.c
@@ -90,10 +90,11 @@  hns3_dev_infos_get(struct rte_eth_dev *eth_dev, struct rte_eth_dev_info *info)
 	if (hns3_dev_get_support(hw, OUTER_UDP_CKSUM))
 		info->tx_offload_capa |= RTE_ETH_TX_OFFLOAD_OUTER_UDP_CKSUM;
 
+	info->dev_capa = RTE_ETH_DEV_CAPA_FLOW_RULE_KEEP |
+			 RTE_ETH_DEV_CAPA_FLOW_SHARED_OBJECT_KEEP;
 	if (hns3_dev_get_support(hw, INDEP_TXRX))
-		info->dev_capa = RTE_ETH_DEV_CAPA_RUNTIME_RX_QUEUE_SETUP |
-				 RTE_ETH_DEV_CAPA_RUNTIME_TX_QUEUE_SETUP;
-	info->dev_capa &= ~RTE_ETH_DEV_CAPA_FLOW_RULE_KEEP;
+		info->dev_capa |= RTE_ETH_DEV_CAPA_RUNTIME_RX_QUEUE_SETUP |
+				  RTE_ETH_DEV_CAPA_RUNTIME_TX_QUEUE_SETUP;
 
 	if (hns3_dev_get_support(hw, PTP))
 		info->rx_offload_capa |= RTE_ETH_RX_OFFLOAD_TIMESTAMP;