Преглед изворни кода

net: dsa: Centralise getting switch id

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>
Andrew Lunn пре 10 година
родитељ
комит
a8f064c602
2 измењених фајлова са 2 додато и 2 уклоњено
  1. 0 2
      drivers/net/dsa/mv88e6352.c
  2. 2 0
      drivers/net/dsa/mv88e6xxx.c

+ 0 - 2
drivers/net/dsa/mv88e6352.c

@@ -369,8 +369,6 @@ static int mv88e6352_setup(struct dsa_switch *ds)
 
 
 	mutex_init(&ps->eeprom_mutex);
 	mutex_init(&ps->eeprom_mutex);
 
 
-	ps->id = REG_READ(REG_PORT(0), 0x03) & 0xfff0;
-
 	ret = mv88e6352_switch_reset(ds);
 	ret = mv88e6352_switch_reset(ds);
 	if (ret < 0)
 	if (ret < 0)
 		return ret;
 		return ret;

+ 2 - 0
drivers/net/dsa/mv88e6xxx.c

@@ -1152,6 +1152,8 @@ int mv88e6xxx_setup_common(struct dsa_switch *ds)
 	mutex_init(&ps->stats_mutex);
 	mutex_init(&ps->stats_mutex);
 	mutex_init(&ps->phy_mutex);
 	mutex_init(&ps->phy_mutex);
 
 
+	ps->id = REG_READ(REG_PORT(0), 0x03) & 0xfff0;
+
 	ps->fid_mask = (1 << DSA_MAX_PORTS) - 1;
 	ps->fid_mask = (1 << DSA_MAX_PORTS) - 1;
 
 
 	INIT_WORK(&ps->bridge_work, mv88e6xxx_bridge_work);
 	INIT_WORK(&ps->bridge_work, mv88e6xxx_bridge_work);