Commit 2f1e5f60 authored by Jani Nikula's avatar Jani Nikula Committed by Tomi Valkeinen

OMAP: DSS2: Taal: Fix request_irq() error handling

Separate gpio_request() and request_irq() error handling.
Signed-off-by: default avatarJani Nikula <ext-jani.1.nikula@nokia.com>
Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@nokia.com>
parent 75392bfe
...@@ -603,7 +603,7 @@ static int taal_probe(struct omap_dss_device *dssdev) ...@@ -603,7 +603,7 @@ static int taal_probe(struct omap_dss_device *dssdev)
if (r) { if (r) {
dev_err(&dssdev->dev, "IRQ request failed\n"); dev_err(&dssdev->dev, "IRQ request failed\n");
gpio_free(gpio); gpio_free(gpio);
goto err3; goto err4;
} }
init_completion(&td->te_completion); init_completion(&td->te_completion);
...@@ -614,16 +614,16 @@ static int taal_probe(struct omap_dss_device *dssdev) ...@@ -614,16 +614,16 @@ static int taal_probe(struct omap_dss_device *dssdev)
r = sysfs_create_group(&dssdev->dev.kobj, &taal_attr_group); r = sysfs_create_group(&dssdev->dev.kobj, &taal_attr_group);
if (r) { if (r) {
dev_err(&dssdev->dev, "failed to create sysfs files\n"); dev_err(&dssdev->dev, "failed to create sysfs files\n");
goto err4; goto err5;
} }
return 0; return 0;
err5:
if (td->use_ext_te)
free_irq(gpio_to_irq(dssdev->phy.dsi.ext_te_gpio), dssdev);
err4: err4:
if (td->use_ext_te) { if (td->use_ext_te)
int gpio = dssdev->phy.dsi.ext_te_gpio; gpio_free(dssdev->phy.dsi.ext_te_gpio);
free_irq(gpio_to_irq(gpio), dssdev);
gpio_free(gpio);
}
err3: err3:
backlight_device_unregister(bldev); backlight_device_unregister(bldev);
err2: err2:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment