linux/drivers/net/dsa
Florian Fainelli 39797a279d net: dsa: bcm_sf2: Fix ageing conditions and operation
The comparison check between cur_hw_state and hw_state is currently
invalid because cur_hw_state is right shifted by G_MISTP_SHIFT, while
hw_state is not, so we end-up comparing bits 2:0 with bits 7:5, which is
going to cause an additional aging to occur. Fix this by not shifting
cur_hw_state while reading it, but instead, mask the value with the
appropriately shitfted bitmask.

The other problem with the fast-ageing process is that we did not set
the EN_AGE_DYNAMIC bit to request the ageing to occur for dynamically
learned MAC addresses. Finally, write back 0 to the FAST_AGE_CTRL
register to avoid leaving spurious bits sets from one operation to the
other.

Fixes: 12f460f234 ("net: dsa: bcm_sf2: add HW bridging support")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-09-08 22:27:35 -07:00
..
bcm_sf2_regs.h net: dsa: bcm_sf2: add HW bridging support 2015-02-25 17:03:38 -05:00
bcm_sf2.c net: dsa: bcm_sf2: Fix ageing conditions and operation 2015-09-08 22:27:35 -07:00
bcm_sf2.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-03-03 21:16:48 -05:00
Kconfig dsa: mv88e6352/mv88e6xxx: Add support for Marvell 88E6320 and 88E6321 2015-07-09 14:34:23 -07:00
Makefile net: dsa: Add support for Marvell 88E6352 2014-10-30 14:54:10 -04:00
mv88e6xxx.c dsa: mv88e6xxx: Don't poll forced interfaces for state changes 2015-08-31 14:48:02 -07:00
mv88e6xxx.h dsa: mv88e6xxx: Set the RGMII delay based on phy interface 2015-08-31 14:48:02 -07:00
mv88e6060.c net: dsa: Report known silicon revisions for Marvell 88E6060 2014-10-30 14:54:10 -04:00
mv88e6123_61_65.c dsa: mv88e6xxx: Allow speed/duplex of port to be configured 2015-08-31 14:48:01 -07:00
mv88e6131.c dsa: mv88e6xxx: Allow speed/duplex of port to be configured 2015-08-31 14:48:01 -07:00
mv88e6171.c net: dsa: mv88e6171: add hardware 802.1Q support 2015-09-06 19:50:50 -07:00
mv88e6352.c dsa: mv88e6xxx: Allow speed/duplex of port to be configured 2015-08-31 14:48:01 -07:00