Gerd Hoffmann <[EMAIL PROTECTED]> writes:

>   Hi,
>
>> Since the whole point is to detect the case where we don't have
>> a screen at all it makes sense to check several additional variables
>> and make certain that they are all 0.  Agreed?
>
> Like in the attached patch?

Looks good to me.

> cheers,
>   Gerd
> Refine SCREEN_INFO sanity check for vgacon initialization.
>
> Checking video mode field only to see whenever SCREEN_INFO is
> initialized is not enougth, in some cases it is zero although
> a vga card is present.  Lets additionally check cols and lines.
>
> Signed-off-by: Gerd Hoffmann <[EMAIL PROTECTED]>
> Cc: Rusty Russell <[EMAIL PROTECTED]>
> Cc: Andi Kleen <[EMAIL PROTECTED]>
> Cc: Alan <[EMAIL PROTECTED]>
> Cc: Ingo Molnar <[EMAIL PROTECTED]>
> Cc: Eric W. Biederman <[EMAIL PROTECTED]>
> ---
>  drivers/video/console/vgacon.c |    9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
>
> Index: vanilla-2.6.21-git11/drivers/video/console/vgacon.c
> ===================================================================
> --- vanilla-2.6.21-git11.orig/drivers/video/console/vgacon.c
> +++ vanilla-2.6.21-git11/drivers/video/console/vgacon.c
> @@ -368,9 +368,14 @@ static const char *vgacon_startup(void)
>  #endif
>       }
>  
> +     /* SCREEN_INFO initialized? */
> +     if ((ORIG_VIDEO_MODE  == 0) &&
> +         (ORIG_VIDEO_LINES == 0) &&
> +         (ORIG_VIDEO_COLS  == 0))
> +             goto no_vga;
> +
>       /* VGA16 modes are not handled by VGACON */
> - if ((ORIG_VIDEO_MODE == 0x00) || /* SCREEN_INFO not initialized */
> -         (ORIG_VIDEO_MODE == 0x0D) ||        /* 320x200/4 */
> +     if ((ORIG_VIDEO_MODE == 0x0D) ||        /* 320x200/4 */
>           (ORIG_VIDEO_MODE == 0x0E) ||        /* 640x200/4 */
>           (ORIG_VIDEO_MODE == 0x10) ||        /* 640x350/4 */
>           (ORIG_VIDEO_MODE == 0x12) ||        /* 640x480/4 */
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to