aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2008-06-09 10:31:46 +0000
committerFelix Fietkau <nbd@openwrt.org>2008-06-09 10:31:46 +0000
commitb014357704942bbb879b85e36e18a7ab881a0312 (patch)
treecd94583c9593a052647a725ebbcb9237da2fc9d7 /target/linux
parent62bef2bced78e4abadbcf86ed0aa79fec209559a (diff)
downloadupstream-b014357704942bbb879b85e36e18a7ab881a0312.tar.gz
upstream-b014357704942bbb879b85e36e18a7ab881a0312.tar.bz2
upstream-b014357704942bbb879b85e36e18a7ab881a0312.zip
set marvell switch ATU ageing time to minimum instead of maximum - hopefully fixes some fonera 2.0 ethernet issues
SVN-Revision: 11410
Diffstat (limited to 'target/linux')
-rw-r--r--target/linux/generic-2.6/files-2.6.25/drivers/net/phy/mvswitch.c2
-rw-r--r--target/linux/generic-2.6/files-2.6.25/drivers/net/phy/mvswitch.h2
-rw-r--r--target/linux/generic-2.6/files-2.6.26/drivers/net/phy/mvswitch.c2
-rw-r--r--target/linux/generic-2.6/files-2.6.26/drivers/net/phy/mvswitch.h2
-rw-r--r--target/linux/generic-2.6/files/drivers/net/phy/mvswitch.c2
-rw-r--r--target/linux/generic-2.6/files/drivers/net/phy/mvswitch.h2
6 files changed, 9 insertions, 3 deletions
diff --git a/target/linux/generic-2.6/files-2.6.25/drivers/net/phy/mvswitch.c b/target/linux/generic-2.6/files-2.6.25/drivers/net/phy/mvswitch.c
index f28df43989..be9e6afd2d 100644
--- a/target/linux/generic-2.6/files-2.6.25/drivers/net/phy/mvswitch.c
+++ b/target/linux/generic-2.6/files-2.6.25/drivers/net/phy/mvswitch.c
@@ -246,7 +246,7 @@ mvswitch_config_init(struct phy_device *pdev)
w16(pdev, MV_SWITCHREG(ATU_CTRL),
MV_ATUCTL_RESET |
MV_ATUCTL_ATU_1K |
- MV_ATUCTL_AGETIME(4080) /* maximum */
+ MV_ATUCTL_AGETIME(MV_ATUCTL_AGETIME_MIN) /* minimum without disabling ageing */
);
i = 100; /* timeout */
diff --git a/target/linux/generic-2.6/files-2.6.25/drivers/net/phy/mvswitch.h b/target/linux/generic-2.6/files-2.6.25/drivers/net/phy/mvswitch.h
index 81516b708b..a172e37265 100644
--- a/target/linux/generic-2.6/files-2.6.25/drivers/net/phy/mvswitch.h
+++ b/target/linux/generic-2.6/files-2.6.25/drivers/net/phy/mvswitch.h
@@ -114,6 +114,8 @@ enum {
};
enum {
+#define MV_ATUCTL_AGETIME_MIN 16
+#define MV_ATUCTL_AGETIME_MAX 4080
#define MV_ATUCTL_AGETIME(_n) ((((_n) / 16) & 0xff) << 4)
MV_ATUCTL_ATU_256 = (0 << 12),
MV_ATUCTL_ATU_512 = (1 << 12),
diff --git a/target/linux/generic-2.6/files-2.6.26/drivers/net/phy/mvswitch.c b/target/linux/generic-2.6/files-2.6.26/drivers/net/phy/mvswitch.c
index f28df43989..be9e6afd2d 100644
--- a/target/linux/generic-2.6/files-2.6.26/drivers/net/phy/mvswitch.c
+++ b/target/linux/generic-2.6/files-2.6.26/drivers/net/phy/mvswitch.c
@@ -246,7 +246,7 @@ mvswitch_config_init(struct phy_device *pdev)
w16(pdev, MV_SWITCHREG(ATU_CTRL),
MV_ATUCTL_RESET |
MV_ATUCTL_ATU_1K |
- MV_ATUCTL_AGETIME(4080) /* maximum */
+ MV_ATUCTL_AGETIME(MV_ATUCTL_AGETIME_MIN) /* minimum without disabling ageing */
);
i = 100; /* timeout */
diff --git a/target/linux/generic-2.6/files-2.6.26/drivers/net/phy/mvswitch.h b/target/linux/generic-2.6/files-2.6.26/drivers/net/phy/mvswitch.h
index 81516b708b..a172e37265 100644
--- a/target/linux/generic-2.6/files-2.6.26/drivers/net/phy/mvswitch.h
+++ b/target/linux/generic-2.6/files-2.6.26/drivers/net/phy/mvswitch.h
@@ -114,6 +114,8 @@ enum {
};
enum {
+#define MV_ATUCTL_AGETIME_MIN 16
+#define MV_ATUCTL_AGETIME_MAX 4080
#define MV_ATUCTL_AGETIME(_n) ((((_n) / 16) & 0xff) << 4)
MV_ATUCTL_ATU_256 = (0 << 12),
MV_ATUCTL_ATU_512 = (1 << 12),
diff --git a/target/linux/generic-2.6/files/drivers/net/phy/mvswitch.c b/target/linux/generic-2.6/files/drivers/net/phy/mvswitch.c
index f28df43989..be9e6afd2d 100644
--- a/target/linux/generic-2.6/files/drivers/net/phy/mvswitch.c
+++ b/target/linux/generic-2.6/files/drivers/net/phy/mvswitch.c
@@ -246,7 +246,7 @@ mvswitch_config_init(struct phy_device *pdev)
w16(pdev, MV_SWITCHREG(ATU_CTRL),
MV_ATUCTL_RESET |
MV_ATUCTL_ATU_1K |
- MV_ATUCTL_AGETIME(4080) /* maximum */
+ MV_ATUCTL_AGETIME(MV_ATUCTL_AGETIME_MIN) /* minimum without disabling ageing */
);
i = 100; /* timeout */
diff --git a/target/linux/generic-2.6/files/drivers/net/phy/mvswitch.h b/target/linux/generic-2.6/files/drivers/net/phy/mvswitch.h
index 81516b708b..a172e37265 100644
--- a/target/linux/generic-2.6/files/drivers/net/phy/mvswitch.h
+++ b/target/linux/generic-2.6/files/drivers/net/phy/mvswitch.h
@@ -114,6 +114,8 @@ enum {
};
enum {
+#define MV_ATUCTL_AGETIME_MIN 16
+#define MV_ATUCTL_AGETIME_MAX 4080
#define MV_ATUCTL_AGETIME(_n) ((((_n) / 16) & 0xff) << 4)
MV_ATUCTL_ATU_256 = (0 << 12),
MV_ATUCTL_ATU_512 = (1 << 12),