Remove duplicate code in cpu/arm926ejs/davinci/lxt972.c.

Remove duplicate code in cpu/arm926ejs/davinci/lxt972.c.

Remove duplicate code in a if/else block in
cpu/arm926ejs/davinci/lxt972.c.
Fixed style issues.

Signed-off-by: Hugo Villeneuve <hugo.villeneuve@lyrtech.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
This commit is contained in:
Hugo Villeneuve 2008-06-18 12:10:33 -04:00 committed by Ben Warren
parent fec61431a0
commit 63676841ca

View file

@ -37,7 +37,7 @@
int lxt972_is_phy_connected(int phy_addr) int lxt972_is_phy_connected(int phy_addr)
{ {
u_int16_t id1, id2; u_int16_t id1, id2;
if (!dm644x_eth_phy_read(phy_addr, PHY_PHYIDR1, &id1)) if (!dm644x_eth_phy_read(phy_addr, PHY_PHYIDR1, &id1))
return(0); return(0);
@ -52,8 +52,8 @@ int lxt972_is_phy_connected(int phy_addr)
int lxt972_get_link_speed(int phy_addr) int lxt972_get_link_speed(int phy_addr)
{ {
u_int16_t stat1, tmp; u_int16_t stat1, tmp;
volatile emac_regs* emac = (emac_regs *)EMAC_BASE_ADDR; volatile emac_regs *emac = (emac_regs *)EMAC_BASE_ADDR;
if (!dm644x_eth_phy_read(phy_addr, PHY_LXT971_STAT2, &stat1)) if (!dm644x_eth_phy_read(phy_addr, PHY_LXT971_STAT2, &stat1))
return(0); return(0);
@ -71,37 +71,23 @@ int lxt972_get_link_speed(int phy_addr)
if (!dm644x_eth_phy_read(phy_addr, PHY_LXT971_DIG_CFG, &tmp)) if (!dm644x_eth_phy_read(phy_addr, PHY_LXT971_DIG_CFG, &tmp))
return(0); return(0);
/* Speed doesn't matter, there is no setting for it in EMAC... */ /* Speed doesn't matter, there is no setting for it in EMAC... */
if (stat1 & PHY_LXT971_STAT2_100BTX) { if (stat1 & PHY_LXT971_STAT2_DUPLEX_MODE) {
if (stat1 & PHY_LXT971_STAT2_DUPLEX_MODE) { /* set DM644x EMAC for Full Duplex */
/* set DM644x EMAC for Full Duplex */ emac->MACCONTROL = EMAC_MACCONTROL_MIIEN_ENABLE |
emac->MACCONTROL = EMAC_MACCONTROL_MIIEN_ENABLE | EMAC_MACCONTROL_FULLDUPLEX_ENABLE; EMAC_MACCONTROL_FULLDUPLEX_ENABLE;
} else {
/*set DM644x EMAC for Half Duplex */
emac->MACCONTROL = EMAC_MACCONTROL_MIIEN_ENABLE;
}
return(1);
} else { } else {
if (stat1 & PHY_LXT971_STAT2_DUPLEX_MODE) { /*set DM644x EMAC for Half Duplex */
/* set DM644x EMAC for Full Duplex */ emac->MACCONTROL = EMAC_MACCONTROL_MIIEN_ENABLE;
emac->MACCONTROL = EMAC_MACCONTROL_MIIEN_ENABLE | EMAC_MACCONTROL_FULLDUPLEX_ENABLE;
} else {
/*set DM644x EMAC for Half Duplex */
emac->MACCONTROL = EMAC_MACCONTROL_MIIEN_ENABLE;
}
return(1);
} }
return(0); return(1);
} }
int lxt972_init_phy(int phy_addr) int lxt972_init_phy(int phy_addr)
{ {
int ret = 1; int ret = 1;
if (!lxt972_get_link_speed(phy_addr)) { if (!lxt972_get_link_speed(phy_addr)) {
/* Try another time */ /* Try another time */
@ -117,8 +103,7 @@ int lxt972_init_phy(int phy_addr)
int lxt972_auto_negotiate(int phy_addr) int lxt972_auto_negotiate(int phy_addr)
{ {
u_int16_t tmp; u_int16_t tmp;
if (!dm644x_eth_phy_read(phy_addr, PHY_BMCR, &tmp)) if (!dm644x_eth_phy_read(phy_addr, PHY_BMCR, &tmp))
return(0); return(0);