Skip to content

Commit

Permalink
ibm_newemac: Add ET1011c PHY support
Browse files Browse the repository at this point in the history
This adds support for the Agere ET1011c PHY as found on the AMCC Taishan
board.

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
  • Loading branch information
Stefan Roese authored and Jeff Garzik committed Dec 7, 2007
1 parent f1f304f commit 8df4538
Showing 1 changed file with 37 additions and 0 deletions.
37 changes: 37 additions & 0 deletions drivers/net/ibm_newemac/phy.c
Original file line number Diff line number Diff line change
Expand Up @@ -327,6 +327,42 @@ static int m88e1111_init(struct mii_phy *phy)
return 0;
}

static int et1011c_init(struct mii_phy *phy)
{
u16 reg_short;

reg_short = (u16)(phy_read(phy, 0x16));
reg_short &= ~(0x7);
reg_short |= 0x6; /* RGMII Trace Delay*/
phy_write(phy, 0x16, reg_short);

reg_short = (u16)(phy_read(phy, 0x17));
reg_short &= ~(0x40);
phy_write(phy, 0x17, reg_short);

phy_write(phy, 0x1c, 0x74f0);
return 0;
}

static struct mii_phy_ops et1011c_phy_ops = {
.init = et1011c_init,
.setup_aneg = genmii_setup_aneg,
.setup_forced = genmii_setup_forced,
.poll_link = genmii_poll_link,
.read_link = genmii_read_link
};

static struct mii_phy_def et1011c_phy_def = {
.phy_id = 0x0282f000,
.phy_id_mask = 0x0fffff00,
.name = "ET1011C Gigabit Ethernet",
.ops = &et1011c_phy_ops
};





static struct mii_phy_ops m88e1111_phy_ops = {
.init = m88e1111_init,
.setup_aneg = genmii_setup_aneg,
Expand All @@ -344,6 +380,7 @@ static struct mii_phy_def m88e1111_phy_def = {
};

static struct mii_phy_def *mii_phy_table[] = {
&et1011c_phy_def,
&cis8201_phy_def,
&bcm5248_phy_def,
&m88e1111_phy_def,
Expand Down

0 comments on commit 8df4538

Please sign in to comment.