Put back some code from the 2.4 driver, supposed to boot network perfs

SVN-Revision: 8354
master
Florian Fainelli 17 years ago
parent 2607706f31
commit 30af966213
  1. 13
      target/linux/rdc-2.6/files/drivers/net/r6040.c

@ -871,7 +871,8 @@ for (i = 0; i < RX_DCNT; i++) {
if (PHY_MODE == 0x3100) if (PHY_MODE == 0x3100)
lp->phy_mode = phy_mode_chk(dev); lp->phy_mode = phy_mode_chk(dev);
else lp->phy_mode = (PHY_MODE & 0x0100) ? 0x8000:0x0; else
lp->phy_mode = (PHY_MODE & 0x0100) ? 0x8000:0x0;
} }
/* MAC Bus Control Register */ /* MAC Bus Control Register */
outw(MBCR_DEFAULT, ioaddr+0x8); outw(MBCR_DEFAULT, ioaddr+0x8);
@ -880,6 +881,16 @@ for (i = 0; i < RX_DCNT; i++) {
lp->mcr0 |= lp->phy_mode; lp->mcr0 |= lp->phy_mode;
outw(lp->mcr0, ioaddr); outw(lp->mcr0, ioaddr);
/* set interrupt waiting time and packet numbers */
outw(0x0802, ioaddr + 0x0C);
outw(0x0802, ioaddr + 0x10);
/* upgrade performance (by RDC guys) */
phy_write(ioaddr,30,17,(phy_read(ioaddr,30,17)|0x4000)); //bit 14=1
phy_write(ioaddr,30,17,~((~phy_read(ioaddr,30,17))|0x2000)); //bit 13=0
phy_write(ioaddr,0,19,0x0000);
phy_write(ioaddr,0,30,0x01F0);
/* Interrupt Mask Register */ /* Interrupt Mask Register */
outw(R6040_INT_MASK, ioaddr + 0x40); outw(R6040_INT_MASK, ioaddr + 0x40);
} }

Loading…
Cancel
Save