Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 61508
b: refs/heads/master
c: af2d940
h: refs/heads/master
v: v3
  • Loading branch information
Andy Fleming authored and Jeff Garzik committed Jul 18, 2007
1 parent a11ec09 commit 425ebe4
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 4 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: cc65185d400c4e8698ff1c1b59f90bd491e9bda5
refs/heads/master: af2d940df2b60b15c271033d381c2f3ead655562
23 changes: 20 additions & 3 deletions trunk/drivers/net/phy/vitesse.c
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,10 @@
/* Vitesse Extended Control Register 1 */
#define MII_VSC8244_EXT_CON1 0x17
#define MII_VSC8244_EXTCON1_INIT 0x0000
#define MII_VSC8244_EXTCON1_TX_SKEW_MASK 0x0c00
#define MII_VSC8244_EXTCON1_RX_SKEW_MASK 0x0300
#define MII_VSC8244_EXTCON1_TX_SKEW 0x0800
#define MII_VSC8244_EXTCON1_RX_SKEW 0x0200

/* Vitesse Interrupt Mask Register */
#define MII_VSC8244_IMASK 0x19
Expand All @@ -39,7 +43,7 @@

/* Vitesse Auxiliary Control/Status Register */
#define MII_VSC8244_AUX_CONSTAT 0x1c
#define MII_VSC8244_AUXCONSTAT_INIT 0x0004
#define MII_VSC8244_AUXCONSTAT_INIT 0x0000
#define MII_VSC8244_AUXCONSTAT_DUPLEX 0x0020
#define MII_VSC8244_AUXCONSTAT_SPEED 0x0018
#define MII_VSC8244_AUXCONSTAT_GBIT 0x0010
Expand All @@ -51,15 +55,28 @@ MODULE_LICENSE("GPL");

static int vsc824x_config_init(struct phy_device *phydev)
{
int extcon;
int err;

err = phy_write(phydev, MII_VSC8244_AUX_CONSTAT,
MII_VSC8244_AUXCONSTAT_INIT);
if (err < 0)
return err;

err = phy_write(phydev, MII_VSC8244_EXT_CON1,
MII_VSC8244_EXTCON1_INIT);
extcon = phy_read(phydev, MII_VSC8244_EXT_CON1);

if (extcon < 0)
return err;

extcon &= ~(MII_VSC8244_EXTCON1_TX_SKEW_MASK |
MII_VSC8244_EXTCON1_RX_SKEW_MASK);

if (phydev->interface == PHY_INTERFACE_MODE_RGMII_ID)
extcon |= (MII_VSC8244_EXTCON1_TX_SKEW |
MII_VSC8244_EXTCON1_RX_SKEW);

err = phy_write(phydev, MII_VSC8244_EXT_CON1, extcon);

return err;
}

Expand Down

0 comments on commit 425ebe4

Please sign in to comment.