From 564820d42aaa55e6ce60a59c0f60832e1330c58b Mon Sep 17 00:00:00 2001 From: Andres Salomon <dilinger@queued.net> Date: Mon, 28 Apr 2008 02:15:28 -0700 Subject: [PATCH] lxfb: disable suspend VT switch by default By default disable VT switch, but allow it to be overridden via the 'vt_switch' module arg. Signed-off-by: Andres Salomon <dilinger@debian.org> Cc: "Antonino A. Daplas" <adaplas@pol.net> Cc: Jordan Crouse <jordan.crouse@amd.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> --- Documentation/fb/lxfb.txt | 2 ++ drivers/video/geode/lxfb_core.c | 7 +++++++ 2 files changed, 9 insertions(+) diff --git a/Documentation/fb/lxfb.txt b/Documentation/fb/lxfb.txt index 80656078d4d92..38b3ca6f6ca7b 100644 --- a/Documentation/fb/lxfb.txt +++ b/Documentation/fb/lxfb.txt @@ -45,6 +45,8 @@ Accepted options: mode_option - specify the video mode. Of the form <x>x<y>[-<bpp>][@<refresh>] vram - size of video ram (normally auto-detected) +vt_switch - enable vt switching during suspend/resume. The vt + switch is slow, but harmless. -- Andres Salomon <dilinger@debian.org> diff --git a/drivers/video/geode/lxfb_core.c b/drivers/video/geode/lxfb_core.c index 1da944bdb11a0..15150ed41cecb 100644 --- a/drivers/video/geode/lxfb_core.c +++ b/drivers/video/geode/lxfb_core.c @@ -17,6 +17,7 @@ #include <linux/console.h> #include <linux/mm.h> #include <linux/slab.h> +#include <linux/suspend.h> #include <linux/delay.h> #include <linux/fb.h> #include <linux/init.h> @@ -28,6 +29,7 @@ static char *mode_option; static int noclear, nopanel, nocrt; static int vram; +static int vt_switch; /* Most of these modes are sorted in ascending order, but * since the first entry in this table is the "default" mode, @@ -523,6 +525,8 @@ static int __init lxfb_probe(struct pci_dev *pdev, lxfb_check_var(&info->var, info); lxfb_set_par(info); + pm_set_vt_switch(vt_switch); + if (register_framebuffer(info) < 0) { ret = -EINVAL; goto err; @@ -648,5 +652,8 @@ MODULE_PARM_DESC(mode_option, "video mode (<x>x<y>[-<bpp>][@<refr>])"); module_param(vram, int, 0); MODULE_PARM_DESC(vram, "video memory size"); +module_param(vt_switch, int, 0); +MODULE_PARM_DESC(vt_switch, "enable VT switch during suspend/resume"); + MODULE_DESCRIPTION("Framebuffer driver for the AMD Geode LX"); MODULE_LICENSE("GPL"); -- GitLab