summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2017-11-08 13:53:34 +0900
committerDavid S. Miller <davem@davemloft.net>2017-11-08 13:53:34 +0900
commit403466feb1ac978a734518f7cee3cd9e63cb773c (patch)
treea751708e597d0ba9da8d17e636c51efe5beaa88b
parent03ac738d5cf2f97ffa1209f6fd5d4bc211a933de (diff)
parente51f37bd3ae8e09d131bce5485ec7c5b03726b02 (diff)
downloadlinux-403466feb1ac978a734518f7cee3cd9e63cb773c.tar.bz2
Merge branch 'fsl-fman-next'
Christophe JAILLET says: ==================== fsl/fman: Fix some error handling code in mac_probe Commit c6e26ea8c893 ("dpaa_eth: change device used") generated some conflicts in my patches waiting for submission. So I took a closer look at it. So here is a serie of 4 patches. The 1st one is just about a spurious call to 'dev_set_drvdata()', which is done in only 1 error handling path in the function. The 2nd one removes some devm_iounmap/release/kfree functions which look useless to me. The 3rd one fixes a missing of_node_put. The 4th one is just cosmetic and removes a useless message. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/ethernet/freescale/fman/mac.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/drivers/net/ethernet/freescale/fman/mac.c b/drivers/net/ethernet/freescale/fman/mac.c
index 1d6da1ea7bfb..88c0a0636b44 100644
--- a/drivers/net/ethernet/freescale/fman/mac.c
+++ b/drivers/net/ethernet/freescale/fman/mac.c
@@ -615,7 +615,6 @@ static int mac_probe(struct platform_device *_of_dev)
mac_dev = devm_kzalloc(dev, sizeof(*mac_dev), GFP_KERNEL);
if (!mac_dev) {
err = -ENOMEM;
- dev_err(dev, "devm_kzalloc() = %d\n", err);
goto _return;
}
priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
@@ -709,12 +708,8 @@ static int mac_probe(struct platform_device *_of_dev)
}
if (!of_device_is_available(mac_node)) {
- devm_iounmap(dev, priv->vaddr);
- __devm_release_region(dev, fman_get_mem_region(priv->fman),
- res.start, res.end + 1 - res.start);
- devm_kfree(dev, mac_dev);
- dev_set_drvdata(dev, NULL);
- return -ENODEV;
+ err = -ENODEV;
+ goto _return_of_get_parent;
}
/* Get the cell-index */
@@ -825,6 +820,7 @@ static int mac_probe(struct platform_device *_of_dev)
phy = of_phy_find_device(mac_dev->phy_node);
if (!phy) {
err = -EINVAL;
+ of_node_put(mac_dev->phy_node);
goto _return_of_get_parent;
}