net: dsa: mv88e6xxx: add a stats setup function

Now that the Global 1 specific setup function only setup the statistics
unit, kill it in favor of a mv88e6xxx_stats_setup function.

Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Vivien Didelot 2018-05-11 17:16:36 -04:00 committed by David S. Miller
parent 93e18d61bf
commit 447b1bb84b

View File

@ -995,14 +995,6 @@ static void mv88e6xxx_get_ethtool_stats(struct dsa_switch *ds, int port,
}
static int mv88e6xxx_stats_set_histogram(struct mv88e6xxx_chip *chip)
{
if (chip->info->ops->stats_set_histogram)
return chip->info->ops->stats_set_histogram(chip);
return 0;
}
static int mv88e6xxx_get_regs_len(struct dsa_switch *ds, int port)
{
return 32 * sizeof(u16);
@ -2267,14 +2259,16 @@ static int mv88e6xxx_set_ageing_time(struct dsa_switch *ds,
return err;
}
static int mv88e6xxx_g1_setup(struct mv88e6xxx_chip *chip)
static int mv88e6xxx_stats_setup(struct mv88e6xxx_chip *chip)
{
int err;
/* Initialize the statistics unit */
err = mv88e6xxx_stats_set_histogram(chip);
if (err)
return err;
if (chip->info->ops->stats_set_histogram) {
err = chip->info->ops->stats_set_histogram(chip);
if (err)
return err;
}
return mv88e6xxx_g1_stats_clear(chip);
}
@ -2300,11 +2294,6 @@ static int mv88e6xxx_setup(struct dsa_switch *ds)
goto unlock;
}
/* Setup Switch Global 1 Registers */
err = mv88e6xxx_g1_setup(chip);
if (err)
goto unlock;
err = mv88e6xxx_irl_setup(chip);
if (err)
goto unlock;
@ -2368,6 +2357,10 @@ static int mv88e6xxx_setup(struct dsa_switch *ds)
goto unlock;
}
err = mv88e6xxx_stats_setup(chip);
if (err)
goto unlock;
unlock:
mutex_unlock(&chip->reg_lock);