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 Banana Pi 7" S070WV20-CT16 panel

This panel is marketed as Banana Pi 7" LCD display. On the back is
a sticker denoting the model name S070WV20-CT16.

This is a 7" 800x480 panel connected through a 24-bit RGB interface.
However the panel only does 262k colors.

Depending on the variant, the PCB attached to the panel module either
supports DSI, or DSI + 24-bit RGB. DSI is converted to 24-bit RGB via
an onboard ICN6211 MIPI DSI - RGB bridge chip, then fed to the panel
itself.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180907041948.19913-5-wens@csie.org

authored by

Chen-Yu Tsai and committed by
Thierry Reding
7ad8b41c 882c35af

+37
+12
Documentation/devicetree/bindings/display/panel/bananapi,s070wv20-ct16.txt
··· 1 + Banana Pi 7" (S070WV20-CT16) TFT LCD Panel 2 + 3 + Required properties: 4 + - compatible: should be "bananapi,s070wv20-ct16" 5 + - power-supply: see ./panel-common.txt 6 + 7 + Optional properties: 8 + - enable-gpios: see ./simple-panel.txt 9 + - backlight: see ./simple-panel.txt 10 + 11 + This binding is compatible with the simple-panel binding, which is specified 12 + in ./simple-panel.txt.
+25
drivers/gpu/drm/panel/panel-simple.c
··· 772 772 }, 773 773 }; 774 774 775 + static const struct drm_display_mode bananapi_s070wv20_ct16_mode = { 776 + .clock = 30000, 777 + .hdisplay = 800, 778 + .hsync_start = 800 + 40, 779 + .hsync_end = 800 + 40 + 48, 780 + .htotal = 800 + 40 + 48 + 40, 781 + .vdisplay = 480, 782 + .vsync_start = 480 + 13, 783 + .vsync_end = 480 + 13 + 3, 784 + .vtotal = 480 + 13 + 3 + 29, 785 + }; 786 + 787 + static const struct panel_desc bananapi_s070wv20_ct16 = { 788 + .modes = &bananapi_s070wv20_ct16_mode, 789 + .num_modes = 1, 790 + .bpc = 6, 791 + .size = { 792 + .width = 154, 793 + .height = 86, 794 + }, 795 + }; 796 + 775 797 static const struct drm_display_mode boe_hv070wsa_mode = { 776 798 .clock = 42105, 777 799 .hdisplay = 1024, ··· 2440 2418 }, { 2441 2419 .compatible = "avic,tm070ddh03", 2442 2420 .data = &avic_tm070ddh03, 2421 + }, { 2422 + .compatible = "bananapi,s070wv20-ct16", 2423 + .data = &bananapi_s070wv20_ct16, 2443 2424 }, { 2444 2425 .compatible = "boe,hv070wsa-100", 2445 2426 .data = &boe_hv070wsa