aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Documentation/devicetree/bindings/display/panel/koe,tx31d200vm0baa.txt25
-rw-r--r--drivers/gpu/drm/panel/panel-simple.c27
2 files changed, 52 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/display/panel/koe,tx31d200vm0baa.txt b/Documentation/devicetree/bindings/display/panel/koe,tx31d200vm0baa.txt
new file mode 100644
index 000000000000..6a036ede3e28
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/panel/koe,tx31d200vm0baa.txt
@@ -0,0 +1,25 @@
1Kaohsiung Opto-Electronics. TX31D200VM0BAA 12.3" HSXGA LVDS panel
2
3This binding is compatible with the simple-panel binding, which is specified
4in simple-panel.txt in this directory.
5
6Required properties:
7- compatible: should be "koe,tx31d200vm0baa"
8
9Optional properties:
10- backlight: phandle of the backlight device attached to the panel
11
12Optional nodes:
13- Video port for LVDS panel input.
14
15Example:
16 panel {
17 compatible = "koe,tx31d200vm0baa";
18 backlight = <&backlight_lvds>;
19
20 port {
21 panel_in: endpoint {
22 remote-endpoint = <&lvds0_out>;
23 };
24 };
25 };
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index 7d3cecd3b48a..5cc1d6e797fe 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -1217,6 +1217,30 @@ static const struct panel_desc innolux_zj070na_01p = {
1217 }, 1217 },
1218}; 1218};
1219 1219
1220static const struct display_timing koe_tx31d200vm0baa_timing = {
1221 .pixelclock = { 39600000, 43200000, 48000000 },
1222 .hactive = { 1280, 1280, 1280 },
1223 .hfront_porch = { 16, 36, 56 },
1224 .hback_porch = { 16, 36, 56 },
1225 .hsync_len = { 8, 8, 8 },
1226 .vactive = { 480, 480, 480 },
1227 .vfront_porch = { 6, 21, 33.5 },
1228 .vback_porch = { 6, 21, 33.5 },
1229 .vsync_len = { 8, 8, 8 },
1230 .flags = DISPLAY_FLAGS_DE_HIGH,
1231};
1232
1233static const struct panel_desc koe_tx31d200vm0baa = {
1234 .timings = &koe_tx31d200vm0baa_timing,
1235 .num_timings = 1,
1236 .bpc = 6,
1237 .size = {
1238 .width = 292,
1239 .height = 109,
1240 },
1241 .bus_format = MEDIA_BUS_FMT_RGB666_1X7X3_SPWG,
1242};
1243
1220static const struct display_timing kyo_tcg121xglp_timing = { 1244static const struct display_timing kyo_tcg121xglp_timing = {
1221 .pixelclock = { 52000000, 65000000, 71000000 }, 1245 .pixelclock = { 52000000, 65000000, 71000000 },
1222 .hactive = { 1024, 1024, 1024 }, 1246 .hactive = { 1024, 1024, 1024 },
@@ -2123,6 +2147,9 @@ static const struct of_device_id platform_of_match[] = {
2123 .compatible = "innolux,zj070na-01p", 2147 .compatible = "innolux,zj070na-01p",
2124 .data = &innolux_zj070na_01p, 2148 .data = &innolux_zj070na_01p,
2125 }, { 2149 }, {
2150 .compatible = "koe,tx31d200vm0baa",
2151 .data = &koe_tx31d200vm0baa,
2152 }, {
2126 .compatible = "kyo,tcg121xglp", 2153 .compatible = "kyo,tcg121xglp",
2127 .data = &kyo_tcg121xglp, 2154 .data = &kyo_tcg121xglp,
2128 }, { 2155 }, {