summaryrefslogtreecommitdiff
path: root/drivers/video/fbdev/mxc
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/video/fbdev/mxc')
-rw-r--r--drivers/video/fbdev/mxc/mxc_hdmi.c6
-rw-r--r--drivers/video/fbdev/mxc/mxc_ipuv3_fb.c9
-rw-r--r--drivers/video/fbdev/mxc/mxsfb_sii902x.c6
3 files changed, 11 insertions, 10 deletions
diff --git a/drivers/video/fbdev/mxc/mxc_hdmi.c b/drivers/video/fbdev/mxc/mxc_hdmi.c
index ca8e3ff52413..26a6421be879 100644
--- a/drivers/video/fbdev/mxc/mxc_hdmi.c
+++ b/drivers/video/fbdev/mxc/mxc_hdmi.c
@@ -27,6 +27,7 @@
#include <linux/irq.h>
#include <linux/io.h>
#include <linux/fb.h>
+#include <linux/fbcon.h>
#include <linux/init.h>
#include <linux/list.h>
#include <linux/delay.h>
@@ -1793,9 +1794,8 @@ static void mxc_hdmi_notify_fb(struct mxc_hdmi *hdmi)
*/
hdmi->fbi->var.activate |= FB_ACTIVATE_FORCE;
console_lock();
- hdmi->fbi->flags |= FBINFO_MISC_USEREVENT;
- fb_set_var(hdmi->fbi, &hdmi->fbi->var);
- hdmi->fbi->flags &= ~FBINFO_MISC_USEREVENT;
+ if (!fb_set_var(hdmi->fbi, &hdmi->fbi->var))
+ fbcon_update_vcs(hdmi->fbi, hdmi->fbi->var.activate & FB_ACTIVATE_ALL);
console_unlock();
dev_dbg(&hdmi->pdev->dev, "%s exit\n", __func__);
diff --git a/drivers/video/fbdev/mxc/mxc_ipuv3_fb.c b/drivers/video/fbdev/mxc/mxc_ipuv3_fb.c
index 80cb252d1ab5..d928a621207e 100644
--- a/drivers/video/fbdev/mxc/mxc_ipuv3_fb.c
+++ b/drivers/video/fbdev/mxc/mxc_ipuv3_fb.c
@@ -34,6 +34,7 @@
#include <linux/dma-mapping.h>
#include <linux/errno.h>
#include <linux/fb.h>
+#include <linux/fbcon.h>
#include <linux/fsl_devices.h>
#include <linux/init.h>
#include <linux/interrupt.h>
@@ -2030,9 +2031,9 @@ static int mxcfb_ioctl(struct fb_info *fbi, unsigned int cmd, unsigned long arg)
fmt.var.activate = (fbi->var.activate & ~FB_ACTIVATE_MASK) |
FB_ACTIVATE_NOW | FB_ACTIVATE_FORCE;
console_lock();
- fbi->flags |= FBINFO_MISC_USEREVENT;
retval = fb_set_var(fbi, &fmt.var);
- fbi->flags &= ~FBINFO_MISC_USEREVENT;
+ if (!retval)
+ fbcon_update_vcs(fbi, fbi->var.activate & FB_ACTIVATE_ALL);
console_unlock();
break;
}
@@ -3208,9 +3209,9 @@ static int mxcfb_register(struct fb_info *fbi)
if (!mxcfbi->late_init) {
fbi->var.activate |= FB_ACTIVATE_FORCE;
console_lock();
- fbi->flags |= FBINFO_MISC_USEREVENT;
ret = fb_set_var(fbi, &fbi->var);
- fbi->flags &= ~FBINFO_MISC_USEREVENT;
+ if (!ret)
+ fbcon_update_vcs(fbi, fbi->var.activate & FB_ACTIVATE_ALL);
console_unlock();
if (ret < 0) {
dev_err(fbi->device, "Error fb_set_var ret:%d\n", ret);
diff --git a/drivers/video/fbdev/mxc/mxsfb_sii902x.c b/drivers/video/fbdev/mxc/mxsfb_sii902x.c
index f4be1a5ecb17..052befe9194c 100644
--- a/drivers/video/fbdev/mxc/mxsfb_sii902x.c
+++ b/drivers/video/fbdev/mxc/mxsfb_sii902x.c
@@ -32,6 +32,7 @@
#include <linux/delay.h>
#include <linux/errno.h>
#include <linux/fb.h>
+#include <linux/fbcon.h>
#include <linux/init.h>
#include <linux/platform_device.h>
#include <linux/regulator/consumer.h>
@@ -266,9 +267,8 @@ static void sii902x_cable_connected(void)
sii902x.fbi->var.activate |= FB_ACTIVATE_FORCE;
console_lock();
- sii902x.fbi->flags |= FBINFO_MISC_USEREVENT;
- fb_set_var(sii902x.fbi, &sii902x.fbi->var);
- sii902x.fbi->flags &= ~FBINFO_MISC_USEREVENT;
+ if (!fb_set_var(sii902x.fbi, &sii902x.fbi->var))
+ fbcon_update_vcs(sii902x.fbi, sii902x.fbi->var.activate & FB_ACTIVATE_ALL);
console_unlock();
}
/* Power on sii902x */