fbdev: Wrap user-invoked calls to fb_set_var() in helper
Handle fbcon during display updates in fb_set_var_from_user(). Check with fbcon if the mode change is possible, update hardware state and finally update fbcon. Update all callers. Only the FBIOPUT_VSCREENINFO ioctl currently does all steps. Other mode-changes callers in sysfs and driver code are missing fbcon-related steps. With the new helper, ps3fb and sh_mobile_lcdcfb no longer maintain fbcon state themselves. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Signed-off-by: Helge Deller <deller@gmx.de>
This commit is contained in:
1 parent
7958e67375
commit
6f611e5e5f
7 files changed
+19
-18
No files matched your search
@@ -29,7 +29,6 @@
|
||||
#include <linux/freezer.h>
|
||||
#include <linux/uaccess.h>
|
||||
#include <linux/fb.h>
|
||||
#include <linux/fbcon.h>
|
||||
#include <linux/init.h>
|
||||
|
||||
#include <asm/cell-regs.h>
|
||||
@@ -830,9 +829,7 @@ static int ps3fb_ioctl(struct fb_info *info, unsigned int cmd,
|
||||
/* Force, in case only special bits changed */
|
||||
var.activate |= FB_ACTIVATE_FORCE;
|
||||
par->new_mode_id = val;
|
||||
retval = fb_set_var(info, &var);
|
||||
if (!retval)
|
||||
fbcon_update_vcs(info, var.activate & FB_ACTIVATE_ALL);
|
||||
retval = fb_set_var_from_user(info, &var);
|
||||
console_unlock();
|
||||
}
|
||||
break;
|
||||
|
||||
Reference in new issue
Block a user