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/
Home Products Support Community News


Re: [Xen-devel] beginnings of allowing more than the basic 80x25 VGAscre

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: Re: [Xen-devel] beginnings of allowing more than the basic 80x25 VGAscreen resolution
From: David Hopwood <david.nospam.hopwood@xxxxxxxxxxxxxxxx>
Date: Tue, 05 Jul 2005 18:22:57 +0100
Delivery-date: Tue, 05 Jul 2005 17:21:44 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <fe1277b9bd8faeb0a215addba8ca5f77@xxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <3ACA40606221794F80A5670F0AF15F8408B19B13@pdsmsx403> <87wto5h0j1.fsf@xxxxxxxxxxx> <fe1277b9bd8faeb0a215addba8ca5f77@xxxxxxxxxxxx>
Reply-to: david.nospam.hopwood@xxxxxxxxxxxxxxxx
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla Thunderbird 1.0.2 (Windows/20050317)
Keir Fraser wrote:
On 5 Jul 2005, at 13:58, Gerd Knorr wrote:
> "Ling, Xiaofeng" <xiaofeng.ling@xxxxxxxxx> writes:

Is it possible to add some real mode code to xen like video.S in linux
kernel to switch mode?

Hmm, how about adding that to the boot loader(s)?

IIRC there are some fields in the multiboot info header for that kind
of stuff, so grub could setup that and pass on the info to xen (and
xen in turn to the dom0 kernel?).

Yes. How this is supposed to work is that the OS's multiboot header
specifies a desired mode:
and then the boot loader passes back information about the actual mode
that was set in the vbe_* fields of the information struct.

multiboot kernels are started in 32-bit protected mode by the boot
loader, i.e. xen has (unlike linux) no 16-bit startup code.  Thus
doing 16-bit BIOS calls once xen is running is a bit difficult ...

GRUB has code for switching back into real mode to do bios calls. We could take that, plus video.S, and put them in Xen. Then add an info structure for passing video info up to domain0. It's pretty ugly, but I think there is no nice solution here. Would we also need vesa/vga driver code from Linux for setting up font data in some graphics modes?

I prefer Gerd's suggestion of relying on the boot loader to set up a
reasonable mode. Multiboot is all about providing a sane initial hardware
state to multiboot-compliant kernels, so that they do not need as much
(preferably not any) of this crufty 16-bit initialization code.
This is code that with a cleaner hardware/BIOS design would not be needed
at all; ideally, OS designers should be able to forget about it like a
bad dream.

On current PC hardware, a boot loader must have code for doing BIOS calls
anyway, so it might as well set up the video mode (and font if needed).
I don't know what modes GRUB currently supports, but if it doesn't support
the > 25-line text modes then that's an RFE for GRUB, not something that
needs to be fixed by adding more cruft to Xen.

David Hopwood <david.nospam.hopwood@xxxxxxxxxxxxxxxx>

Xen-devel mailing list