WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] x86: Re-introduce VIDEO_CURRENT_MODE into

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] x86: Re-introduce VIDEO_CURRENT_MODE into video.S video-mode-setting
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Tue, 19 Jun 2007 14:40:29 -0700
Delivery-date: Tue, 19 Jun 2007 14:38:52 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User kfraser@xxxxxxxxxxxxxxxxxxxxx
# Date 1182262199 -3600
# Node ID 07688f8f53943cb51c965fa91923b1c4a3e87d0f
# Parent  8eaee9ef472f79af6a288a99c296dbc70510ba68
x86: Re-introduce VIDEO_CURRENT_MODE into video.S video-mode-setting
code, and make visible at the command line via 'vga=current'.
Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>
---
 docs/src/user.tex           |    1 +
 xen/arch/x86/boot/cmdline.S |   17 ++++++++++++++++-
 xen/arch/x86/boot/video.S   |    2 ++
 xen/arch/x86/boot/video.h   |    9 +++++----
 xen/drivers/video/vga.c     |    3 +++
 5 files changed, 27 insertions(+), 5 deletions(-)

diff -r 8eaee9ef472f -r 07688f8f5394 docs/src/user.tex
--- a/docs/src/user.tex Tue Jun 19 15:03:55 2007 +0100
+++ b/docs/src/user.tex Tue Jun 19 15:09:59 2007 +0100
@@ -3178,6 +3178,7 @@ editing \path{grub.conf}.
   \begin{description}
   \item[ ask ] Display a vga menu allowing manual selection of video
   mode.
+  \item[ current ] Use existing vga mode without modification.
   \item[ text-$<$mode$>$ ] Select text-mode resolution, where mode is
   one of 80x25, 80x28, 80x30, 80x34, 80x43, 80x50, 80x60.
   \item[ gfx-$<$mode$>$ ] Select VESA graphics mode
diff -r 8eaee9ef472f -r 07688f8f5394 xen/arch/x86/boot/cmdline.S
--- a/xen/arch/x86/boot/cmdline.S       Tue Jun 19 15:03:55 2007 +0100
+++ b/xen/arch/x86/boot/cmdline.S       Tue Jun 19 15:09:59 2007 +0100
@@ -297,7 +297,7 @@ 1:      lodsw
         call    .Lstr_prefix
         add     $8,%esp
         test    %eax,%eax
-        jnz     .Lcmdline_exit
+        jnz     .Lparse_vga_current
 
         /* We have 'vga=mode-<mode>'. */
         add     $5,%ebx
@@ -305,6 +305,19 @@ 1:      lodsw
         call    .Latoi
         add     $4,%esp
         mov     %ax,bootsym_phys(boot_vid_mode)
+        jmp     .Lcmdline_exit
+
+.Lparse_vga_current:
+        /* Check for 'vga=current'. */
+        push    %ebx
+        pushl   $sym_phys(.Lvga_current)
+        call    .Lstr_prefix
+        add     $8,%esp
+        test    %eax,%eax
+        jnz     .Lcmdline_exit
+
+        /* We have 'vga=current'. */
+        movw    $VIDEO_CURRENT_MODE,bootsym_phys(boot_vid_mode)
 
 .Lcmdline_exit:
         popa
@@ -328,6 +341,8 @@ 1:      lodsw
         .asciz  "gfx-"
 .Lvga_mode:
         .asciz  "mode-"
+.Lvga_current:
+        .asciz  "current"
 .Lno_rm_opt:
         .asciz  "no-real-mode"
 .Ledid_opt:
diff -r 8eaee9ef472f -r 07688f8f5394 xen/arch/x86/boot/video.S
--- a/xen/arch/x86/boot/video.S Tue Jun 19 15:03:55 2007 +0100
+++ b/xen/arch/x86/boot/video.S Tue Jun 19 15:09:59 2007 +0100
@@ -530,6 +530,7 @@ spec_inits:
         .word   bootsym(set_8pixel)
         .word   bootsym(set_80x43)
         .word   bootsym(set_80x28)
+        .word   bootsym(set_current)
         .word   bootsym(set_80x30)
         .word   bootsym(set_80x34)
         .word   bootsym(set_80x60)
@@ -575,6 +576,7 @@ set14:  movw    $0x1111, %ax            
         movb    $0x01, %ah              # Define cursor scan lines 11-12
         movw    $0x0b0c, %cx
         int     $0x10
+set_current:
         stc
         ret
 
diff -r 8eaee9ef472f -r 07688f8f5394 xen/arch/x86/boot/video.h
--- a/xen/arch/x86/boot/video.h Tue Jun 19 15:03:55 2007 +0100
+++ b/xen/arch/x86/boot/video.h Tue Jun 19 15:09:59 2007 +0100
@@ -16,10 +16,11 @@
 #define VIDEO_80x50         0x0f01
 #define VIDEO_80x43         0x0f02
 #define VIDEO_80x28         0x0f03
-#define VIDEO_80x30         0x0f04
-#define VIDEO_80x34         0x0f05
-#define VIDEO_80x60         0x0f06
-#define VIDEO_LAST_SPECIAL  0x0f07
+#define VIDEO_CURRENT_MODE  0x0f04
+#define VIDEO_80x30         0x0f05
+#define VIDEO_80x34         0x0f06
+#define VIDEO_80x60         0x0f07
+#define VIDEO_LAST_SPECIAL  0x0f08
 
 #define ASK_VGA             0xfffd
 #define VIDEO_VESA_BY_SIZE  0xffff
diff -r 8eaee9ef472f -r 07688f8f5394 xen/drivers/video/vga.c
--- a/xen/drivers/video/vga.c   Tue Jun 19 15:03:55 2007 +0100
+++ b/xen/drivers/video/vga.c   Tue Jun 19 15:09:59 2007 +0100
@@ -32,6 +32,9 @@ static unsigned char *video;
  * 
  *   'vga=ask':
  *      display a vga menu of available modes
+ * 
+ *   'vga=current':
+ *      use the current vga mode without modification
  * 
  *   'vga=text-80x<rows>':
  *      text mode, where <rows> is one of {25,28,30,34,43,50,60}

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] x86: Re-introduce VIDEO_CURRENT_MODE into video.S video-mode-setting, Xen patchbot-unstable <=