drm/omap: tpd12s015: fix error handling

tpd12s015 driver is missing error value handling for gpio
initialization, causing 0 to be returned as an error if gpiod_get_*
fails. This may cause deferred probing to fail.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
This commit is contained in:
Tomi Valkeinen 2016-11-22 10:11:07 +02:00
parent e43f2c3395
commit 5c2a392d57
1 changed files with 9 additions and 4 deletions

View File

@ -234,25 +234,30 @@ static int tpd_probe(struct platform_device *pdev)
if (r)
return r;
gpio = devm_gpiod_get_index_optional(&pdev->dev, NULL, 0,
GPIOD_OUT_LOW);
if (IS_ERR(gpio))
if (IS_ERR(gpio)) {
r = PTR_ERR(gpio);
goto err_gpio;
}
ddata->ct_cp_hpd_gpio = gpio;
gpio = devm_gpiod_get_index_optional(&pdev->dev, NULL, 1,
GPIOD_OUT_LOW);
if (IS_ERR(gpio))
if (IS_ERR(gpio)) {
r = PTR_ERR(gpio);
goto err_gpio;
}
ddata->ls_oe_gpio = gpio;
gpio = devm_gpiod_get_index(&pdev->dev, NULL, 2,
GPIOD_IN);
if (IS_ERR(gpio))
if (IS_ERR(gpio)) {
r = PTR_ERR(gpio);
goto err_gpio;
}
ddata->hpd_gpio = gpio;