The OpenWRT AR8xxx switch support flushes the ATU (address translation unit) after each port link 'up' status change. I've modified this to just flush on any port transition.
Whilst here, bump the number of ports on the AR8327 to 6, rather than the default of 5. It's DB120 specific; I'll go and make this configurable later.
There's some debugging code in here still; I am still debugging whether this is or isn't working fully.
Tested:
- DB120, AR9344 + AR8327 switch
Obtained from: OpenWRT
6ec7b63 Add ATU flush support.
sys/dev/etherswitch/arswitch/arswitch.c | 50 +++++++++++++++++++++++++-
sys/dev/etherswitch/arswitch/arswitch_8327.c | 27 ++++++++++++++
sys/dev/etherswitch/arswitch/arswitchvar.h | 3 ++
3 files changed, 79 insertions(+), 1 deletion(-)
Upstream: github.com