summaryrefslogtreecommitdiff
path: root/target
diff options
context:
space:
mode:
authorjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-07-20 20:46:39 +0000
committerjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-07-20 20:46:39 +0000
commit936d19e10c6ee8baef9b2d8f74cfd6eba17a20e3 (patch)
tree126bd19590d730ca44de44549a00343d19ac146b /target
parent071b759c610d4e62c4992d845c465e1f3d8733b0 (diff)
[adm5120] fix switch driver, force all packets from all the ports are low priority
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8083 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target')
-rw-r--r--target/linux/adm5120-2.6/files/drivers/net/adm5120sw.c3
-rw-r--r--target/linux/adm5120-2.6/files/drivers/net/adm5120sw.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/target/linux/adm5120-2.6/files/drivers/net/adm5120sw.c b/target/linux/adm5120-2.6/files/drivers/net/adm5120sw.c
index 744a2da357..2714577c8e 100644
--- a/target/linux/adm5120-2.6/files/drivers/net/adm5120sw.c
+++ b/target/linux/adm5120-2.6/files/drivers/net/adm5120sw.c
@@ -537,6 +537,9 @@ static int __init adm5120_sw_init(void)
adm5120_set_reg(ADM5120_PHY_CNTL3, adm5120_get_reg(ADM5120_PHY_CNTL3) |
ADM5120_PHY_NTH);
+ /* Force all the packets from all ports are low priority */
+ adm5120_set_reg(ADM5120_PRI_CNTL, 0);
+
adm5120_set_reg(ADM5120_INT_MASK, ADM5120_INTMASKALL);
adm5120_set_reg(ADM5120_INT_ST, ADM5120_INTMASKALL);
diff --git a/target/linux/adm5120-2.6/files/drivers/net/adm5120sw.h b/target/linux/adm5120-2.6/files/drivers/net/adm5120sw.h
index 4d32f91eea..a3b4ec0179 100644
--- a/target/linux/adm5120-2.6/files/drivers/net/adm5120sw.h
+++ b/target/linux/adm5120-2.6/files/drivers/net/adm5120sw.h
@@ -50,6 +50,7 @@
#define ADM5120_AUTOMDIX 0x3e000000 /* Auto MDIX */
#define ADM5120_PHY_CNTL3 0x80
#define ADM5120_PHY_NTH 0x00000400
+#define ADM5120_PRI_CNTL 0x84
#define ADM5120_INT_ST 0xb0
#define ADM5120_INT_RXH 0x0000004
#define ADM5120_INT_RXL 0x0000008