static int mv88e6xxx_switch_reset(struct mv88e6xxx_chip *chip)
{
int err;
err = mv88e6xxx_disable_ports(chip);
if (err)
return err;
mv88e6xxx_hardware_reset(chip);
return mv88e6xxx_software_reset(chip);
}
So unless I'm fooled by mentally putting an equality sign between
mv88e6xxx_switch_reset() and getting rid of whatever a previous kernel
may have done
A software reset resets the queue controllers and a few other
things. It does not touch the contents of most registers.
A hardware reset, using a GPIO to the reset pin, will reset all
registers. The switch will then read the optional PROM, and that could
set some registers. But hardware reset is not supported by most
boards.
Andrew