diff options
| author | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2012-05-10 12:55:44 -0400 |
|---|---|---|
| committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2012-05-10 13:24:14 -0400 |
| commit | 9b71fb5cbcdd83c65e5fe6db9cd12246f7ea0262 (patch) | |
| tree | d034047d7cd562700c59a0b1b3ba707367939fe7 | |
| parent | 1dfafbc655b3723e37120d4b30e82d1c87767dd1 (diff) | |
| parent | e4a9e94cc58ed6e4efb02b80be3a9bf57f448d07 (diff) | |
Merge branch 'for-l-o-3.5'
Conflicts:
drivers/video/omap2/displays/panel-taal.c
Merge OMAP DSS related board file changes. The branch will also be
merged through linux-omap tree to solve conflicts.
19 files changed, 251 insertions, 448 deletions
diff --git a/arch/arm/mach-omap2/board-3430sdp.c b/arch/arm/mach-omap2/board-3430sdp.c index da75f239873e..37abb0d49b51 100644 --- a/arch/arm/mach-omap2/board-3430sdp.c +++ b/arch/arm/mach-omap2/board-3430sdp.c | |||
| @@ -37,7 +37,7 @@ | |||
| 37 | #include <plat/dma.h> | 37 | #include <plat/dma.h> |
| 38 | #include <plat/gpmc.h> | 38 | #include <plat/gpmc.h> |
| 39 | #include <video/omapdss.h> | 39 | #include <video/omapdss.h> |
| 40 | #include <video/omap-panel-dvi.h> | 40 | #include <video/omap-panel-tfp410.h> |
| 41 | 41 | ||
| 42 | #include <plat/gpmc-smc91x.h> | 42 | #include <plat/gpmc-smc91x.h> |
| 43 | 43 | ||
| @@ -113,9 +113,6 @@ static struct gpio sdp3430_dss_gpios[] __initdata = { | |||
| 113 | {SDP3430_LCD_PANEL_BACKLIGHT_GPIO, GPIOF_OUT_INIT_LOW, "LCD Backlight"}, | 113 | {SDP3430_LCD_PANEL_BACKLIGHT_GPIO, GPIOF_OUT_INIT_LOW, "LCD Backlight"}, |
| 114 | }; | 114 | }; |
| 115 | 115 | ||
| 116 | static int lcd_enabled; | ||
| 117 | static int dvi_enabled; | ||
| 118 | |||
| 119 | static void __init sdp3430_display_init(void) | 116 | static void __init sdp3430_display_init(void) |
| 120 | { | 117 | { |
| 121 | int r; | 118 | int r; |
| @@ -129,44 +126,18 @@ static void __init sdp3430_display_init(void) | |||
| 129 | 126 | ||
| 130 | static int sdp3430_panel_enable_lcd(struct omap_dss_device *dssdev) | 127 | static int sdp3430_panel_enable_lcd(struct omap_dss_device *dssdev) |
| 131 | { | 128 | { |
| 132 | if (dvi_enabled) { | ||
| 133 | printk(KERN_ERR "cannot enable LCD, DVI is enabled\n"); | ||
| 134 | return -EINVAL; | ||
| 135 | } | ||
| 136 | |||
| 137 | gpio_direction_output(SDP3430_LCD_PANEL_ENABLE_GPIO, 1); | 129 | gpio_direction_output(SDP3430_LCD_PANEL_ENABLE_GPIO, 1); |
| 138 | gpio_direction_output(SDP3430_LCD_PANEL_BACKLIGHT_GPIO, 1); | 130 | gpio_direction_output(SDP3430_LCD_PANEL_BACKLIGHT_GPIO, 1); |
| 139 | 131 | ||
| 140 | lcd_enabled = 1; | ||
| 141 | |||
| 142 | return 0; | 132 | return 0; |
| 143 | } | 133 | } |
| 144 | 134 | ||
| 145 | static void sdp3430_panel_disable_lcd(struct omap_dss_device *dssdev) | 135 | static void sdp3430_panel_disable_lcd(struct omap_dss_device *dssdev) |
| 146 | { | 136 | { |
| 147 | lcd_enabled = 0; | ||
| 148 | |||
| 149 | gpio_direction_output(SDP3430_LCD_PANEL_ENABLE_GPIO, 0); | 137 | gpio_direction_output(SDP3430_LCD_PANEL_ENABLE_GPIO, 0); |
| 150 | gpio_direction_output(SDP3430_LCD_PANEL_BACKLIGHT_GPIO, 0); | 138 | gpio_direction_output(SDP3430_LCD_PANEL_BACKLIGHT_GPIO, 0); |
| 151 | } | 139 | } |
| 152 | 140 | ||
| 153 | static int sdp3430_panel_enable_dvi(struct omap_dss_device *dssdev) | ||
| 154 | { | ||
| 155 | if (lcd_enabled) { | ||
| 156 | printk(KERN_ERR "cannot enable DVI, LCD is enabled\n"); | ||
| 157 | return -EINVAL; | ||
| 158 | } | ||
| 159 | |||
| 160 | dvi_enabled = 1; | ||
| 161 | |||
| 162 | return 0; | ||
| 163 | } | ||
| 164 | |||
| 165 | static void sdp3430_panel_disable_dvi(struct omap_dss_device *dssdev) | ||
| 166 | { | ||
| 167 | dvi_enabled = 0; | ||
| 168 | } | ||
| 169 | |||
| 170 | static int sdp3430_panel_enable_tv(struct omap_dss_device *dssdev) | 141 | static int sdp3430_panel_enable_tv(struct omap_dss_device *dssdev) |
| 171 | { | 142 | { |
| 172 | return 0; | 143 | return 0; |
| @@ -186,15 +157,14 @@ static struct omap_dss_device sdp3430_lcd_device = { | |||
| 186 | .platform_disable = sdp3430_panel_disable_lcd, | 157 | .platform_disable = sdp3430_panel_disable_lcd, |
| 187 | }; | 158 | }; |
| 188 | 159 | ||
| 189 | static struct panel_dvi_platform_data dvi_panel = { | 160 | static struct tfp410_platform_data dvi_panel = { |
| 190 | .platform_enable = sdp3430_panel_enable_dvi, | 161 | .power_down_gpio = -1, |
| 191 | .platform_disable = sdp3430_panel_disable_dvi, | ||
| 192 | }; | 162 | }; |
| 193 | 163 | ||
| 194 | static struct omap_dss_device sdp3430_dvi_device = { | 164 | static struct omap_dss_device sdp3430_dvi_device = { |
| 195 | .name = "dvi", | 165 | .name = "dvi", |
| 196 | .type = OMAP_DISPLAY_TYPE_DPI, | 166 | .type = OMAP_DISPLAY_TYPE_DPI, |
| 197 | .driver_name = "dvi", | 167 | .driver_name = "tfp410", |
| 198 | .data = &dvi_panel, | 168 | .data = &dvi_panel, |
| 199 | .phy.dpi.data_lines = 24, | 169 | .phy.dpi.data_lines = 24, |
| 200 | }; | 170 | }; |
diff --git a/arch/arm/mach-omap2/board-4430sdp.c b/arch/arm/mach-omap2/board-4430sdp.c index 130ab00c09a2..b4ad706c145a 100644 --- a/arch/arm/mach-omap2/board-4430sdp.c +++ b/arch/arm/mach-omap2/board-4430sdp.c | |||
| @@ -666,6 +666,10 @@ static struct nokia_dsi_panel_data dsi1_panel = { | |||
| 666 | .use_ext_te = false, | 666 | .use_ext_te = false, |
| 667 | .ext_te_gpio = 101, | 667 | .ext_te_gpio = 101, |
| 668 | .esd_interval = 0, | 668 | .esd_interval = 0, |
| 669 | .pin_config = { | ||
| 670 | .num_pins = 6, | ||
| 671 | .pins = { 0, 1, 2, 3, 4, 5 }, | ||
| 672 | }, | ||
| 669 | }; | 673 | }; |
| 670 | 674 | ||
| 671 | static struct omap_dss_device sdp4430_lcd_device = { | 675 | static struct omap_dss_device sdp4430_lcd_device = { |
| @@ -674,13 +678,6 @@ static struct omap_dss_device sdp4430_lcd_device = { | |||
| 674 | .type = OMAP_DISPLAY_TYPE_DSI, | 678 | .type = OMAP_DISPLAY_TYPE_DSI, |
| 675 | .data = &dsi1_panel, | 679 | .data = &dsi1_panel, |
| 676 | .phy.dsi = { | 680 | .phy.dsi = { |
| 677 | .clk_lane = 1, | ||
| 678 | .clk_pol = 0, | ||
| 679 | .data1_lane = 2, | ||
| 680 | .data1_pol = 0, | ||
| 681 | .data2_lane = 3, | ||
| 682 | .data2_pol = 0, | ||
| 683 | |||
| 684 | .module = 0, | 681 | .module = 0, |
| 685 | }, | 682 | }, |
| 686 | 683 | ||
| @@ -715,6 +712,10 @@ static struct nokia_dsi_panel_data dsi2_panel = { | |||
| 715 | .use_ext_te = false, | 712 | .use_ext_te = false, |
| 716 | .ext_te_gpio = 103, | 713 | .ext_te_gpio = 103, |
| 717 | .esd_interval = 0, | 714 | .esd_interval = 0, |
| 715 | .pin_config = { | ||
| 716 | .num_pins = 6, | ||
| 717 | .pins = { 0, 1, 2, 3, 4, 5 }, | ||
| 718 | }, | ||
| 718 | }; | 719 | }; |
| 719 | 720 | ||
| 720 | static struct omap_dss_device sdp4430_lcd2_device = { | 721 | static struct omap_dss_device sdp4430_lcd2_device = { |
| @@ -723,12 +724,6 @@ static struct omap_dss_device sdp4430_lcd2_device = { | |||
| 723 | .type = OMAP_DISPLAY_TYPE_DSI, | 724 | .type = OMAP_DISPLAY_TYPE_DSI, |
| 724 | .data = &dsi2_panel, | 725 | .data = &dsi2_panel, |
| 725 | .phy.dsi = { | 726 | .phy.dsi = { |
| 726 | .clk_lane = 1, | ||
| 727 | .clk_pol = 0, | ||
| 728 | .data1_lane = 2, | ||
| 729 | .data1_pol = 0, | ||
| 730 | .data2_lane = 3, | ||
| 731 | .data2_pol = 0, | ||
| 732 | 727 | ||
| 733 | .module = 1, | 728 | .module = 1, |
| 734 | }, | 729 | }, |
| @@ -758,21 +753,6 @@ static struct omap_dss_device sdp4430_lcd2_device = { | |||
| 758 | .channel = OMAP_DSS_CHANNEL_LCD2, | 753 | .channel = OMAP_DSS_CHANNEL_LCD2, |
| 759 | }; | 754 | }; |
| 760 | 755 | ||
| 761 | static void sdp4430_lcd_init(void) | ||
| 762 | { | ||
| 763 | int r; | ||
| 764 | |||
| 765 | r = gpio_request_one(dsi1_panel.reset_gpio, GPIOF_DIR_OUT, | ||
