Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/panel: simple: Add support for KEO TX31D200VM0BAA

This adds support for the Kaohsiung Opto-Electronics.,
TX31D200VM0BAA 12.3" HSXGA LVDS panel, which can be
supported by the simple panel driver.

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Link: https://patchwork.freedesktop.org/patch/msgid/1517766571-409-5-git-send-email-jagan@amarulasolutions.com

authored by

Jagan Teki and committed by
Thierry Reding
8cfe8341 ded8d7fe

+52
+25
Documentation/devicetree/bindings/display/panel/koe,tx31d200vm0baa.txt
··· 1 + Kaohsiung Opto-Electronics. TX31D200VM0BAA 12.3" HSXGA LVDS panel 2 + 3 + This binding is compatible with the simple-panel binding, which is specified 4 + in simple-panel.txt in this directory. 5 + 6 + Required properties: 7 + - compatible: should be "koe,tx31d200vm0baa" 8 + 9 + Optional properties: 10 + - backlight: phandle of the backlight device attached to the panel 11 + 12 + Optional nodes: 13 + - Video port for LVDS panel input. 14 + 15 + Example: 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 + };
+27
drivers/gpu/drm/panel/panel-simple.c
··· 1217 1217 }, 1218 1218 }; 1219 1219 1220 + static 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 + 1233 + static 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 + 1220 1244 static const struct display_timing kyo_tcg121xglp_timing = { 1221 1245 .pixelclock = { 52000000, 65000000, 71000000 }, 1222 1246 .hactive = { 1024, 1024, 1024 }, ··· 2146 2122 }, { 2147 2123 .compatible = "innolux,zj070na-01p", 2148 2124 .data = &innolux_zj070na_01p, 2125 + }, { 2126 + .compatible = "koe,tx31d200vm0baa", 2127 + .data = &koe_tx31d200vm0baa, 2149 2128 }, { 2150 2129 .compatible = "kyo,tcg121xglp", 2151 2130 .data = &kyo_tcg121xglp,