aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/tilcdc
diff options
context:
space:
mode:
authorUwe Kleine-König <[email protected]>2015-02-11 16:32:53 +0000
committerUwe Kleine-König <[email protected]>2015-07-06 08:10:21 +0000
commit26a5bd26499fba331ecaa1e8ce8cc2b8c6fac569 (patch)
treebf61d565d6b910e87fea709bd53a367cc7177d6a /drivers/gpu/drm/tilcdc
parentdrm/msm/dp: use flags argument of devm_gpiod_get to set direction (diff)
downloadkernel-26a5bd26499fba331ecaa1e8ce8cc2b8c6fac569.tar.gz
kernel-26a5bd26499fba331ecaa1e8ce8cc2b8c6fac569.zip
drm/tilcdc: panel: make better use of gpiod API
Since 39b2bbe3d715 (gpio: add flags argument to gpiod_get*() functions) which appeared in v3.17-rc1, the gpiod_get* functions take an additional parameter that allows to specify direction and initial value for output. Furthermore there is devm_gpiod_get_optional which is designed to get optional gpios. Simplify driver accordingly. Acked-by: Alexandre Courbot <[email protected]> Acked-by: Linus Walleij <[email protected]> Signed-off-by: Uwe Kleine-König <[email protected]>
Diffstat (limited to 'drivers/gpu/drm/tilcdc')
-rw-r--r--drivers/gpu/drm/tilcdc/tilcdc_panel.c20
1 files changed, 6 insertions, 14 deletions
diff --git a/drivers/gpu/drm/tilcdc/tilcdc_panel.c b/drivers/gpu/drm/tilcdc/tilcdc_panel.c
index 7a0315855e90..0af8bed7ce1e 100644
--- a/drivers/gpu/drm/tilcdc/tilcdc_panel.c
+++ b/drivers/gpu/drm/tilcdc/tilcdc_panel.c
@@ -375,24 +375,16 @@ static int panel_probe(struct platform_device *pdev)
dev_info(&pdev->dev, "found backlight\n");
}
- panel_mod->enable_gpio = devm_gpiod_get(&pdev->dev, "enable");
+ panel_mod->enable_gpio = devm_gpiod_get_optional(&pdev->dev, "enable",
+ GPIOD_OUT_LOW);
if (IS_ERR(panel_mod->enable_gpio)) {
ret = PTR_ERR(panel_mod->enable_gpio);
- if (ret != -ENOENT) {
- dev_err(&pdev->dev, "failed to request enable GPIO\n");
- goto fail_backlight;
- }
+ dev_err(&pdev->dev, "failed to request enable GPIO\n");
+ goto fail_backlight;
+ }
- /* Optional GPIO is not here, continue silently. */
- panel_mod->enable_gpio = NULL;
- } else {
- ret = gpiod_direction_output(panel_mod->enable_gpio, 0);
- if (ret < 0) {
- dev_err(&pdev->dev, "failed to setup GPIO\n");
- goto fail_backlight;
- }
+ if (panel_mod->enable_gpio)
dev_info(&pdev->dev, "found enable GPIO\n");
- }
mod = &panel_mod->base;
pdev->dev.platform_data = mod;