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-devel

Re: [Xen-devel] [RFC] Xen Virtual Framebuffer

To: Anthony Liguori <aliguori@xxxxxxxxxx>
Subject: Re: [Xen-devel] [RFC] Xen Virtual Framebuffer
From: Jon Smirl <jonsmirl@xxxxxxxxx>
Date: Mon, 5 Dec 2005 22:13:18 -0500
Cc: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>, "Antonino A. Daplas" <adaplas@xxxxxxxxx>
Delivery-date: Tue, 06 Dec 2005 03:13:40 +0000
Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=ZI9sWMLV52ySth9Ei32v6g6EHwUO4F6YS7l3zCeq/qR8GkhMAEmPU+kh02kX7UldyzqwTpQKyLV311IpN5/VG3t09BnjNrFENY9P+iX/aZlHD2V6hING7fI11J4UzpUGGBDLj0sSbdS9MR6lko16+6ZLXar6suu5EVhBAGfbmfg=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <4394FD9C.1070409@xxxxxxxxxx>
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: <4394C683.1070000@xxxxxxxxxx> <4394D888.3080200@xxxxxxxxxx> <9e4733910512051635j9df6469g44aeb3e379d25430@xxxxxxxxxxxxxx> <4394E4C3.90706@xxxxxxxxxx> <9e4733910512051719n49de063fs6c6dee3a10c63c5d@xxxxxxxxxxxxxx> <4394E888.1030702@xxxxxxxxxx> <9e4733910512051835q172f77d5o73b8bac6478bdea1@xxxxxxxxxxxxxx> <4394FD9C.1070409@xxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
On 12/5/05, Anthony Liguori <aliguori@xxxxxxxxxx> wrote:
> Jon Smirl wrote:
>
> >After thinking about this for a while, wouldn't Xen be better off with
> >a virtual VGA device instead of a virtual fbdev? The virtual VGA
> >device will work for other operating systems as well as Linux.
> >Implementing a VESA BIOS may be better than emulating VGA.
> >http://www.vesa.org/public/VBE/vbecore3.pdf
> >
> >
> This is how Qemu does it so it's what we do for VT.  The VMI spec
> (VMware paravirtual spec) assumes that you'll be doing device emulation
> and calls for an emulated PCI bus.  Xen achieves really good performance
> though by avoiding device emulation.  Native speed device emulation is
> an active area of research though so this might not always be the case :-)
>
> We don't currently do that in Xen though so it would be a considerable
> amount of work to emulate a PCI bus and a VGA device (not to mention an
> emu86 to be able to run the BIOS).

VGA devices don't live on the PCI bus, they are ISA legacy devices at
fixed IO ports/RAM address. But VESA is a better solution than the VGA
device.

Does Xen supply a BIOS into the virtual machine? If so, just implement
the VESA entry points. Most of the Xen-based VESA entry points will do
nothing, but they can't return the not-implemented error. This is very
similar to what you are doing with a virtual fbdev, but the VESA
scheme will work for Windows too. Linux already has a vesafb driver
that will use the entry points you provide.

However, I am assuming that Windows/Linux will fallback to using VESA
calls if they don't find a physical VGA device. There isn't a simple
way to test this since every video card that implements VESA also
implements VGA. If you want to get errors from Linux while it is still
in real mode you need to implement the BIOS INT 10 interface.

--
Jon Smirl
jonsmirl@xxxxxxxxx

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