Re: [PATCH 6/6] PM/FB/gxfb: add config option that allows disablingof VT switch during suspend

From: Andrew Morton
Date: Mon Mar 10 2008 - 17:25:56 EST


On Sat, 8 Mar 2008 20:49:27 -0500
Andres Salomon <dilinger@xxxxxxxxxx> wrote:

> This is purely for suspend/resume time optimization.
>
>
> >From 874aa20022a2501a30704163ed31a7baba7de9e5 Mon Sep 17 00:00:00 2001
> From: Andres Salomon <dilinger@xxxxxxxxxx>
> Date: Wed, 5 Mar 2008 16:40:25 -0500
> Subject: [PATCH] PM: add config option that allows disabling of VT switch during suspend
>
> Prior to suspend, we allocate and switch to a new VT; after suspend, we
> switch back to the original VT. This can be slow, and is completely
> unnecessary if the framebuffer we're using can restore video properly.
>
> This adds CONFIG_DISABLE_SUSPEND_VT_SWITCH which allows the user to
> select whether or not to do that switch. This has been tested with the
> gxfb driver (on a Geode GX dev board and OLPC prototype machines). In
> order for the user to even see this option, a framebuffer has to declare
> support for it (via CONFIG_FBDEV_SUPPORTS_NOSWITCH).
>
> Signed-off-by: Andres Salomon <dilinger@xxxxxxxxxx>
> ---
> drivers/char/Kconfig | 21 +++++++++++++++++++++
> drivers/video/geode/Kconfig | 1 +
> include/linux/suspend.h | 2 +-
> kernel/power/console.c | 2 +-
> 4 files changed, 24 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig
> index 47c6be8..7fe0e85 100644
> --- a/drivers/char/Kconfig
> +++ b/drivers/char/Kconfig
> @@ -58,6 +58,27 @@ config VT_CONSOLE
>
> If unsure, say Y.
>
> +config FBDEV_SUPPORTS_NOSWITCH
> + bool
> + default n
> +
> +config DISABLE_SUSPEND_VT_SWITCH
> + bool "Disable the console switch prior to suspend (EXPERIMENTAL)"
> + depends on VT_CONSOLE && PM && EXPERIMENTAL && FBDEV_SUPPORTS_NOSWITCH
> + default n
> + ---help---
> + This option disables the automatic switch to VT console that happens
> + prior to Linux going into a suspend/sleep. Your
> + video card/framebuffer must be able to properly restore the
> + display (even if X is doing something crazy!) in this scenario.
> + This is useful for saving precious milliseconds during suspend and
> + resume; however, if your framebuffer lacks support, it could leave
> + your display in a weird state. If you're even seeing this option,
> + it means at least one of your selected framebuffer drivers supports
> + restoring the display.
> +
> + If unsure, say N.

It would be far preferable to do this via a kernel boot parameter rather
than via a kernel rebuild.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/