dm: arm: imx: cx9020: migrate to dm_video

Enable DM_VIDEO in config and don't overwrite console so it can be set
from environment

Acked-by: Patrick Bruenn <p.bruenn@beckhoff.com>
Signed-off-by: Steffen Dirkwinkel <s.dirkwinkel@beckhoff.com>
diff --git a/board/beckhoff/mx53cx9020/Makefile b/board/beckhoff/mx53cx9020/Makefile
index 423a553..7f15fc5 100644
--- a/board/beckhoff/mx53cx9020/Makefile
+++ b/board/beckhoff/mx53cx9020/Makefile
@@ -4,4 +4,4 @@
 # Patrick Bruenn <p.bruenn@beckhoff.com>
 
 obj-y               += mx53cx9020.o
-obj-$(CONFIG_VIDEO) += mx53cx9020_video.o
+obj-$(CONFIG_DM_VIDEO) += mx53cx9020_video.o
diff --git a/board/beckhoff/mx53cx9020/mx53cx9020.c b/board/beckhoff/mx53cx9020/mx53cx9020.c
index 79ea456..fdef447 100644
--- a/board/beckhoff/mx53cx9020/mx53cx9020.c
+++ b/board/beckhoff/mx53cx9020/mx53cx9020.c
@@ -23,8 +23,6 @@
 #include <mmc.h>
 #include <fsl_esdhc.h>
 #include <asm/gpio.h>
-#include <linux/fb.h>
-#include <ipu_pixfmt.h>
 #include <input.h>
 #include <fs.h>
 #include <dm/platform_data/serial_mxc.h>
@@ -232,15 +230,6 @@
 	return 0;
 }
 
-/*
- * Do not overwrite the console
- * Use always serial for U-Boot console
- */
-int overwrite_console(void)
-{
-	return 1;
-}
-
 int board_init(void)
 {
 	gd->bd->bi_boot_params = PHYS_SDRAM_1 + 0x100;
diff --git a/board/beckhoff/mx53cx9020/mx53cx9020_video.c b/board/beckhoff/mx53cx9020/mx53cx9020_video.c
index 85f1cda..bf47290 100644
--- a/board/beckhoff/mx53cx9020/mx53cx9020_video.c
+++ b/board/beckhoff/mx53cx9020/mx53cx9020_video.c
@@ -8,29 +8,34 @@
  */
 
 #include <common.h>
-#include <linux/list.h>
-#include <asm/gpio.h>
 #include <asm/arch/iomux-mx53.h>
-#include <linux/fb.h>
-#include <ipu_pixfmt.h>
+#include <asm/gpio.h>
+#include <asm/mach-imx/video.h>
 
 #define CX9020_DVI_PWD	IMX_GPIO_NR(6, 1)
 
-static struct fb_videomode const vga_640x480 = {
-	.name = "VESA_VGA_640x480",
-	.refresh = 60,
-	.xres = 640,
-	.yres = 480,
-	.pixclock = 39721,	/* picosecond (25.175 MHz) */
-	.left_margin = 40,
-	.right_margin = 60,
-	.upper_margin = 10,
-	.lower_margin = 10,
-	.hsync_len = 20,
-	.vsync_len = 10,
-	.sync = 0,
-	.vmode = FB_VMODE_NONINTERLACED
-};
+struct display_info_t const displays[] = {{
+	.bus	= -1,
+	.addr	= 0,
+	.pixfmt	= IPU_PIX_FMT_RGB24,
+	.detect	= NULL,
+	.enable	= NULL,
+	.mode	= {
+		.name           = "DVI",
+		.refresh = 60,
+		.xres = 640,
+		.yres = 480,
+		.pixclock = 39721,	/* picosecond (25.175 MHz) */
+		.left_margin = 40,
+		.right_margin = 60,
+		.upper_margin = 10,
+		.lower_margin = 10,
+		.hsync_len = 20,
+		.vsync_len = 10,
+		.sync = 0,
+		.vmode = FB_VMODE_NONINTERLACED
+} } };
+size_t display_count = ARRAY_SIZE(displays);
 
 void setup_iomux_lcd(void)
 {
@@ -39,11 +44,3 @@
 	gpio_request(CX9020_DVI_PWD, "CX9020_DVI_PWD");
 	gpio_direction_output(CX9020_DVI_PWD, 1);
 }
-
-int board_video_skip(void)
-{
-	const int ret = ipuv3_fb_init(&vga_640x480, 0, IPU_PIX_FMT_RGB24);
-	if (ret)
-		printf("VESA VG 640x480 cannot be configured: %d\n", ret);
-	return ret;
-}