linux/drivers/video
Nicolas Pitre 4f42d170e5 vgacon: unconfuse vc_origin when using soft scrollback
commit bfd8d8fe98 upstream.

When CONFIG_VGACON_SOFT_SCROLLBACK is selected, the VGA display memory
index and vc_visible_origin don't change when scrollback is activated.
The actual screen content is saved away and the scrollbackdata is copied
over it. However the vt code, and /dev/vcs devices in particular, still
expect vc_origin to always point at the actual screen content not the
displayed scrollback content.

So adjust vc_origin to point at the saved screen content when scrollback
is active and set it back to vc_visible_origin when restoring the screen.

This fixes /dev/vcsa<n> that return scrollback content when they
shouldn't (onli /dev/vcsa without a number should), and also fixes
/dev/vcsu that should return scrollback content when scrollback is
active but currently doesn't.

An unnecessary call to vga_set_mem_top() is also removed.

Signed-off-by: Nicolas Pitre <nico@linaro.org>
Cc: stable@vger.kernel.org # v4.19+
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2019-01-31 08:15:40 +01:00
..
backlight backlight: pwm_bl: Fix brightness levels for non-DT case. 2018-12-10 15:37:47 +00:00
console vgacon: unconfuse vc_origin when using soft scrollback 2019-01-31 08:15:40 +01:00
fbdev omap2fb: Fix stack memory disclosure 2019-01-22 21:09:55 +01:00
logo video/logo: remove obsolete logo files 2018-03-26 15:56:42 +02:00
display_timing.c video: add display_timing and videomode 2013-01-24 09:03:04 +01:00
hdmi.c media: hdmi.h: rename ADOBE_RGB to OPRGB and ADOBE_YCC to OPYCC 2018-09-24 09:28:41 -04:00
Kconfig fbdev changes for v4.17: 2018-04-10 10:20:00 -07:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
of_display_timing.c fbdev: Convert to using %pOFn instead of device_node.name 2018-10-08 12:57:36 +02:00
of_videomode.c video: fbdev: Convert to using %pOF instead of full_name 2017-08-07 17:22:13 +02:00
vgastate.c Video: vgastate: fixed a spacing coding style 2018-10-08 12:57:35 +02:00
videomode.c videomode: videomode_from_timing work 2013-03-21 14:34:33 +02:00