Get the switch id and save it away in the private mv88x6xxx structure
in a centralised piece of code, rather than each driver doing it itself.
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
 
        mutex_init(&ps->eeprom_mutex);
 
-       ps->id = REG_READ(REG_PORT(0), 0x03) & 0xfff0;
-
        ret = mv88e6352_switch_reset(ds);
        if (ret < 0)
                return ret;
 
        mutex_init(&ps->stats_mutex);
        mutex_init(&ps->phy_mutex);
 
+       ps->id = REG_READ(REG_PORT(0), 0x03) & 0xfff0;
+
        ps->fid_mask = (1 << DSA_MAX_PORTS) - 1;
 
        INIT_WORK(&ps->bridge_work, mv88e6xxx_bridge_work);