| From 7e367c18c059c638bf6fb540f1decec18d64cb55 Mon Sep 17 00:00:00 2001 |
| From: Tony Lindgren <tony@atomide.com> |
| Date: Fri, 27 Dec 2013 09:33:27 -0800 |
| Subject: ARM: OMAP2+: Fix LCD panel backlight regression for LDP legacy booting |
| |
| From: Tony Lindgren <tony@atomide.com> |
| |
| commit 7e367c18c059c638bf6fb540f1decec18d64cb55 upstream. |
| |
| Looks like the LCD panel on LDP has been broken quite a while, and |
| recently got fixed by commit 0b2aa8bed3e1 (gpio: twl4030: Fix regression |
| for twl gpio output). However, there's still an issue left where the panel |
| backlight does not come on if the LCD drivers are built into the |
| kernel. |
| |
| Fix the issue by registering the DPI LCD panel only after the twl4030 |
| GPIO has probed. |
| |
| Reported-by: Russell King <rmk+kernel@arm.linux.org.uk> |
| Acked-by: Tomi Valkeinen <tomi.valkeinen@ti.com> |
| [tony@atomide.com: updated per Tomi's comments] |
| Signed-off-by: Tony Lindgren <tony@atomide.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| arch/arm/mach-omap2/board-ldp.c | 7 ++++++- |
| 1 file changed, 6 insertions(+), 1 deletion(-) |
| |
| --- a/arch/arm/mach-omap2/board-ldp.c |
| +++ b/arch/arm/mach-omap2/board-ldp.c |
| @@ -243,12 +243,18 @@ static void __init ldp_display_init(void |
| |
| static int ldp_twl_gpio_setup(struct device *dev, unsigned gpio, unsigned ngpio) |
| { |
| + int res; |
| + |
| /* LCD enable GPIO */ |
| ldp_lcd_pdata.enable_gpio = gpio + 7; |
| |
| /* Backlight enable GPIO */ |
| ldp_lcd_pdata.backlight_gpio = gpio + 15; |
| |
| + res = platform_device_register(&ldp_lcd_device); |
| + if (res) |
| + pr_err("Unable to register LCD: %d\n", res); |
| + |
| return 0; |
| } |
| |
| @@ -347,7 +353,6 @@ static struct omap2_hsmmc_info mmc[] __i |
| |
| static struct platform_device *ldp_devices[] __initdata = { |
| &ldp_gpio_keys_device, |
| - &ldp_lcd_device, |
| }; |
| |
| #ifdef CONFIG_OMAP_MUX |