Merge git://git.denx.de/u-boot-fsl-qoriq
[oweals/u-boot.git] / drivers / gpio / atmel_pio4.c
index 81c30475514a4b25d007ccc94ebc14d40d66d6ed..30bc4296e3aa4235ac57bc659e2f14f0552ed40e 100644 (file)
@@ -10,7 +10,6 @@
 #include <clk.h>
 #include <dm.h>
 #include <fdtdec.h>
-#include <dm/root.h>
 #include <asm/arch/hardware.h>
 #include <asm/gpio.h>
 #include <mach/gpio.h>
@@ -51,11 +50,11 @@ static int atmel_pio4_config_io_func(u32 port, u32 pin,
        u32 reg, mask;
 
        if (pin >= ATMEL_PIO_NPINS_PER_BANK)
-               return -ENODEV;
+               return -EINVAL;
 
        port_base = atmel_pio4_port_base(port);
        if (!port_base)
-               return -ENODEV;
+               return -EINVAL;
 
        mask = 1 << pin;
        reg = func;
@@ -129,11 +128,11 @@ int atmel_pio4_set_pio_output(u32 port, u32 pin, u32 value)
        u32 reg, mask;
 
        if (pin >= ATMEL_PIO_NPINS_PER_BANK)
-               return -ENODEV;
+               return -EINVAL;
 
        port_base = atmel_pio4_port_base(port);
        if (!port_base)
-               return -ENODEV;
+               return -EINVAL;
 
        mask = 0x01 << pin;
        reg = ATMEL_PIO_CFGR_FUNC_GPIO | ATMEL_PIO_DIR_MASK;
@@ -155,11 +154,11 @@ int atmel_pio4_get_pio_input(u32 port, u32 pin)
        u32 reg, mask;
 
        if (pin >= ATMEL_PIO_NPINS_PER_BANK)
-               return -ENODEV;
+               return -EINVAL;
 
        port_base = atmel_pio4_port_base(port);
        if (!port_base)
-               return -ENODEV;
+               return -EINVAL;
 
        mask = 0x01 << pin;
        reg = ATMEL_PIO_CFGR_FUNC_GPIO;
@@ -276,7 +275,7 @@ static const struct dm_gpio_ops atmel_pio4_ops = {
 
 static int atmel_pio4_bind(struct udevice *dev)
 {
-       return dm_scan_fdt_node(dev, gd->fdt_blob, dev_of_offset(dev), false);
+       return dm_scan_fdt_dev(dev);
 }
 
 static int atmel_pio4_probe(struct udevice *dev)
@@ -299,7 +298,7 @@ static int atmel_pio4_probe(struct udevice *dev)
 
        clk_free(&clk);
 
-       addr_base = dev_get_addr(dev);
+       addr_base = devfdt_get_addr(dev);
        if (addr_base == FDT_ADDR_T_NONE)
                return -EINVAL;