diff options
Diffstat (limited to 'drivers/gpio/tegra_gpio.c')
| -rw-r--r-- | drivers/gpio/tegra_gpio.c | 10 | 
1 files changed, 6 insertions, 4 deletions
| diff --git a/drivers/gpio/tegra_gpio.c b/drivers/gpio/tegra_gpio.c index 687cd74fee6..49655831585 100644 --- a/drivers/gpio/tegra_gpio.c +++ b/drivers/gpio/tegra_gpio.c @@ -337,11 +337,13 @@ static int gpio_tegra_bind(struct udevice *parent)  	 * This driver does not make use of interrupts, other than to figure  	 * out the number of GPIO banks  	 */ -	if (!fdt_getprop(gd->fdt_blob, dev_of_offset(parent), "interrupts", -			 &len)) -		return -EINVAL; +	len = dev_read_size(parent, "interrupts"); +	if (len < 0) +		return len;  	bank_count = len / 3 / sizeof(u32); -	ctlr = (struct gpio_ctlr *)devfdt_get_addr(parent); +	ctlr = (struct gpio_ctlr *)dev_read_addr(parent); +	if ((ulong)ctlr == FDT_ADDR_T_NONE) +		return -EINVAL;  	}  #endif  	for (bank = 0; bank < bank_count; bank++) { | 
