Commit 20012c77 authored by Archit Taneja's avatar Archit Taneja Committed by Tomi Valkeinen

arm: omap: board-zoom: use NEC panel's gpio handling

The zoom board file currently requests gpios required by the nec-nl8048hl11-01
dpi panel, and provides dummy platform_enable/disable callbacks.

gpio request and configuration have been moved to the nec-nl8048hl11-01 panel
driver itself and shouldn't be done in the board files.

Remove the gpio requests and the platform callbacks from the board file. Add the
gpio information to panel_nec_nl8048_data so that it's passed to the panel
driver.
Signed-off-by: default avatarArchit Taneja <archit@ti.com>
Cc: Tony Lindgren <tony@atomide.com>
parent 3c803f40
...@@ -15,8 +15,9 @@ ...@@ -15,8 +15,9 @@
#include <linux/spi/spi.h> #include <linux/spi/spi.h>
#include <linux/platform_data/spi-omap2-mcspi.h> #include <linux/platform_data/spi-omap2-mcspi.h>
#include <video/omapdss.h> #include <video/omapdss.h>
#include "board-zoom.h" #include <video/omap-panel-data.h>
#include "board-zoom.h"
#include "soc.h" #include "soc.h"
#include "common.h" #include "common.h"
...@@ -24,37 +25,17 @@ ...@@ -24,37 +25,17 @@
#define LCD_PANEL_RESET_GPIO_PILOT 55 #define LCD_PANEL_RESET_GPIO_PILOT 55
#define LCD_PANEL_QVGA_GPIO 56 #define LCD_PANEL_QVGA_GPIO 56
static struct gpio zoom_lcd_gpios[] __initdata = { static struct panel_nec_nl8048_data zoom_lcd_data = {
{ -EINVAL, GPIOF_OUT_INIT_HIGH, "lcd reset" }, /* res_gpio filled in code */
{ LCD_PANEL_QVGA_GPIO, GPIOF_OUT_INIT_HIGH, "lcd qvga" }, .qvga_gpio = LCD_PANEL_QVGA_GPIO,
}; };
static void __init zoom_lcd_panel_init(void)
{
zoom_lcd_gpios[0].gpio = (omap_rev() > OMAP3430_REV_ES3_0) ?
LCD_PANEL_RESET_GPIO_PROD :
LCD_PANEL_RESET_GPIO_PILOT;
if (gpio_request_array(zoom_lcd_gpios, ARRAY_SIZE(zoom_lcd_gpios)))
pr_err("%s: Failed to get LCD GPIOs.\n", __func__);
}
static int zoom_panel_enable_lcd(struct omap_dss_device *dssdev)
{
return 0;
}
static void zoom_panel_disable_lcd(struct omap_dss_device *dssdev)
{
}
static struct omap_dss_device zoom_lcd_device = { static struct omap_dss_device zoom_lcd_device = {
.name = "lcd", .name = "lcd",
.driver_name = "NEC_8048_panel", .driver_name = "NEC_8048_panel",
.type = OMAP_DISPLAY_TYPE_DPI, .type = OMAP_DISPLAY_TYPE_DPI,
.phy.dpi.data_lines = 24, .phy.dpi.data_lines = 24,
.platform_enable = zoom_panel_enable_lcd, .data = &zoom_lcd_data,
.platform_disable = zoom_panel_disable_lcd,
}; };
static struct omap_dss_device *zoom_dss_devices[] = { static struct omap_dss_device *zoom_dss_devices[] = {
...@@ -67,6 +48,13 @@ static struct omap_dss_board_info zoom_dss_data = { ...@@ -67,6 +48,13 @@ static struct omap_dss_board_info zoom_dss_data = {
.default_device = &zoom_lcd_device, .default_device = &zoom_lcd_device,
}; };
static void __init zoom_lcd_panel_init(void)
{
zoom_lcd_data.res_gpio = (omap_rev() > OMAP3430_REV_ES3_0) ?
LCD_PANEL_RESET_GPIO_PROD :
LCD_PANEL_RESET_GPIO_PILOT;
}
static struct omap2_mcspi_device_config dss_lcd_mcspi_config = { static struct omap2_mcspi_device_config dss_lcd_mcspi_config = {
.turbo_mode = 1, .turbo_mode = 1,
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment