diff options
author | Alexander Shiyan <shc_work@mail.ru> | 2013-04-26 20:41:07 +0400 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2013-04-30 09:35:55 +0200 |
commit | e1f458ac5376db84ac16e2fe397b91ae2397dedb (patch) | |
tree | efc97e2a9e6850e49b88739fed9f217f4f89b4eb /arch/arm/mach-at91 | |
parent | 7077230b4609c760d2b30851048dcaccacb3e9a6 (diff) | |
download | barebox-e1f458ac5376db84ac16e2fe397b91ae2397dedb.tar.gz barebox-e1f458ac5376db84ac16e2fe397b91ae2397dedb.tar.xz |
ARM: at91 gpio: Fix possible null pointer dereference
Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/mach-at91')
-rw-r--r-- | arch/arm/mach-at91/gpio.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/arm/mach-at91/gpio.c b/arch/arm/mach-at91/gpio.c index c2618c7b56..0e39a526d2 100644 --- a/arch/arm/mach-at91/gpio.c +++ b/arch/arm/mach-at91/gpio.c @@ -185,10 +185,10 @@ static struct at91_pinctrl_mux_ops at91sam9x5_ops = { int at91_mux_pin(unsigned pin, enum at91_mux mux, int use_pullup) { struct at91_gpio_chip *at91_gpio = pin_to_controller(pin); - void __iomem *pio = at91_gpio->regbase; + void __iomem *pio; + struct device_d *dev; unsigned mask = pin_to_mask(pin); int bank = pin_to_bank(pin); - struct device_d *dev = at91_gpio->chip.dev; if (!at91_gpio) return -EINVAL; @@ -197,6 +197,7 @@ int at91_mux_pin(unsigned pin, enum at91_mux mux, int use_pullup) if (!pio) return -EINVAL; + dev = at91_gpio->chip.dev; at91_mux_disable_interrupt(pio, mask); pin %= MAX_NB_GPIO_PER_BANK; |