diff options
author | Marek Vasut <marek.vasut+renesas@gmail.com> | 2018-02-17 00:57:49 +0100 |
---|---|---|
committer | Marek Vasut <marex@denx.de> | 2018-02-18 11:20:18 +0100 |
commit | 5abcbd7847cf7ea87744bfedaaf0b4a6b99e7b02 (patch) | |
tree | 73d298a001e9937e3affae8ebc93ded4c761dfa8 /drivers/net | |
parent | 5262767deda2a46014654ad2f7e20a42397861b1 (diff) |
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>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/sh_eth.c | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/drivers/net/sh_eth.c b/drivers/net/sh_eth.c index 1864c894b7..6f48e93ab5 100644 --- a/drivers/net/sh_eth.c +++ b/drivers/net/sh_eth.c @@ -675,7 +675,7 @@ struct sh_ether_priv { 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 @@ static int sh_ether_probe(struct udevice *udev) 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 @@ static int sh_ether_probe(struct udevice *udev) mdiodev = mdio_alloc(); if (!mdiodev) { ret = -ENOMEM; - goto err_mdio_alloc; + return ret; } mdiodev->read = bb_miiphy_read; @@ -850,8 +848,6 @@ static int sh_ether_probe(struct udevice *udev) err_mdio_register: mdio_free(mdiodev); -err_mdio_alloc: - unmap_physmem(priv->iobase, MAP_NOCACHE); return ret; } @@ -868,8 +864,6 @@ static int sh_ether_remove(struct udevice *udev) if (dm_gpio_is_valid(&priv->reset_gpio)) dm_gpio_free(udev, &priv->reset_gpio); - unmap_physmem(priv->iobase, MAP_NOCACHE); - return 0; } |