summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorVarka Bhadram <varkab@cdac.in>2014-07-14 10:39:05 +0200
committerDavid S. Miller <davem@davemloft.net>2014-07-15 04:14:15 +0200
commit711fec5d22e15f24b11b6c7f79cc39cb96f52b13 (patch)
tree7e0856374003ca5e9aac13a80aa4e1fef5868b2d /drivers
parentethernet: amd: move amd111e_remove_one after probe (diff)
downloadlinux-711fec5d22e15f24b11b6c7f79cc39cb96f52b13.tar.xz
linux-711fec5d22e15f24b11b6c7f79cc39cb96f52b13.zip
ethernet: amd: use devm_ioremap()
This patch replace ioremap() with the devm_ioremap() so that the resource will be freed automatically with the probe failed. Signed-off-by: Varka Bhadram <varkab@cdac.in> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/ethernet/amd/amd8111e.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/drivers/net/ethernet/amd/amd8111e.c b/drivers/net/ethernet/amd/amd8111e.c
index ddd09e830527..433107c3cd2b 100644
--- a/drivers/net/ethernet/amd/amd8111e.c
+++ b/drivers/net/ethernet/amd/amd8111e.c
@@ -1866,7 +1866,7 @@ static int amd8111e_probe_one(struct pci_dev *pdev,
spin_lock_init(&lp->lock);
- lp->mmio = ioremap(reg_addr, reg_len);
+ lp->mmio = devm_ioremap(&pdev->dev, reg_addr, reg_len);
if (!lp->mmio) {
printk(KERN_ERR "amd8111e: Cannot map device registers, "
"exiting\n");
@@ -1913,7 +1913,7 @@ static int amd8111e_probe_one(struct pci_dev *pdev,
if (err) {
printk(KERN_ERR "amd8111e: Cannot register net device, "
"exiting.\n");
- goto err_iounmap;
+ goto err_free_dev;
}
pci_set_drvdata(pdev, dev);
@@ -1943,8 +1943,6 @@ static int amd8111e_probe_one(struct pci_dev *pdev,
printk(KERN_INFO "%s: Couldn't detect MII PHY, assuming address 0x01\n",
dev->name);
return 0;
-err_iounmap:
- iounmap(lp->mmio);
err_free_dev:
free_netdev(dev);
@@ -1964,7 +1962,6 @@ static void amd8111e_remove_one(struct pci_dev *pdev)
if (dev) {
unregister_netdev(dev);
- iounmap(((struct amd8111e_priv *)netdev_priv(dev))->mmio);
free_netdev(dev);
pci_release_regions(pdev);
pci_disable_device(pdev);