mirror of
https://github.com/adulau/aha.git
synced 2025-01-04 07:03:38 +00:00
[PATCH] fbcon: Avoid illegal display panning
Avoid calls to fb_pan_display when driver is suspended or not in text mode. Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
1207069f6f
commit
4e1567d3aa
1 changed files with 19 additions and 6 deletions
|
@ -2146,8 +2146,12 @@ static int fbcon_switch(struct vc_data *vc)
|
||||||
|
|
||||||
scrollback_max = 0;
|
scrollback_max = 0;
|
||||||
scrollback_current = 0;
|
scrollback_current = 0;
|
||||||
ops->var.xoffset = ops->var.yoffset = p->yscroll = 0;
|
|
||||||
ops->update_start(info);
|
if (!fbcon_is_inactive(vc, info)) {
|
||||||
|
ops->var.xoffset = ops->var.yoffset = p->yscroll = 0;
|
||||||
|
ops->update_start(info);
|
||||||
|
}
|
||||||
|
|
||||||
fbcon_set_palette(vc, color_table);
|
fbcon_set_palette(vc, color_table);
|
||||||
fbcon_clear_margins(vc, 0);
|
fbcon_clear_margins(vc, 0);
|
||||||
|
|
||||||
|
@ -2746,8 +2750,12 @@ static void fbcon_modechanged(struct fb_info *info)
|
||||||
updatescrollmode(p, info, vc);
|
updatescrollmode(p, info, vc);
|
||||||
scrollback_max = 0;
|
scrollback_max = 0;
|
||||||
scrollback_current = 0;
|
scrollback_current = 0;
|
||||||
ops->var.xoffset = ops->var.yoffset = p->yscroll = 0;
|
|
||||||
ops->update_start(info);
|
if (!fbcon_is_inactive(vc, info)) {
|
||||||
|
ops->var.xoffset = ops->var.yoffset = p->yscroll = 0;
|
||||||
|
ops->update_start(info);
|
||||||
|
}
|
||||||
|
|
||||||
fbcon_set_palette(vc, color_table);
|
fbcon_set_palette(vc, color_table);
|
||||||
update_screen(vc);
|
update_screen(vc);
|
||||||
if (softback_buf)
|
if (softback_buf)
|
||||||
|
@ -2784,8 +2792,13 @@ static void fbcon_set_all_vcs(struct fb_info *info)
|
||||||
updatescrollmode(p, info, vc);
|
updatescrollmode(p, info, vc);
|
||||||
scrollback_max = 0;
|
scrollback_max = 0;
|
||||||
scrollback_current = 0;
|
scrollback_current = 0;
|
||||||
ops->var.xoffset = ops->var.yoffset = p->yscroll = 0;
|
|
||||||
ops->update_start(info);
|
if (!fbcon_is_inactive(vc, info)) {
|
||||||
|
ops->var.xoffset = ops->var.yoffset =
|
||||||
|
p->yscroll = 0;
|
||||||
|
ops->update_start(info);
|
||||||
|
}
|
||||||
|
|
||||||
fbcon_set_palette(vc, color_table);
|
fbcon_set_palette(vc, color_table);
|
||||||
update_screen(vc);
|
update_screen(vc);
|
||||||
if (softback_buf)
|
if (softback_buf)
|
||||||
|
|
Loading…
Reference in a new issue