Hi Vladimir, maybe you have missed my upstreaming of this patch set... According to our earlier discussions I have now implemented the feature, so that the ATU locked entries are owned by the driver, so to make the entries dynamic I add the entries to a list and use kernel timers to age out the entries as they should be 'dynamic'. See mv88e6xxx_switchdev.c. Hans On Tue, May 24, 2022 at 5:22 PM Hans Schultz <schultz.hans@xxxxxxxxx> wrote: > > This implementation for the Marvell mv88e6xxx chip series, is > based on handling ATU miss violations occurring when packets > ingress on a port that is locked. The mac address triggering > the ATU miss violation is communicated through switchdev to > the bridge module, which adds a fdb entry with the fdb locked > flag set. The entry is kept according to the bridges ageing > time, thus simulating a dynamic entry. > > Note: The locked port must have learning enabled for the ATU > miss violation to occur. > > Signed-off-by: Hans Schultz <schultz.hans+netdev@xxxxxxxxx> > --- > drivers/net/dsa/mv88e6xxx/Makefile | 1 + > drivers/net/dsa/mv88e6xxx/chip.c | 40 ++- > drivers/net/dsa/mv88e6xxx/chip.h | 5 + > drivers/net/dsa/mv88e6xxx/global1.h | 1 + > drivers/net/dsa/mv88e6xxx/global1_atu.c | 35 ++- > .../net/dsa/mv88e6xxx/mv88e6xxx_switchdev.c | 249 ++++++++++++++++++ > .../net/dsa/mv88e6xxx/mv88e6xxx_switchdev.h | 40 +++ > drivers/net/dsa/mv88e6xxx/port.c | 32 ++- > drivers/net/dsa/mv88e6xxx/port.h | 2 + > 9 files changed, 389 insertions(+), 16 deletions(-) > create mode 100644 drivers/net/dsa/mv88e6xxx/mv88e6xxx_switchdev.c > create mode 100644 drivers/net/dsa/mv88e6xxx/mv88e6xxx_switchdev.h >