[U-Boot] [U-boot] [Patch v2 2/5] net: keystone_net: use mdio_reset function

Ivan Khoronzhuk ivan.khoronzhuk at ti.com
Mon Sep 29 22:25:33 CEST 2014


Don't use mdio_enable twice while eth open. Also rename it to
keystone2_mdio_reset as more appropriate name.

Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk at ti.com>
---
 drivers/net/keystone_net.c | 15 ++-------------
 1 file changed, 2 insertions(+), 13 deletions(-)

diff --git a/drivers/net/keystone_net.c b/drivers/net/keystone_net.c
index 8a45fbd..ed5c61e 100644
--- a/drivers/net/keystone_net.c
+++ b/drivers/net/keystone_net.c
@@ -38,7 +38,6 @@ struct rx_buff_desc net_rx_buffs = {
 	.rx_flow	= 22,
 };
 
-static void keystone2_eth_mdio_enable(void);
 static void keystone2_net_serdes_setup(void);
 
 static int gen_get_link_speed(int phy_addr);
@@ -71,7 +70,7 @@ int keystone2_eth_read_mac_addr(struct eth_device *dev)
 	return 0;
 }
 
-static void keystone2_eth_mdio_enable(void)
+static void keystone2_mdio_reset(void)
 {
 	u_int32_t	clkdiv;
 
@@ -397,7 +396,6 @@ int32_t cpmac_drv_send(u32 *buffer, int num_bytes, int slave_port_num)
 /* Eth device open */
 static int keystone2_eth_open(struct eth_device *dev, bd_t *bis)
 {
-	u_int32_t clkdiv;
 	int link;
 	struct eth_priv_t *eth_priv = (struct eth_priv_t *)dev->priv;
 
@@ -410,9 +408,6 @@ static int keystone2_eth_open(struct eth_device *dev, bd_t *bis)
 
 	keystone2_net_serdes_setup();
 
-	if (sys_has_mdio)
-		keystone2_eth_mdio_enable();
-
 	keystone_sgmii_config(eth_priv->slave_port - 1,
 			      eth_priv->sgmii_link_type);
 
@@ -440,13 +435,7 @@ static int keystone2_eth_open(struct eth_device *dev, bd_t *bis)
 	hw_config_streaming_switch();
 
 	if (sys_has_mdio) {
-		/* Init MDIO & get link state */
-		clkdiv = (EMAC_MDIO_BUS_FREQ / EMAC_MDIO_CLOCK_FREQ) - 1;
-		writel((clkdiv & 0xff) | MDIO_CONTROL_ENABLE |
-		       MDIO_CONTROL_FAULT, &adap_mdio->control)
-			;
-
-		/* We need to wait for MDIO to start */
+		keystone2_mdio_reset();
 		udelay(1000);
 
 		link = keystone_get_link_status(dev);
-- 
1.8.3.2



More information about the U-Boot mailing list