diff options
Diffstat (limited to 'drivers/gpio/gpio-davinci.c')
-rw-r--r-- | drivers/gpio/gpio-davinci.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/gpio/gpio-davinci.c b/drivers/gpio/gpio-davinci.c index cd007a67b302..dd262f00295d 100644 --- a/drivers/gpio/gpio-davinci.c +++ b/drivers/gpio/gpio-davinci.c | |||
@@ -258,6 +258,8 @@ static int davinci_gpio_probe(struct platform_device *pdev) | |||
258 | spin_lock_init(&chips[i].lock); | 258 | spin_lock_init(&chips[i].lock); |
259 | 259 | ||
260 | regs = gpio2regs(base); | 260 | regs = gpio2regs(base); |
261 | if (!regs) | ||
262 | return -ENXIO; | ||
261 | chips[i].regs = regs; | 263 | chips[i].regs = regs; |
262 | chips[i].set_data = ®s->set_data; | 264 | chips[i].set_data = ®s->set_data; |
263 | chips[i].clr_data = ®s->clr_data; | 265 | chips[i].clr_data = ®s->clr_data; |
@@ -433,8 +435,7 @@ static struct irq_chip *davinci_gpio_get_irq_chip(unsigned int irq) | |||
433 | { | 435 | { |
434 | static struct irq_chip_type gpio_unbanked; | 436 | static struct irq_chip_type gpio_unbanked; |
435 | 437 | ||
436 | gpio_unbanked = *container_of(irq_get_chip(irq), | 438 | gpio_unbanked = *irq_data_get_chip_type(irq_get_irq_data(irq)); |
437 | struct irq_chip_type, chip); | ||
438 | 439 | ||
439 | return &gpio_unbanked.chip; | 440 | return &gpio_unbanked.chip; |
440 | }; | 441 | }; |