summaryrefslogtreecommitdiffstats
path: root/target
diff options
context:
space:
mode:
authorflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-07-23 18:35:34 +0000
committerflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-07-23 18:35:34 +0000
commit282fd66c5dc0f95a750094c2a0717093bf419244 (patch)
tree18b1dd84317e5ad70fd3cb027750573da3ce07eb /target
parentd1ca5112f809c744af5f76ddd901880287bc98d3 (diff)
Add back the port priority for r6040
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8134 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target')
-rw-r--r--target/linux/rdc-2.6/files/drivers/net/r6040.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/target/linux/rdc-2.6/files/drivers/net/r6040.c b/target/linux/rdc-2.6/files/drivers/net/r6040.c
index f495b4af6..6c9a232cd 100644
--- a/target/linux/rdc-2.6/files/drivers/net/r6040.c
+++ b/target/linux/rdc-2.6/files/drivers/net/r6040.c
@@ -806,6 +806,12 @@ for (i = 0; i < RX_DCNT; i++) {
phy_write(ioaddr, lp->phy_addr, 4, PHY_CAP);
phy_write(ioaddr, lp->phy_addr, 0, PHY_MODE);
+ /* Port priority */
+ phy_write(ioaddr,29,19,(phy_read(ioaddr,29,19)|0x0020)); /* port 0 */
+ phy_write(ioaddr,29,19,(phy_read(ioaddr,29,19)|0x0020)); /* port 1 */
+ phy_write(ioaddr,29,20,(phy_read(ioaddr,29,20)|0x2000)); /* port 2 */
+ phy_write(ioaddr,29,20,(phy_read(ioaddr,29,20)|0x0020)); /* port 3 */
+
if (PHY_MODE == 0x3100)
lp->phy_mode = phy_mode_chk(dev);
else lp->phy_mode = (PHY_MODE & 0x0100) ? 0x8000:0x0;