• Liu Ying's avatar
    mx3fb: avoid screen flash when panning with fb_set_var · 41a490ec
    Liu Ying authored
    Users may call FBIOPUT_VSCREENINFO ioctrl to do pan display.
    This ioctrl relies on fb_set_var() to do the job. fb_set_var()
    calls custom fb_set_par() method and then calls custom
    fb_pan_display() method. The current implementation of mx3fb
    reinitializes IPU display controller every time the custom
    fb_set_par() method is called, which makes the screen flash
    if fb_set_var() is called to do panning frequently. This patch
    compares the new var info with the cached old one to decide
    whether we really need to reinitialize IPU display controller.
    We ignore xoffset and yoffset update because it doesn't require
    to reinitialize the controller. Users may specify activate field
    of var info with FB_ACTIVATE_NOW and FB_ACTIVATE_FORCE to
    reinialize the controller by force.
    Signed-off-by: default avatarLiu Ying <Ying.Liu@freescale.com>
    Signed-off-by: default avatarFlorian Tobias Schandinat <FlorianSchandinat@gmx.de>
    41a490ec
mx3fb.c 41.5 KB