linux/drivers/net/ethernet/mscc
Vladimir Oltean 2e9f4afadc net: mscc: ocelot: avoid unneeded "lp" variable in LAG join
The index of the LAG is equal to the logical port ID that all the
physical port members have, which is further equal to the index of the
first physical port that is a member of the LAG.

The code gets a bit carried away with logic like this:

	if (a == b)
		c = a;
	else
		c = b;

which can be simplified, of course, into:

	c = b;

(with a being port, b being lp, c being lag)

This further makes the "lp" variable redundant, since we can use "lag"
everywhere where "lp" (logical port) was used. So instead of a "c = b"
assignment, we can do a complete deletion of b. Only one comment here:

		if (bond_mask) {
			lp = __ffs(bond_mask);
			ocelot->lags[lp] = 0;
		}

lp was clobbered before, because it was used as a temporary variable to
hold the new smallest port ID from the bond. Now that we don't have "lp"
any longer, we'll just avoid the temporary variable and zeroize the
bonding mask directly.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Reviewed-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2021-02-06 14:51:50 -08:00
..
Kconfig
Makefile net: mscc: ocelot: initialize watermarks to sane defaults 2021-01-15 20:02:34 -08:00
ocelot.c net: mscc: ocelot: avoid unneeded "lp" variable in LAG join 2021-02-06 14:51:50 -08:00
ocelot.h net: mscc: ocelot: don't refuse bonding interfaces we can't offload 2021-02-06 14:51:50 -08:00
ocelot_devlink.c net: mscc: ocelot: configure watermarks using devlink-sb 2021-01-15 20:02:35 -08:00
ocelot_flower.c net: mscc: ocelot: store a namespaced VCAP filter ID 2021-01-29 21:24:30 -08:00
ocelot_io.c net: mscc: ocelot: introduce a new ocelot_target_{read,write} API 2020-09-29 18:26:12 -07:00
ocelot_net.c net: mscc: ocelot: don't refuse bonding interfaces we can't offload 2021-02-06 14:51:50 -08:00
ocelot_police.c
ocelot_police.h
ocelot_ptp.c net: mscc: ocelot: make ocelot_init_timestamp take a const struct ptp_clock_info 2020-09-18 17:52:40 -07:00
ocelot_qs.h
ocelot_rew.h
ocelot_vcap.c net: dsa: felix: perform switch setup for tag_8021q 2021-01-29 21:25:27 -08:00
ocelot_vcap.h net: dsa: felix: perform switch setup for tag_8021q 2021-01-29 21:25:27 -08:00
ocelot_vsc7514.c net: mscc: ocelot: fix error code in mscc_ocelot_probe() 2021-02-03 16:18:10 -08:00