OSDN Git Service

drm/panel: simple: Add GiantPlus GPM940B0 panel support
authorPaul Cercueil <paul@crapouillou.net>
Wed, 5 Jun 2019 22:22:47 +0000 (00:22 +0200)
committerSam Ravnborg <sam@ravnborg.org>
Tue, 25 Jun 2019 20:16:38 +0000 (22:16 +0200)
The GiantPlus GPM940B0 is a simple 3.0" 320x240 24-bit TFT panel.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Tested-by: Artur Rojek <contact@artur-rojek.eu>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20190605222247.25657-3-paul@crapouillou.net
drivers/gpu/drm/panel/panel-simple.c

index 5a93c4e..eec9a9e 100644 (file)
@@ -1335,6 +1335,31 @@ static const struct panel_desc giantplus_gpg482739qs5 = {
        .bus_format = MEDIA_BUS_FMT_RGB888_1X24,
 };
 
+static const struct display_timing giantplus_gpm940b0_timing = {
+       .pixelclock = { 13500000, 27000000, 27500000 },
+       .hactive = { 320, 320, 320 },
+       .hfront_porch = { 14, 686, 718 },
+       .hback_porch = { 50, 70, 255 },
+       .hsync_len = { 1, 1, 1 },
+       .vactive = { 240, 240, 240 },
+       .vfront_porch = { 1, 1, 179 },
+       .vback_porch = { 1, 21, 31 },
+       .vsync_len = { 1, 1, 6 },
+       .flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW,
+};
+
+static const struct panel_desc giantplus_gpm940b0 = {
+       .timings = &giantplus_gpm940b0_timing,
+       .num_timings = 1,
+       .bpc = 8,
+       .size = {
+               .width = 60,
+               .height = 45,
+       },
+       .bus_format = MEDIA_BUS_FMT_RGB888_3X8,
+       .bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_PIXDATA_NEGEDGE,
+};
+
 static const struct display_timing hannstar_hsd070pww1_timing = {
        .pixelclock = { 64300000, 71100000, 82000000 },
        .hactive = { 1280, 1280, 1280 },
@@ -2883,6 +2908,9 @@ static const struct of_device_id platform_of_match[] = {
                .compatible = "giantplus,gpg482739qs5",
                .data = &giantplus_gpg482739qs5
        }, {
+               .compatible = "giantplus,gpm940b0",
+               .data = &giantplus_gpm940b0,
+       }, {
                .compatible = "hannstar,hsd070pww1",
                .data = &hannstar_hsd070pww1,
        }, {