[PATCH v4 2/4] net/nfp: extract function to check physical reprsentor

Chaoyong He chaoyong.he at corigine.com
Mon Nov 4 02:34:40 CET 2024


Extract a helper function to check the physical representor port.

Signed-off-by: Chaoyong He <chaoyong.he at corigine.com>
---
 .../net/nfp/flower/nfp_flower_representor.c    | 18 ++++++++++++------
 .../net/nfp/flower/nfp_flower_representor.h    |  1 +
 2 files changed, 13 insertions(+), 6 deletions(-)

diff --git a/drivers/net/nfp/flower/nfp_flower_representor.c b/drivers/net/nfp/flower/nfp_flower_representor.c
index 56690ec42b..5a45c44867 100644
--- a/drivers/net/nfp/flower/nfp_flower_representor.c
+++ b/drivers/net/nfp/flower/nfp_flower_representor.c
@@ -96,7 +96,7 @@ nfp_flower_repr_dev_start(struct rte_eth_dev *dev)
 	hw_priv = dev->process_private;
 	app_fw_flower = repr->app_fw_flower;
 
-	if (repr->repr_type == NFP_REPR_TYPE_PHYS_PORT) {
+	if (nfp_flower_repr_is_phy(repr)) {
 		ret = nfp_eth_set_configured(hw_priv->pf_dev->cpp, repr->nfp_idx, 1);
 		if (ret < 0)
 			return ret;
@@ -127,7 +127,7 @@ nfp_flower_repr_dev_stop(struct rte_eth_dev *dev)
 
 	nfp_flower_cmsg_port_mod(app_fw_flower, repr->port_id, false);
 
-	if (repr->repr_type == NFP_REPR_TYPE_PHYS_PORT) {
+	if (nfp_flower_repr_is_phy(repr)) {
 		ret = nfp_eth_set_configured(hw_priv->pf_dev->cpp, repr->nfp_idx, 0);
 		if (ret == 1)
 			ret = 0;
@@ -411,7 +411,7 @@ nfp_flower_repr_uninit(struct rte_eth_dev *eth_dev)
 	nfp_flower_repr_base_uninit(repr);
 	rte_free(repr->ring);
 
-	if (repr->repr_type == NFP_REPR_TYPE_PHYS_PORT) {
+	if (nfp_flower_repr_is_phy(repr)) {
 		index = NFP_FLOWER_CMSG_PORT_PHYS_PORT_NUM(repr->port_id);
 		repr->app_fw_flower->phy_reprs[index] = NULL;
 	} else {
@@ -768,14 +768,14 @@ nfp_flower_repr_init(struct rte_eth_dev *eth_dev,
 		goto ring_cleanup;
 	}
 
-	if (repr->repr_type == NFP_REPR_TYPE_PHYS_PORT)
+	if (nfp_flower_repr_is_phy(repr))
 		eth_dev->data->representor_id = repr->vf_id;
 	else
 		eth_dev->data->representor_id = repr->vf_id +
 				app_fw_flower->num_phyport_reprs + 1;
 
 	/* Add repr to correct array */
-	if (repr->repr_type == NFP_REPR_TYPE_PHYS_PORT) {
+	if (nfp_flower_repr_is_phy(repr)) {
 		index = NFP_FLOWER_CMSG_PORT_PHYS_PORT_NUM(repr->port_id);
 		app_fw_flower->phy_reprs[index] = repr;
 	} else {
@@ -783,7 +783,7 @@ nfp_flower_repr_init(struct rte_eth_dev *eth_dev,
 		app_fw_flower->vf_reprs[index] = repr;
 	}
 
-	if (repr->repr_type == NFP_REPR_TYPE_PHYS_PORT) {
+	if (nfp_flower_repr_is_phy(repr)) {
 		repr->mac_stats = hw_priv->pf_dev->mac_stats_bar +
 				(repr->nfp_idx * NFP_MAC_STATS_SIZE);
 	}
@@ -1183,3 +1183,9 @@ nfp_flower_repr_is_vf(struct nfp_flower_representor *repr)
 {
 	return repr->repr_type == NFP_REPR_TYPE_VF;
 }
+
+bool
+nfp_flower_repr_is_phy(struct nfp_flower_representor *repr)
+{
+	return repr->repr_type == NFP_REPR_TYPE_PHYS_PORT;
+}
diff --git a/drivers/net/nfp/flower/nfp_flower_representor.h b/drivers/net/nfp/flower/nfp_flower_representor.h
index 4211ddf798..3f6ee32fe4 100644
--- a/drivers/net/nfp/flower/nfp_flower_representor.h
+++ b/drivers/net/nfp/flower/nfp_flower_representor.h
@@ -30,6 +30,7 @@ struct nfp_flower_representor {
 int nfp_flower_repr_create(struct nfp_app_fw_flower *app_fw_flower,
 		struct nfp_net_hw_priv *hw_priv);
 bool nfp_flower_repr_is_vf(struct nfp_flower_representor *repr);
+bool nfp_flower_repr_is_phy(struct nfp_flower_representor *repr);
 int nfp_flower_repr_stats_reset(struct rte_eth_dev *ethdev);
 
 #endif /* __NFP_FLOWER_REPRESENTOR_H__ */
-- 
2.43.5



More information about the dev mailing list