gpio: tegra: add missing error handling to probe
The call to gpiochip_add() is not currently error-checked. Add the missing checking. Signed-off-by: Stephen Warren <swarren@nvidia.com> Reviewed-by: Thierry Reding <treding@nvidia.com> Reviewed-by: Alexandre Courbot <acourbot@nvidia.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
parent
7bb3ed21f9
commit
f57f98a6c0
|
@ -425,6 +425,7 @@ static int tegra_gpio_probe(struct platform_device *pdev)
|
||||||
struct tegra_gpio_soc_config *config;
|
struct tegra_gpio_soc_config *config;
|
||||||
struct resource *res;
|
struct resource *res;
|
||||||
struct tegra_gpio_bank *bank;
|
struct tegra_gpio_bank *bank;
|
||||||
|
int ret;
|
||||||
int gpio;
|
int gpio;
|
||||||
int i;
|
int i;
|
||||||
int j;
|
int j;
|
||||||
|
@ -494,7 +495,11 @@ static int tegra_gpio_probe(struct platform_device *pdev)
|
||||||
|
|
||||||
tegra_gpio_chip.of_node = pdev->dev.of_node;
|
tegra_gpio_chip.of_node = pdev->dev.of_node;
|
||||||
|
|
||||||
gpiochip_add(&tegra_gpio_chip);
|
ret = gpiochip_add(&tegra_gpio_chip);
|
||||||
|
if (ret < 0) {
|
||||||
|
irq_domain_remove(irq_domain);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
for (gpio = 0; gpio < tegra_gpio_chip.ngpio; gpio++) {
|
for (gpio = 0; gpio < tegra_gpio_chip.ngpio; gpio++) {
|
||||||
int irq = irq_create_mapping(irq_domain, gpio);
|
int irq = irq_create_mapping(irq_domain, gpio);
|
||||||
|
|
Loading…
Reference in New Issue