net: dsa: microchip: ksz8_r_dyn_mac_table(): use entries variable to signal 0 entries
authorOleksij Rempel <o.rempel@pengutronix.de>
Wed, 3 Apr 2024 12:50:39 +0000 (14:50 +0200)
committerJakub Kicinski <kuba@kernel.org>
Fri, 5 Apr 2024 02:08:43 +0000 (19:08 -0700)
We already have a variable to provide number of entries. So use it,
instead of using error number.

Reviewed-by: Vladimir Oltean <olteanv@gmail.com>
Acked-by: Arun Ramadoss <arun.ramadoss@microchip.com>
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
Link: https://lore.kernel.org/r/20240403125039.3414824-9-o.rempel@pengutronix.de
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/dsa/microchip/ksz8795.c

index de3d8357da855bef6fae286cd45e89ba729b8ff8..ecef6f6f830b3a6010c553ab5a301c1e3053953c 100644 (file)
@@ -399,19 +399,11 @@ static int ksz8_valid_dyn_entry(struct ksz_device *dev, u8 *data)
        } while ((*data & masks[DYNAMIC_MAC_TABLE_NOT_READY]) && timeout);
 
        /* Entry is not ready for accessing. */
-       if (*data & masks[DYNAMIC_MAC_TABLE_NOT_READY]) {
+       if (*data & masks[DYNAMIC_MAC_TABLE_NOT_READY])
                return -ETIMEDOUT;
-       /* Entry is ready for accessing. */
-       } else {
-               ret = ksz_read8(dev, regs[REG_IND_DATA_8], data);
-               if (ret)
-                       return ret;
 
-               /* There is no valid entry in the table. */
-               if (*data & masks[DYNAMIC_MAC_TABLE_MAC_EMPTY])
-                       return -ENXIO;
-       }
-       return 0;
+       /* Entry is ready for accessing. */
+       return ksz_read8(dev, regs[REG_IND_DATA_8], data);
 }
 
 static int ksz8_r_dyn_mac_table(struct ksz_device *dev, u16 addr, u8 *mac_addr,
@@ -439,13 +431,13 @@ static int ksz8_r_dyn_mac_table(struct ksz_device *dev, u16 addr, u8 *mac_addr,
                goto unlock_alu;
 
        ret = ksz8_valid_dyn_entry(dev, &data);
-       if (ret == -ENXIO) {
-               *entries = 0;
+       if (ret)
                goto unlock_alu;
-       }
 
-       if (ret)
+       if (data & masks[DYNAMIC_MAC_TABLE_MAC_EMPTY]) {
+               *entries = 0;
                goto unlock_alu;
+       }
 
        ret = ksz_read64(dev, regs[REG_IND_DATA_HI], &buf);
        if (ret)
@@ -1210,8 +1202,6 @@ int ksz8_fdb_dump(struct ksz_device *dev, int port,
        for (i = 0; i < KSZ8_DYN_MAC_ENTRIES; i++) {
                ret = ksz8_r_dyn_mac_table(dev, i, mac, &fid, &src_port,
                                           &entries);
-               if (ret == -ENXIO)
-                       return 0;
                if (ret)
                        return ret;