[PATCH net-next 4/9] net: ethernet: ti: cpsw_ale: return ALE index in cpsw_ale_add_ucast()

From: Roger Quadros
Date: Wed Mar 19 2025 - 09:42:51 EST


Policer helpers will need to know what ALE index was used for
the added unicast entry. So return the ALE index instead of zero
on success.

Modify existing users to check for less than zero as error case.

Signed-off-by: Roger Quadros <rogerq@xxxxxxxxxx>
---
drivers/net/ethernet/ti/cpsw.c | 2 +-
drivers/net/ethernet/ti/cpsw_ale.c | 2 +-
drivers/net/ethernet/ti/cpsw_new.c | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/net/ethernet/ti/cpsw.c b/drivers/net/ethernet/ti/cpsw.c
index 116ef3220458..11d6ff85f424 100644
--- a/drivers/net/ethernet/ti/cpsw.c
+++ b/drivers/net/ethernet/ti/cpsw.c
@@ -1027,7 +1027,7 @@ static inline int cpsw_add_vlan_ale_entry(struct cpsw_priv *priv,

ret = cpsw_ale_add_ucast(cpsw->ale, priv->mac_addr,
HOST_PORT_NUM, ALE_VLAN, vid);
- if (ret != 0)
+ if (ret < 0)
goto clean_vid;

ret = cpsw_ale_add_mcast(cpsw->ale, priv->ndev->broadcast,
diff --git a/drivers/net/ethernet/ti/cpsw_ale.c b/drivers/net/ethernet/ti/cpsw_ale.c
index 262abdd3f1b7..2c780efed402 100644
--- a/drivers/net/ethernet/ti/cpsw_ale.c
+++ b/drivers/net/ethernet/ti/cpsw_ale.c
@@ -534,7 +534,7 @@ int cpsw_ale_add_ucast(struct cpsw_ale *ale, const u8 *addr, int port,
return -ENOMEM;

cpsw_ale_write(ale, idx, ale_entry);
- return 0;
+ return idx;
}

int cpsw_ale_del_ucast(struct cpsw_ale *ale, const u8 *addr, int port,
diff --git a/drivers/net/ethernet/ti/cpsw_new.c b/drivers/net/ethernet/ti/cpsw_new.c
index 24013c52555c..b80042518b95 100644
--- a/drivers/net/ethernet/ti/cpsw_new.c
+++ b/drivers/net/ethernet/ti/cpsw_new.c
@@ -418,7 +418,7 @@ static int cpsw_add_vlan_ale_entry(struct cpsw_priv *priv,

ret = cpsw_ale_add_ucast(cpsw->ale, priv->mac_addr,
HOST_PORT_NUM, ALE_VLAN, vid);
- if (ret != 0)
+ if (ret < 0)
goto clean_vid;

ret = cpsw_ale_add_mcast(cpsw->ale, priv->ndev->broadcast,

--
2.34.1