summaryrefslogtreecommitdiffstats
path: root/drivers/gpio
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2015-08-11 08:33:29 -0600
committerSimon Glass <sjg@chromium.org>2015-08-31 07:57:26 -0600
commit4e9838c102e8575fbff3944e1596a53ec579844a (patch)
tree3076104fa3b0570bc88e695ef274624536b22762 /drivers/gpio
parent71f1e3f19d26c7956de5c37035478fcaa9e979e7 (diff)
downloadu-boot-4e9838c102e8575fbff3944e1596a53ec579844a.tar.gz
u-boot-4e9838c102e8575fbff3944e1596a53ec579844a.tar.xz
u-boot-4e9838c102e8575fbff3944e1596a53ec579844a.zip
dm: Use dev_get_addr() where possible
This is a convenient way for a driver to get the hardware address of a device, when regmap or syscon are not being used. Change existing callers to use it as an example to others. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Diffstat (limited to 'drivers/gpio')
-rw-r--r--drivers/gpio/s5p_gpio.c3
-rw-r--r--drivers/gpio/sunxi_gpio.c3
-rw-r--r--drivers/gpio/tegra_gpio.c3
3 files changed, 3 insertions, 6 deletions
diff --git a/drivers/gpio/s5p_gpio.c b/drivers/gpio/s5p_gpio.c
index 49b1054660..17fcfbf4d3 100644
--- a/drivers/gpio/s5p_gpio.c
+++ b/drivers/gpio/s5p_gpio.c
@@ -327,8 +327,7 @@ static int gpio_exynos_bind(struct udevice *parent)
if (plat)
return 0;
- base = (struct s5p_gpio_bank *)fdtdec_get_addr(gd->fdt_blob,
- parent->of_offset, "reg");
+ base = (struct s5p_gpio_bank *)dev_get_addr(parent);
for (node = fdt_first_subnode(blob, parent->of_offset), bank = base;
node > 0;
node = fdt_next_subnode(blob, node), bank++) {
diff --git a/drivers/gpio/sunxi_gpio.c b/drivers/gpio/sunxi_gpio.c
index 57b78e55e2..9d8f11ef30 100644
--- a/drivers/gpio/sunxi_gpio.c
+++ b/drivers/gpio/sunxi_gpio.c
@@ -285,8 +285,7 @@ static int gpio_sunxi_bind(struct udevice *parent)
no_banks = SUNXI_GPIO_BANKS;
}
- ctlr = (struct sunxi_gpio_reg *)fdtdec_get_addr(gd->fdt_blob,
- parent->of_offset, "reg");
+ ctlr = (struct sunxi_gpio_reg *)dev_get_addr(parent);
for (bank = 0; bank < no_banks; bank++) {
struct sunxi_gpio_platdata *plat;
struct udevice *dev;
diff --git a/drivers/gpio/tegra_gpio.c b/drivers/gpio/tegra_gpio.c
index 8017e359f5..4921f0ff42 100644
--- a/drivers/gpio/tegra_gpio.c
+++ b/drivers/gpio/tegra_gpio.c
@@ -343,8 +343,7 @@ static int gpio_tegra_bind(struct udevice *parent)
if (!fdt_getprop(gd->fdt_blob, parent->of_offset, "interrupts", &len))
return -EINVAL;
bank_count = len / 3 / sizeof(u32);
- ctlr = (struct gpio_ctlr *)fdtdec_get_addr(gd->fdt_blob,
- parent->of_offset, "reg");
+ ctlr = (struct gpio_ctlr *)dev_get_addr(parent);
}
#endif
for (bank = 0; bank < bank_count; bank++) {