ibm_newemac: Add ET1011c PHY support
Subsystems (2)
PATCH 2/11 ibm_newemac: Add ET1011c PHY support
From: Stefan Roese <[email protected]>
This adds support for the Agere ET1011c PHY as found on the AMCC Taishan board.
Signed-off-by Stefan Roese <[email protected]>
Signed-off-by Benjamin Herrenschmidt <[email protected]>
---
drivers/net/ibm_newemac/phy.c | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+)
drivers/net/ibm_newemac/phy.c +37 -0
@@ -327,6 +327,42 @@ static int m88e1111_init(struct mii_phyreturn 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,
@@ -344,6 +380,7 @@ static struct mii_phy_def m88e1111_phy_d };static struct mii_phy_def *mii_phy_table[] = { + &et1011c_phy_def, &cis8201_phy_def, &bcm5248_phy_def, &m88e1111_phy_def,