On Mon, Mar 18, 2013 at 07:24:02PM +0100, Marek Vasut wrote: > The issue fixed by this patch manifests only then using X11 > with mxsfb driver. The X11 will display either shifted image > or otherwise distorted image on the LCD. > > The problem is that the X11 tries to reconfigure the framebuffer > and along the way calls fb_ops.fb_set_par() with X11's desired > configuration values. The field of particular interest is > fb_info->var.sync which contains non-standard values if > configured by kernel. These are either FB_SYNC_DATA_ENABLE_HIGH_ACT, > FB_SYNC_DOTCLK_FAILING_ACT or both, depending on the platform > configuration. Both of these values are defined in the > include/linux/mxsfb.h file. > > The driver interprets these values and configures the LCD controller > accordingly. Yet X11 only has access to the standard values for this > field defined in include/uapi/linux/fb.h and thus, unlike kernel, > omits these special values. This results in distorted image on the > LCD. > > This patch moves these non-standard values into new field of the > mxsfb_platform_data structure so the driver can in turn check this > field instead of the video mode field for these specific portions. > > Moreover, this patch prefixes these values with MXSFB_SYNC_ prefix > instead of FB_SYNC_ prefix to prevent confusion of subsequent users. > > Signed-off-by: Marek Vasut <marex@xxxxxxx> > Cc: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx> > Cc: Linux ARM <linux-arm-kernel@xxxxxxxxxxxxxxxxxxx> > Cc: Linux FBDEV <linux-fbdev@xxxxxxxxxxxxxxx> > Cc: Lothar Waßmann <LW@xxxxxxxxxxxxxxxxxxx> > Cc: Sascha Hauer <kernel@xxxxxxxxxxxxxx> > Cc: Shawn Guo <shawn.guo@xxxxxxxxxx> > Tested-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx> Applied with one trivial change below. ... > @@ -407,6 +404,8 @@ static void __init cfa10049_init(void) > mxsfb_pdata.mode_count = ARRAY_SIZE(cfa10049_video_modes); > mxsfb_pdata.default_bpp = 32; > mxsfb_pdata.ld_intf_width = STMLCDIF_18BIT; > + mxsfb_pdata.sync = MXSFB_SYNC_DATA_ENABLE_HIGH_ACT; > + I removed this unnecessary new line. Shawn > } -- To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html