aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/mach-omap1/board-innovator.c3
-rw-r--r--drivers/video/fbdev/omap/lcd_inn1510.c7
2 files changed, 8 insertions, 2 deletions
diff --git a/arch/arm/mach-omap1/board-innovator.c b/arch/arm/mach-omap1/board-innovator.c
index cbe093f969d5..2425f1bacb33 100644
--- a/arch/arm/mach-omap1/board-innovator.c
+++ b/arch/arm/mach-omap1/board-innovator.c
@@ -194,6 +194,9 @@ static struct platform_device innovator1510_smc91x_device = {
static struct platform_device innovator1510_lcd_device = {
.name = "lcd_inn1510",
.id = -1,
+ .dev = {
+ .platform_data = (void __force *)OMAP1510_FPGA_LCD_PANEL_CONTROL,
+ }
};
static struct platform_device innovator1510_spi_device = {
diff --git a/drivers/video/fbdev/omap/lcd_inn1510.c b/drivers/video/fbdev/omap/lcd_inn1510.c
index 776e7f8d656e..37ed0c14aa5a 100644
--- a/drivers/video/fbdev/omap/lcd_inn1510.c
+++ b/drivers/video/fbdev/omap/lcd_inn1510.c
@@ -14,15 +14,17 @@
#include "omapfb.h"
+static void __iomem *omap1510_fpga_lcd_panel_control;
+
static int innovator1510_panel_enable(struct lcd_panel *panel)
{
- __raw_writeb(0x7, OMAP1510_FPGA_LCD_PANEL_CONTROL);
+ __raw_writeb(0x7, omap1510_fpga_lcd_panel_control);
return 0;
}
static void innovator1510_panel_disable(struct lcd_panel *panel)
{
- __raw_writeb(0x0, OMAP1510_FPGA_LCD_PANEL_CONTROL);
+ __raw_writeb(0x0, omap1510_fpga_lcd_panel_control);
}
static struct lcd_panel innovator1510_panel = {
@@ -48,6 +50,7 @@ static struct lcd_panel innovator1510_panel = {
static int innovator1510_panel_probe(struct platform_device *pdev)
{
+ omap1510_fpga_lcd_panel_control = (void __iomem *)pdev->dev.platform_data;
omapfb_register_panel(&innovator1510_panel);
return 0;
}