aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ar71xx/files
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2011-12-22 05:43:53 +0000
committerFelix Fietkau <nbd@openwrt.org>2011-12-22 05:43:53 +0000
commitdb0a1db257ca42b09c13ceb54a036cc237a1b57d (patch)
tree3d3c36b34d797bba891c8b0b751b216e955a0a05 /target/linux/ar71xx/files
parent8799627ef0ee3258a118b00190bf0842e5190360 (diff)
downloadupstream-db0a1db257ca42b09c13ceb54a036cc237a1b57d.tar.gz
upstream-db0a1db257ca42b09c13ceb54a036cc237a1b57d.tar.bz2
upstream-db0a1db257ca42b09c13ceb54a036cc237a1b57d.zip
ar71xx: set a reserved bit that resets to 1 when writing the address table control register on the ar7240 switch (should fix #10547)
SVN-Revision: 29598
Diffstat (limited to 'target/linux/ar71xx/files')
-rw-r--r--target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx_ar7240.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx_ar7240.c b/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx_ar7240.c
index 60ee60b7da..491127d050 100644
--- a/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx_ar7240.c
+++ b/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx_ar7240.c
@@ -66,6 +66,7 @@
#define AR7240_AT_CTRL_AGE_TIME BITS(0, 15)
#define AR7240_AT_CTRL_AGE_EN BIT(17)
#define AR7240_AT_CTRL_LEARN_CHANGE BIT(18)
+#define AR7240_AT_CTRL_RESERVED BIT(19)
#define AR7240_AT_CTRL_ARP_EN BIT(20)
#define AR7240_REG_TAG_PRIORITY 0x70
@@ -470,6 +471,7 @@ static void ar7240sw_setup(struct ar7240sw *as)
/* Enable ARP frame acknowledge, aging, MAC replacing */
ar7240sw_reg_write(mii, AR7240_REG_AT_CTRL,
+ AR7240_AT_CTRL_RESERVED |
0x2b /* 5 min age time */ |
AR7240_AT_CTRL_AGE_EN |
AR7240_AT_CTRL_ARP_EN |