Browse Source

staging: et131x: stop read when hit max delay in et131x_phy_mii_read

stop read and return error when hit max delay time.

Signed-off-by: Zhao, Gang <gamerh2o@gmail.com>
Acked-by: Mark Einon <mark.einon@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Zhao, Gang 11 years ago
parent
commit
a863a15bf2
1 changed files with 2 additions and 0 deletions
  1. 2 0
      drivers/staging/et131x/et131x.c

+ 2 - 0
drivers/staging/et131x/et131x.c

@@ -1388,6 +1388,7 @@ static int et131x_phy_mii_read(struct et131x_adapter *adapter, u8 addr,
 			    mii_indicator);
 
 		status = -EIO;
+		goto out;
 	}
 
 	/* If we hit here we were able to read the register and we need to
@@ -1395,6 +1396,7 @@ static int et131x_phy_mii_read(struct et131x_adapter *adapter, u8 addr,
 	 */
 	*value = readl(&mac->mii_mgmt_stat) & ET_MAC_MIIMGMT_STAT_PHYCRTL_MASK;
 
+out:
 	/* Stop the read operation */
 	writel(0, &mac->mii_mgmt_cmd);