From: Dinh Nguyen Date: Fri, 15 Apr 2016 01:42:29 +0000 (-0500) Subject: stmmac: socfpga: remove extra call to socfpga_dwmac_setup X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=f66bc94174e850a4de4adbe7a08fc37507051185;p=linux-beck.git stmmac: socfpga: remove extra call to socfpga_dwmac_setup In the socfpga_dwmac_probe function, we have a call to socfpga_dwmac_setup, which is already called from socfpga_dwmac_init later in the probe function. Remove this extra call to socfpga_dwmac_setup. Also we should not be calling socfpga_dwmac_setup() directly without wrapping it around the proper reset assert/deasserts. That is because the socfpga_dwmac_setup() is setting up PHY modes in the system manager, and it is requires the EMAC's to be in reset during the PHY setup. Reported-by: Matthew Gerlach Signed-off-by: Dinh Nguyen Signed-off-by: David S. Miller --- diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-socfpga.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-socfpga.c index f0d797ab74d8..41f4c58b22bd 100644 --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-socfpga.c +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-socfpga.c @@ -267,12 +267,6 @@ static int socfpga_dwmac_probe(struct platform_device *pdev) return ret; } - ret = socfpga_dwmac_setup(dwmac); - if (ret) { - dev_err(dev, "couldn't setup SoC glue (%d)\n", ret); - return ret; - } - plat_dat->bsp_priv = dwmac; plat_dat->init = socfpga_dwmac_init; plat_dat->exit = socfpga_dwmac_exit;