ath79: ag71xx: preserve port mirror flags during swconfig apply

The swconfig load operation always triggers 'apply' function which in
this driver currently clears port mirroring flags effectively undoing
port mirroring configuration.

Signed-off-by: Milan Krstic <milan.krstic@gmail.com>
master
Milan Krstic 6 years ago committed by Jo-Philipp Wich
parent d13e86d4c2
commit 76a629ee35
  1. 4
      target/linux/ath79/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_ar7240.c

@ -742,6 +742,10 @@ static void ar7240sw_setup_port(struct ar7240sw *as, unsigned port, u8 portmask)
portmask = ar7240sw_port_mask(as, AR7240_PORT_CPU);
}
/* preserve mirror rx&tx flags */
ctrl |= ar7240sw_reg_read(mii, AR7240_REG_PORT_CTRL(port)) &
(AR7240_PORT_CTRL_MIRROR_RX | AR7240_PORT_CTRL_MIRROR_TX);
/* allow the port to talk to all other ports, but exclude its
* own ID to prevent frames from being reflected back to the
* port that they came from */

Loading…
Cancel
Save