|
@@ -365,7 +365,16 @@ static int sti_dwmac_probe(struct platform_device *pdev)
|
|
|
if (ret)
|
|
|
return ret;
|
|
|
|
|
|
- return stmmac_dvr_probe(&pdev->dev, plat_dat, &stmmac_res);
|
|
|
+ ret = stmmac_dvr_probe(&pdev->dev, plat_dat, &stmmac_res);
|
|
|
+ if (ret)
|
|
|
+ goto err_dwmac_exit;
|
|
|
+
|
|
|
+ return 0;
|
|
|
+
|
|
|
+err_dwmac_exit:
|
|
|
+ sti_dwmac_exit(pdev, plat_dat->bsp_priv);
|
|
|
+
|
|
|
+ return ret;
|
|
|
}
|
|
|
|
|
|
static const struct sti_dwmac_of_data stih4xx_dwmac_data = {
|