OSDN Git Service

net: dsa: microchip: remove ksz_port:on variable
authorOleksij Rempel <o.rempel@pengutronix.de>
Fri, 26 May 2023 07:34:43 +0000 (09:34 +0200)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 30 May 2023 07:48:17 +0000 (09:48 +0200)
The only place where this variable would be set to false is the
ksz8_config_cpu_port() function. But it is done in a bogus way:

  for (i = 0; i < dev->phy_port_cnt; i++) {
if (i == dev->phy_port_cnt) <--- will be never executed.
break;
p->on = 1;

So, we never have a situation where p->on = 0. In this case, we can just
remove it.

Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Vladimir Oltean <olteanv@gmail.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/dsa/microchip/ksz8795.c
drivers/net/dsa/microchip/ksz_common.h

index d2f7fa3..84d5025 100644 (file)
@@ -941,7 +941,6 @@ void ksz8_flush_dyn_mac_table(struct ksz_device *dev, int port)
 {
        u8 learn[DSA_MAX_PORTS];
        int first, index, cnt;
-       struct ksz_port *p;
        const u16 *regs;
 
        regs = dev->info->regs;
@@ -955,9 +954,6 @@ void ksz8_flush_dyn_mac_table(struct ksz_device *dev, int port)
                cnt = dev->info->port_cnt;
        }
        for (index = first; index < cnt; index++) {
-               p = &dev->ports[index];
-               if (!p->on)
-                       continue;
                ksz_pread8(dev, index, regs[P_STP_CTRL], &learn[index]);
                if (!(learn[index] & PORT_LEARN_DISABLE))
                        ksz_pwrite8(dev, index, regs[P_STP_CTRL],
@@ -965,9 +961,6 @@ void ksz8_flush_dyn_mac_table(struct ksz_device *dev, int port)
        }
        ksz_cfg(dev, S_FLUSH_TABLE_CTRL, SW_FLUSH_DYN_MAC_TABLE, true);
        for (index = first; index < cnt; index++) {
-               p = &dev->ports[index];
-               if (!p->on)
-                       continue;
                if (!(learn[index] & PORT_LEARN_DISABLE))
                        ksz_pwrite8(dev, index, regs[P_STP_CTRL], learn[index]);
        }
@@ -1338,25 +1331,14 @@ void ksz8_config_cpu_port(struct dsa_switch *ds)
 
        ksz_cfg(dev, regs[S_TAIL_TAG_CTRL], masks[SW_TAIL_TAG_ENABLE], true);
 
-       p = &dev->ports[dev->cpu_port];
-       p->on = 1;
-
        ksz8_port_setup(dev, dev->cpu_port, true);
 
        for (i = 0; i < dev->phy_port_cnt; i++) {
-               p = &dev->ports[i];
-
                ksz_port_stp_state_set(ds, i, BR_STATE_DISABLED);
-
-               /* Last port may be disabled. */
-               if (i == dev->phy_port_cnt)
-                       break;
-               p->on = 1;
        }
        for (i = 0; i < dev->phy_port_cnt; i++) {
                p = &dev->ports[i];
-               if (!p->on)
-                       continue;
+
                if (!ksz_is_ksz88x3(dev)) {
                        ksz_pread8(dev, i, regs[P_REMOTE_STATUS], &remote);
                        if (remote & KSZ8_PORT_FIBER_MODE)
index f45f5fe..5aa58aa 100644 (file)
@@ -108,7 +108,6 @@ struct ksz_port {
        int stp_state;
        struct phy_device phydev;
 
-       u32 on:1;                       /* port is not disabled by hardware */
        u32 fiber:1;                    /* port is fiber */
        u32 force:1;
        u32 read:1;                     /* read MIB counters in background */