From: Michael Grzeschik Date: Tue, 1 Dec 2020 20:45:05 +0000 (+0100) Subject: net: dsa: microchip: ksz8795: use port_cnt instead of TOTOAL_PORT_NUM X-Git-Tag: io_uring-5.11-2020-12-23~79^2~131^2~1 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=241ed719bc9884758f8953550f2ed22715b24339;p=linux-block.git net: dsa: microchip: ksz8795: use port_cnt instead of TOTOAL_PORT_NUM To get the driver working with other chips using different port counts the dyn_mac_table should be flushed depending on the amount of available ports. This patch remove the extra define TOTOAL_PORT_NUM and is making use of the dynamic port_cnt variable instead. Reviewed-by: Florian Fainelli Signed-off-by: Michael Grzeschik Signed-off-by: Jakub Kicinski --- diff --git a/drivers/net/dsa/microchip/ksz8795.c b/drivers/net/dsa/microchip/ksz8795.c index 7b5c9283712e..b13ac57ab8bb 100644 --- a/drivers/net/dsa/microchip/ksz8795.c +++ b/drivers/net/dsa/microchip/ksz8795.c @@ -751,11 +751,11 @@ static void ksz8795_port_stp_state_set(struct dsa_switch *ds, int port, static void ksz8795_flush_dyn_mac_table(struct ksz_device *dev, int port) { - u8 learn[TOTAL_PORT_NUM]; + u8 learn[DSA_MAX_PORTS]; int first, index, cnt; struct ksz_port *p; - if ((uint)port < TOTAL_PORT_NUM) { + if ((uint)port < dev->port_cnt) { first = port; cnt = port + 1; } else { diff --git a/drivers/net/dsa/microchip/ksz8795_reg.h b/drivers/net/dsa/microchip/ksz8795_reg.h index 6377165a236f..681d19ab27b8 100644 --- a/drivers/net/dsa/microchip/ksz8795_reg.h +++ b/drivers/net/dsa/microchip/ksz8795_reg.h @@ -846,8 +846,6 @@ #define KS_PRIO_IN_REG 4 -#define TOTAL_PORT_NUM 5 - #define KSZ8795_COUNTER_NUM 0x20 /* Common names used by other drivers */