Commit c1bcb976 authored by 蒋家盛's avatar 蒋家盛 Committed by Bartosz Golaszewski
Browse files

gpio: sifive: add missing check for platform_get_irq



Add the missing check for platform_get_irq() and return error code
if it fails.

The returned error code will be dealed with in
builtin_platform_driver(sifive_gpio_driver) and the driver will not
be registered.

Fixes: f52d6d8b ("gpio: sifive: To get gpio irq offset from device tree data")
Signed-off-by: default avatarJiasheng Jiang <jiasheng@iscas.ac.cn>
Signed-off-by: default avatarBartosz Golaszewski <bartosz.golaszewski@linaro.org>
parent 8c00914e
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -221,8 +221,12 @@ static int sifive_gpio_probe(struct platform_device *pdev)
		return -ENODEV;
	}

	for (i = 0; i < ngpio; i++)
		chip->irq_number[i] = platform_get_irq(pdev, i);
	for (i = 0; i < ngpio; i++) {
		ret = platform_get_irq(pdev, i);
		if (ret < 0)
			return ret;
		chip->irq_number[i] = ret;
	}

	ret = bgpio_init(&chip->gc, dev, 4,
			 chip->base + SIFIVE_GPIO_INPUT_VAL,