1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
From 07234c1c0f991a560010672a619740e385778f90 Mon Sep 17 00:00:00 2001
From: Samuli Piippo <samuli.piippo@theqtcompany.com>
Date: Thu, 11 Feb 2016 10:17:51 +0200
Subject: [PATCH] Add support for KOE tx31d200vm0baa display
Used for the cluster demo
---
arch/arm/include/asm/imx-common/fbpanel.h | 27 ++++++++++++++++++++
board/boundary/nitrogen6_max/nitrogen6_max.c | 1 +
board/boundary/nitrogen6sx/nitrogen6sx.c | 1 +
board/boundary/nitrogen6x/nitrogen6x.c | 1 +
4 files changed, 30 insertions(+)
diff --git a/arch/arm/include/asm/imx-common/fbpanel.h b/arch/arm/include/asm/imx-common/fbpanel.h
index f5465c3c80..643cd86e29 100644
--- a/arch/arm/include/asm/imx-common/fbpanel.h
+++ b/arch/arm/include/asm/imx-common/fbpanel.h
@@ -116,6 +116,33 @@ void fbp_setup_display(const struct display_info_t *displays, int cnt);
.fbtype = FB_##_mode,\
.fbflags = _flags
+/* tx31d200vm0baa == koe */
+#define IMX_VD_KOE(_mode, _detect, _bus) \
+{\
+ .bus = _bus,\
+ .addr = 0,\
+ .pixfmt = IPU_PIX_FMT_RGB666,\
+ .detect = NULL,\
+ .enable = fbp_enable_fb,\
+ .fbtype = FB_##_mode,\
+ .fbflags = 0,\
+ .mode = {\
+ .name = "koe",\
+ .refresh = 60,\
+ .xres = 1280,\
+ .yres = 480,\
+ .pixclock = 1000000000000ULL/((1280+80+48+32)*(480+15+2+6)*60),\
+ .left_margin = 80,\
+ .right_margin = 48,\
+ .upper_margin = 15,\
+ .lower_margin = 2,\
+ .hsync_len = 32,\
+ .vsync_len = 6,\
+ .sync = FB_SYNC_EXT,\
+ .vmode = FB_VMODE_NONINTERLACED\
+ }\
+}
+
/* hdmi settings */
#define VDF_1280_720M_60(_mode, _name, _fmt, _flags, _detect, _bus, _addr) \
{\
diff --git a/board/boundary/nitrogen6_max/nitrogen6_max.c b/board/boundary/nitrogen6_max/nitrogen6_max.c
index 1c4106e735..51bc0bd8f3 100644
--- a/board/boundary/nitrogen6_max/nitrogen6_max.c
+++ b/board/boundary/nitrogen6_max/nitrogen6_max.c
@@ -497,6 +497,7 @@ int fbp_detect_serializer(struct display_info_t const *di)
}
static const struct display_info_t displays[] = {
+ IMX_VD_KOE(LVDS, 0, 2),
/* hdmi */
VD_1280_720M_60(HDMI, fbp_detect_i2c, 1, 0x50),
VD_1920_1080M_60(HDMI, NULL, 1, 0x50),
diff --git a/board/boundary/nitrogen6sx/nitrogen6sx.c b/board/boundary/nitrogen6sx/nitrogen6sx.c
index dc05042add..3725d63cf3 100644
--- a/board/boundary/nitrogen6sx/nitrogen6sx.c
+++ b/board/boundary/nitrogen6sx/nitrogen6sx.c
@@ -436,6 +436,7 @@ void board_enable_lcd(const struct display_info_t *di, int enable)
}
static const struct display_info_t displays[] = {
+ IMX_VD_KOE(LVDS, 0, 2),
/* hdmi/lcd via tfp410 */
VDF_1280_720M_60(LCD, "1280x720M@60", RGB24, 0, fbp_detect_i2c, 2, 0x50),
VDF_1920_1080M_60(LCD, "1920x1080M@60", RGB24, 0, NULL, 2, 0x50),
diff --git a/board/boundary/nitrogen6x/nitrogen6x.c b/board/boundary/nitrogen6x/nitrogen6x.c
index d9f6a829f1..80b102e206 100644
--- a/board/boundary/nitrogen6x/nitrogen6x.c
+++ b/board/boundary/nitrogen6x/nitrogen6x.c
@@ -359,6 +359,7 @@ void board_pre_enable(const struct display_info_t *di)
}
static const struct display_info_t displays[] = {
+ IMX_VD_KOE(LVDS, 0, 2),
/* hdmi */
VD_1280_720M_60(HDMI, fbp_detect_i2c, 1, 0x50),
VD_1920_1080M_60(HDMI, NULL, 1, 0x50),
|