From 4933912279e024e32a44196ac650d7926ff929f8 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen Date: Mon, 20 Feb 2012 12:18:52 +0200 Subject: [PATCH] --- yaml --- r: 303069 b: refs/heads/master c: 3acc797c1db2eb873b13a07f21fe9572af4b78ee h: refs/heads/master i: 303067: 71952f5430c744b742322b0e38b5e360596e174d v: v3 --- [refs] | 2 +- trunk/arch/arm/mach-omap2/board-4430sdp.c | 16 ---------------- trunk/drivers/video/omap2/displays/panel-taal.c | 15 +++++++++++++++ 3 files changed, 16 insertions(+), 17 deletions(-) diff --git a/[refs] b/[refs] index 194069c2295d..a182f20885ff 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: dac8eb5f1d29eb4cf44305239da7e7a477e48a90 +refs/heads/master: 3acc797c1db2eb873b13a07f21fe9572af4b78ee diff --git a/trunk/arch/arm/mach-omap2/board-4430sdp.c b/trunk/arch/arm/mach-omap2/board-4430sdp.c index 130ab00c09a2..6cbb16fb3817 100644 --- a/trunk/arch/arm/mach-omap2/board-4430sdp.c +++ b/trunk/arch/arm/mach-omap2/board-4430sdp.c @@ -758,21 +758,6 @@ static struct omap_dss_device sdp4430_lcd2_device = { .channel = OMAP_DSS_CHANNEL_LCD2, }; -static void sdp4430_lcd_init(void) -{ - int r; - - r = gpio_request_one(dsi1_panel.reset_gpio, GPIOF_DIR_OUT, - "lcd1_reset_gpio"); - if (r) - pr_err("%s: Could not get lcd1_reset_gpio\n", __func__); - - r = gpio_request_one(dsi2_panel.reset_gpio, GPIOF_DIR_OUT, - "lcd2_reset_gpio"); - if (r) - pr_err("%s: Could not get lcd2_reset_gpio\n", __func__); -} - static struct omap_dss_hdmi_data sdp4430_hdmi_data = { .hpd_gpio = HDMI_GPIO_HPD, }; @@ -858,7 +843,6 @@ static void __init omap_4430sdp_display_init(void) if (r) pr_err("%s: Could not get display_sel GPIO\n", __func__); - sdp4430_lcd_init(); sdp4430_picodlp_init(); omap_display_init(&sdp4430_dss_data); /* diff --git a/trunk/drivers/video/omap2/displays/panel-taal.c b/trunk/drivers/video/omap2/displays/panel-taal.c index 0f21fa5a16ae..0888162e9ce9 100644 --- a/trunk/drivers/video/omap2/displays/panel-taal.c +++ b/trunk/drivers/video/omap2/displays/panel-taal.c @@ -993,6 +993,15 @@ static int taal_probe(struct omap_dss_device *dssdev) dev_set_drvdata(&dssdev->dev, td); + if (gpio_is_valid(panel_data->reset_gpio)) { + r = gpio_request_one(panel_data->reset_gpio, GPIOF_OUT_INIT_LOW, + "taal rst"); + if (r) { + dev_err(&dssdev->dev, "failed to request reset gpio\n"); + goto err_rst_gpio; + } + } + taal_hw_reset(dssdev); if (panel_data->use_dsi_backlight) { @@ -1073,6 +1082,9 @@ static int taal_probe(struct omap_dss_device *dssdev) if (bldev != NULL) backlight_device_unregister(bldev); err_bl: + if (gpio_is_valid(panel_data->reset_gpio)) + gpio_free(panel_data->reset_gpio); +err_rst_gpio: destroy_workqueue(td->workqueue); err_wq: free_regulators(panel_config->regulators, panel_config->num_regulators); @@ -1116,6 +1128,9 @@ static void __exit taal_remove(struct omap_dss_device *dssdev) free_regulators(td->panel_config->regulators, td->panel_config->num_regulators); + if (gpio_is_valid(panel_data->reset_gpio)) + gpio_free(panel_data->reset_gpio); + kfree(td); }