net: sh_eth: Fix DT base address fetching
Drop the whole map/unmap_physmem stuff and just use the address
already obtained from DT in ofdata_to_platdata(), instead of
repeating that, wrongly, in probe.
Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Cc: Joe Hershberger <joe.hershberger@ni.com>
diff --git a/drivers/net/sh_eth.c b/drivers/net/sh_eth.c
index 1864c89..6f48e93 100644
--- a/drivers/net/sh_eth.c
+++ b/drivers/net/sh_eth.c
@@ -675,7 +675,7 @@
struct sh_eth_dev shdev;
struct mii_dev *bus;
- void __iomem *iobase;
+ phys_addr_t iobase;
struct clk clk;
struct gpio_desc reset_gpio;
};
@@ -811,15 +811,13 @@
struct sh_ether_priv *priv = dev_get_priv(udev);
struct sh_eth_dev *eth = &priv->shdev;
struct mii_dev *mdiodev;
- void __iomem *iobase;
int ret;
- iobase = map_physmem(pdata->iobase, 0x1000, MAP_NOCACHE);
- priv->iobase = iobase;
+ priv->iobase = pdata->iobase;
ret = clk_get_by_index(udev, 0, &priv->clk);
if (ret < 0)
- goto err_mdio_alloc;
+ return ret;
gpio_request_by_name(udev, "reset-gpios", 0, &priv->reset_gpio,
GPIOD_IS_OUT);
@@ -827,7 +825,7 @@
mdiodev = mdio_alloc();
if (!mdiodev) {
ret = -ENOMEM;
- goto err_mdio_alloc;
+ return ret;
}
mdiodev->read = bb_miiphy_read;
@@ -850,8 +848,6 @@
err_mdio_register:
mdio_free(mdiodev);
-err_mdio_alloc:
- unmap_physmem(priv->iobase, MAP_NOCACHE);
return ret;
}
@@ -868,8 +864,6 @@
if (dm_gpio_is_valid(&priv->reset_gpio))
dm_gpio_free(udev, &priv->reset_gpio);
- unmap_physmem(priv->iobase, MAP_NOCACHE);
-
return 0;
}