net: dsa: microchip: ksz8795: move variable assignments from detect to init
authorMichael Grzeschik <m.grzeschik@pengutronix.de>
Tue, 1 Dec 2020 20:44:58 +0000 (21:44 +0100)
committerJakub Kicinski <kuba@kernel.org>
Thu, 3 Dec 2020 01:16:29 +0000 (17:16 -0800)
This patch moves all variable assignments to the init function. It
leaves the detect function for its single purpose to detect which chip
version is found.

Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/dsa/microchip/ksz8795.c

index 853a080..1164c74 100644 (file)
@@ -1150,9 +1150,6 @@ static int ksz8795_switch_detect(struct ksz_device *dev)
            (id2 != CHIP_ID_94 && id2 != CHIP_ID_95))
                return -ENODEV;
 
-       dev->mib_port_cnt = TOTAL_PORT_NUM;
-       dev->phy_port_cnt = SWITCH_PORT_NUM;
-
        if (id2 == CHIP_ID_95) {
                u8 val;
 
@@ -1167,9 +1164,6 @@ static int ksz8795_switch_detect(struct ksz_device *dev)
        id16 |= id2;
        dev->chip_id = id16;
 
-       dev->cpu_port = dev->mib_port_cnt - 1;
-       dev->host_mask = BIT(dev->cpu_port);
-
        return 0;
 }
 
@@ -1244,6 +1238,12 @@ static int ksz8795_switch_init(struct ksz_device *dev)
        dev->reg_mib_cnt = SWITCH_COUNTER_NUM;
        dev->mib_cnt = TOTAL_SWITCH_COUNTER_NUM;
 
+       dev->mib_port_cnt = TOTAL_PORT_NUM;
+       dev->phy_port_cnt = SWITCH_PORT_NUM;
+
+       dev->cpu_port = dev->mib_port_cnt - 1;
+       dev->host_mask = BIT(dev->cpu_port);
+
        i = dev->mib_port_cnt;
        dev->ports = devm_kzalloc(dev->dev, sizeof(struct ksz_port) * i,
                                  GFP_KERNEL);