diff options
Diffstat (limited to 'drivers/video/fbdev/mxc')
-rw-r--r-- | drivers/video/fbdev/mxc/mxc_hdmi.c | 6 | ||||
-rw-r--r-- | drivers/video/fbdev/mxc/mxc_ipuv3_fb.c | 9 | ||||
-rw-r--r-- | drivers/video/fbdev/mxc/mxsfb_sii902x.c | 6 |
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 */ |