]> git.sur5r.net Git - u-boot/blobdiff - drivers/gpio/s5p_gpio.c
spi: mxc_spi: Fix chipselect on DM_SPI driver uclass
[u-boot] / drivers / gpio / s5p_gpio.c
index 0f22b238ba99ec09679df0d8fe840f98632f55d4..e4b5383d0f7284150c3280abc17e4827f8e0dc1b 100644 (file)
@@ -1,8 +1,7 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
  * (C) Copyright 2009 Samsung Electronics
  * Minkyu Kang <mk7.kang@samsung.com>
- *
- * SPDX-License-Identifier:    GPL-2.0+
  */
 
 #include <common.h>
@@ -13,7 +12,6 @@
 #include <asm/io.h>
 #include <asm/gpio.h>
 #include <dm/device-internal.h>
-#include <dt-bindings/gpio/gpio.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
@@ -276,22 +274,12 @@ static int exynos_gpio_get_function(struct udevice *dev, unsigned offset)
                return GPIOF_FUNC;
 }
 
-static int exynos_gpio_xlate(struct udevice *dev, struct gpio_desc *desc,
-                            struct fdtdec_phandle_args *args)
-{
-       desc->offset = args->args[0];
-       desc->flags = args->args[1] & GPIO_ACTIVE_LOW ? GPIOD_ACTIVE_LOW : 0;
-
-       return 0;
-}
-
 static const struct dm_gpio_ops gpio_exynos_ops = {
        .direction_input        = exynos_gpio_direction_input,
        .direction_output       = exynos_gpio_direction_output,
        .get_value              = exynos_gpio_get_value,
        .set_value              = exynos_gpio_set_value,
        .get_function           = exynos_gpio_get_function,
-       .xlate                  = exynos_gpio_xlate,
 };
 
 static int gpio_exynos_probe(struct udevice *dev)
@@ -327,8 +315,8 @@ static int gpio_exynos_bind(struct udevice *parent)
        if (plat)
                return 0;
 
-       base = (struct s5p_gpio_bank *)dev_get_addr(parent);
-       for (node = fdt_first_subnode(blob, parent->of_offset), bank = base;
+       base = (struct s5p_gpio_bank *)devfdt_get_addr(parent);
+       for (node = fdt_first_subnode(blob, dev_of_offset(parent)), bank = base;
             node > 0;
             node = fdt_next_subnode(blob, node), bank++) {
                struct exynos_gpio_platdata *plat;
@@ -348,9 +336,9 @@ static int gpio_exynos_bind(struct udevice *parent)
                if (ret)
                        return ret;
 
-               dev->of_offset = node;
+               dev_set_of_offset(dev, node);
 
-               reg = dev_get_addr(dev);
+               reg = devfdt_get_addr(dev);
                if (reg != FDT_ADDR_T_NONE)
                        bank = (struct s5p_gpio_bank *)((ulong)base + reg);