Switch to panel timings based on datasheet for the AUO G101EVN01.0
LVDS panel. Default timings were tested on the panel.

Previous mode-based timings resulted in horizontal display shift.

Signed-off-by: Kevin Baker <kev...@ventureresearch.com>
---
 drivers/gpu/drm/panel/panel-simple.c | 25 +++++++++++++------------
 1 file changed, 13 insertions(+), 12 deletions(-)

diff --git a/drivers/gpu/drm/panel/panel-simple.c 
b/drivers/gpu/drm/panel/panel-simple.c
index fb8a57afe687..1a3d7ccb328a 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -979,27 +979,28 @@ static const struct panel_desc auo_g070vvn01 = {
        },
 };
 
-static const struct drm_display_mode auo_g101evn010_mode = {
-       .clock = 68930,
-       .hdisplay = 1280,
-       .hsync_start = 1280 + 82,
-       .hsync_end = 1280 + 82 + 2,
-       .htotal = 1280 + 82 + 2 + 84,
-       .vdisplay = 800,
-       .vsync_start = 800 + 8,
-       .vsync_end = 800 + 8 + 2,
-       .vtotal = 800 + 8 + 2 + 6,
+static const struct display_timing auo_g101evn010_timing = {
+       .pixelclock = { 64000000, 68930000, 85000000 },
+       .hactive = { 1280, 1280, 1280 },
+       .hfront_porch = { 8, 64, 256 },
+       .hback_porch = { 8, 64, 256 },
+       .hsync_len = { 40, 168, 767 },
+       .vactive = { 800, 800, 800 },
+       .vfront_porch = { 4, 8, 100 },
+       .vback_porch = { 4, 8, 100 },
+       .vsync_len = { 8, 16, 223 },
 };
 
 static const struct panel_desc auo_g101evn010 = {
-       .modes = &auo_g101evn010_mode,
-       .num_modes = 1,
+       .timings = &auo_g101evn010_timing,
+       .num_timings = 1,
        .bpc = 6,
        .size = {
                .width = 216,
                .height = 135,
        },
        .bus_format = MEDIA_BUS_FMT_RGB666_1X7X3_SPWG,
+       .bus_flags = DRM_BUS_FLAG_DE_HIGH,
        .connector_type = DRM_MODE_CONNECTOR_LVDS,
 };
 
-- 
2.39.5

Reply via email to