diff options
author | Christophe JAILLET <christophe.jaillet@wanadoo.fr> | 2019-08-22 22:45:38 +0200 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2019-08-23 12:02:34 +0200 |
commit | b1d64c7139c1ec673bac8be88b27caf02cf73118 (patch) | |
tree | dcfd34b9a6e5b653ccefc79ab0bb2d746964478e /drivers/gpio/gpio-ftgpio010.c | |
parent | c7663fa2a6631e5dddc1b7b2ba2e905ddffaff90 (diff) | |
download | talos-op-linux-b1d64c7139c1ec673bac8be88b27caf02cf73118.tar.gz talos-op-linux-b1d64c7139c1ec673bac8be88b27caf02cf73118.zip |
gpio: ftgpio: Fix an error handling path in 'ftgpio_gpio_probe()'
If 'devm_kcalloc()' fails, we should go through the error handling path,
should some clean-up be needed.
Fixes: 42d9fc7176eb ("gpio: ftgpio: Pass irqchip when adding gpiochip")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Link: https://lore.kernel.org/r/20190822204538.4791-1-christophe.jaillet@wanadoo.fr
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/gpio/gpio-ftgpio010.c')
-rw-r--r-- | drivers/gpio/gpio-ftgpio010.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpio/gpio-ftgpio010.c b/drivers/gpio/gpio-ftgpio010.c index 3118d282514a..fbddb1662428 100644 --- a/drivers/gpio/gpio-ftgpio010.c +++ b/drivers/gpio/gpio-ftgpio010.c @@ -290,8 +290,10 @@ static int ftgpio_gpio_probe(struct platform_device *pdev) girq->num_parents = 1; girq->parents = devm_kcalloc(dev, 1, sizeof(*girq->parents), GFP_KERNEL); - if (!girq->parents) - return -ENOMEM; + if (!girq->parents) { + ret = -ENOMEM; + goto dis_clk; + } girq->default_type = IRQ_TYPE_NONE; girq->handler = handle_bad_irq; girq->parents[0] = irq; |