Skip to contentSkip to conversation

sunxi: video: Add support for Hitachi tx18d42vm LVDS LCD panels

PATCH New Hans de Goede 3 participants 4 messages Jan 22, 2015 – Jan 23, 2015

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 sunxi: video: Add support for Hitachi tx18d42vm LVDS LCD panels

Add support for Hitachi tx18d42vm LVDS LCD panels, these panels have a lcd controller which needs to be initialized over SPI, once that is done they work like a regular LVDS panel.

---
 board/sunxi/Kconfig           | 7 +++++++
 drivers/video/sunxi_display.c | 5 +++++
 2 files changed, 12 insertions(+)
board/sunxi/Kconfig +7 -0
index f1501d4..8ac3d42 100644
@@ -354,6 +354,13 @@ config VIDEO_LCD_PANEL_MIPI_4_LANE_513_MBPS_VIA_SSD2828
 	---help---
 	 7.85" 768x1024 LCD panels, such as LG LP079X01 or AUO B079XAN01.0
 
+config VIDEO_LCD_PANEL_HITACHI_TX18D42VM
+	bool "Hitachi tx18d42vm LCD panel"
+	select VIDEO_LCD_HITACHI_TX18D42VM
+	select VIDEO_LCD_IF_LVDS
+	---help---
+	 7.85" 1024x768 Hitachi tx18d42vm LCD panel support
+
 endchoice
 
 
drivers/video/sunxi_display.c +5 -0
index a6e3778..5077111 100644
@@ -20,6 +20,7 @@
 #include <fdt_support.h>
 #include <video_fb.h>
 #include "videomodes.h"
+#include "hitachi_tx18d42vm_lcd.h"
 #include "ssd2828.h"
 
 DECLARE_GLOBAL_DATA_PTR;
@@ -1004,6 +1005,10 @@ static void sunxi_mode_set(const struct ctfb_res_modes *mode,
 		break;
 	case sunxi_monitor_lcd:
 		sunxi_lcdc_panel_enable();
+		if (IS_ENABLED(CONFIG_VIDEO_LCD_HITACHI_TX18D42VM)) {
+			mdelay(50); /* Wait for lcd controller power on */
+			hitachi_tx18d42vm_init();
+		}
 		sunxi_composer_mode_set(mode, address);
 		sunxi_lcdc_tcon0_mode_set(mode);
 		sunxi_composer_enable();
Signature · 1 line
2.1.0
#1 lore raw

PATCH 1/1 sunxi: video: Add support for Hitachi tx18d42vm LVDS LCD panels

Hi

Note this is v3, I forgot to set the subject-prefix for this. Changes since v2 are using "if (IS_ENABLED(CONFIG_...))" rather then #ifdef.

Regards,

Hans

Quoted 52 lines · Hans de Goede

Add support for Hitachi tx18d42vm LVDS LCD panels, these panels have a lcd controller which needs to be initialized over SPI, once that is done they work like a regular LVDS panel.

---
  board/sunxi/Kconfig           | 7 +++++++
  drivers/video/sunxi_display.c | 5 +++++
  2 files changed, 12 insertions(+)
board/sunxi/Kconfig +7 -0
index f1501d4..8ac3d42 100644
@@ -354,6 +354,13 @@ config VIDEO_LCD_PANEL_MIPI_4_LANE_513_MBPS_VIA_SSD2828
  	---help---
  	 7.85" 768x1024 LCD panels, such as LG LP079X01 or AUO B079XAN01.0
 
+config VIDEO_LCD_PANEL_HITACHI_TX18D42VM
+	bool "Hitachi tx18d42vm LCD panel"
+	select VIDEO_LCD_HITACHI_TX18D42VM
+	select VIDEO_LCD_IF_LVDS
+	---help---
+	 7.85" 1024x768 Hitachi tx18d42vm LCD panel support
+
  endchoice
 
 
drivers/video/sunxi_display.c +5 -0
index a6e3778..5077111 100644
@@ -20,6 +20,7 @@
  #include <fdt_support.h>
  #include <video_fb.h>
  #include "videomodes.h"
+#include "hitachi_tx18d42vm_lcd.h"
  #include "ssd2828.h"
 
  DECLARE_GLOBAL_DATA_PTR;
@@ -1004,6 +1005,10 @@ static void sunxi_mode_set(const struct ctfb_res_modes *mode,
  		break;
  	case sunxi_monitor_lcd:
  		sunxi_lcdc_panel_enable();
+		if (IS_ENABLED(CONFIG_VIDEO_LCD_HITACHI_TX18D42VM)) {
+			mdelay(50); /* Wait for lcd controller power on */
+			hitachi_tx18d42vm_init();
+		}
  		sunxi_composer_mode_set(mode, address);
  		sunxi_lcdc_tcon0_mode_set(mode);
  		sunxi_composer_enable();
#2 lore raw

PATCH 1/1 sunxi: video: Add support for Hitachi tx18d42vm LVDS LCD panels

In reply to Hans de Goede

Hi,

Quoted 5 lines · On Thu, 22 Jan 2015 20:52:26 +0100 Hans de Goede <[email protected]> wrote:

Add support for Hitachi tx18d42vm LVDS LCD panels, these panels have a lcd controller which needs to be initialized over SPI, once that is done they work like a regular LVDS panel.

Thanks,

Anatolij