123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- From b7c818d194927bdc60ed15db55bb8654496a36b7 Mon Sep 17 00:00:00 2001
- From: Ansuel Smith <[email protected]>
- Date: Fri, 14 May 2021 22:59:58 +0200
- Subject: [PATCH] net: dsa: qca8k: handle error from qca8k_busy_wait
- Propagate errors from qca8k_busy_wait instead of hardcoding return
- value.
- Signed-off-by: Ansuel Smith <[email protected]>
- Reviewed-by: Andrew Lunn <[email protected]>
- Signed-off-by: David S. Miller <[email protected]>
- ---
- drivers/net/dsa/qca8k.c | 21 +++++++++++++--------
- 1 file changed, 13 insertions(+), 8 deletions(-)
- --- a/drivers/net/dsa/qca8k.c
- +++ b/drivers/net/dsa/qca8k.c
- @@ -388,8 +388,9 @@ qca8k_fdb_access(struct qca8k_priv *priv
- return ret;
-
- /* wait for completion */
- - if (qca8k_busy_wait(priv, QCA8K_REG_ATU_FUNC, QCA8K_ATU_FUNC_BUSY))
- - return -1;
- + ret = qca8k_busy_wait(priv, QCA8K_REG_ATU_FUNC, QCA8K_ATU_FUNC_BUSY);
- + if (ret)
- + return ret;
-
- /* Check for table full violation when adding an entry */
- if (cmd == QCA8K_FDB_LOAD) {
- @@ -468,8 +469,9 @@ qca8k_vlan_access(struct qca8k_priv *pri
- return ret;
-
- /* wait for completion */
- - if (qca8k_busy_wait(priv, QCA8K_REG_VTU_FUNC1, QCA8K_VTU_FUNC1_BUSY))
- - return -ETIMEDOUT;
- + ret = qca8k_busy_wait(priv, QCA8K_REG_VTU_FUNC1, QCA8K_VTU_FUNC1_BUSY);
- + if (ret)
- + return ret;
-
- /* Check for table full violation when adding an entry */
- if (cmd == QCA8K_VLAN_LOAD) {
- @@ -580,7 +582,9 @@ qca8k_mib_init(struct qca8k_priv *priv)
- if (ret)
- goto exit;
-
- - qca8k_busy_wait(priv, QCA8K_REG_MIB, QCA8K_MIB_BUSY);
- + ret = qca8k_busy_wait(priv, QCA8K_REG_MIB, QCA8K_MIB_BUSY);
- + if (ret)
- + goto exit;
-
- ret = qca8k_reg_set(priv, QCA8K_REG_MIB, QCA8K_MIB_CPU_KEEP);
- if (ret)
- @@ -670,9 +674,10 @@ qca8k_mdio_read(struct qca8k_priv *priv,
- if (ret)
- return ret;
-
- - if (qca8k_busy_wait(priv, QCA8K_MDIO_MASTER_CTRL,
- - QCA8K_MDIO_MASTER_BUSY))
- - return -ETIMEDOUT;
- + ret = qca8k_busy_wait(priv, QCA8K_MDIO_MASTER_CTRL,
- + QCA8K_MDIO_MASTER_BUSY);
- + if (ret)
- + return ret;
-
- val = qca8k_read(priv, QCA8K_MDIO_MASTER_CTRL);
- if (val < 0)
|