diff options
author | Philippe Schenker <philippe.schenker@toradex.com> | 2019-07-25 16:23:56 +0200 |
---|---|---|
committer | Marcel Ziswiler <marcel.ziswiler@toradex.com> | 2020-02-12 11:06:00 +0100 |
commit | 72a31cc5184d1588463cab0dba84dad3fa21f7fc (patch) | |
tree | 59c1c7c2990833c7a7d636f8efefb40e3c9398ee /drivers | |
parent | 9f935c6301e7b2db89354f5f80ccf94f636aebb6 (diff) |
video: fbdev: mxsfb: Fix flags not being applied
If one used display timings in devicetree the display_flags like
pixelclk-active have not been applied.
This commit fixes that and puts some nice debug messages so one can
see from where those timings are applied.
This fixes commit f397f60efbb24c2906cd95f443607b2642b49b24
"video: fbdev: mxsfb: allow setting display timings via kernel
command line"
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
(cherry picked from commit 17652e758b1236c49d2e1d336d81a832452b7c53)
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/video/fbdev/mxsfb.c | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/drivers/video/fbdev/mxsfb.c b/drivers/video/fbdev/mxsfb.c index 02cd98324206..05000ac1a43e 100644 --- a/drivers/video/fbdev/mxsfb.c +++ b/drivers/video/fbdev/mxsfb.c @@ -1439,7 +1439,7 @@ static int mxsfb_init_fbinfo_dt(struct mxsfb_info *host) fb_vm.sync |= FB_SYNC_CLK_LAT_FALL; if (i == timings->native_mode) { - fb_videomode_from_videomode(&vm, &native_mode); + native_mode = fb_vm; fb_videomode_to_var(&fb_info->var, &fb_vm); } @@ -1453,6 +1453,27 @@ static int mxsfb_init_fbinfo_dt(struct mxsfb_info *host) /* save the sync value getting from dtb */ host->sync = fb_info->var.sync; + switch (retval) { + case 0: + dev_err(dev, "fb_find_mode can't find a " + "suitable timing\n"); + break; + case 1: + dev_info(dev, "Using timings from kernel parameters\n"); + break; + case 2: + dev_info(dev, "Using timings from kernel parameters " + "and ignoring refresh rate\n"); + break; + case 3: + dev_info(dev, "Using timings from devicetree\n"); + break; + case 4: + dev_warn(dev, "Falling back to any valid timing\n"); + default: + break; + } + put_display_node: if (timings) kfree(timings); |