Mr. Teo En Ming (Zhang Enming)
2009-Aug-25 15:47 UTC
[Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB
Dear All, I have managed to do PCI-e VGA passthrough with the open source Xen but the work is still in progress because although Windows XP guest can see the REAL PCI-e x16 graphics card instead of an emulated graphics driver, it cannot be initialized yet. Thanks to Intel Engineer Han Weidong, Pasi Kärkkäinen, Boris Derzhavets, Marc, Caz Yokoyama, and others who have helped me and shared their knowledge with me along the way. System Configuration: Intel Desktop Board DQ45CB with BIOS upgraded to 0093 Onboard Intel GMA 4500 Graphics (IGD) nVidia Geforce 8400 GS PCI Express x16 Graphics Card Fedora 11 Linux 64-bit Xen paravirt operations Domain 0 Host Operating System Xen 3.5 Unstable/Development Type 1 Hypervisor Jeremy Fitzhardinge''s Xen paravirt-ops domain 0 Kernel 2.6.31-rc6 Primary Video Adapter in BIOS: IGD Please see the screenshots and my blog at the link here: http://teo-en-ming-aka-zhang-enming.blogspot.com/2009/08/nvidia-geforce-8400-gs-pci-express-x16.html -- Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com Alma Maters: Singapore Polytechnic, National University of Singapore _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Mr. Teo En Ming (Zhang Enming)
2009-Aug-25 15:56 UTC
Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB
I have uninstalled Xen 3.4.1 and installed Xen 3.5-unstable as suggested by Weidong. -- Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com Alma Maters: Singapore Polytechnic, National University of Singapore On 08/25/2009 11:47 PM, Mr. Teo En Ming (Zhang Enming) wrote:> Dear All, > > I have managed to do PCI-e VGA passthrough with the open source Xen > but the work is still in progress because although Windows XP guest > can see the REAL PCI-e x16 graphics card instead of an emulated > graphics driver, it cannot be initialized yet. > > Thanks to Intel Engineer Han Weidong, Pasi Kärkkäinen, Boris > Derzhavets, Marc, Caz Yokoyama, and others who have helped me and > shared their knowledge with me along the way. > > System Configuration: > > Intel Desktop Board DQ45CB with BIOS upgraded to 0093 > Onboard Intel GMA 4500 Graphics (IGD) > nVidia Geforce 8400 GS PCI Express x16 Graphics Card > > Fedora 11 Linux 64-bit Xen paravirt operations Domain 0 Host Operating > System > Xen 3.5 Unstable/Development Type 1 Hypervisor > Jeremy Fitzhardinge''s Xen paravirt-ops domain 0 Kernel 2.6.31-rc6 > Primary Video Adapter in BIOS: IGD > > Please see the screenshots and my blog at the link here: > > http://teo-en-ming-aka-zhang-enming.blogspot.com/2009/08/nvidia-geforce-8400-gs-pci-express-x16.html > >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
<djmagee@mageenet.net>
2009-Aug-25 17:25 UTC
RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThroughto Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop BoardDQ45CB
As I''ve pointed out on this list before, there are not enough PCIe lanes on the DQ45CB to drive both the internal graphics adapter and the add-on adapter at the same time. I believe the onboard one may be able to operate in some sort of VGA only mode when there is a card installed and used as the primary adapter. I have a similar setup, using the same motherboard, and an ATI 4770. I used the VGA passthrough patches from an earlier posting (I saw you followed the same set of instructions), with limited success. I''ve been using 3.4-testing, and ''xenified'' 2.6.29.6 kernel. I made modifications to the dom0 portion of the patches so they would apply to my xenified 2.6.29 kernel. These patches include code that will copy the VGA bios to the guest bios instead of using the emulated vga bios. I''ve had very little success, however. I have only tried passing through the ATI adapter. In all instances, the guest bios messages appear on my monitor, so this much works. In some cases, the guest essentially stops there; xm list show''s about 2sec CPU usage and nothing ever happens after that point. In other cases, the guest (win xp/vista/7, as well as KNOPPIX 5.3.1 DVD) will boot all the way, but in very low res/color mode, and cannot properly initialize the video device. Once or twice, it actually did recognize the device and had a reasonable default color/resolution combination. In all cases where the guest actually boots, the system eventually freezes. In some cases, I get endless streams of iommu page faults. I have 8GB ram installed. In all cases I''ve limited dom0 memory to 2GB. In all cases, my guest has been assigned 2GB of memory. I have a dual core e6600. I''ve tried allowing dom0 to use both cores, offlining one core (using xend dom0_vcpu setting) after boot, and restricting dom0 to only one core using the dom0_max_vcpus xen hypervisor parameter. In all of these cases I''ve tried both one and two vcpus for the guest. My success with VGA passthrough seems somewhat random and no combination of cpu assignment seems to have any effect. I have not tried with the 2.6.18-xen kernel as I haven''t gotten it to boot on my hardware; it can never find my volume group, even if I create a initrd with all of the required modules, or build those drivers into the kernel. I have not spent more than maybe a half an hour on this problem; I suspect it may have something to do with the version of mkinitrd I''m using (from Fedora 9 x64). If anyone else has any insight or similar experience I''d also love to hear it. Doug Magee djmagee@mageenet.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Mr. Teo En Ming (Zhang Enming) Sent: Tuesday, August 25, 2009 11:57 AM To: enming.teo@asiasoftsea.net Cc: xen-devel@lists.xensource.com Subject: Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThroughto Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop BoardDQ45CB I have uninstalled Xen 3.4.1 and installed Xen 3.5-unstable as suggested by Weidong. -- Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com Alma Maters: Singapore Polytechnic, National University of Singapore On 08/25/2009 11:47 PM, Mr. Teo En Ming (Zhang Enming) wrote:> Dear All, > > I have managed to do PCI-e VGA passthrough with the open source Xen > but the work is still in progress because although Windows XP guest > can see the REAL PCI-e x16 graphics card instead of an emulated > graphics driver, it cannot be initialized yet. > > Thanks to Intel Engineer Han Weidong, Pasi Kärkkäinen, Boris > Derzhavets, Marc, Caz Yokoyama, and others who have helped me and > shared their knowledge with me along the way. > > System Configuration: > > Intel Desktop Board DQ45CB with BIOS upgraded to 0093 > Onboard Intel GMA 4500 Graphics (IGD) > nVidia Geforce 8400 GS PCI Express x16 Graphics Card > > Fedora 11 Linux 64-bit Xen paravirt operations Domain 0 Host Operating > System > Xen 3.5 Unstable/Development Type 1 Hypervisor > Jeremy Fitzhardinge''s Xen paravirt-ops domain 0 Kernel 2.6.31-rc6 > Primary Video Adapter in BIOS: IGD > > Please see the screenshots and my blog at the link here: > > http://teo-en-ming-aka-zhang-enming.blogspot.com/2009/08/nvidia-geforce-8400-gs-pci-express-x16.html > >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
<djmagee@mageenet.net>
2009-Aug-25 19:57 UTC
RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThroughto Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop BoardDQ45CB
Here are the patches I used. The file ending with a timestamp is the set of patches that was posted on xen-devel a couple of months ago by someone with a similar H/W set up and goals. I applied this to my xen-3.4-testing tree as is. As I mentioned I''m using a xenified 2.6.29.6. Of course, I had no idea what parts of the kernel code in that patch I needed to apply to this much newer kernel, so I just tried as is. It failed patching include/linux/pci_regs.h. I saw that most of the stuff in the vgapt patch was already in the 2.6.29 kernel, but some of the PCI_AF_* defines had different values. Vga-pt-patch-2.6.29.6-pci_regs.patch is my patch to that file, and vga-pt-patch-kernel-only contains the kernel patches from the original file but after a global replace to make sure they used the slightly different PCI_AF_* names. I simply made sure that the values would end up the same as they would have been in the 2.6.18-xen kernel. I wouldn''t know if this was the right approach. I did not apply the FLR patch that is in xen-unstable, and I was under the impression the same capability is in the patch I''ve attached. For what it''s worth, when I start a guest with the video card assigned and vga_passthrough=1, I can hear the fan on the video card spin up for a few seconds just as it does when the real machine (re)boots. If I (or my test environment) can be of any assistance please let me know. I saw that intel plans on releasing vga passthrough patches soon so I''ll be looking out for those. Doug Magee -----Original Message----- From: Andrew Lyon [mailto:andrew.lyon@gmail.com] Sent: Tuesday, August 25, 2009 1:56 PM To: djmagee@mageenet.net Subject: Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThroughto Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop BoardDQ45CB On Tue, Aug 25, 2009 at 6:25 PM, <djmagee@mageenet.net> wrote:> As I''ve pointed out on this list before, there are not enough PCIe lanes on the DQ45CB to drive both the internal graphics adapter and the add-on adapter at the same time. I believe the onboard one may be able to operate in some sort of VGA only mode when there is a card installed and used as the primary adapter. > > I have a similar setup, using the same motherboard, and an ATI 4770. I used the VGA passthrough patches from an earlier posting (I saw you followed the same set of instructions), with limited success. I''ve been using 3.4-testing, and ''xenified'' 2.6.29.6 kernel. I made modifications to the dom0 portion of the patches so they would apply to my xenified 2.6.29 kernel. These patches include code that will copy the VGA bios to the guest bios instead of using the emulated vga bios. I''ve had very little success, however. I have only tried passing through the ATI adapter. In all instances, the guest bios messages appear on my monitor, so this much works. In some cases, the guest essentially stops there; xm list show''s about 2sec CPU usage and nothing ever happens after that point. In other cases, the guest (win xp/vista/7, as well as KNOPPIX 5.3.1 DVD) will boot all the way, but in very low res/color mode, and cannot properly initialize the video device. Once or twice, it actually did recognize the device and had a reasonable default color/resolution combination. In all cases where the guest actually boots, the system eventually freezes. In some cases, I get endless streams of iommu page faults.Can you post the patches you used? specifically the parts for copying the vga bios. did you also use the patch for flr? I''ve ported it to 2.6.29 but not had time to try vga passthru yet.> > I have 8GB ram installed. In all cases I''ve limited dom0 memory to 2GB. In all cases, my guest has been assigned 2GB of memory. > > I have a dual core e6600. I''ve tried allowing dom0 to use both cores, offlining one core (using xend dom0_vcpu setting) after boot, and restricting dom0 to only one core using the dom0_max_vcpus xen hypervisor parameter. In all of these cases I''ve tried both one and two vcpus for the guest. My success with VGA passthrough seems somewhat random and no combination of cpu assignment seems to have any effect. > > I have not tried with the 2.6.18-xen kernel as I haven''t gotten it to boot on my hardware; it can never find my volume group, even if I create a initrd with all of the required modules, or build those drivers into the kernel. I have not spent more than maybe a half an hour on this problem; I suspect it may have something to do with the version of mkinitrd I''m using (from Fedora 9 x64). > > If anyone else has any insight or similar experience I''d also love to hear it. > > Doug Magee > djmagee@mageenet.com > > -----Original Message----- > From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Mr. Teo En Ming (Zhang Enming) > Sent: Tuesday, August 25, 2009 11:57 AM > To: enming.teo@asiasoftsea.net > Cc: xen-devel@lists.xensource.com > Subject: Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThroughto Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop BoardDQ45CB > > I have uninstalled Xen 3.4.1 and installed Xen 3.5-unstable as suggested > by Weidong. > > -- > Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) > Technical Support Engineer > Information Technology Department > Asiasoft Online Pte Ltd > Tampines Central 1 #04-01 Tampines Plaza > Singapore 529541 > Republic of Singapore > Mobile: +65-9648-9798 > MSN: teoenming@hotmail.com > Alma Maters: Singapore Polytechnic, National University of Singapore > > > > On 08/25/2009 11:47 PM, Mr. Teo En Ming (Zhang Enming) wrote: >> Dear All, >> >> I have managed to do PCI-e VGA passthrough with the open source Xen >> but the work is still in progress because although Windows XP guest >> can see the REAL PCI-e x16 graphics card instead of an emulated >> graphics driver, it cannot be initialized yet. >> >> Thanks to Intel Engineer Han Weidong, Pasi Kärkkäinen, Boris >> Derzhavets, Marc, Caz Yokoyama, and others who have helped me and >> shared their knowledge with me along the way. >> >> System Configuration: >> >> Intel Desktop Board DQ45CB with BIOS upgraded to 0093 >> Onboard Intel GMA 4500 Graphics (IGD) >> nVidia Geforce 8400 GS PCI Express x16 Graphics Card >> >> Fedora 11 Linux 64-bit Xen paravirt operations Domain 0 Host Operating >> System >> Xen 3.5 Unstable/Development Type 1 Hypervisor >> Jeremy Fitzhardinge''s Xen paravirt-ops domain 0 Kernel 2.6.31-rc6 >> Primary Video Adapter in BIOS: IGD >> >> Please see the screenshots and my blog at the link here: >> >> http://teo-en-ming-aka-zhang-enming.blogspot.com/2009/08/nvidia-geforce-8400-gs-pci-express-x16.html >> >> > > > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Han, Weidong
2009-Aug-26 08:26 UTC
RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThroughto Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop BoardDQ45CB
I suppose you just use the patch posted in mailing list before. nVidia Geforce 8400 passthrough needs extra hacks. We can make it work in our experiments with 1:1 map of its MMIO BARs. We are working on gfx passthrough on latest xen-unstable. Firstly, we want to cook a simple patch including generic changes to support passthrough of virtualization friendly gfx cards, such as Nvidia FX3800. This patch is basically done. Then, we will add some hacks for more gfx cards passthrough, such as iGFX and some Nvidia and ATI cards. Regards, Weidong djmagee@mageenet.net wrote:> As I''ve pointed out on this list before, there are not enough PCIe > lanes on the DQ45CB to drive both the internal graphics adapter and > the add-on adapter at the same time. I believe the onboard one may > be able to operate in some sort of VGA only mode when there is a card > installed and used as the primary adapter. > > I have a similar setup, using the same motherboard, and an ATI 4770. > I used the VGA passthrough patches from an earlier posting (I saw you > followed the same set of instructions), with limited success. I''ve > been using 3.4-testing, and ''xenified'' 2.6.29.6 kernel. I made > modifications to the dom0 portion of the patches so they would apply > to my xenified 2.6.29 kernel. These patches include code that will > copy the VGA bios to the guest bios instead of using the emulated vga > bios. I''ve had very little success, however. I have only tried > passing through the ATI adapter. In all instances, the guest bios > messages appear on my monitor, so this much works. In some cases, > the guest essentially stops there; xm list show''s about 2sec CPU > usage and nothing ever happens after that point. In other cases, the > guest (win xp/vista/7, as well as KNOPPIX 5.3.1 DVD) will boot all > the way, but in very low res/color mode, and cannot properly > initialize the video device. Once or twice, it actually did > recognize the device and had a reasonable default color/resolution > combination. In all cases where the guest actually boots, the system > eventually freezes. In some cases, I get endless streams of iommu > page faults. > > I have 8GB ram installed. In all cases I''ve limited dom0 memory to > 2GB. In all cases, my guest has been assigned 2GB of memory. > > I have a dual core e6600. I''ve tried allowing dom0 to use both > cores, offlining one core (using xend dom0_vcpu setting) after boot, > and restricting dom0 to only one core using the dom0_max_vcpus xen > hypervisor parameter. In all of these cases I''ve tried both one and > two vcpus for the guest. My success with VGA passthrough seems > somewhat random and no combination of cpu assignment seems to have > any effect. > > I have not tried with the 2.6.18-xen kernel as I haven''t gotten it to > boot on my hardware; it can never find my volume group, even if I > create a initrd with all of the required modules, or build those > drivers into the kernel. I have not spent more than maybe a half an > hour on this problem; I suspect it may have something to do with the > version of mkinitrd I''m using (from Fedora 9 x64). > > If anyone else has any insight or similar experience I''d also love to > hear it. > > Doug Magee > djmagee@mageenet.com > > -----Original Message----- > From: xen-devel-bounces@lists.xensource.com > [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Mr. Teo > En Ming (Zhang Enming) > Sent: Tuesday, August 25, 2009 11:57 AM > To: enming.teo@asiasoftsea.net > Cc: xen-devel@lists.xensource.com > Subject: Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA > PassThroughto Windows XP Home 32-bit HVM Virtual Machine with Intel > Desktop BoardDQ45CB > > I have uninstalled Xen 3.4.1 and installed Xen 3.5-unstable as > suggested > by Weidong. > > > On 08/25/2009 11:47 PM, Mr. Teo En Ming (Zhang Enming) wrote: >> Dear All, >> >> I have managed to do PCI-e VGA passthrough with the open source Xen >> but the work is still in progress because although Windows XP guest >> can see the REAL PCI-e x16 graphics card instead of an emulated >> graphics driver, it cannot be initialized yet. >> >> Thanks to Intel Engineer Han Weidong, Pasi Kärkkäinen, Boris >> Derzhavets, Marc, Caz Yokoyama, and others who have helped me and >> shared their knowledge with me along the way. >> >> System Configuration: >> >> Intel Desktop Board DQ45CB with BIOS upgraded to 0093 >> Onboard Intel GMA 4500 Graphics (IGD) >> nVidia Geforce 8400 GS PCI Express x16 Graphics Card >> >> Fedora 11 Linux 64-bit Xen paravirt operations Domain 0 Host >> Operating System Xen 3.5 Unstable/Development Type 1 Hypervisor >> Jeremy Fitzhardinge''s Xen paravirt-ops domain 0 Kernel 2.6.31-rc6 >> Primary Video Adapter in BIOS: IGD >> >> Please see the screenshots and my blog at the link here: >> >> http://teo-en-ming-aka-zhang-enming.blogspot.com/2009/08/nvidia-geforce-8400-gs-pci-express-x16.html >> >> > > > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Teo En Ming (Zhang Enming)
2009-Aug-26 09:21 UTC
RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB
Hi Weidong, Could you share with us the hack codes for making Geforce 8400 GS work and also how to let the Windows HVM guest boot up using the real BIOS of Geforce 8400 GS instead of an emulated VGA BIOS? Thank you. Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com Alma Maters: Singapore Polytechnic, National University of Singapore -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Han, Weidong Sent: Wednesday, August 26, 2009 4:27 PM To: ''djmagee@mageenet.net''; ''enming.teo@asiasoftsea.net'' Cc: ''xen-devel@lists.xensource.com'' Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGAPassThroughto Windows XP Home 32-bit HVM Virtual Machine with IntelDesktop BoardDQ45CB I suppose you just use the patch posted in mailing list before. nVidia Geforce 8400 passthrough needs extra hacks. We can make it work in our experiments with 1:1 map of its MMIO BARs. We are working on gfx passthrough on latest xen-unstable. Firstly, we want to cook a simple patch including generic changes to support passthrough of virtualization friendly gfx cards, such as Nvidia FX3800. This patch is basically done. Then, we will add some hacks for more gfx cards passthrough, such as iGFX and some Nvidia and ATI cards. Regards, Weidong djmagee@mageenet.net wrote:> As I''ve pointed out on this list before, there are not enough PCIe > lanes on the DQ45CB to drive both the internal graphics adapter and > the add-on adapter at the same time. I believe the onboard one may > be able to operate in some sort of VGA only mode when there is a card > installed and used as the primary adapter. > > I have a similar setup, using the same motherboard, and an ATI 4770. > I used the VGA passthrough patches from an earlier posting (I saw you > followed the same set of instructions), with limited success. I''ve > been using 3.4-testing, and ''xenified'' 2.6.29.6 kernel. I made > modifications to the dom0 portion of the patches so they would apply > to my xenified 2.6.29 kernel. These patches include code that will > copy the VGA bios to the guest bios instead of using the emulated vga > bios. I''ve had very little success, however. I have only tried > passing through the ATI adapter. In all instances, the guest bios > messages appear on my monitor, so this much works. In some cases, > the guest essentially stops there; xm list show''s about 2sec CPU > usage and nothing ever happens after that point. In other cases, the > guest (win xp/vista/7, as well as KNOPPIX 5.3.1 DVD) will boot all > the way, but in very low res/color mode, and cannot properly > initialize the video device. Once or twice, it actually did > recognize the device and had a reasonable default color/resolution > combination. In all cases where the guest actually boots, the system > eventually freezes. In some cases, I get endless streams of iommu > page faults. > > I have 8GB ram installed. In all cases I''ve limited dom0 memory to > 2GB. In all cases, my guest has been assigned 2GB of memory. > > I have a dual core e6600. I''ve tried allowing dom0 to use both > cores, offlining one core (using xend dom0_vcpu setting) after boot, > and restricting dom0 to only one core using the dom0_max_vcpus xen > hypervisor parameter. In all of these cases I''ve tried both one and > two vcpus for the guest. My success with VGA passthrough seems > somewhat random and no combination of cpu assignment seems to have > any effect. > > I have not tried with the 2.6.18-xen kernel as I haven''t gotten it to > boot on my hardware; it can never find my volume group, even if I > create a initrd with all of the required modules, or build those > drivers into the kernel. I have not spent more than maybe a half an > hour on this problem; I suspect it may have something to do with the > version of mkinitrd I''m using (from Fedora 9 x64). > > If anyone else has any insight or similar experience I''d also love to > hear it. > > Doug Magee > djmagee@mageenet.com > > -----Original Message----- > From: xen-devel-bounces@lists.xensource.com > [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Mr. Teo > En Ming (Zhang Enming) > Sent: Tuesday, August 25, 2009 11:57 AM > To: enming.teo@asiasoftsea.net > Cc: xen-devel@lists.xensource.com > Subject: Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA > PassThroughto Windows XP Home 32-bit HVM Virtual Machine with Intel > Desktop BoardDQ45CB > > I have uninstalled Xen 3.4.1 and installed Xen 3.5-unstable as > suggested > by Weidong. > > > On 08/25/2009 11:47 PM, Mr. Teo En Ming (Zhang Enming) wrote: >> Dear All, >> >> I have managed to do PCI-e VGA passthrough with the open source Xen >> but the work is still in progress because although Windows XP guest >> can see the REAL PCI-e x16 graphics card instead of an emulated >> graphics driver, it cannot be initialized yet. >> >> Thanks to Intel Engineer Han Weidong, Pasi Kärkkäinen, Boris >> Derzhavets, Marc, Caz Yokoyama, and others who have helped me and >> shared their knowledge with me along the way. >> >> System Configuration: >> >> Intel Desktop Board DQ45CB with BIOS upgraded to 0093 >> Onboard Intel GMA 4500 Graphics (IGD) >> nVidia Geforce 8400 GS PCI Express x16 Graphics Card >> >> Fedora 11 Linux 64-bit Xen paravirt operations Domain 0 Host >> Operating System Xen 3.5 Unstable/Development Type 1 Hypervisor >> Jeremy Fitzhardinge''s Xen paravirt-ops domain 0 Kernel 2.6.31-rc6 >> Primary Video Adapter in BIOS: IGD >> >> Please see the screenshots and my blog at the link here: >> >>http://teo-en-ming-aka-zhang-enming.blogspot.com/2009/08/nvidia-geforce-8400 -gs-pci-express-x16.html>> >> > > > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Han, Weidong
2009-Aug-26 10:56 UTC
RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB
Teo En Ming (Zhang Enming) wrote:> Hi Weidong, > > Could you share with us the hack codes for making Geforce 8400 GS > work and also how to let the Windows HVM guest boot up using the real > BIOS of Geforce 8400 GS instead of an emulated VGA BIOS? >What patch are you using now? Using real VGA bios of gfx card to replace emulatd VGA bios is the prerequisite of gfx passthrough. You can find it in posted gfx passthrough patches or XCI. For hack of making Geforce 8400, we reserve physical MMIO BARs in dsdt.asl, and make it 1:1 map between physical MMIO BARs and virtual MMIO BARs of the card. Currently our code is experimental, we will send out in mailing list after cleanup and more tests. Regards, Weidong> Thank you. > > Regards, > > Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) > BEng(Hons)(Mechanical Engineering) > Technical Support Engineer > Information Technology Department > Asiasoft Online Pte Ltd > Tampines Central 1 #04-01 Tampines Plaza > Singapore 529541 > Republic of Singapore > Mobile: +65-9648-9798 > MSN: teoenming@hotmail.com > Alma Maters: Singapore Polytechnic, National University of Singapore > > -----Original Message----- > From: xen-devel-bounces@lists.xensource.com > [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Han, > Weidong Sent: Wednesday, August 26, 2009 4:27 PM > To: ''djmagee@mageenet.net''; ''enming.teo@asiasoftsea.net'' > Cc: ''xen-devel@lists.xensource.com'' > Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 > VGAPassThroughto Windows XP Home 32-bit HVM Virtual Machine with > IntelDesktop BoardDQ45CB > > I suppose you just use the patch posted in mailing list before. nVidia > Geforce 8400 passthrough needs extra hacks. We can make it work in our > experiments with 1:1 map of its MMIO BARs. > > We are working on gfx passthrough on latest xen-unstable. Firstly, we > want to cook a simple patch including generic changes to support > passthrough of virtualization friendly gfx cards, such as Nvidia > FX3800. This patch is basically done. Then, we will add some hacks > for more gfx cards passthrough, such as iGFX and some Nvidia and ATI > cards. > > Regards, > Weidong > > djmagee@mageenet.net wrote: >> As I''ve pointed out on this list before, there are not enough PCIe >> lanes on the DQ45CB to drive both the internal graphics adapter and >> the add-on adapter at the same time. I believe the onboard one may >> be able to operate in some sort of VGA only mode when there is a card >> installed and used as the primary adapter. >> >> I have a similar setup, using the same motherboard, and an ATI 4770. >> I used the VGA passthrough patches from an earlier posting (I saw you >> followed the same set of instructions), with limited success. I''ve >> been using 3.4-testing, and ''xenified'' 2.6.29.6 kernel. I made >> modifications to the dom0 portion of the patches so they would apply >> to my xenified 2.6.29 kernel. These patches include code that will >> copy the VGA bios to the guest bios instead of using the emulated vga >> bios. I''ve had very little success, however. I have only tried >> passing through the ATI adapter. In all instances, the guest bios >> messages appear on my monitor, so this much works. In some cases, >> the guest essentially stops there; xm list show''s about 2sec CPU >> usage and nothing ever happens after that point. In other cases, the >> guest (win xp/vista/7, as well as KNOPPIX 5.3.1 DVD) will boot all >> the way, but in very low res/color mode, and cannot properly >> initialize the video device. Once or twice, it actually did >> recognize the device and had a reasonable default color/resolution >> combination. In all cases where the guest actually boots, the system >> eventually freezes. In some cases, I get endless streams of iommu >> page faults. >> >> I have 8GB ram installed. In all cases I''ve limited dom0 memory to >> 2GB. In all cases, my guest has been assigned 2GB of memory. >> >> I have a dual core e6600. I''ve tried allowing dom0 to use both >> cores, offlining one core (using xend dom0_vcpu setting) after boot, >> and restricting dom0 to only one core using the dom0_max_vcpus xen >> hypervisor parameter. In all of these cases I''ve tried both one and >> two vcpus for the guest. My success with VGA passthrough seems >> somewhat random and no combination of cpu assignment seems to have >> any effect. >> >> I have not tried with the 2.6.18-xen kernel as I haven''t gotten it to >> boot on my hardware; it can never find my volume group, even if I >> create a initrd with all of the required modules, or build those >> drivers into the kernel. I have not spent more than maybe a half an >> hour on this problem; I suspect it may have something to do with the >> version of mkinitrd I''m using (from Fedora 9 x64). >> >> If anyone else has any insight or similar experience I''d also love >> to hear it. >> >> Doug Magee >> djmagee@mageenet.com >> >> -----Original Message----- >> From: xen-devel-bounces@lists.xensource.com >> [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Mr. Teo >> En Ming (Zhang Enming) Sent: Tuesday, August 25, 2009 11:57 AM >> To: enming.teo@asiasoftsea.net >> Cc: xen-devel@lists.xensource.com >> Subject: Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA >> PassThroughto Windows XP Home 32-bit HVM Virtual Machine with Intel >> Desktop BoardDQ45CB >> >> I have uninstalled Xen 3.4.1 and installed Xen 3.5-unstable as >> suggested by Weidong. >> >> >> On 08/25/2009 11:47 PM, Mr. Teo En Ming (Zhang Enming) wrote: >>> Dear All, >>> >>> I have managed to do PCI-e VGA passthrough with the open source Xen >>> but the work is still in progress because although Windows XP guest >>> can see the REAL PCI-e x16 graphics card instead of an emulated >>> graphics driver, it cannot be initialized yet. >>> >>> Thanks to Intel Engineer Han Weidong, Pasi Kärkkäinen, Boris >>> Derzhavets, Marc, Caz Yokoyama, and others who have helped me and >>> shared their knowledge with me along the way. >>> >>> System Configuration: >>> >>> Intel Desktop Board DQ45CB with BIOS upgraded to 0093 >>> Onboard Intel GMA 4500 Graphics (IGD) >>> nVidia Geforce 8400 GS PCI Express x16 Graphics Card >>> >>> Fedora 11 Linux 64-bit Xen paravirt operations Domain 0 Host >>> Operating System Xen 3.5 Unstable/Development Type 1 Hypervisor >>> Jeremy Fitzhardinge''s Xen paravirt-ops domain 0 Kernel 2.6.31-rc6 >>> Primary Video Adapter in BIOS: IGD >>> >>> Please see the screenshots and my blog at the link here: >>> >>> > http://teo-en-ming-aka-zhang-enming.blogspot.com/2009/08/nvidia-geforce-8400 > -gs-pci-express-x16.html >>> >>> >> >> >> >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: > 08/25/09 18:07:00 > > No virus found in this outgoing message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: > 08/25/09 18:07:00_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Teo En Ming (Zhang Enming)
2009-Aug-26 11:24 UTC
RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB
Hi Weidong, Currently I am using the entire Xen 3.5-unstable branch and not using the posted pci-stub patch changeset 19893 to patch Xen 3.4.1-testing. I am using Xen 3.5-unstable in conjunction with pvops dom 0 kernel 2.6.31-rc6. Here are my questions: 1) How do I extract out the VGA BIOS/firmware from the firmware/EEPROM chip on the Geforce 8400 GS VGA card? If it is not possible to extract, where can I download the firmware? NVIDIA does not provide display card firmware/BIOS files for public download on its website. 2) How do I get the Geforce 8400 GS VGA BIOS to load instead of the emulated VGA BIOS? Which configuration files/source codes do I have to configure/patch? 3) What are physical MMIO, virtual MMIO Bars, dsdt.asl and 1:1 map? I am sorry but I am not a graphics card hardware engineer so I do not understand those terms. I would appreciate it if you could write out some steps that I could carry out or point me to already available documentation. 4) I don''t mind using experimental code. Please post it on the xen-devel mailing list so that I could try it out. Thank you very much. Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: Han, Weidong [mailto:weidong.han@intel.com] Sent: Wednesday, August 26, 2009 6:56 PM To: ''enming.teo@asiasoftsea.net''; ''djmagee@mageenet.net'' Cc: ''xen-devel@lists.xensource.com'' Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB Teo En Ming (Zhang Enming) wrote:> Hi Weidong, > > Could you share with us the hack codes for making Geforce 8400 GS > work and also how to let the Windows HVM guest boot up using the real > BIOS of Geforce 8400 GS instead of an emulated VGA BIOS? >What patch are you using now? Using real VGA bios of gfx card to replace emulatd VGA bios is the prerequisite of gfx passthrough. You can find it in posted gfx passthrough patches or XCI. For hack of making Geforce 8400, we reserve physical MMIO BARs in dsdt.asl, and make it 1:1 map between physical MMIO BARs and virtual MMIO BARs of the card. Currently our code is experimental, we will send out in mailing list after cleanup and more tests. Regards, Weidong> Thank you. > > Regards, > > Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) > BEng(Hons)(Mechanical Engineering) > Technical Support Engineer > Information Technology Department > Asiasoft Online Pte Ltd > Tampines Central 1 #04-01 Tampines Plaza > Singapore 529541 > Republic of Singapore > Mobile: +65-9648-9798 > MSN: teoenming@hotmail.com > Alma Maters: Singapore Polytechnic, National University of Singapore > > -----Original Message----- > From: xen-devel-bounces@lists.xensource.com > [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Han, > Weidong Sent: Wednesday, August 26, 2009 4:27 PM > To: ''djmagee@mageenet.net''; ''enming.teo@asiasoftsea.net'' > Cc: ''xen-devel@lists.xensource.com'' > Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 > VGAPassThroughto Windows XP Home 32-bit HVM Virtual Machine with > IntelDesktop BoardDQ45CB > > I suppose you just use the patch posted in mailing list before. nVidia > Geforce 8400 passthrough needs extra hacks. We can make it work in our > experiments with 1:1 map of its MMIO BARs. > > We are working on gfx passthrough on latest xen-unstable. Firstly, we > want to cook a simple patch including generic changes to support > passthrough of virtualization friendly gfx cards, such as Nvidia > FX3800. This patch is basically done. Then, we will add some hacks > for more gfx cards passthrough, such as iGFX and some Nvidia and ATI > cards. > > Regards, > Weidong > > djmagee@mageenet.net wrote: >> As I''ve pointed out on this list before, there are not enough PCIe >> lanes on the DQ45CB to drive both the internal graphics adapter and >> the add-on adapter at the same time. I believe the onboard one may >> be able to operate in some sort of VGA only mode when there is a card >> installed and used as the primary adapter. >> >> I have a similar setup, using the same motherboard, and an ATI 4770. >> I used the VGA passthrough patches from an earlier posting (I saw you >> followed the same set of instructions), with limited success. I''ve >> been using 3.4-testing, and ''xenified'' 2.6.29.6 kernel. I made >> modifications to the dom0 portion of the patches so they would apply >> to my xenified 2.6.29 kernel. These patches include code that will >> copy the VGA bios to the guest bios instead of using the emulated vga >> bios. I''ve had very little success, however. I have only tried >> passing through the ATI adapter. In all instances, the guest bios >> messages appear on my monitor, so this much works. In some cases, >> the guest essentially stops there; xm list show''s about 2sec CPU >> usage and nothing ever happens after that point. In other cases, the >> guest (win xp/vista/7, as well as KNOPPIX 5.3.1 DVD) will boot all >> the way, but in very low res/color mode, and cannot properly >> initialize the video device. Once or twice, it actually did >> recognize the device and had a reasonable default color/resolution >> combination. In all cases where the guest actually boots, the system >> eventually freezes. In some cases, I get endless streams of iommu >> page faults. >> >> I have 8GB ram installed. In all cases I''ve limited dom0 memory to >> 2GB. In all cases, my guest has been assigned 2GB of memory. >> >> I have a dual core e6600. I''ve tried allowing dom0 to use both >> cores, offlining one core (using xend dom0_vcpu setting) after boot, >> and restricting dom0 to only one core using the dom0_max_vcpus xen >> hypervisor parameter. In all of these cases I''ve tried both one and >> two vcpus for the guest. My success with VGA passthrough seems >> somewhat random and no combination of cpu assignment seems to have >> any effect. >> >> I have not tried with the 2.6.18-xen kernel as I haven''t gotten it to >> boot on my hardware; it can never find my volume group, even if I >> create a initrd with all of the required modules, or build those >> drivers into the kernel. I have not spent more than maybe a half an >> hour on this problem; I suspect it may have something to do with the >> version of mkinitrd I''m using (from Fedora 9 x64). >> >> If anyone else has any insight or similar experience I''d also love >> to hear it. >> >> Doug Magee >> djmagee@mageenet.com >> >> -----Original Message----- >> From: xen-devel-bounces@lists.xensource.com >> [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Mr. Teo >> En Ming (Zhang Enming) Sent: Tuesday, August 25, 2009 11:57 AM >> To: enming.teo@asiasoftsea.net >> Cc: xen-devel@lists.xensource.com >> Subject: Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA >> PassThroughto Windows XP Home 32-bit HVM Virtual Machine with Intel >> Desktop BoardDQ45CB >> >> I have uninstalled Xen 3.4.1 and installed Xen 3.5-unstable as >> suggested by Weidong. >> >> >> On 08/25/2009 11:47 PM, Mr. Teo En Ming (Zhang Enming) wrote: >>> Dear All, >>> >>> I have managed to do PCI-e VGA passthrough with the open source Xen >>> but the work is still in progress because although Windows XP guest >>> can see the REAL PCI-e x16 graphics card instead of an emulated >>> graphics driver, it cannot be initialized yet. >>> >>> Thanks to Intel Engineer Han Weidong, Pasi Kärkkäinen, Boris >>> Derzhavets, Marc, Caz Yokoyama, and others who have helped me and >>> shared their knowledge with me along the way. >>> >>> System Configuration: >>> >>> Intel Desktop Board DQ45CB with BIOS upgraded to 0093 >>> Onboard Intel GMA 4500 Graphics (IGD) >>> nVidia Geforce 8400 GS PCI Express x16 Graphics Card >>> >>> Fedora 11 Linux 64-bit Xen paravirt operations Domain 0 Host >>> Operating System Xen 3.5 Unstable/Development Type 1 Hypervisor >>> Jeremy Fitzhardinge''s Xen paravirt-ops domain 0 Kernel 2.6.31-rc6 >>> Primary Video Adapter in BIOS: IGD >>> >>> Please see the screenshots and my blog at the link here: >>> >>> >http://teo-en-ming-aka-zhang-enming.blogspot.com/2009/08/nvidia-geforce-8400> -gs-pci-express-x16.html >>> >>> >> >> >> >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: > 08/25/09 18:07:00 > > No virus found in this outgoing message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: > 08/25/09 18:07:00No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Teo En Ming (Zhang Enming)
2009-Aug-26 11:31 UTC
RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB
When I google about XCI, it points me to http://wiki.xensource.com/xenwiki/General_Project_Information Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En Ming (Zhang Enming) Sent: Wednesday, August 26, 2009 7:25 PM To: weidong.han@intel.com; djmagee@mageenet.net Cc: xen-devel@lists.xensource.com Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThrough to Windows XP Home 32-bit HVM Virtual Machinewith Intel Desktop Board DQ45CB Hi Weidong, Currently I am using the entire Xen 3.5-unstable branch and not using the posted pci-stub patch changeset 19893 to patch Xen 3.4.1-testing. I am using Xen 3.5-unstable in conjunction with pvops dom 0 kernel 2.6.31-rc6. Here are my questions: 1) How do I extract out the VGA BIOS/firmware from the firmware/EEPROM chip on the Geforce 8400 GS VGA card? If it is not possible to extract, where can I download the firmware? NVIDIA does not provide display card firmware/BIOS files for public download on its website. 2) How do I get the Geforce 8400 GS VGA BIOS to load instead of the emulated VGA BIOS? Which configuration files/source codes do I have to configure/patch? 3) What are physical MMIO, virtual MMIO Bars, dsdt.asl and 1:1 map? I am sorry but I am not a graphics card hardware engineer so I do not understand those terms. I would appreciate it if you could write out some steps that I could carry out or point me to already available documentation. 4) I don''t mind using experimental code. Please post it on the xen-devel mailing list so that I could try it out. Thank you very much. Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: Han, Weidong [mailto:weidong.han@intel.com] Sent: Wednesday, August 26, 2009 6:56 PM To: ''enming.teo@asiasoftsea.net''; ''djmagee@mageenet.net'' Cc: ''xen-devel@lists.xensource.com'' Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB Teo En Ming (Zhang Enming) wrote:> Hi Weidong, > > Could you share with us the hack codes for making Geforce 8400 GS > work and also how to let the Windows HVM guest boot up using the real > BIOS of Geforce 8400 GS instead of an emulated VGA BIOS? >What patch are you using now? Using real VGA bios of gfx card to replace emulatd VGA bios is the prerequisite of gfx passthrough. You can find it in posted gfx passthrough patches or XCI. For hack of making Geforce 8400, we reserve physical MMIO BARs in dsdt.asl, and make it 1:1 map between physical MMIO BARs and virtual MMIO BARs of the card. Currently our code is experimental, we will send out in mailing list after cleanup and more tests. Regards, Weidong> Thank you. > > Regards, > > Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) > BEng(Hons)(Mechanical Engineering) > Technical Support Engineer > Information Technology Department > Asiasoft Online Pte Ltd > Tampines Central 1 #04-01 Tampines Plaza > Singapore 529541 > Republic of Singapore > Mobile: +65-9648-9798 > MSN: teoenming@hotmail.com > Alma Maters: Singapore Polytechnic, National University of Singapore > > -----Original Message----- > From: xen-devel-bounces@lists.xensource.com > [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Han, > Weidong Sent: Wednesday, August 26, 2009 4:27 PM > To: ''djmagee@mageenet.net''; ''enming.teo@asiasoftsea.net'' > Cc: ''xen-devel@lists.xensource.com'' > Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 > VGAPassThroughto Windows XP Home 32-bit HVM Virtual Machine with > IntelDesktop BoardDQ45CB > > I suppose you just use the patch posted in mailing list before. nVidia > Geforce 8400 passthrough needs extra hacks. We can make it work in our > experiments with 1:1 map of its MMIO BARs. > > We are working on gfx passthrough on latest xen-unstable. Firstly, we > want to cook a simple patch including generic changes to support > passthrough of virtualization friendly gfx cards, such as Nvidia > FX3800. This patch is basically done. Then, we will add some hacks > for more gfx cards passthrough, such as iGFX and some Nvidia and ATI > cards. > > Regards, > Weidong > > djmagee@mageenet.net wrote: >> As I''ve pointed out on this list before, there are not enough PCIe >> lanes on the DQ45CB to drive both the internal graphics adapter and >> the add-on adapter at the same time. I believe the onboard one may >> be able to operate in some sort of VGA only mode when there is a card >> installed and used as the primary adapter. >> >> I have a similar setup, using the same motherboard, and an ATI 4770. >> I used the VGA passthrough patches from an earlier posting (I saw you >> followed the same set of instructions), with limited success. I''ve >> been using 3.4-testing, and ''xenified'' 2.6.29.6 kernel. I made >> modifications to the dom0 portion of the patches so they would apply >> to my xenified 2.6.29 kernel. These patches include code that will >> copy the VGA bios to the guest bios instead of using the emulated vga >> bios. I''ve had very little success, however. I have only tried >> passing through the ATI adapter. In all instances, the guest bios >> messages appear on my monitor, so this much works. In some cases, >> the guest essentially stops there; xm list show''s about 2sec CPU >> usage and nothing ever happens after that point. In other cases, the >> guest (win xp/vista/7, as well as KNOPPIX 5.3.1 DVD) will boot all >> the way, but in very low res/color mode, and cannot properly >> initialize the video device. Once or twice, it actually did >> recognize the device and had a reasonable default color/resolution >> combination. In all cases where the guest actually boots, the system >> eventually freezes. In some cases, I get endless streams of iommu >> page faults. >> >> I have 8GB ram installed. In all cases I''ve limited dom0 memory to >> 2GB. In all cases, my guest has been assigned 2GB of memory. >> >> I have a dual core e6600. I''ve tried allowing dom0 to use both >> cores, offlining one core (using xend dom0_vcpu setting) after boot, >> and restricting dom0 to only one core using the dom0_max_vcpus xen >> hypervisor parameter. In all of these cases I''ve tried both one and >> two vcpus for the guest. My success with VGA passthrough seems >> somewhat random and no combination of cpu assignment seems to have >> any effect. >> >> I have not tried with the 2.6.18-xen kernel as I haven''t gotten it to >> boot on my hardware; it can never find my volume group, even if I >> create a initrd with all of the required modules, or build those >> drivers into the kernel. I have not spent more than maybe a half an >> hour on this problem; I suspect it may have something to do with the >> version of mkinitrd I''m using (from Fedora 9 x64). >> >> If anyone else has any insight or similar experience I''d also love >> to hear it. >> >> Doug Magee >> djmagee@mageenet.com >> >> -----Original Message----- >> From: xen-devel-bounces@lists.xensource.com >> [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Mr. Teo >> En Ming (Zhang Enming) Sent: Tuesday, August 25, 2009 11:57 AM >> To: enming.teo@asiasoftsea.net >> Cc: xen-devel@lists.xensource.com >> Subject: Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA >> PassThroughto Windows XP Home 32-bit HVM Virtual Machine with Intel >> Desktop BoardDQ45CB >> >> I have uninstalled Xen 3.4.1 and installed Xen 3.5-unstable as >> suggested by Weidong. >> >> >> On 08/25/2009 11:47 PM, Mr. Teo En Ming (Zhang Enming) wrote: >>> Dear All, >>> >>> I have managed to do PCI-e VGA passthrough with the open source Xen >>> but the work is still in progress because although Windows XP guest >>> can see the REAL PCI-e x16 graphics card instead of an emulated >>> graphics driver, it cannot be initialized yet. >>> >>> Thanks to Intel Engineer Han Weidong, Pasi Kärkkäinen, Boris >>> Derzhavets, Marc, Caz Yokoyama, and others who have helped me and >>> shared their knowledge with me along the way. >>> >>> System Configuration: >>> >>> Intel Desktop Board DQ45CB with BIOS upgraded to 0093 >>> Onboard Intel GMA 4500 Graphics (IGD) >>> nVidia Geforce 8400 GS PCI Express x16 Graphics Card >>> >>> Fedora 11 Linux 64-bit Xen paravirt operations Domain 0 Host >>> Operating System Xen 3.5 Unstable/Development Type 1 Hypervisor >>> Jeremy Fitzhardinge''s Xen paravirt-ops domain 0 Kernel 2.6.31-rc6 >>> Primary Video Adapter in BIOS: IGD >>> >>> Please see the screenshots and my blog at the link here: >>> >>> >http://teo-en-ming-aka-zhang-enming.blogspot.com/2009/08/nvidia-geforce-8400> -gs-pci-express-x16.html >>> >>> >> >> >> >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: > 08/25/09 18:07:00 > > No virus found in this outgoing message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: > 08/25/09 18:07:00No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Vincent Hanquez
2009-Aug-26 11:37 UTC
Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB
Teo En Ming (Zhang Enming) wrote:> When I google about XCI, it points me to > http://wiki.xensource.com/xenwiki/General_Project_Information >you might want to have a look at: http://wiki.xensource.com/xenwiki/XCI -- Vincent _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Teo En Ming (Zhang Enming)
2009-Aug-26 11:49 UTC
RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB
Hi Vincent, Thank you for your referral. Upon further googling, I also found this: http://lists.xensource.com/archives/html/xen-devel/2009-05/msg00626.html Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Vincent Hanquez Sent: Wednesday, August 26, 2009 7:38 PM To: enming.teo@asiasoftsea.net Cc: djmagee@mageenet.net; xen-devel@lists.xensource.com; weidong.han@intel.com Subject: Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGAPass Throughto Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop BoardDQ45CB Teo En Ming (Zhang Enming) wrote:> When I google about XCI, it points me to > http://wiki.xensource.com/xenwiki/General_Project_Information >you might want to have a look at: http://wiki.xensource.com/xenwiki/XCI -- Vincent _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Teo En Ming (Zhang Enming)
2009-Aug-26 12:17 UTC
RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB
Found this topic entitled "good progress on pci vga passthrough in xen-3.4-rc1" Link: http://www.nabble.com/good-progress-on-pci-vga-passthrough-in-xen-3.4-rc1-td 23015810.html Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En Ming (Zhang Enming) Sent: Wednesday, August 26, 2009 7:49 PM To: vincent.hanquez@eu.citrix.com Cc: weidong.han@intel.com; xen-devel@lists.xensource.com; djmagee@mageenet.net Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThrough to Windows XP Home 32-bit HVM Virtual Machinewith Intel Desktop Board DQ45CB Hi Vincent, Thank you for your referral. Upon further googling, I also found this: http://lists.xensource.com/archives/html/xen-devel/2009-05/msg00626.html Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Vincent Hanquez Sent: Wednesday, August 26, 2009 7:38 PM To: enming.teo@asiasoftsea.net Cc: djmagee@mageenet.net; xen-devel@lists.xensource.com; weidong.han@intel.com Subject: Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGAPass Throughto Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop BoardDQ45CB Teo En Ming (Zhang Enming) wrote:> When I google about XCI, it points me to > http://wiki.xensource.com/xenwiki/General_Project_Information >you might want to have a look at: http://wiki.xensource.com/xenwiki/XCI -- Vincent _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Teo En Ming (Zhang Enming)
2009-Aug-26 13:33 UTC
RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB
OK, from what I have read so far, I have to port the code for PCI/PCI-e vga graphics pass through from XCI to patch Xen 3.5-unstable so that booting the real vga bios of the real vga card is possible instead of the emulated vga bios. Is that correct? Xen 3.5-unstable code supports PCI pass through but doesn''t have the code for booting the real vga bios? If so, what code from the XCI sources do I have to single out to patch Xen 3.5-unstable? Thank you. Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En Ming (Zhang Enming) Sent: Wednesday, August 26, 2009 8:18 PM To: enming.teo@asiasoftsea.net; vincent.hanquez@eu.citrix.com Cc: djmagee@mageenet.net; xen-devel@lists.xensource.com; weidong.han@intel.com Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThrough to Windows XP Home 32-bit HVM Virtual Machine withIntel Desktop Board DQ45CB Found this topic entitled "good progress on pci vga passthrough in xen-3.4-rc1" Link: http://www.nabble.com/good-progress-on-pci-vga-passthrough-in-xen-3.4-rc1-td 23015810.html Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En Ming (Zhang Enming) Sent: Wednesday, August 26, 2009 7:49 PM To: vincent.hanquez@eu.citrix.com Cc: weidong.han@intel.com; xen-devel@lists.xensource.com; djmagee@mageenet.net Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThrough to Windows XP Home 32-bit HVM Virtual Machinewith Intel Desktop Board DQ45CB Hi Vincent, Thank you for your referral. Upon further googling, I also found this: http://lists.xensource.com/archives/html/xen-devel/2009-05/msg00626.html Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Vincent Hanquez Sent: Wednesday, August 26, 2009 7:38 PM To: enming.teo@asiasoftsea.net Cc: djmagee@mageenet.net; xen-devel@lists.xensource.com; weidong.han@intel.com Subject: Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGAPass Throughto Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop BoardDQ45CB Teo En Ming (Zhang Enming) wrote:> When I google about XCI, it points me to > http://wiki.xensource.com/xenwiki/General_Project_Information >you might want to have a look at: http://wiki.xensource.com/xenwiki/XCI -- Vincent _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/25/09 18:07:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Teo En Ming (Zhang Enming)
2009-Aug-26 13:37 UTC
RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB
There''s very little documentation with XCI. So much so that users of XCI doesn''t know what to do with it. See here: Topic: Xen XCI Compiled and Installed - Now what? Link: http://www.nabble.com/Xen-XCI-Compiled-and-Installed---Now-what--td24657428. html Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En Ming (Zhang Enming) Sent: Wednesday, August 26, 2009 9:33 PM To: enming.teo@asiasoftsea.net; vincent.hanquez@eu.citrix.com Cc: weidong.han@intel.com; xen-devel@lists.xensource.com; djmagee@mageenet.net Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThrough to Windows XP Home 32-bit HVM Virtual Machine withIntel Desktop Board DQ45CB OK, from what I have read so far, I have to port the code for PCI/PCI-e vga graphics pass through from XCI to patch Xen 3.5-unstable so that booting the real vga bios of the real vga card is possible instead of the emulated vga bios. Is that correct? Xen 3.5-unstable code supports PCI pass through but doesn''t have the code for booting the real vga bios? If so, what code from the XCI sources do I have to single out to patch Xen 3.5-unstable? Thank you. Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En Ming (Zhang Enming) Sent: Wednesday, August 26, 2009 8:18 PM To: enming.teo@asiasoftsea.net; vincent.hanquez@eu.citrix.com Cc: djmagee@mageenet.net; xen-devel@lists.xensource.com; weidong.han@intel.com Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThrough to Windows XP Home 32-bit HVM Virtual Machine withIntel Desktop Board DQ45CB Found this topic entitled "good progress on pci vga passthrough in xen-3.4-rc1" Link: http://www.nabble.com/good-progress-on-pci-vga-passthrough-in-xen-3.4-rc1-td 23015810.html Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En Ming (Zhang Enming) Sent: Wednesday, August 26, 2009 7:49 PM To: vincent.hanquez@eu.citrix.com Cc: weidong.han@intel.com; xen-devel@lists.xensource.com; djmagee@mageenet.net Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThrough to Windows XP Home 32-bit HVM Virtual Machinewith Intel Desktop Board DQ45CB Hi Vincent, Thank you for your referral. Upon further googling, I also found this: http://lists.xensource.com/archives/html/xen-devel/2009-05/msg00626.html Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Vincent Hanquez Sent: Wednesday, August 26, 2009 7:38 PM To: enming.teo@asiasoftsea.net Cc: djmagee@mageenet.net; xen-devel@lists.xensource.com; weidong.han@intel.com Subject: Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGAPass Throughto Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop BoardDQ45CB Teo En Ming (Zhang Enming) wrote:> When I google about XCI, it points me to > http://wiki.xensource.com/xenwiki/General_Project_Information >you might want to have a look at: http://wiki.xensource.com/xenwiki/XCI -- Vincent _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/25/09 18:07:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/25/09 18:07:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Hi Teo, We have all been eagerly awaiting the PCI Passthrough for VGA patches to be released by the Xen-Devel community .. but from the sounds of the guys at Intel - it''s not ready for public testing and it will most probably generate more questions for them to answer. Ultimately this is a distraction and will only delay the release of this functionality. The closest you will get at the moment is the patches which form part of the XCI build tree and support is limited to the Intel chipset and onboard Intel graphics controller. I believe Ian Jackson also has some success with ATI but NVidia cards are known not to work. There are other examples available including the "Neo 1:1 patch" which is based on an older version of Xen (I think 3.2). NOTE: This ONLY applies to HVM, VGA Passthrough using xen-unstable and Linux non-HVM DomU is working, I have success with many Nvidia cards using this setup. You can use this to prove your Xen in preparation for the HVM patches and to ensure that your VT-d and Dom0 are sound. Peter J. van der Maas inspired us all with his announcement, but no one has ever been able to reproduce: http://www.nabble.com/Successful-PCIe-Graphics-VT-d-Passthrough-to-Win32-DomU,-Q35-chipset-td21671745.html Myself and Beng Heng also got to the same point as yourself, with issues on vBar<>pBar mapping and VGA BIOS. In all cases, the VGA card is visible in Device Manager in the DomU but the driver does not load. On My 8800GTS, the VGA Card FAN spins down the same as when booting under native XP but still the driver does not load. Here are some good links with relevant information. http://staff.science.uva.nl/~delaat/sne-2008-2009/p22/presentation.pdf http://staff.science.uva.nl/~delaat/sne-2008-2009/p22/report.pdf http://www.eecs.umich.edu/~bengheng/pubs/vgapt_techreport.pdf http://lists.xensource.com/archives/html/xen-devel/2009-05/msg00579.html This is where I admit defeat and hand over to the brilliance of the Xen developers! My last state is captured here: http://markmail.org/message/y476tymnhu2wrc47 The most success I have evidence of is from Alex Bebbington here: http://markmail.org/message/mjiv437pva2yrhvp If you look closely, this feature is on the Offical Xen Roadmap for Xen 4.0 captured here: http://wiki.xensource.com/xenwiki/XenRoadMap {XCI} There is sufficient information for the XCI project to build and create a demo install for the enthusiast: http://wiki.xensource.com/xenwiki/XCI http://xenbits.xen.org/xenclient/ I was downloading and building XCI before the above information was available by reading the XCI build tree and patches. The code is quite well structured along with containing some additional information on the xenvm and xenops commands: http://xenbits.xen.org/gitweb?p=xenclient/toolstack.git;a=blob;f=xenvm/xenvm.readme Hopefully this pulls together all the information that is available on Xen VGA Passthrough. Rgds, Tim Moore _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Han, Weidong
2009-Aug-27 02:01 UTC
RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB
Teo En Ming (Zhang Enming) wrote:> Hi Weidong, > > Currently I am using the entire Xen 3.5-unstable branch and not using > the posted pci-stub patch changeset 19893 to patch Xen 3.4.1-testing. > I am using Xen 3.5-unstable in conjunction with pvops dom 0 kernel > 2.6.31-rc6. > > Here are my questions: > > 1) How do I extract out the VGA BIOS/firmware from the > firmware/EEPROM chip on the Geforce 8400 GS VGA card? If it is not > possible to extract, where can I download the firmware? NVIDIA does > not provide display card firmware/BIOS files for public download on > its website.There are 3 ways to load VGA bios to guest: 1. copy it from host 0xc0000, and map it to guest 0xc0000. This works for primary gfx card, XCI does like this. But some VGA bios re-execution doesn''t work well. 2. dump VGA bios to a file first, then load it to guest: you can use NiBiTor to dump VGA bios of Nvidia gfx cards to a file, then load it into guest roms like what emulated VGA does in hvmloader. This works for all gfx cards, but it involves manual steps. 3. load VGA bios from expansion rom: Intel iGFX doesn''t have expansion rom> > 2) How do I get the Geforce 8400 GS VGA BIOS to load instead of the > emulated VGA BIOS? Which configuration files/source codes do I have to > configure/patch?don''t initialize emulated VGA in qemu, I I think you have seen the code.> > 3) What are physical MMIO, virtual MMIO Bars, dsdt.asl and 1:1 map? I > am sorry but I am not a graphics card hardware engineer so I do not > understand those terms. I would appreciate it if you could write out > some steps that I could carry out or point me to already available > documentation.When you use command ''lspci -v'', you may see below messages under each device: ... Memory at d0000000 (32-bit, prefetchable) [size=256M] Memory at ff900000 (32-bit, non-prefetchable) [size=1M] ... They are MMIO BARs. 1:1 map means make these MMIO BARs in guest are equal to the values in host.> > 4) I don''t mind using experimental code. Please post it on the > xen-devel mailing list so that I could try it out.we will post in near future. pls wait for a while. Regards, Weidong> > Thank you very much. > > Regards, > > Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) > BEng(Hons)(Mechanical Engineering) > Technical Support Engineer > Information Technology Department > Asiasoft Online Pte Ltd > Tampines Central 1 #04-01 Tampines Plaza > Singapore 529541 > Republic of Singapore > Mobile: +65-9648-9798 > MSN: teoenming@hotmail.com > > -----Original Message----- > From: Han, Weidong [mailto:weidong.han@intel.com] > Sent: Wednesday, August 26, 2009 6:56 PM > To: ''enming.teo@asiasoftsea.net''; ''djmagee@mageenet.net'' > Cc: ''xen-devel@lists.xensource.com'' > Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA > Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel > Desktop Board DQ45CB > > Teo En Ming (Zhang Enming) wrote: >> Hi Weidong, >> >> Could you share with us the hack codes for making Geforce 8400 GS >> work and also how to let the Windows HVM guest boot up using the real >> BIOS of Geforce 8400 GS instead of an emulated VGA BIOS? >> > > What patch are you using now? Using real VGA bios of gfx card to > replace emulatd VGA bios is the prerequisite of gfx passthrough. You > can find it in posted gfx passthrough patches or XCI. For hack of > making Geforce 8400, we reserve physical MMIO BARs in dsdt.asl, and > make it 1:1 map between physical MMIO BARs and virtual MMIO BARs of > the card. Currently our code is experimental, we will send out in > mailing list after cleanup and more tests. > > Regards, > Weidong > >> Thank you. >> >> Regards, >> >> Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) >> BEng(Hons)(Mechanical Engineering) >> Technical Support Engineer >> Information Technology Department >> Asiasoft Online Pte Ltd >> Tampines Central 1 #04-01 Tampines Plaza >> Singapore 529541 >> Republic of Singapore >> Mobile: +65-9648-9798 >> MSN: teoenming@hotmail.com >> Alma Maters: Singapore Polytechnic, National University of Singapore >> >> -----Original Message----- >> From: xen-devel-bounces@lists.xensource.com >> [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Han, >> Weidong Sent: Wednesday, August 26, 2009 4:27 PM >> To: ''djmagee@mageenet.net''; ''enming.teo@asiasoftsea.net'' >> Cc: ''xen-devel@lists.xensource.com'' >> Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 >> VGAPassThroughto Windows XP Home 32-bit HVM Virtual Machine with >> IntelDesktop BoardDQ45CB >> >> I suppose you just use the patch posted in mailing list before. >> nVidia Geforce 8400 passthrough needs extra hacks. We can make it >> work in our experiments with 1:1 map of its MMIO BARs. >> >> We are working on gfx passthrough on latest xen-unstable. Firstly, we >> want to cook a simple patch including generic changes to support >> passthrough of virtualization friendly gfx cards, such as Nvidia >> FX3800. This patch is basically done. Then, we will add some hacks >> for more gfx cards passthrough, such as iGFX and some Nvidia and ATI >> cards. >> >> Regards, >> Weidong >> >> djmagee@mageenet.net wrote: >>> As I''ve pointed out on this list before, there are not enough PCIe >>> lanes on the DQ45CB to drive both the internal graphics adapter and >>> the add-on adapter at the same time. I believe the onboard one may >>> be able to operate in some sort of VGA only mode when there is a >>> card installed and used as the primary adapter. >>> >>> I have a similar setup, using the same motherboard, and an ATI 4770. >>> I used the VGA passthrough patches from an earlier posting (I saw >>> you followed the same set of instructions), with limited success. >>> I''ve been using 3.4-testing, and ''xenified'' 2.6.29.6 kernel. I made >>> modifications to the dom0 portion of the patches so they would apply >>> to my xenified 2.6.29 kernel. These patches include code that will >>> copy the VGA bios to the guest bios instead of using the emulated >>> vga bios. I''ve had very little success, however. I have only tried >>> passing through the ATI adapter. In all instances, the guest bios >>> messages appear on my monitor, so this much works. In some cases, >>> the guest essentially stops there; xm list show''s about 2sec CPU >>> usage and nothing ever happens after that point. In other cases, >>> the guest (win xp/vista/7, as well as KNOPPIX 5.3.1 DVD) will boot >>> all the way, but in very low res/color mode, and cannot properly >>> initialize the video device. Once or twice, it actually did >>> recognize the device and had a reasonable default color/resolution >>> combination. In all cases where the guest actually boots, the >>> system eventually freezes. In some cases, I get endless streams of >>> iommu page faults. >>> >>> I have 8GB ram installed. In all cases I''ve limited dom0 memory to >>> 2GB. In all cases, my guest has been assigned 2GB of memory. >>> >>> I have a dual core e6600. I''ve tried allowing dom0 to use both >>> cores, offlining one core (using xend dom0_vcpu setting) after boot, >>> and restricting dom0 to only one core using the dom0_max_vcpus xen >>> hypervisor parameter. In all of these cases I''ve tried both one and >>> two vcpus for the guest. My success with VGA passthrough seems >>> somewhat random and no combination of cpu assignment seems to have >>> any effect. >>> >>> I have not tried with the 2.6.18-xen kernel as I haven''t gotten it >>> to boot on my hardware; it can never find my volume group, even if I >>> create a initrd with all of the required modules, or build those >>> drivers into the kernel. I have not spent more than maybe a half an >>> hour on this problem; I suspect it may have something to do with the >>> version of mkinitrd I''m using (from Fedora 9 x64). >>> >>> If anyone else has any insight or similar experience I''d also love >>> to hear it. >>> >>> Doug Magee >>> djmagee@mageenet.com >>> >>> -----Original Message----- >>> From: xen-devel-bounces@lists.xensource.com >>> [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Mr. Teo >>> En Ming (Zhang Enming) Sent: Tuesday, August 25, 2009 11:57 AM >>> To: enming.teo@asiasoftsea.net >>> Cc: xen-devel@lists.xensource.com >>> Subject: Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA >>> PassThroughto Windows XP Home 32-bit HVM Virtual Machine with Intel >>> Desktop BoardDQ45CB >>> >>> I have uninstalled Xen 3.4.1 and installed Xen 3.5-unstable as >>> suggested by Weidong. >>> >>> >>> On 08/25/2009 11:47 PM, Mr. Teo En Ming (Zhang Enming) wrote: >>>> Dear All, >>>> >>>> I have managed to do PCI-e VGA passthrough with the open source Xen >>>> but the work is still in progress because although Windows XP guest >>>> can see the REAL PCI-e x16 graphics card instead of an emulated >>>> graphics driver, it cannot be initialized yet. >>>> >>>> Thanks to Intel Engineer Han Weidong, Pasi Kärkkäinen, Boris >>>> Derzhavets, Marc, Caz Yokoyama, and others who have helped me and >>>> shared their knowledge with me along the way. >>>> >>>> System Configuration: >>>> >>>> Intel Desktop Board DQ45CB with BIOS upgraded to 0093 >>>> Onboard Intel GMA 4500 Graphics (IGD) >>>> nVidia Geforce 8400 GS PCI Express x16 Graphics Card >>>> >>>> Fedora 11 Linux 64-bit Xen paravirt operations Domain 0 Host >>>> Operating System Xen 3.5 Unstable/Development Type 1 Hypervisor >>>> Jeremy Fitzhardinge''s Xen paravirt-ops domain 0 Kernel 2.6.31-rc6 >>>> Primary Video Adapter in BIOS: IGD >>>> >>>> Please see the screenshots and my blog at the link here: >>>> >>>> >> > http://teo-en-ming-aka-zhang-enming.blogspot.com/2009/08/nvidia-geforce-8400 >> -gs-pci-express-x16.html >>>> >>>> >>> >>> >>> >>> >>> _______________________________________________ >>> Xen-devel mailing list >>> Xen-devel@lists.xensource.com >>> http://lists.xensource.com/xen-devel >>> >>> _______________________________________________ >>> Xen-devel mailing list >>> Xen-devel@lists.xensource.com >>> http://lists.xensource.com/xen-devel >> >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel >> >> No virus found in this incoming message. >> Checked by AVG - www.avg.com >> Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: >> 08/25/09 18:07:00 >> >> No virus found in this outgoing message. >> Checked by AVG - www.avg.com >> Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: >> 08/25/09 18:07:00 > > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: > 08/25/09 18:07:00 > > No virus found in this outgoing message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: > 08/25/09 18:07:00_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Dear Timothy, Thank you for compiling all the links to the currently available work on Xen PCI/PCI-E/PEG VGA pass through to Windows HVM guests. When I looked at Peter J. van der Maas''s reported success, I have some doubts. Intel Desktop Board DQ35JO only has an onboard graphics and an external PCI-E x16 slot. How was Peter J. van der Maas able to use two external display cards? Assuming that his nVidia GeForce2 MX200 is a PCI card, and his nVidia 9500GT is a PCI-e x16 card, this resolves the above doubt. Even then, when you plug in both PCI and PEG graphics card at the same time, as is with the case on my Intel Desktop Board DQ45CB, only the PCI VGA card will work and display to the monitor. The PCI-E x16 display card will not work. When the PCI display card is plugged in, my motherboard DQ45CB can''t even detect how many lanes my PEG display card is using (should be 16 lanes). Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Tim Moore Sent: Thursday, August 27, 2009 5:09 AM To: ''enming.teo@asiasoftsea.net'' Cc: ''Xci-devel@lists.xensource.com''; xen-devel@lists.xensource.com Subject: RE: [Xen-devel] VGA passthrough to HVM Hi Teo, We have all been eagerly awaiting the PCI Passthrough for VGA patches to be released by the Xen-Devel community .. but from the sounds of the guys at Intel - it''s not ready for public testing and it will most probably generate more questions for them to answer. Ultimately this is a distraction and will only delay the release of this functionality. The closest you will get at the moment is the patches which form part of the XCI build tree and support is limited to the Intel chipset and onboard Intel graphics controller. I believe Ian Jackson also has some success with ATI but NVidia cards are known not to work. There are other examples available including the "Neo 1:1 patch" which is based on an older version of Xen (I think 3.2). NOTE: This ONLY applies to HVM, VGA Passthrough using xen-unstable and Linux non-HVM DomU is working, I have success with many Nvidia cards using this setup. You can use this to prove your Xen in preparation for the HVM patches and to ensure that your VT-d and Dom0 are sound. Peter J. van der Maas inspired us all with his announcement, but no one has ever been able to reproduce: http://www.nabble.com/Successful-PCIe-Graphics-VT-d-Passthrough-to-Win32-Dom U,-Q35-chipset-td21671745.html Myself and Beng Heng also got to the same point as yourself, with issues on vBar<>pBar mapping and VGA BIOS. In all cases, the VGA card is visible in Device Manager in the DomU but the driver does not load. On My 8800GTS, the VGA Card FAN spins down the same as when booting under native XP but still the driver does not load. Here are some good links with relevant information. http://staff.science.uva.nl/~delaat/sne-2008-2009/p22/presentation.pdf http://staff.science.uva.nl/~delaat/sne-2008-2009/p22/report.pdf http://www.eecs.umich.edu/~bengheng/pubs/vgapt_techreport.pdf http://lists.xensource.com/archives/html/xen-devel/2009-05/msg00579.html This is where I admit defeat and hand over to the brilliance of the Xen developers! My last state is captured here: http://markmail.org/message/y476tymnhu2wrc47 The most success I have evidence of is from Alex Bebbington here: http://markmail.org/message/mjiv437pva2yrhvp If you look closely, this feature is on the Offical Xen Roadmap for Xen 4.0 captured here: http://wiki.xensource.com/xenwiki/XenRoadMap {XCI} There is sufficient information for the XCI project to build and create a demo install for the enthusiast: http://wiki.xensource.com/xenwiki/XCI http://xenbits.xen.org/xenclient/ I was downloading and building XCI before the above information was available by reading the XCI build tree and patches. The code is quite well structured along with containing some additional information on the xenvm and xenops commands: http://xenbits.xen.org/gitweb?p=xenclient/toolstack.git;a=blob;f=xenvm/xenvm .readme Hopefully this pulls together all the information that is available on Xen VGA Passthrough. Rgds, Tim Moore _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/26/09 12:16:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Here are my explanations on why we couldn''t reproduce Peter van der Maas''s work: 1) Our setups are vastly different 2) Peter van der Maas is using Intel DQ35JO while I am using Intel DQ45CB with different chipsets (Q35 vs Q45) 3) We are using different display card brand/model and different primary/secondary video controller setups 4) Peter van der Maas was using Xen unstable as of Jan 2009, while I am using Xen 3.5-unstable as of August 2009 5) Peter van der Maas was using Linux-2.6.18.8-xen Domain 0 NON-paravirt-ops kernel. He mentioned using pciback which I cannot use at all. I am using Jeremy Fitzhardinge''s 2.6.31-rc6 Dom 0 pv-ops kernel. I can only use pci-stub compiled in or as module. 6) Peter van der Maas was using Windows XP Professional SP3 32-bit. I am using Windows XP Home SP3 32-bit. We have too many variables in our experimental setups. In order to reproduce and validate another scientist''s work, we should have exactly the same setups. Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En Ming (Zhang Enming) Sent: Thursday, August 27, 2009 10:40 AM To: timothy.moore@expidas.net Cc: Xci-devel@lists.xensource.com; xen-devel@lists.xensource.com Subject: RE: [Xen-devel] VGA passthrough to HVM Dear Timothy, Thank you for compiling all the links to the currently available work on Xen PCI/PCI-E/PEG VGA pass through to Windows HVM guests. When I looked at Peter J. van der Maas''s reported success, I have some doubts. Intel Desktop Board DQ35JO only has an onboard graphics and an external PCI-E x16 slot. How was Peter J. van der Maas able to use two external display cards? Assuming that his nVidia GeForce2 MX200 is a PCI card, and his nVidia 9500GT is a PCI-e x16 card, this resolves the above doubt. Even then, when you plug in both PCI and PEG graphics card at the same time, as is with the case on my Intel Desktop Board DQ45CB, only the PCI VGA card will work and display to the monitor. The PCI-E x16 display card will not work. When the PCI display card is plugged in, my motherboard DQ45CB can''t even detect how many lanes my PEG display card is using (should be 16 lanes). Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Tim Moore Sent: Thursday, August 27, 2009 5:09 AM To: ''enming.teo@asiasoftsea.net'' Cc: ''Xci-devel@lists.xensource.com''; xen-devel@lists.xensource.com Subject: RE: [Xen-devel] VGA passthrough to HVM Hi Teo, We have all been eagerly awaiting the PCI Passthrough for VGA patches to be released by the Xen-Devel community .. but from the sounds of the guys at Intel - it''s not ready for public testing and it will most probably generate more questions for them to answer. Ultimately this is a distraction and will only delay the release of this functionality. The closest you will get at the moment is the patches which form part of the XCI build tree and support is limited to the Intel chipset and onboard Intel graphics controller. I believe Ian Jackson also has some success with ATI but NVidia cards are known not to work. There are other examples available including the "Neo 1:1 patch" which is based on an older version of Xen (I think 3.2). NOTE: This ONLY applies to HVM, VGA Passthrough using xen-unstable and Linux non-HVM DomU is working, I have success with many Nvidia cards using this setup. You can use this to prove your Xen in preparation for the HVM patches and to ensure that your VT-d and Dom0 are sound. Peter J. van der Maas inspired us all with his announcement, but no one has ever been able to reproduce: http://www.nabble.com/Successful-PCIe-Graphics-VT-d-Passthrough-to-Win32-Dom U,-Q35-chipset-td21671745.html Myself and Beng Heng also got to the same point as yourself, with issues on vBar<>pBar mapping and VGA BIOS. In all cases, the VGA card is visible in Device Manager in the DomU but the driver does not load. On My 8800GTS, the VGA Card FAN spins down the same as when booting under native XP but still the driver does not load. Here are some good links with relevant information. http://staff.science.uva.nl/~delaat/sne-2008-2009/p22/presentation.pdf http://staff.science.uva.nl/~delaat/sne-2008-2009/p22/report.pdf http://www.eecs.umich.edu/~bengheng/pubs/vgapt_techreport.pdf http://lists.xensource.com/archives/html/xen-devel/2009-05/msg00579.html This is where I admit defeat and hand over to the brilliance of the Xen developers! My last state is captured here: http://markmail.org/message/y476tymnhu2wrc47 The most success I have evidence of is from Alex Bebbington here: http://markmail.org/message/mjiv437pva2yrhvp If you look closely, this feature is on the Offical Xen Roadmap for Xen 4.0 captured here: http://wiki.xensource.com/xenwiki/XenRoadMap {XCI} There is sufficient information for the XCI project to build and create a demo install for the enthusiast: http://wiki.xensource.com/xenwiki/XCI http://xenbits.xen.org/xenclient/ I was downloading and building XCI before the above information was available by reading the XCI build tree and patches. The code is quite well structured along with containing some additional information on the xenvm and xenops commands: http://xenbits.xen.org/gitweb?p=xenclient/toolstack.git;a=blob;f=xenvm/xenvm .readme Hopefully this pulls together all the information that is available on Xen VGA Passthrough. Rgds, Tim Moore _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/26/09 12:16:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/26/09 12:16:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/26/09 12:16:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Teo En Ming (Zhang Enming)
2009-Aug-27 03:18 UTC
RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB
Dear Weidong, I will go for option 2.> don''t initialize emulated VGA in qemu, I I think you have seen the code.I have not seen the source code. Though I have learnt simple structured C before in Singapore Polytechnic some 11 years ago, I am not a programmer by profession. So I would still need some instructions on how I can prevent emulated VGA bios from loading and getting the vga bios of the real display card to load. Thank you. Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Han, Weidong Sent: Thursday, August 27, 2009 10:01 AM To: ''enming.teo@asiasoftsea.net''; ''djmagee@mageenet.net'' Cc: ''xen-devel@lists.xensource.com'' Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThrough to Windows XP Home 32-bit HVM Virtual Machine with IntelDesktop Board DQ45CB Teo En Ming (Zhang Enming) wrote:> Hi Weidong, > > Currently I am using the entire Xen 3.5-unstable branch and not using > the posted pci-stub patch changeset 19893 to patch Xen 3.4.1-testing. > I am using Xen 3.5-unstable in conjunction with pvops dom 0 kernel > 2.6.31-rc6. > > Here are my questions: > > 1) How do I extract out the VGA BIOS/firmware from the > firmware/EEPROM chip on the Geforce 8400 GS VGA card? If it is not > possible to extract, where can I download the firmware? NVIDIA does > not provide display card firmware/BIOS files for public download on > its website.There are 3 ways to load VGA bios to guest: 1. copy it from host 0xc0000, and map it to guest 0xc0000. This works for primary gfx card, XCI does like this. But some VGA bios re-execution doesn''t work well. 2. dump VGA bios to a file first, then load it to guest: you can use NiBiTor to dump VGA bios of Nvidia gfx cards to a file, then load it into guest roms like what emulated VGA does in hvmloader. This works for all gfx cards, but it involves manual steps. 3. load VGA bios from expansion rom: Intel iGFX doesn''t have expansion rom> > 2) How do I get the Geforce 8400 GS VGA BIOS to load instead of the > emulated VGA BIOS? Which configuration files/source codes do I have to > configure/patch?don''t initialize emulated VGA in qemu, I I think you have seen the code.> > 3) What are physical MMIO, virtual MMIO Bars, dsdt.asl and 1:1 map? I > am sorry but I am not a graphics card hardware engineer so I do not > understand those terms. I would appreciate it if you could write out > some steps that I could carry out or point me to already available > documentation.When you use command ''lspci -v'', you may see below messages under each device: ... Memory at d0000000 (32-bit, prefetchable) [size=256M] Memory at ff900000 (32-bit, non-prefetchable) [size=1M] ... They are MMIO BARs. 1:1 map means make these MMIO BARs in guest are equal to the values in host.> > 4) I don''t mind using experimental code. Please post it on the > xen-devel mailing list so that I could try it out.we will post in near future. pls wait for a while. Regards, Weidong> > Thank you very much. > > Regards, > > Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) > BEng(Hons)(Mechanical Engineering) > Technical Support Engineer > Information Technology Department > Asiasoft Online Pte Ltd > Tampines Central 1 #04-01 Tampines Plaza > Singapore 529541 > Republic of Singapore > Mobile: +65-9648-9798 > MSN: teoenming@hotmail.com > > -----Original Message----- > From: Han, Weidong [mailto:weidong.han@intel.com] > Sent: Wednesday, August 26, 2009 6:56 PM > To: ''enming.teo@asiasoftsea.net''; ''djmagee@mageenet.net'' > Cc: ''xen-devel@lists.xensource.com'' > Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA > Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel > Desktop Board DQ45CB > > Teo En Ming (Zhang Enming) wrote: >> Hi Weidong, >> >> Could you share with us the hack codes for making Geforce 8400 GS >> work and also how to let the Windows HVM guest boot up using the real >> BIOS of Geforce 8400 GS instead of an emulated VGA BIOS? >> > > What patch are you using now? Using real VGA bios of gfx card to > replace emulatd VGA bios is the prerequisite of gfx passthrough. You > can find it in posted gfx passthrough patches or XCI. For hack of > making Geforce 8400, we reserve physical MMIO BARs in dsdt.asl, and > make it 1:1 map between physical MMIO BARs and virtual MMIO BARs of > the card. Currently our code is experimental, we will send out in > mailing list after cleanup and more tests. > > Regards, > Weidong > >> Thank you. >> >> Regards, >> >> Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) >> BEng(Hons)(Mechanical Engineering) >> Technical Support Engineer >> Information Technology Department >> Asiasoft Online Pte Ltd >> Tampines Central 1 #04-01 Tampines Plaza >> Singapore 529541 >> Republic of Singapore >> Mobile: +65-9648-9798 >> MSN: teoenming@hotmail.com >> Alma Maters: Singapore Polytechnic, National University of Singapore >> >> -----Original Message----- >> From: xen-devel-bounces@lists.xensource.com >> [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Han, >> Weidong Sent: Wednesday, August 26, 2009 4:27 PM >> To: ''djmagee@mageenet.net''; ''enming.teo@asiasoftsea.net'' >> Cc: ''xen-devel@lists.xensource.com'' >> Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 >> VGAPassThroughto Windows XP Home 32-bit HVM Virtual Machine with >> IntelDesktop BoardDQ45CB >> >> I suppose you just use the patch posted in mailing list before. >> nVidia Geforce 8400 passthrough needs extra hacks. We can make it >> work in our experiments with 1:1 map of its MMIO BARs. >> >> We are working on gfx passthrough on latest xen-unstable. Firstly, we >> want to cook a simple patch including generic changes to support >> passthrough of virtualization friendly gfx cards, such as Nvidia >> FX3800. This patch is basically done. Then, we will add some hacks >> for more gfx cards passthrough, such as iGFX and some Nvidia and ATI >> cards. >> >> Regards, >> Weidong >> >> djmagee@mageenet.net wrote: >>> As I''ve pointed out on this list before, there are not enough PCIe >>> lanes on the DQ45CB to drive both the internal graphics adapter and >>> the add-on adapter at the same time. I believe the onboard one may >>> be able to operate in some sort of VGA only mode when there is a >>> card installed and used as the primary adapter. >>> >>> I have a similar setup, using the same motherboard, and an ATI 4770. >>> I used the VGA passthrough patches from an earlier posting (I saw >>> you followed the same set of instructions), with limited success. >>> I''ve been using 3.4-testing, and ''xenified'' 2.6.29.6 kernel. I made >>> modifications to the dom0 portion of the patches so they would apply >>> to my xenified 2.6.29 kernel. These patches include code that will >>> copy the VGA bios to the guest bios instead of using the emulated >>> vga bios. I''ve had very little success, however. I have only tried >>> passing through the ATI adapter. In all instances, the guest bios >>> messages appear on my monitor, so this much works. In some cases, >>> the guest essentially stops there; xm list show''s about 2sec CPU >>> usage and nothing ever happens after that point. In other cases, >>> the guest (win xp/vista/7, as well as KNOPPIX 5.3.1 DVD) will boot >>> all the way, but in very low res/color mode, and cannot properly >>> initialize the video device. Once or twice, it actually did >>> recognize the device and had a reasonable default color/resolution >>> combination. In all cases where the guest actually boots, the >>> system eventually freezes. In some cases, I get endless streams of >>> iommu page faults. >>> >>> I have 8GB ram installed. In all cases I''ve limited dom0 memory to >>> 2GB. In all cases, my guest has been assigned 2GB of memory. >>> >>> I have a dual core e6600. I''ve tried allowing dom0 to use both >>> cores, offlining one core (using xend dom0_vcpu setting) after boot, >>> and restricting dom0 to only one core using the dom0_max_vcpus xen >>> hypervisor parameter. In all of these cases I''ve tried both one and >>> two vcpus for the guest. My success with VGA passthrough seems >>> somewhat random and no combination of cpu assignment seems to have >>> any effect. >>> >>> I have not tried with the 2.6.18-xen kernel as I haven''t gotten it >>> to boot on my hardware; it can never find my volume group, even if I >>> create a initrd with all of the required modules, or build those >>> drivers into the kernel. I have not spent more than maybe a half an >>> hour on this problem; I suspect it may have something to do with the >>> version of mkinitrd I''m using (from Fedora 9 x64). >>> >>> If anyone else has any insight or similar experience I''d also love >>> to hear it. >>> >>> Doug Magee >>> djmagee@mageenet.com >>> >>> -----Original Message----- >>> From: xen-devel-bounces@lists.xensource.com >>> [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Mr. Teo >>> En Ming (Zhang Enming) Sent: Tuesday, August 25, 2009 11:57 AM >>> To: enming.teo@asiasoftsea.net >>> Cc: xen-devel@lists.xensource.com >>> Subject: Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA >>> PassThroughto Windows XP Home 32-bit HVM Virtual Machine with Intel >>> Desktop BoardDQ45CB >>> >>> I have uninstalled Xen 3.4.1 and installed Xen 3.5-unstable as >>> suggested by Weidong. >>> >>> >>> On 08/25/2009 11:47 PM, Mr. Teo En Ming (Zhang Enming) wrote: >>>> Dear All, >>>> >>>> I have managed to do PCI-e VGA passthrough with the open source Xen >>>> but the work is still in progress because although Windows XP guest >>>> can see the REAL PCI-e x16 graphics card instead of an emulated >>>> graphics driver, it cannot be initialized yet. >>>> >>>> Thanks to Intel Engineer Han Weidong, Pasi Kärkkäinen, Boris >>>> Derzhavets, Marc, Caz Yokoyama, and others who have helped me and >>>> shared their knowledge with me along the way. >>>> >>>> System Configuration: >>>> >>>> Intel Desktop Board DQ45CB with BIOS upgraded to 0093 >>>> Onboard Intel GMA 4500 Graphics (IGD) >>>> nVidia Geforce 8400 GS PCI Express x16 Graphics Card >>>> >>>> Fedora 11 Linux 64-bit Xen paravirt operations Domain 0 Host >>>> Operating System Xen 3.5 Unstable/Development Type 1 Hypervisor >>>> Jeremy Fitzhardinge''s Xen paravirt-ops domain 0 Kernel 2.6.31-rc6 >>>> Primary Video Adapter in BIOS: IGD >>>> >>>> Please see the screenshots and my blog at the link here: >>>> >>>> >> >http://teo-en-ming-aka-zhang-enming.blogspot.com/2009/08/nvidia-geforce-8400>> -gs-pci-express-x16.html >>>> >>>> >>> >>> >>> >>> >>> _______________________________________________ >>> Xen-devel mailing list >>> Xen-devel@lists.xensource.com >>> http://lists.xensource.com/xen-devel >>> >>> _______________________________________________ >>> Xen-devel mailing list >>> Xen-devel@lists.xensource.com >>> http://lists.xensource.com/xen-devel >> >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel >> >> No virus found in this incoming message. >> Checked by AVG - www.avg.com >> Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: >> 08/25/09 18:07:00 >> >> No virus found in this outgoing message. >> Checked by AVG - www.avg.com >> Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: >> 08/25/09 18:07:00 > > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: > 08/25/09 18:07:00 > > No virus found in this outgoing message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: > 08/25/09 18:07:00_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/26/09 12:16:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Teo En Ming (Zhang Enming)
2009-Aug-27 06:03 UTC
RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB
I think I cannot use NiBiTor already as I don''t have any native Windows operating system running on my computer. Instead, I should create a CD-ROM boot disc that contains nvflash.exe and also loads USB drivers. I will use nvflash.exe to extract out and save VGA BIOS to USB sticks. NVIDIA GeForce BIOS Backup Guide: http://www.mvktech.net/content/view/14/37/ Motherboard Flash Boot CD from Linux Mini HOWTO: http://www.nenie.org/misc/flashbootcd.html DOS USB Drivers: http://www.bootdisk.com/usb.htm Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En Ming (Zhang Enming) Sent: Thursday, August 27, 2009 11:18 AM To: weidong.han@intel.com; djmagee@mageenet.net Cc: xen-devel@lists.xensource.com Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThrough to Windows XP Home 32-bit HVM Virtual Machine withIntel Desktop Board DQ45CB Dear Weidong, I will go for option 2.> don''t initialize emulated VGA in qemu, I I think you have seen the code.I have not seen the source code. Though I have learnt simple structured C before in Singapore Polytechnic some 11 years ago, I am not a programmer by profession. So I would still need some instructions on how I can prevent emulated VGA bios from loading and getting the vga bios of the real display card to load. Thank you. Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Han, Weidong Sent: Thursday, August 27, 2009 10:01 AM To: ''enming.teo@asiasoftsea.net''; ''djmagee@mageenet.net'' Cc: ''xen-devel@lists.xensource.com'' Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThrough to Windows XP Home 32-bit HVM Virtual Machine with IntelDesktop Board DQ45CB Teo En Ming (Zhang Enming) wrote:> Hi Weidong, > > Currently I am using the entire Xen 3.5-unstable branch and not using > the posted pci-stub patch changeset 19893 to patch Xen 3.4.1-testing. > I am using Xen 3.5-unstable in conjunction with pvops dom 0 kernel > 2.6.31-rc6. > > Here are my questions: > > 1) How do I extract out the VGA BIOS/firmware from the > firmware/EEPROM chip on the Geforce 8400 GS VGA card? If it is not > possible to extract, where can I download the firmware? NVIDIA does > not provide display card firmware/BIOS files for public download on > its website.There are 3 ways to load VGA bios to guest: 1. copy it from host 0xc0000, and map it to guest 0xc0000. This works for primary gfx card, XCI does like this. But some VGA bios re-execution doesn''t work well. 2. dump VGA bios to a file first, then load it to guest: you can use NiBiTor to dump VGA bios of Nvidia gfx cards to a file, then load it into guest roms like what emulated VGA does in hvmloader. This works for all gfx cards, but it involves manual steps. 3. load VGA bios from expansion rom: Intel iGFX doesn''t have expansion rom> > 2) How do I get the Geforce 8400 GS VGA BIOS to load instead of the > emulated VGA BIOS? Which configuration files/source codes do I have to > configure/patch?don''t initialize emulated VGA in qemu, I I think you have seen the code.> > 3) What are physical MMIO, virtual MMIO Bars, dsdt.asl and 1:1 map? I > am sorry but I am not a graphics card hardware engineer so I do not > understand those terms. I would appreciate it if you could write out > some steps that I could carry out or point me to already available > documentation.When you use command ''lspci -v'', you may see below messages under each device: ... Memory at d0000000 (32-bit, prefetchable) [size=256M] Memory at ff900000 (32-bit, non-prefetchable) [size=1M] ... They are MMIO BARs. 1:1 map means make these MMIO BARs in guest are equal to the values in host.> > 4) I don''t mind using experimental code. Please post it on the > xen-devel mailing list so that I could try it out.we will post in near future. pls wait for a while. Regards, Weidong> > Thank you very much. > > Regards, > > Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) > BEng(Hons)(Mechanical Engineering) > Technical Support Engineer > Information Technology Department > Asiasoft Online Pte Ltd > Tampines Central 1 #04-01 Tampines Plaza > Singapore 529541 > Republic of Singapore > Mobile: +65-9648-9798 > MSN: teoenming@hotmail.com > > -----Original Message----- > From: Han, Weidong [mailto:weidong.han@intel.com] > Sent: Wednesday, August 26, 2009 6:56 PM > To: ''enming.teo@asiasoftsea.net''; ''djmagee@mageenet.net'' > Cc: ''xen-devel@lists.xensource.com'' > Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA > Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel > Desktop Board DQ45CB > > Teo En Ming (Zhang Enming) wrote: >> Hi Weidong, >> >> Could you share with us the hack codes for making Geforce 8400 GS >> work and also how to let the Windows HVM guest boot up using the real >> BIOS of Geforce 8400 GS instead of an emulated VGA BIOS? >> > > What patch are you using now? Using real VGA bios of gfx card to > replace emulatd VGA bios is the prerequisite of gfx passthrough. You > can find it in posted gfx passthrough patches or XCI. For hack of > making Geforce 8400, we reserve physical MMIO BARs in dsdt.asl, and > make it 1:1 map between physical MMIO BARs and virtual MMIO BARs of > the card. Currently our code is experimental, we will send out in > mailing list after cleanup and more tests. > > Regards, > Weidong > >> Thank you. >> >> Regards, >> >> Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) >> BEng(Hons)(Mechanical Engineering) >> Technical Support Engineer >> Information Technology Department >> Asiasoft Online Pte Ltd >> Tampines Central 1 #04-01 Tampines Plaza >> Singapore 529541 >> Republic of Singapore >> Mobile: +65-9648-9798 >> MSN: teoenming@hotmail.com >> Alma Maters: Singapore Polytechnic, National University of Singapore >> >> -----Original Message----- >> From: xen-devel-bounces@lists.xensource.com >> [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Han, >> Weidong Sent: Wednesday, August 26, 2009 4:27 PM >> To: ''djmagee@mageenet.net''; ''enming.teo@asiasoftsea.net'' >> Cc: ''xen-devel@lists.xensource.com'' >> Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 >> VGAPassThroughto Windows XP Home 32-bit HVM Virtual Machine with >> IntelDesktop BoardDQ45CB >> >> I suppose you just use the patch posted in mailing list before. >> nVidia Geforce 8400 passthrough needs extra hacks. We can make it >> work in our experiments with 1:1 map of its MMIO BARs. >> >> We are working on gfx passthrough on latest xen-unstable. Firstly, we >> want to cook a simple patch including generic changes to support >> passthrough of virtualization friendly gfx cards, such as Nvidia >> FX3800. This patch is basically done. Then, we will add some hacks >> for more gfx cards passthrough, such as iGFX and some Nvidia and ATI >> cards. >> >> Regards, >> Weidong >> >> djmagee@mageenet.net wrote: >>> As I''ve pointed out on this list before, there are not enough PCIe >>> lanes on the DQ45CB to drive both the internal graphics adapter and >>> the add-on adapter at the same time. I believe the onboard one may >>> be able to operate in some sort of VGA only mode when there is a >>> card installed and used as the primary adapter. >>> >>> I have a similar setup, using the same motherboard, and an ATI 4770. >>> I used the VGA passthrough patches from an earlier posting (I saw >>> you followed the same set of instructions), with limited success. >>> I''ve been using 3.4-testing, and ''xenified'' 2.6.29.6 kernel. I made >>> modifications to the dom0 portion of the patches so they would apply >>> to my xenified 2.6.29 kernel. These patches include code that will >>> copy the VGA bios to the guest bios instead of using the emulated >>> vga bios. I''ve had very little success, however. I have only tried >>> passing through the ATI adapter. In all instances, the guest bios >>> messages appear on my monitor, so this much works. In some cases, >>> the guest essentially stops there; xm list show''s about 2sec CPU >>> usage and nothing ever happens after that point. In other cases, >>> the guest (win xp/vista/7, as well as KNOPPIX 5.3.1 DVD) will boot >>> all the way, but in very low res/color mode, and cannot properly >>> initialize the video device. Once or twice, it actually did >>> recognize the device and had a reasonable default color/resolution >>> combination. In all cases where the guest actually boots, the >>> system eventually freezes. In some cases, I get endless streams of >>> iommu page faults. >>> >>> I have 8GB ram installed. In all cases I''ve limited dom0 memory to >>> 2GB. In all cases, my guest has been assigned 2GB of memory. >>> >>> I have a dual core e6600. I''ve tried allowing dom0 to use both >>> cores, offlining one core (using xend dom0_vcpu setting) after boot, >>> and restricting dom0 to only one core using the dom0_max_vcpus xen >>> hypervisor parameter. In all of these cases I''ve tried both one and >>> two vcpus for the guest. My success with VGA passthrough seems >>> somewhat random and no combination of cpu assignment seems to have >>> any effect. >>> >>> I have not tried with the 2.6.18-xen kernel as I haven''t gotten it >>> to boot on my hardware; it can never find my volume group, even if I >>> create a initrd with all of the required modules, or build those >>> drivers into the kernel. I have not spent more than maybe a half an >>> hour on this problem; I suspect it may have something to do with the >>> version of mkinitrd I''m using (from Fedora 9 x64). >>> >>> If anyone else has any insight or similar experience I''d also love >>> to hear it. >>> >>> Doug Magee >>> djmagee@mageenet.com >>> >>> -----Original Message----- >>> From: xen-devel-bounces@lists.xensource.com >>> [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Mr. Teo >>> En Ming (Zhang Enming) Sent: Tuesday, August 25, 2009 11:57 AM >>> To: enming.teo@asiasoftsea.net >>> Cc: xen-devel@lists.xensource.com >>> Subject: Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA >>> PassThroughto Windows XP Home 32-bit HVM Virtual Machine with Intel >>> Desktop BoardDQ45CB >>> >>> I have uninstalled Xen 3.4.1 and installed Xen 3.5-unstable as >>> suggested by Weidong. >>> >>> >>> On 08/25/2009 11:47 PM, Mr. Teo En Ming (Zhang Enming) wrote: >>>> Dear All, >>>> >>>> I have managed to do PCI-e VGA passthrough with the open source Xen >>>> but the work is still in progress because although Windows XP guest >>>> can see the REAL PCI-e x16 graphics card instead of an emulated >>>> graphics driver, it cannot be initialized yet. >>>> >>>> Thanks to Intel Engineer Han Weidong, Pasi Kärkkäinen, Boris >>>> Derzhavets, Marc, Caz Yokoyama, and others who have helped me and >>>> shared their knowledge with me along the way. >>>> >>>> System Configuration: >>>> >>>> Intel Desktop Board DQ45CB with BIOS upgraded to 0093 >>>> Onboard Intel GMA 4500 Graphics (IGD) >>>> nVidia Geforce 8400 GS PCI Express x16 Graphics Card >>>> >>>> Fedora 11 Linux 64-bit Xen paravirt operations Domain 0 Host >>>> Operating System Xen 3.5 Unstable/Development Type 1 Hypervisor >>>> Jeremy Fitzhardinge''s Xen paravirt-ops domain 0 Kernel 2.6.31-rc6 >>>> Primary Video Adapter in BIOS: IGD >>>> >>>> Please see the screenshots and my blog at the link here: >>>> >>>> >> >http://teo-en-ming-aka-zhang-enming.blogspot.com/2009/08/nvidia-geforce-8400>> -gs-pci-express-x16.html >>>> >>>> >>> >>> >>> >>> >>> _______________________________________________ >>> Xen-devel mailing list >>> Xen-devel@lists.xensource.com >>> http://lists.xensource.com/xen-devel >>> >>> _______________________________________________ >>> Xen-devel mailing list >>> Xen-devel@lists.xensource.com >>> http://lists.xensource.com/xen-devel >> >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel >> >> No virus found in this incoming message. >> Checked by AVG - www.avg.com >> Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: >> 08/25/09 18:07:00 >> >> No virus found in this outgoing message. >> Checked by AVG - www.avg.com >> Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: >> 08/25/09 18:07:00 > > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: > 08/25/09 18:07:00 > > No virus found in this outgoing message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: > 08/25/09 18:07:00_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/26/09 12:16:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.69/2328 - Release Date: 08/26/09 12:16:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.69/2328 - Release Date: 08/26/09 12:16:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Teo En Ming (Zhang Enming)
2009-Aug-27 16:18 UTC
RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB
Dear Weidong, I have read through the technical papers on VGA passthrough presented by the University of Amsterdam and the University of Michigan and thus gained a better understanding of VGA passthrough in Xen. For my preferred setup, I would not be able to adopt the guidance provided by the University of Amsterdam. I should adopt the guidance provided by the University of Michigan. I want dom0 to have access to Intel GMA 4500 onboard graphics while the Windows XP Home HVM domU to have access to PCI Express x16 graphics. I have taken the first step in examining the source code for disabling the Cirrus emulated vga card bootup in Xen 3.5-unstable. According to Beng Heng''s UMICH technical paper, he referenced source file tools/ioemu-remote/hw/pc.c for disabling emulated vga device. I went to the xen-unstable mercurial reponsitory http://xenbits.xensource.com/xen-unstable.hg and found tools/ioemu/hw/pc.c Now, my objective is to disable the emulated/virtual vga card and load the bios of my nvidia geforce 8400 gs pcie x16 graphics card. Source code file http://xenbits.xensource.com/xen-unstable.hg?file/18b41609a980/tools/ioemu/h w/pc.c ======================================================================== Line 862 says that if variable cirrus_vga_enabled returns true (having a value of 1), the cirrus vga bios VGABIOS_CIRRUS_FILENAME will be loaded. Otherwise, an alternative vga bios file VGABIOS_FILENAME will be loaded. On line 30 VGABIOS_FILENAME is defined. On line 31 VGABIOS_CIRRUS_FILENAME is defined. On line 24 a header file vl.h is referenced. Source code file http://xenbits.xensource.com/xen-unstable.hg?file/7eefe6399bcd/tools/ioemu/v l.h ========================================================================== On line 177 the integer variable cirrus_vga_enabled is declared but I could not find any line where this variable is initialized to a value. But I found file vl.c. Source code file http://xenbits.xensource.com/xen-unstable.hg?file/dade7f0bdc8d/tools/ioemu/v l.c =========================================================================== On line 168 integer variable cirrus_vga_enabled is initialized to a value of 1. However, I want to disable cirrus vga and load my nvidia geforce 8400 gs vga bios. So I should change line 168 to "int cirrus_vga_enabled = 0;" in my case. Hence line 865 in file pc.c would be executed. After extracting the vga bios of my nvidia geforce 8400 gs pcie x16 graphics card using the nvflash.exe utility and saving the firmware file as nv-gf-8400-gs.bin, I should place this bios image file in the xen-unstable sources directory on my PC. It should be in the same directory where files vgabios.bin and vgabios-cirrus.bin are found. Then I should change line 30 in file pc.c from ''#define VGABIOS_FILENAME "vgabios.bin"'' to ''#define VGABIOS_FILENAME nv-gf-8400-gs.bin'' and then recompile and install the source code. Besides disabling the emulated cirrus vga card, may I know what other things do I need to take care of? Does the pre-existing xen 3.5-unstable source code already can take care of re-executing the geforce 8400 gs vga bios, passing through the framebuffer and vga I/O ports, and intercepting the values in the host bridge such that I do not have to hack the other relevant source code files? Thank you very much. Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com Alma Maters: Singapore Polytechnic, National University of Singapore -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En Ming (Zhang Enming) Sent: Thursday, August 27, 2009 2:03 PM To: enming.teo@asiasoftsea.net; weidong.han@intel.com; djmagee@mageenet.net Cc: xen-devel@lists.xensource.com Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThrough to Windows XP Home 32-bit HVM Virtual Machine withIntel Desktop Board DQ45CB I think I cannot use NiBiTor already as I don''t have any native Windows operating system running on my computer. Instead, I should create a CD-ROM boot disc that contains nvflash.exe and also loads USB drivers. I will use nvflash.exe to extract out and save VGA BIOS to USB sticks. NVIDIA GeForce BIOS Backup Guide: http://www.mvktech.net/content/view/14/37/ Motherboard Flash Boot CD from Linux Mini HOWTO: http://www.nenie.org/misc/flashbootcd.html DOS USB Drivers: http://www.bootdisk.com/usb.htm Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En Ming (Zhang Enming) Sent: Thursday, August 27, 2009 11:18 AM To: weidong.han@intel.com; djmagee@mageenet.net Cc: xen-devel@lists.xensource.com Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThrough to Windows XP Home 32-bit HVM Virtual Machine withIntel Desktop Board DQ45CB Dear Weidong, I will go for option 2.> don''t initialize emulated VGA in qemu, I I think you have seen the code.I have not seen the source code. Though I have learnt simple structured C before in Singapore Polytechnic some 11 years ago, I am not a programmer by profession. So I would still need some instructions on how I can prevent emulated VGA bios from loading and getting the vga bios of the real display card to load. Thank you. Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Han, Weidong Sent: Thursday, August 27, 2009 10:01 AM To: ''enming.teo@asiasoftsea.net''; ''djmagee@mageenet.net'' Cc: ''xen-devel@lists.xensource.com'' Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThrough to Windows XP Home 32-bit HVM Virtual Machine with IntelDesktop Board DQ45CB Teo En Ming (Zhang Enming) wrote:> Hi Weidong, > > Currently I am using the entire Xen 3.5-unstable branch and not using > the posted pci-stub patch changeset 19893 to patch Xen 3.4.1-testing. > I am using Xen 3.5-unstable in conjunction with pvops dom 0 kernel > 2.6.31-rc6. > > Here are my questions: > > 1) How do I extract out the VGA BIOS/firmware from the > firmware/EEPROM chip on the Geforce 8400 GS VGA card? If it is not > possible to extract, where can I download the firmware? NVIDIA does > not provide display card firmware/BIOS files for public download on > its website.There are 3 ways to load VGA bios to guest: 1. copy it from host 0xc0000, and map it to guest 0xc0000. This works for primary gfx card, XCI does like this. But some VGA bios re-execution doesn''t work well. 2. dump VGA bios to a file first, then load it to guest: you can use NiBiTor to dump VGA bios of Nvidia gfx cards to a file, then load it into guest roms like what emulated VGA does in hvmloader. This works for all gfx cards, but it involves manual steps. 3. load VGA bios from expansion rom: Intel iGFX doesn''t have expansion rom> > 2) How do I get the Geforce 8400 GS VGA BIOS to load instead of the > emulated VGA BIOS? Which configuration files/source codes do I have to > configure/patch?don''t initialize emulated VGA in qemu, I I think you have seen the code.> > 3) What are physical MMIO, virtual MMIO Bars, dsdt.asl and 1:1 map? I > am sorry but I am not a graphics card hardware engineer so I do not > understand those terms. I would appreciate it if you could write out > some steps that I could carry out or point me to already available > documentation.When you use command ''lspci -v'', you may see below messages under each device: ... Memory at d0000000 (32-bit, prefetchable) [size=256M] Memory at ff900000 (32-bit, non-prefetchable) [size=1M] ... They are MMIO BARs. 1:1 map means make these MMIO BARs in guest are equal to the values in host.> > 4) I don''t mind using experimental code. Please post it on the > xen-devel mailing list so that I could try it out.we will post in near future. pls wait for a while. Regards, Weidong> > Thank you very much. > > Regards, > > Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) > BEng(Hons)(Mechanical Engineering) > Technical Support Engineer > Information Technology Department > Asiasoft Online Pte Ltd > Tampines Central 1 #04-01 Tampines Plaza > Singapore 529541 > Republic of Singapore > Mobile: +65-9648-9798 > MSN: teoenming@hotmail.com > > -----Original Message----- > From: Han, Weidong [mailto:weidong.han@intel.com] > Sent: Wednesday, August 26, 2009 6:56 PM > To: ''enming.teo@asiasoftsea.net''; ''djmagee@mageenet.net'' > Cc: ''xen-devel@lists.xensource.com'' > Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA > Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel > Desktop Board DQ45CB > > Teo En Ming (Zhang Enming) wrote: >> Hi Weidong, >> >> Could you share with us the hack codes for making Geforce 8400 GS >> work and also how to let the Windows HVM guest boot up using the real >> BIOS of Geforce 8400 GS instead of an emulated VGA BIOS? >> > > What patch are you using now? Using real VGA bios of gfx card to > replace emulatd VGA bios is the prerequisite of gfx passthrough. You > can find it in posted gfx passthrough patches or XCI. For hack of > making Geforce 8400, we reserve physical MMIO BARs in dsdt.asl, and > make it 1:1 map between physical MMIO BARs and virtual MMIO BARs of > the card. Currently our code is experimental, we will send out in > mailing list after cleanup and more tests. > > Regards, > Weidong > >> Thank you. >> >> Regards, >> >> Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) >> BEng(Hons)(Mechanical Engineering) >> Technical Support Engineer >> Information Technology Department >> Asiasoft Online Pte Ltd >> Tampines Central 1 #04-01 Tampines Plaza >> Singapore 529541 >> Republic of Singapore >> Mobile: +65-9648-9798 >> MSN: teoenming@hotmail.com >> Alma Maters: Singapore Polytechnic, National University of Singapore >> >> -----Original Message----- >> From: xen-devel-bounces@lists.xensource.com >> [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Han, >> Weidong Sent: Wednesday, August 26, 2009 4:27 PM >> To: ''djmagee@mageenet.net''; ''enming.teo@asiasoftsea.net'' >> Cc: ''xen-devel@lists.xensource.com'' >> Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 >> VGAPassThroughto Windows XP Home 32-bit HVM Virtual Machine with >> IntelDesktop BoardDQ45CB >> >> I suppose you just use the patch posted in mailing list before. >> nVidia Geforce 8400 passthrough needs extra hacks. We can make it >> work in our experiments with 1:1 map of its MMIO BARs. >> >> We are working on gfx passthrough on latest xen-unstable. Firstly, we >> want to cook a simple patch including generic changes to support >> passthrough of virtualization friendly gfx cards, such as Nvidia >> FX3800. This patch is basically done. Then, we will add some hacks >> for more gfx cards passthrough, such as iGFX and some Nvidia and ATI >> cards. >> >> Regards, >> Weidong >> >> djmagee@mageenet.net wrote: >>> As I''ve pointed out on this list before, there are not enough PCIe >>> lanes on the DQ45CB to drive both the internal graphics adapter and >>> the add-on adapter at the same time. I believe the onboard one may >>> be able to operate in some sort of VGA only mode when there is a >>> card installed and used as the primary adapter. >>> >>> I have a similar setup, using the same motherboard, and an ATI 4770. >>> I used the VGA passthrough patches from an earlier posting (I saw >>> you followed the same set of instructions), with limited success. >>> I''ve been using 3.4-testing, and ''xenified'' 2.6.29.6 kernel. I made >>> modifications to the dom0 portion of the patches so they would apply >>> to my xenified 2.6.29 kernel. These patches include code that will >>> copy the VGA bios to the guest bios instead of using the emulated >>> vga bios. I''ve had very little success, however. I have only tried >>> passing through the ATI adapter. In all instances, the guest bios >>> messages appear on my monitor, so this much works. In some cases, >>> the guest essentially stops there; xm list show''s about 2sec CPU >>> usage and nothing ever happens after that point. In other cases, >>> the guest (win xp/vista/7, as well as KNOPPIX 5.3.1 DVD) will boot >>> all the way, but in very low res/color mode, and cannot properly >>> initialize the video device. Once or twice, it actually did >>> recognize the device and had a reasonable default color/resolution >>> combination. In all cases where the guest actually boots, the >>> system eventually freezes. In some cases, I get endless streams of >>> iommu page faults. >>> >>> I have 8GB ram installed. In all cases I''ve limited dom0 memory to >>> 2GB. In all cases, my guest has been assigned 2GB of memory. >>> >>> I have a dual core e6600. I''ve tried allowing dom0 to use both >>> cores, offlining one core (using xend dom0_vcpu setting) after boot, >>> and restricting dom0 to only one core using the dom0_max_vcpus xen >>> hypervisor parameter. In all of these cases I''ve tried both one and >>> two vcpus for the guest. My success with VGA passthrough seems >>> somewhat random and no combination of cpu assignment seems to have >>> any effect. >>> >>> I have not tried with the 2.6.18-xen kernel as I haven''t gotten it >>> to boot on my hardware; it can never find my volume group, even if I >>> create a initrd with all of the required modules, or build those >>> drivers into the kernel. I have not spent more than maybe a half an >>> hour on this problem; I suspect it may have something to do with the >>> version of mkinitrd I''m using (from Fedora 9 x64). >>> >>> If anyone else has any insight or similar experience I''d also love >>> to hear it. >>> >>> Doug Magee >>> djmagee@mageenet.com >>> >>> -----Original Message----- >>> From: xen-devel-bounces@lists.xensource.com >>> [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Mr. Teo >>> En Ming (Zhang Enming) Sent: Tuesday, August 25, 2009 11:57 AM >>> To: enming.teo@asiasoftsea.net >>> Cc: xen-devel@lists.xensource.com >>> Subject: Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA >>> PassThroughto Windows XP Home 32-bit HVM Virtual Machine with Intel >>> Desktop BoardDQ45CB >>> >>> I have uninstalled Xen 3.4.1 and installed Xen 3.5-unstable as >>> suggested by Weidong. >>> >>> >>> On 08/25/2009 11:47 PM, Mr. Teo En Ming (Zhang Enming) wrote: >>>> Dear All, >>>> >>>> I have managed to do PCI-e VGA passthrough with the open source Xen >>>> but the work is still in progress because although Windows XP guest >>>> can see the REAL PCI-e x16 graphics card instead of an emulated >>>> graphics driver, it cannot be initialized yet. >>>> >>>> Thanks to Intel Engineer Han Weidong, Pasi Kärkkäinen, Boris >>>> Derzhavets, Marc, Caz Yokoyama, and others who have helped me and >>>> shared their knowledge with me along the way. >>>> >>>> System Configuration: >>>> >>>> Intel Desktop Board DQ45CB with BIOS upgraded to 0093 >>>> Onboard Intel GMA 4500 Graphics (IGD) >>>> nVidia Geforce 8400 GS PCI Express x16 Graphics Card >>>> >>>> Fedora 11 Linux 64-bit Xen paravirt operations Domain 0 Host >>>> Operating System Xen 3.5 Unstable/Development Type 1 Hypervisor >>>> Jeremy Fitzhardinge''s Xen paravirt-ops domain 0 Kernel 2.6.31-rc6 >>>> Primary Video Adapter in BIOS: IGD >>>> >>>> Please see the screenshots and my blog at the link here: >>>> >>>> >> >http://teo-en-ming-aka-zhang-enming.blogspot.com/2009/08/nvidia-geforce-8400>> -gs-pci-express-x16.html >>>> >>>> >>> >>> >>> >>> >>> _______________________________________________ >>> Xen-devel mailing list >>> Xen-devel@lists.xensource.com >>> http://lists.xensource.com/xen-devel >>> >>> _______________________________________________ >>> Xen-devel mailing list >>> Xen-devel@lists.xensource.com >>> http://lists.xensource.com/xen-devel >> >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel >> >> No virus found in this incoming message. >> Checked by AVG - www.avg.com >> Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: >> 08/25/09 18:07:00 >> >> No virus found in this outgoing message. >> Checked by AVG - www.avg.com >> Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: >> 08/25/09 18:07:00 > > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: > 08/25/09 18:07:00 > > No virus found in this outgoing message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: > 08/25/09 18:07:00_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/26/09 12:16:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.69/2328 - Release Date: 08/26/09 12:16:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.69/2328 - Release Date: 08/26/09 12:16:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.69/2328 - Release Date: 08/26/09 12:16:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.69/2328 - Release Date: 08/26/09 12:16:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
<djmagee@mageenet.net>
2009-Aug-27 18:28 UTC
RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB
Tao, The DQ45CB does not support the configuration you are trying to use; it does not have enough PCIe lanes. See the following reference: http://download.intel.com/support/motherboards/desktop/dq45cb/sb/e42785001us.pdf In the block diagram on page 13, you''ll see that motherboard uses 8 PCIe lanes to drive the two DVI outputs on the motherboard. Those same lanes are used to drive an add-on PCIex16 graphics card. They can''t be used for both purposes at the same time. On page 18, this is spelled out. Under the "Intel Q45 Graphics Subsystem" heading it reads, "The Intel Q45 Express chipset contains two separate, mutually exclusive graphics options. Either the Intel Graphics Media Accelerator 4500 (Intel GMA 4500) graphics controller (contained within the 82Q45 GMCH) is used, or a PCI Express x16 add-in card can be used. When a PCI Express x16 add-in card is installed, the Intel GMA 4500 graphics controller is disabled." I believe at the very best, you can realize very basic, analog only output using a DVI-VGA adapter on the primary output, but I''m not even sure about that. Doug Magee -----Original Message----- From: Teo En Ming (Zhang Enming) [mailto:enming.teo@asiasoftsea.net] Sent: Thursday, August 27, 2009 12:18 PM To: enming.teo@asiasoftsea.net; weidong.han@intel.com; djmagee@mageenet.net Cc: xen-devel@lists.xensource.com Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB Dear Weidong, I have read through the technical papers on VGA passthrough presented by the University of Amsterdam and the University of Michigan and thus gained a better understanding of VGA passthrough in Xen. For my preferred setup, I would not be able to adopt the guidance provided by the University of Amsterdam. I should adopt the guidance provided by the University of Michigan. I want dom0 to have access to Intel GMA 4500 onboard graphics while the Windows XP Home HVM domU to have access to PCI Express x16 graphics. I have taken the first step in examining the source code for disabling the Cirrus emulated vga card bootup in Xen 3.5-unstable. According to Beng Heng''s UMICH technical paper, he referenced source file tools/ioemu-remote/hw/pc.c for disabling emulated vga device. I went to the xen-unstable mercurial reponsitory http://xenbits.xensource.com/xen-unstable.hg and found tools/ioemu/hw/pc.c Now, my objective is to disable the emulated/virtual vga card and load the bios of my nvidia geforce 8400 gs pcie x16 graphics card. Source code file http://xenbits.xensource.com/xen-unstable.hg?file/18b41609a980/tools/ioemu/h w/pc.c ======================================================================== Line 862 says that if variable cirrus_vga_enabled returns true (having a value of 1), the cirrus vga bios VGABIOS_CIRRUS_FILENAME will be loaded. Otherwise, an alternative vga bios file VGABIOS_FILENAME will be loaded. On line 30 VGABIOS_FILENAME is defined. On line 31 VGABIOS_CIRRUS_FILENAME is defined. On line 24 a header file vl.h is referenced. Source code file http://xenbits.xensource.com/xen-unstable.hg?file/7eefe6399bcd/tools/ioemu/v l.h ========================================================================== On line 177 the integer variable cirrus_vga_enabled is declared but I could not find any line where this variable is initialized to a value. But I found file vl.c. Source code file http://xenbits.xensource.com/xen-unstable.hg?file/dade7f0bdc8d/tools/ioemu/v l.c =========================================================================== On line 168 integer variable cirrus_vga_enabled is initialized to a value of 1. However, I want to disable cirrus vga and load my nvidia geforce 8400 gs vga bios. So I should change line 168 to "int cirrus_vga_enabled = 0;" in my case. Hence line 865 in file pc.c would be executed. After extracting the vga bios of my nvidia geforce 8400 gs pcie x16 graphics card using the nvflash.exe utility and saving the firmware file as nv-gf-8400-gs.bin, I should place this bios image file in the xen-unstable sources directory on my PC. It should be in the same directory where files vgabios.bin and vgabios-cirrus.bin are found. Then I should change line 30 in file pc.c from ''#define VGABIOS_FILENAME "vgabios.bin"'' to ''#define VGABIOS_FILENAME nv-gf-8400-gs.bin'' and then recompile and install the source code. Besides disabling the emulated cirrus vga card, may I know what other things do I need to take care of? Does the pre-existing xen 3.5-unstable source code already can take care of re-executing the geforce 8400 gs vga bios, passing through the framebuffer and vga I/O ports, and intercepting the values in the host bridge such that I do not have to hack the other relevant source code files? Thank you very much. Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com Alma Maters: Singapore Polytechnic, National University of Singapore -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En Ming (Zhang Enming) Sent: Thursday, August 27, 2009 2:03 PM To: enming.teo@asiasoftsea.net; weidong.han@intel.com; djmagee@mageenet.net Cc: xen-devel@lists.xensource.com Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThrough to Windows XP Home 32-bit HVM Virtual Machine withIntel Desktop Board DQ45CB I think I cannot use NiBiTor already as I don''t have any native Windows operating system running on my computer. Instead, I should create a CD-ROM boot disc that contains nvflash.exe and also loads USB drivers. I will use nvflash.exe to extract out and save VGA BIOS to USB sticks. NVIDIA GeForce BIOS Backup Guide: http://www.mvktech.net/content/view/14/37/ Motherboard Flash Boot CD from Linux Mini HOWTO: http://www.nenie.org/misc/flashbootcd.html DOS USB Drivers: http://www.bootdisk.com/usb.htm Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En Ming (Zhang Enming) Sent: Thursday, August 27, 2009 11:18 AM To: weidong.han@intel.com; djmagee@mageenet.net Cc: xen-devel@lists.xensource.com Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThrough to Windows XP Home 32-bit HVM Virtual Machine withIntel Desktop Board DQ45CB Dear Weidong, I will go for option 2.> don''t initialize emulated VGA in qemu, I I think you have seen the code.I have not seen the source code. Though I have learnt simple structured C before in Singapore Polytechnic some 11 years ago, I am not a programmer by profession. So I would still need some instructions on how I can prevent emulated VGA bios from loading and getting the vga bios of the real display card to load. Thank you. Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Han, Weidong Sent: Thursday, August 27, 2009 10:01 AM To: ''enming.teo@asiasoftsea.net''; ''djmagee@mageenet.net'' Cc: ''xen-devel@lists.xensource.com'' Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA PassThrough to Windows XP Home 32-bit HVM Virtual Machine with IntelDesktop Board DQ45CB Teo En Ming (Zhang Enming) wrote:> Hi Weidong, > > Currently I am using the entire Xen 3.5-unstable branch and not using > the posted pci-stub patch changeset 19893 to patch Xen 3.4.1-testing. > I am using Xen 3.5-unstable in conjunction with pvops dom 0 kernel > 2.6.31-rc6. > > Here are my questions: > > 1) How do I extract out the VGA BIOS/firmware from the > firmware/EEPROM chip on the Geforce 8400 GS VGA card? If it is not > possible to extract, where can I download the firmware? NVIDIA does > not provide display card firmware/BIOS files for public download on > its website.There are 3 ways to load VGA bios to guest: 1. copy it from host 0xc0000, and map it to guest 0xc0000. This works for primary gfx card, XCI does like this. But some VGA bios re-execution doesn''t work well. 2. dump VGA bios to a file first, then load it to guest: you can use NiBiTor to dump VGA bios of Nvidia gfx cards to a file, then load it into guest roms like what emulated VGA does in hvmloader. This works for all gfx cards, but it involves manual steps. 3. load VGA bios from expansion rom: Intel iGFX doesn''t have expansion rom> > 2) How do I get the Geforce 8400 GS VGA BIOS to load instead of the > emulated VGA BIOS? Which configuration files/source codes do I have to > configure/patch?don''t initialize emulated VGA in qemu, I I think you have seen the code.> > 3) What are physical MMIO, virtual MMIO Bars, dsdt.asl and 1:1 map? I > am sorry but I am not a graphics card hardware engineer so I do not > understand those terms. I would appreciate it if you could write out > some steps that I could carry out or point me to already available > documentation.When you use command ''lspci -v'', you may see below messages under each device: ... Memory at d0000000 (32-bit, prefetchable) [size=256M] Memory at ff900000 (32-bit, non-prefetchable) [size=1M] ... They are MMIO BARs. 1:1 map means make these MMIO BARs in guest are equal to the values in host.> > 4) I don''t mind using experimental code. Please post it on the > xen-devel mailing list so that I could try it out.we will post in near future. pls wait for a while. Regards, Weidong> > Thank you very much. > > Regards, > > Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) > BEng(Hons)(Mechanical Engineering) > Technical Support Engineer > Information Technology Department > Asiasoft Online Pte Ltd > Tampines Central 1 #04-01 Tampines Plaza > Singapore 529541 > Republic of Singapore > Mobile: +65-9648-9798 > MSN: teoenming@hotmail.com > > -----Original Message----- > From: Han, Weidong [mailto:weidong.han@intel.com] > Sent: Wednesday, August 26, 2009 6:56 PM > To: ''enming.teo@asiasoftsea.net''; ''djmagee@mageenet.net'' > Cc: ''xen-devel@lists.xensource.com'' > Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA > Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel > Desktop Board DQ45CB > > Teo En Ming (Zhang Enming) wrote: >> Hi Weidong, >> >> Could you share with us the hack codes for making Geforce 8400 GS >> work and also how to let the Windows HVM guest boot up using the real >> BIOS of Geforce 8400 GS instead of an emulated VGA BIOS? >> > > What patch are you using now? Using real VGA bios of gfx card to > replace emulatd VGA bios is the prerequisite of gfx passthrough. You > can find it in posted gfx passthrough patches or XCI. For hack of > making Geforce 8400, we reserve physical MMIO BARs in dsdt.asl, and > make it 1:1 map between physical MMIO BARs and virtual MMIO BARs of > the card. Currently our code is experimental, we will send out in > mailing list after cleanup and more tests. > > Regards, > Weidong > >> Thank you. >> >> Regards, >> >> Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) >> BEng(Hons)(Mechanical Engineering) >> Technical Support Engineer >> Information Technology Department >> Asiasoft Online Pte Ltd >> Tampines Central 1 #04-01 Tampines Plaza >> Singapore 529541 >> Republic of Singapore >> Mobile: +65-9648-9798 >> MSN: teoenming@hotmail.com >> Alma Maters: Singapore Polytechnic, National University of Singapore >> >> -----Original Message----- >> From: xen-devel-bounces@lists.xensource.com >> [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Han, >> Weidong Sent: Wednesday, August 26, 2009 4:27 PM >> To: ''djmagee@mageenet.net''; ''enming.teo@asiasoftsea.net'' >> Cc: ''xen-devel@lists.xensource.com'' >> Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 >> VGAPassThroughto Windows XP Home 32-bit HVM Virtual Machine with >> IntelDesktop BoardDQ45CB >> >> I suppose you just use the patch posted in mailing list before. >> nVidia Geforce 8400 passthrough needs extra hacks. We can make it >> work in our experiments with 1:1 map of its MMIO BARs. >> >> We are working on gfx passthrough on latest xen-unstable. Firstly, we >> want to cook a simple patch including generic changes to support >> passthrough of virtualization friendly gfx cards, such as Nvidia >> FX3800. This patch is basically done. Then, we will add some hacks >> for more gfx cards passthrough, such as iGFX and some Nvidia and ATI >> cards. >> >> Regards, >> Weidong >> >> djmagee@mageenet.net wrote: >>> As I''ve pointed out on this list before, there are not enough PCIe >>> lanes on the DQ45CB to drive both the internal graphics adapter and >>> the add-on adapter at the same time. I believe the onboard one may >>> be able to operate in some sort of VGA only mode when there is a >>> card installed and used as the primary adapter. >>> >>> I have a similar setup, using the same motherboard, and an ATI 4770. >>> I used the VGA passthrough patches from an earlier posting (I saw >>> you followed the same set of instructions), with limited success. >>> I''ve been using 3.4-testing, and ''xenified'' 2.6.29.6 kernel. I made >>> modifications to the dom0 portion of the patches so they would apply >>> to my xenified 2.6.29 kernel. These patches include code that will >>> copy the VGA bios to the guest bios instead of using the emulated >>> vga bios. I''ve had very little success, however. I have only tried >>> passing through the ATI adapter. In all instances, the guest bios >>> messages appear on my monitor, so this much works. In some cases, >>> the guest essentially stops there; xm list show''s about 2sec CPU >>> usage and nothing ever happens after that point. In other cases, >>> the guest (win xp/vista/7, as well as KNOPPIX 5.3.1 DVD) will boot >>> all the way, but in very low res/color mode, and cannot properly >>> initialize the video device. Once or twice, it actually did >>> recognize the device and had a reasonable default color/resolution >>> combination. In all cases where the guest actually boots, the >>> system eventually freezes. In some cases, I get endless streams of >>> iommu page faults. >>> >>> I have 8GB ram installed. In all cases I''ve limited dom0 memory to >>> 2GB. In all cases, my guest has been assigned 2GB of memory. >>> >>> I have a dual core e6600. I''ve tried allowing dom0 to use both >>> cores, offlining one core (using xend dom0_vcpu setting) after boot, >>> and restricting dom0 to only one core using the dom0_max_vcpus xen >>> hypervisor parameter. In all of these cases I''ve tried both one and >>> two vcpus for the guest. My success with VGA passthrough seems >>> somewhat random and no combination of cpu assignment seems to have >>> any effect. >>> >>> I have not tried with the 2.6.18-xen kernel as I haven''t gotten it >>> to boot on my hardware; it can never find my volume group, even if I >>> create a initrd with all of the required modules, or build those >>> drivers into the kernel. I have not spent more than maybe a half an >>> hour on this problem; I suspect it may have something to do with the >>> version of mkinitrd I''m using (from Fedora 9 x64). >>> >>> If anyone else has any insight or similar experience I''d also love >>> to hear it. >>> >>> Doug Magee >>> djmagee@mageenet.com >>> >>> -----Original Message----- >>> From: xen-devel-bounces@lists.xensource.com >>> [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Mr. Teo >>> En Ming (Zhang Enming) Sent: Tuesday, August 25, 2009 11:57 AM >>> To: enming.teo@asiasoftsea.net >>> Cc: xen-devel@lists.xensource.com >>> Subject: Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA >>> PassThroughto Windows XP Home 32-bit HVM Virtual Machine with Intel >>> Desktop BoardDQ45CB >>> >>> I have uninstalled Xen 3.4.1 and installed Xen 3.5-unstable as >>> suggested by Weidong. >>> >>> >>> On 08/25/2009 11:47 PM, Mr. Teo En Ming (Zhang Enming) wrote: >>>> Dear All, >>>> >>>> I have managed to do PCI-e VGA passthrough with the open source Xen >>>> but the work is still in progress because although Windows XP guest >>>> can see the REAL PCI-e x16 graphics card instead of an emulated >>>> graphics driver, it cannot be initialized yet. >>>> >>>> Thanks to Intel Engineer Han Weidong, Pasi Kärkkäinen, Boris >>>> Derzhavets, Marc, Caz Yokoyama, and others who have helped me and >>>> shared their knowledge with me along the way. >>>> >>>> System Configuration: >>>> >>>> Intel Desktop Board DQ45CB with BIOS upgraded to 0093 >>>> Onboard Intel GMA 4500 Graphics (IGD) >>>> nVidia Geforce 8400 GS PCI Express x16 Graphics Card >>>> >>>> Fedora 11 Linux 64-bit Xen paravirt operations Domain 0 Host >>>> Operating System Xen 3.5 Unstable/Development Type 1 Hypervisor >>>> Jeremy Fitzhardinge''s Xen paravirt-ops domain 0 Kernel 2.6.31-rc6 >>>> Primary Video Adapter in BIOS: IGD >>>> >>>> Please see the screenshots and my blog at the link here: >>>> >>>> >> >http://teo-en-ming-aka-zhang-enming.blogspot.com/2009/08/nvidia-geforce-8400>> -gs-pci-express-x16.html >>>> >>>> >>> >>> >>> >>> >>> _______________________________________________ >>> Xen-devel mailing list >>> Xen-devel@lists.xensource.com >>> http://lists.xensource.com/xen-devel >>> >>> _______________________________________________ >>> Xen-devel mailing list >>> Xen-devel@lists.xensource.com >>> http://lists.xensource.com/xen-devel >> >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel >> >> No virus found in this incoming message. >> Checked by AVG - www.avg.com >> Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: >> 08/25/09 18:07:00 >> >> No virus found in this outgoing message. >> Checked by AVG - www.avg.com >> Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: >> 08/25/09 18:07:00 > > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: > 08/25/09 18:07:00 > > No virus found in this outgoing message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: > 08/25/09 18:07:00_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/26/09 12:16:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.69/2328 - Release Date: 08/26/09 12:16:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.69/2328 - Release Date: 08/26/09 12:16:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.69/2328 - Release Date: 08/26/09 12:16:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.69/2328 - Release Date: 08/26/09 12:16:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Dear Tim Moore, Could you help me verify that my findings here http://lists.xensource.com/archives/html/xen-devel/2009-08/msg01032.html are correct and whether anything more should be done? Thank you. Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En Ming (Zhang Enming) Sent: Thursday, August 27, 2009 11:00 AM To: enming.teo@asiasoftsea.net; timothy.moore@expidas.net Cc: Xci-devel@lists.xensource.com; xen-devel@lists.xensource.com Subject: RE: [Xen-devel] VGA passthrough to HVM Here are my explanations on why we couldn''t reproduce Peter van der Maas''s work: 1) Our setups are vastly different 2) Peter van der Maas is using Intel DQ35JO while I am using Intel DQ45CB with different chipsets (Q35 vs Q45) 3) We are using different display card brand/model and different primary/secondary video controller setups 4) Peter van der Maas was using Xen unstable as of Jan 2009, while I am using Xen 3.5-unstable as of August 2009 5) Peter van der Maas was using Linux-2.6.18.8-xen Domain 0 NON-paravirt-ops kernel. He mentioned using pciback which I cannot use at all. I am using Jeremy Fitzhardinge''s 2.6.31-rc6 Dom 0 pv-ops kernel. I can only use pci-stub compiled in or as module. 6) Peter van der Maas was using Windows XP Professional SP3 32-bit. I am using Windows XP Home SP3 32-bit. We have too many variables in our experimental setups. In order to reproduce and validate another scientist''s work, we should have exactly the same setups. Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En Ming (Zhang Enming) Sent: Thursday, August 27, 2009 10:40 AM To: timothy.moore@expidas.net Cc: Xci-devel@lists.xensource.com; xen-devel@lists.xensource.com Subject: RE: [Xen-devel] VGA passthrough to HVM Dear Timothy, Thank you for compiling all the links to the currently available work on Xen PCI/PCI-E/PEG VGA pass through to Windows HVM guests. When I looked at Peter J. van der Maas''s reported success, I have some doubts. Intel Desktop Board DQ35JO only has an onboard graphics and an external PCI-E x16 slot. How was Peter J. van der Maas able to use two external display cards? Assuming that his nVidia GeForce2 MX200 is a PCI card, and his nVidia 9500GT is a PCI-e x16 card, this resolves the above doubt. Even then, when you plug in both PCI and PEG graphics card at the same time, as is with the case on my Intel Desktop Board DQ45CB, only the PCI VGA card will work and display to the monitor. The PCI-E x16 display card will not work. When the PCI display card is plugged in, my motherboard DQ45CB can''t even detect how many lanes my PEG display card is using (should be 16 lanes). Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Tim Moore Sent: Thursday, August 27, 2009 5:09 AM To: ''enming.teo@asiasoftsea.net'' Cc: ''Xci-devel@lists.xensource.com''; xen-devel@lists.xensource.com Subject: RE: [Xen-devel] VGA passthrough to HVM Hi Teo, We have all been eagerly awaiting the PCI Passthrough for VGA patches to be released by the Xen-Devel community .. but from the sounds of the guys at Intel - it''s not ready for public testing and it will most probably generate more questions for them to answer. Ultimately this is a distraction and will only delay the release of this functionality. The closest you will get at the moment is the patches which form part of the XCI build tree and support is limited to the Intel chipset and onboard Intel graphics controller. I believe Ian Jackson also has some success with ATI but NVidia cards are known not to work. There are other examples available including the "Neo 1:1 patch" which is based on an older version of Xen (I think 3.2). NOTE: This ONLY applies to HVM, VGA Passthrough using xen-unstable and Linux non-HVM DomU is working, I have success with many Nvidia cards using this setup. You can use this to prove your Xen in preparation for the HVM patches and to ensure that your VT-d and Dom0 are sound. Peter J. van der Maas inspired us all with his announcement, but no one has ever been able to reproduce: http://www.nabble.com/Successful-PCIe-Graphics-VT-d-Passthrough-to-Win32-Dom U,-Q35-chipset-td21671745.html Myself and Beng Heng also got to the same point as yourself, with issues on vBar<>pBar mapping and VGA BIOS. In all cases, the VGA card is visible in Device Manager in the DomU but the driver does not load. On My 8800GTS, the VGA Card FAN spins down the same as when booting under native XP but still the driver does not load. Here are some good links with relevant information. http://staff.science.uva.nl/~delaat/sne-2008-2009/p22/presentation.pdf http://staff.science.uva.nl/~delaat/sne-2008-2009/p22/report.pdf http://www.eecs.umich.edu/~bengheng/pubs/vgapt_techreport.pdf http://lists.xensource.com/archives/html/xen-devel/2009-05/msg00579.html This is where I admit defeat and hand over to the brilliance of the Xen developers! My last state is captured here: http://markmail.org/message/y476tymnhu2wrc47 The most success I have evidence of is from Alex Bebbington here: http://markmail.org/message/mjiv437pva2yrhvp If you look closely, this feature is on the Offical Xen Roadmap for Xen 4.0 captured here: http://wiki.xensource.com/xenwiki/XenRoadMap {XCI} There is sufficient information for the XCI project to build and create a demo install for the enthusiast: http://wiki.xensource.com/xenwiki/XCI http://xenbits.xen.org/xenclient/ I was downloading and building XCI before the above information was available by reading the XCI build tree and patches. The code is quite well structured along with containing some additional information on the xenvm and xenops commands: http://xenbits.xen.org/gitweb?p=xenclient/toolstack.git;a=blob;f=xenvm/xenvm .readme Hopefully this pulls together all the information that is available on Xen VGA Passthrough. Rgds, Tim Moore _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/26/09 12:16:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/26/09 12:16:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/26/09 12:16:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/26/09 12:16:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.409 / Virus Database: 270.13.69/2328 - Release Date: 08/27/09 18:02:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
I have a feeling that my findings are far too simplistic and it won''t work. Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En Ming (Zhang Enming) Sent: Friday, August 28, 2009 10:20 AM To: enming.teo@asiasoftsea.net; timothy.moore@expidas.net Cc: Xci-devel@lists.xensource.com; xen-devel@lists.xensource.com Subject: RE: [Xen-devel] VGA passthrough to HVM Dear Tim Moore, Could you help me verify that my findings here http://lists.xensource.com/archives/html/xen-devel/2009-08/msg01032.html are correct and whether anything more should be done? Thank you. Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En Ming (Zhang Enming) Sent: Thursday, August 27, 2009 11:00 AM To: enming.teo@asiasoftsea.net; timothy.moore@expidas.net Cc: Xci-devel@lists.xensource.com; xen-devel@lists.xensource.com Subject: RE: [Xen-devel] VGA passthrough to HVM Here are my explanations on why we couldn''t reproduce Peter van der Maas''s work: 1) Our setups are vastly different 2) Peter van der Maas is using Intel DQ35JO while I am using Intel DQ45CB with different chipsets (Q35 vs Q45) 3) We are using different display card brand/model and different primary/secondary video controller setups 4) Peter van der Maas was using Xen unstable as of Jan 2009, while I am using Xen 3.5-unstable as of August 2009 5) Peter van der Maas was using Linux-2.6.18.8-xen Domain 0 NON-paravirt-ops kernel. He mentioned using pciback which I cannot use at all. I am using Jeremy Fitzhardinge''s 2.6.31-rc6 Dom 0 pv-ops kernel. I can only use pci-stub compiled in or as module. 6) Peter van der Maas was using Windows XP Professional SP3 32-bit. I am using Windows XP Home SP3 32-bit. We have too many variables in our experimental setups. In order to reproduce and validate another scientist''s work, we should have exactly the same setups. Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En Ming (Zhang Enming) Sent: Thursday, August 27, 2009 10:40 AM To: timothy.moore@expidas.net Cc: Xci-devel@lists.xensource.com; xen-devel@lists.xensource.com Subject: RE: [Xen-devel] VGA passthrough to HVM Dear Timothy, Thank you for compiling all the links to the currently available work on Xen PCI/PCI-E/PEG VGA pass through to Windows HVM guests. When I looked at Peter J. van der Maas''s reported success, I have some doubts. Intel Desktop Board DQ35JO only has an onboard graphics and an external PCI-E x16 slot. How was Peter J. van der Maas able to use two external display cards? Assuming that his nVidia GeForce2 MX200 is a PCI card, and his nVidia 9500GT is a PCI-e x16 card, this resolves the above doubt. Even then, when you plug in both PCI and PEG graphics card at the same time, as is with the case on my Intel Desktop Board DQ45CB, only the PCI VGA card will work and display to the monitor. The PCI-E x16 display card will not work. When the PCI display card is plugged in, my motherboard DQ45CB can''t even detect how many lanes my PEG display card is using (should be 16 lanes). Regards, Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) BEng(Hons)(Mechanical Engineering) Technical Support Engineer Information Technology Department Asiasoft Online Pte Ltd Tampines Central 1 #04-01 Tampines Plaza Singapore 529541 Republic of Singapore Mobile: +65-9648-9798 MSN: teoenming@hotmail.com -----Original Message----- From: xen-devel-bounces@lists.xensource.com [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Tim Moore Sent: Thursday, August 27, 2009 5:09 AM To: ''enming.teo@asiasoftsea.net'' Cc: ''Xci-devel@lists.xensource.com''; xen-devel@lists.xensource.com Subject: RE: [Xen-devel] VGA passthrough to HVM Hi Teo, We have all been eagerly awaiting the PCI Passthrough for VGA patches to be released by the Xen-Devel community .. but from the sounds of the guys at Intel - it''s not ready for public testing and it will most probably generate more questions for them to answer. Ultimately this is a distraction and will only delay the release of this functionality. The closest you will get at the moment is the patches which form part of the XCI build tree and support is limited to the Intel chipset and onboard Intel graphics controller. I believe Ian Jackson also has some success with ATI but NVidia cards are known not to work. There are other examples available including the "Neo 1:1 patch" which is based on an older version of Xen (I think 3.2). NOTE: This ONLY applies to HVM, VGA Passthrough using xen-unstable and Linux non-HVM DomU is working, I have success with many Nvidia cards using this setup. You can use this to prove your Xen in preparation for the HVM patches and to ensure that your VT-d and Dom0 are sound. Peter J. van der Maas inspired us all with his announcement, but no one has ever been able to reproduce: http://www.nabble.com/Successful-PCIe-Graphics-VT-d-Passthrough-to-Win32-Dom U,-Q35-chipset-td21671745.html Myself and Beng Heng also got to the same point as yourself, with issues on vBar<>pBar mapping and VGA BIOS. In all cases, the VGA card is visible in Device Manager in the DomU but the driver does not load. On My 8800GTS, the VGA Card FAN spins down the same as when booting under native XP but still the driver does not load. Here are some good links with relevant information. http://staff.science.uva.nl/~delaat/sne-2008-2009/p22/presentation.pdf http://staff.science.uva.nl/~delaat/sne-2008-2009/p22/report.pdf http://www.eecs.umich.edu/~bengheng/pubs/vgapt_techreport.pdf http://lists.xensource.com/archives/html/xen-devel/2009-05/msg00579.html This is where I admit defeat and hand over to the brilliance of the Xen developers! My last state is captured here: http://markmail.org/message/y476tymnhu2wrc47 The most success I have evidence of is from Alex Bebbington here: http://markmail.org/message/mjiv437pva2yrhvp If you look closely, this feature is on the Offical Xen Roadmap for Xen 4.0 captured here: http://wiki.xensource.com/xenwiki/XenRoadMap {XCI} There is sufficient information for the XCI project to build and create a demo install for the enthusiast: http://wiki.xensource.com/xenwiki/XCI http://xenbits.xen.org/xenclient/ I was downloading and building XCI before the above information was available by reading the XCI build tree and patches. The code is quite well structured along with containing some additional information on the xenvm and xenops commands: http://xenbits.xen.org/gitweb?p=xenclient/toolstack.git;a=blob;f=xenvm/xenvm .readme Hopefully this pulls together all the information that is available on Xen VGA Passthrough. Rgds, Tim Moore _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/25/09 18:07:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/26/09 12:16:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/26/09 12:16:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/26/09 12:16:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: 08/26/09 12:16:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.409 / Virus Database: 270.13.69/2328 - Release Date: 08/27/09 18:02:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.409 / Virus Database: 270.13.69/2328 - Release Date: 08/27/09 18:02:00 No virus found in this outgoing message. Checked by AVG - www.avg.com Version: 8.5.409 / Virus Database: 270.13.69/2328 - Release Date: 08/27/09 18:02:00 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Han, Weidong
2009-Aug-28 03:30 UTC
RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA Pass Through to Windows XP Home 32-bit HVM Virtual Machine with Intel Desktop Board DQ45CB
It''s easy to disable emulated VGA, you just add a check in hw/pc.c: + if (gfx_passthru == GFX_NO_PASSTHRU) { + if (cirrus_vga_enabled) { ...... That means: if gfx passthroughed, disable emulated VGA. For another question about loading VGA bios, given you have saved the VGA BIOS of your card to vgabios-pt.bin, you should first put it at xen-unstable.hg/tools/firmware/vgabios/, and also you needs following changes, at last, you still need to pass BDF of gfx to rombios per firmware spec. diff -r 494be76c1ad9 tools/firmware/hvmloader/Makefile --- a/tools/firmware/hvmloader/Makefile Thu Aug 27 16:54:33 2009 +0800 +++ b/tools/firmware/hvmloader/Makefile Thu Aug 27 17:22:01 2009 +0800 @@ -50,6 +50,7 @@ roms.h: ../rombios/BIOS-bochs-latest ../ roms.h: ../rombios/BIOS-bochs-latest ../vgabios/VGABIOS-lgpl-latest.bin \ ../vgabios/VGABIOS-lgpl-latest.cirrus.bin ../etherboot/eb-roms.h sh ./mkhex rombios ../rombios/BIOS-bochs-latest > roms.h + sh ./mkhex vgabios_pt ../vgabios/vgabios-pt.bin >> roms.h sh ./mkhex vgabios_stdvga ../vgabios/VGABIOS-lgpl-latest.bin >> roms.h sh ./mkhex vgabios_cirrusvga \ ../vgabios/VGABIOS-lgpl-latest.cirrus.bin >> roms.h diff -r 494be76c1ad9 tools/firmware/hvmloader/hvmloader.c --- a/tools/firmware/hvmloader/hvmloader.c Thu Aug 27 16:54:33 2009 +0800 +++ b/tools/firmware/hvmloader/hvmloader.c Thu Aug 27 17:23:00 2009 +0800 @@ -688,9 +688,9 @@ int main(void) vgabios_sz = round_option_rom(sizeof(vgabios_stdvga)); break; case VGA_pt: - printf("Loading Gfx Video BIOS from 0xC0000 ...\n"); - vgabios_sz - round_option_rom((*(uint8_t *)(VGABIOS_PHYSICAL_ADDRESS+2)) * 512); + printf("Loading Gfx Video BIOS from file ...\n"); + memcpy((void *)VGABIOS_PHYSICAL_ADDRESS, vgabios_pt, sizeof(vgabios_pt)); + vgabios_sz = round_option_rom(sizeof(vgabios_pt)); break; default: printf("No emulated VGA adaptor ...\n"); Teo En Ming (Zhang Enming) wrote:> Dear Weidong, > > I have read through the technical papers on VGA passthrough presented > by the University of Amsterdam and the University of Michigan and > thus gained a better understanding of VGA passthrough in Xen. > > For my preferred setup, I would not be able to adopt the guidance > provided by the University of Amsterdam. I should adopt the guidance > provided by the University of Michigan. I want dom0 to have access to > Intel GMA 4500 onboard graphics while the Windows XP Home HVM domU to > have access to PCI Express x16 graphics. > > I have taken the first step in examining the source code for > disabling the Cirrus emulated vga card bootup in Xen 3.5-unstable. > > According to Beng Heng''s UMICH technical paper, he referenced source > file tools/ioemu-remote/hw/pc.c for disabling emulated vga device. > > I went to the xen-unstable mercurial reponsitory > http://xenbits.xensource.com/xen-unstable.hg and found > tools/ioemu/hw/pc.c > > Now, my objective is to disable the emulated/virtual vga card and > load the bios of my nvidia geforce 8400 gs pcie x16 graphics card. > > Source code file > http://xenbits.xensource.com/xen-unstable.hg?file/18b41609a980/tools/ioemu/h > w/pc.c > > ========================================================================> > Line 862 says that if variable cirrus_vga_enabled returns true > (having a value of 1), the cirrus vga bios VGABIOS_CIRRUS_FILENAME > will be loaded. Otherwise, an alternative vga bios file > VGABIOS_FILENAME will be loaded. > > On line 30 VGABIOS_FILENAME is defined. > > On line 31 VGABIOS_CIRRUS_FILENAME is defined. > > On line 24 a header file vl.h is referenced. > > Source code file > http://xenbits.xensource.com/xen-unstable.hg?file/7eefe6399bcd/tools/ioemu/v > l.h > > ==========================================================================> > On line 177 the integer variable cirrus_vga_enabled is declared but I > could not find any line where this variable is initialized to a > value. But I found file vl.c. > > Source code file > http://xenbits.xensource.com/xen-unstable.hg?file/dade7f0bdc8d/tools/ioemu/v > l.c > > ===========================================================================> > On line 168 integer variable cirrus_vga_enabled is initialized to a > value of > 1. However, I want to disable cirrus vga and load my nvidia geforce > 8400 gs vga bios. > > So I should change line 168 to "int cirrus_vga_enabled = 0;" in my > case. > > Hence line 865 in file pc.c would be executed. > > After extracting the vga bios of my nvidia geforce 8400 gs pcie x16 > graphics card using the nvflash.exe utility and saving the firmware > file as nv-gf-8400-gs.bin, I should place this bios image file in the > xen-unstable sources directory on my PC. It should be in the same > directory where files vgabios.bin and vgabios-cirrus.bin are found. > > Then I should change line 30 in file pc.c from ''#define > VGABIOS_FILENAME "vgabios.bin"'' to ''#define VGABIOS_FILENAME > nv-gf-8400-gs.bin'' and then recompile and install the source code. > > Besides disabling the emulated cirrus vga card, may I know what other > things do I need to take care of? Does the pre-existing xen > 3.5-unstable source code already can take care of re-executing the > geforce 8400 gs vga bios, passing through the framebuffer and vga I/O > ports, and intercepting the values in the host bridge such that I do > not have to hack the other relevant source code files? > > Thank you very much. > > Regards, > > Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) > BEng(Hons)(Mechanical Engineering) > Technical Support Engineer > Information Technology Department > Asiasoft Online Pte Ltd > Tampines Central 1 #04-01 Tampines Plaza > Singapore 529541 > Republic of Singapore > Mobile: +65-9648-9798 > MSN: teoenming@hotmail.com > Alma Maters: Singapore Polytechnic, National University of Singapore > > -----Original Message----- > From: xen-devel-bounces@lists.xensource.com > [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En > Ming (Zhang Enming) > Sent: Thursday, August 27, 2009 2:03 PM > To: enming.teo@asiasoftsea.net; weidong.han@intel.com; > djmagee@mageenet.net Cc: xen-devel@lists.xensource.com > Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA > PassThrough to Windows XP Home 32-bit HVM Virtual Machine withIntel > Desktop Board DQ45CB > > I think I cannot use NiBiTor already as I don''t have any native > Windows operating system running on my computer. > > Instead, I should create a CD-ROM boot disc that contains nvflash.exe > and also loads USB drivers. > > I will use nvflash.exe to extract out and save VGA BIOS to USB sticks. > > NVIDIA GeForce BIOS Backup Guide: > http://www.mvktech.net/content/view/14/37/ > > Motherboard Flash Boot CD from Linux Mini HOWTO: > http://www.nenie.org/misc/flashbootcd.html > > DOS USB Drivers: http://www.bootdisk.com/usb.htm > > Regards, > > Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) > BEng(Hons)(Mechanical Engineering) > Technical Support Engineer > Information Technology Department > Asiasoft Online Pte Ltd > Tampines Central 1 #04-01 Tampines Plaza > Singapore 529541 > Republic of Singapore > Mobile: +65-9648-9798 > MSN: teoenming@hotmail.com > -----Original Message----- > From: xen-devel-bounces@lists.xensource.com > [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Teo En > Ming (Zhang Enming) > Sent: Thursday, August 27, 2009 11:18 AM > To: weidong.han@intel.com; djmagee@mageenet.net > Cc: xen-devel@lists.xensource.com > Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA > PassThrough to Windows XP Home 32-bit HVM Virtual Machine withIntel > Desktop Board DQ45CB > > Dear Weidong, > > I will go for option 2. > >> don''t initialize emulated VGA in qemu, I I think you have seen the >> code. > > I have not seen the source code. Though I have learnt simple > structured C before in Singapore Polytechnic some 11 years ago, I am > not a programmer by profession. So I would still need some > instructions on how I can prevent emulated VGA bios from loading and > getting the vga bios of the real display card to load. > > Thank you. > > Regards, > > Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) > BEng(Hons)(Mechanical Engineering) > Technical Support Engineer > Information Technology Department > Asiasoft Online Pte Ltd > Tampines Central 1 #04-01 Tampines Plaza > Singapore 529541 > Republic of Singapore > Mobile: +65-9648-9798 > MSN: teoenming@hotmail.com > > -----Original Message----- > From: xen-devel-bounces@lists.xensource.com > [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Han, > Weidong Sent: Thursday, August 27, 2009 10:01 AM > To: ''enming.teo@asiasoftsea.net''; ''djmagee@mageenet.net'' > Cc: ''xen-devel@lists.xensource.com'' > Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA > PassThrough to Windows XP Home 32-bit HVM Virtual Machine with > IntelDesktop Board DQ45CB > > Teo En Ming (Zhang Enming) wrote: >> Hi Weidong, >> >> Currently I am using the entire Xen 3.5-unstable branch and not using >> the posted pci-stub patch changeset 19893 to patch Xen 3.4.1-testing. >> I am using Xen 3.5-unstable in conjunction with pvops dom 0 kernel >> 2.6.31-rc6. >> >> Here are my questions: >> >> 1) How do I extract out the VGA BIOS/firmware from the >> firmware/EEPROM chip on the Geforce 8400 GS VGA card? If it is not >> possible to extract, where can I download the firmware? NVIDIA does >> not provide display card firmware/BIOS files for public download on >> its website. > > There are 3 ways to load VGA bios to guest: > 1. copy it from host 0xc0000, and map it to guest 0xc0000. This works > for primary gfx card, XCI does like this. But some VGA bios > re-execution doesn''t work well. > 2. dump VGA bios to a file first, then load it to guest: you can use > NiBiTor to dump VGA bios of Nvidia gfx cards to a file, then load it > into guest roms like what emulated VGA does in hvmloader. This works > for all gfx cards, but it involves manual steps. > > 3. load VGA bios from expansion rom: Intel iGFX doesn''t have > expansion rom > >> >> 2) How do I get the Geforce 8400 GS VGA BIOS to load instead of the >> emulated VGA BIOS? Which configuration files/source codes do I have >> to configure/patch? > > don''t initialize emulated VGA in qemu, I I think you have seen the > code. > >> >> 3) What are physical MMIO, virtual MMIO Bars, dsdt.asl and 1:1 map? I >> am sorry but I am not a graphics card hardware engineer so I do not >> understand those terms. I would appreciate it if you could write out >> some steps that I could carry out or point me to already available >> documentation. > > When you use command ''lspci -v'', you may see below messages under each > device: > > ... > Memory at d0000000 (32-bit, prefetchable) [size=256M] > Memory at ff900000 (32-bit, non-prefetchable) [size=1M] > ... > > They are MMIO BARs. 1:1 map means make these MMIO BARs in guest are > equal to the values in host. > >> >> 4) I don''t mind using experimental code. Please post it on the >> xen-devel mailing list so that I could try it out. > > we will post in near future. pls wait for a while. > > Regards, > Weidong > >> >> Thank you very much. >> >> Regards, >> >> Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) >> BEng(Hons)(Mechanical Engineering) >> Technical Support Engineer >> Information Technology Department >> Asiasoft Online Pte Ltd >> Tampines Central 1 #04-01 Tampines Plaza >> Singapore 529541 >> Republic of Singapore >> Mobile: +65-9648-9798 >> MSN: teoenming@hotmail.com >> >> -----Original Message----- >> From: Han, Weidong [mailto:weidong.han@intel.com] >> Sent: Wednesday, August 26, 2009 6:56 PM >> To: ''enming.teo@asiasoftsea.net''; ''djmagee@mageenet.net'' >> Cc: ''xen-devel@lists.xensource.com'' >> Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA >> Pass Through to Windows XP Home 32-bit HVM Virtual Machine with >> Intel Desktop Board DQ45CB >> >> Teo En Ming (Zhang Enming) wrote: >>> Hi Weidong, >>> >>> Could you share with us the hack codes for making Geforce 8400 GS >>> work and also how to let the Windows HVM guest boot up using the >>> real BIOS of Geforce 8400 GS instead of an emulated VGA BIOS? >>> >> >> What patch are you using now? Using real VGA bios of gfx card to >> replace emulatd VGA bios is the prerequisite of gfx passthrough. You >> can find it in posted gfx passthrough patches or XCI. For hack of >> making Geforce 8400, we reserve physical MMIO BARs in dsdt.asl, and >> make it 1:1 map between physical MMIO BARs and virtual MMIO BARs of >> the card. Currently our code is experimental, we will send out in >> mailing list after cleanup and more tests. >> >> Regards, >> Weidong >> >>> Thank you. >>> >>> Regards, >>> >>> Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics Engineering) >>> BEng(Hons)(Mechanical Engineering) >>> Technical Support Engineer >>> Information Technology Department >>> Asiasoft Online Pte Ltd >>> Tampines Central 1 #04-01 Tampines Plaza >>> Singapore 529541 >>> Republic of Singapore >>> Mobile: +65-9648-9798 >>> MSN: teoenming@hotmail.com >>> Alma Maters: Singapore Polytechnic, National University of Singapore >>> >>> -----Original Message----- >>> From: xen-devel-bounces@lists.xensource.com >>> [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Han, >>> Weidong Sent: Wednesday, August 26, 2009 4:27 PM >>> To: ''djmagee@mageenet.net''; ''enming.teo@asiasoftsea.net'' >>> Cc: ''xen-devel@lists.xensource.com'' >>> Subject: RE: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 >>> VGAPassThroughto Windows XP Home 32-bit HVM Virtual Machine with >>> IntelDesktop BoardDQ45CB >>> >>> I suppose you just use the patch posted in mailing list before. >>> nVidia Geforce 8400 passthrough needs extra hacks. We can make it >>> work in our experiments with 1:1 map of its MMIO BARs. >>> >>> We are working on gfx passthrough on latest xen-unstable. Firstly, >>> we want to cook a simple patch including generic changes to support >>> passthrough of virtualization friendly gfx cards, such as Nvidia >>> FX3800. This patch is basically done. Then, we will add some hacks >>> for more gfx cards passthrough, such as iGFX and some Nvidia and >>> ATI cards. >>> >>> Regards, >>> Weidong >>> >>> djmagee@mageenet.net wrote: >>>> As I''ve pointed out on this list before, there are not enough PCIe >>>> lanes on the DQ45CB to drive both the internal graphics adapter and >>>> the add-on adapter at the same time. I believe the onboard one may >>>> be able to operate in some sort of VGA only mode when there is a >>>> card installed and used as the primary adapter. >>>> >>>> I have a similar setup, using the same motherboard, and an ATI >>>> 4770. I used the VGA passthrough patches from an earlier posting >>>> (I saw you followed the same set of instructions), with limited >>>> success. I''ve been using 3.4-testing, and ''xenified'' 2.6.29.6 >>>> kernel. I made modifications to the dom0 portion of the patches >>>> so they would apply to my xenified 2.6.29 kernel. These patches >>>> include code that will copy the VGA bios to the guest bios instead >>>> of using the emulated vga bios. I''ve had very little success, >>>> however. I have only tried passing through the ATI adapter. In >>>> all instances, the guest bios messages appear on my monitor, so >>>> this much works. In some cases, the guest essentially stops >>>> there; xm list show''s about 2sec CPU usage and nothing ever >>>> happens after that point. In other cases, the guest (win >>>> xp/vista/7, as well as KNOPPIX 5.3.1 DVD) will boot all the way, >>>> but in very low res/color mode, and cannot properly initialize the >>>> video device. Once or twice, it actually did recognize the device >>>> and had a reasonable default color/resolution combination. In all >>>> cases where the guest actually boots, the system eventually >>>> freezes. In some cases, I get endless streams of iommu page >>>> faults. >>>> >>>> I have 8GB ram installed. In all cases I''ve limited dom0 memory to >>>> 2GB. In all cases, my guest has been assigned 2GB of memory. >>>> >>>> I have a dual core e6600. I''ve tried allowing dom0 to use both >>>> cores, offlining one core (using xend dom0_vcpu setting) after >>>> boot, and restricting dom0 to only one core using the >>>> dom0_max_vcpus xen hypervisor parameter. In all of these cases >>>> I''ve tried both one and two vcpus for the guest. My success with >>>> VGA passthrough seems somewhat random and no combination of cpu >>>> assignment seems to have any effect. >>>> >>>> I have not tried with the 2.6.18-xen kernel as I haven''t gotten it >>>> to boot on my hardware; it can never find my volume group, even if >>>> I create a initrd with all of the required modules, or build those >>>> drivers into the kernel. I have not spent more than maybe a half >>>> an hour on this problem; I suspect it may have something to do >>>> with the version of mkinitrd I''m using (from Fedora 9 x64). >>>> >>>> If anyone else has any insight or similar experience I''d also love >>>> to hear it. >>>> >>>> Doug Magee >>>> djmagee@mageenet.com >>>> >>>> -----Original Message----- >>>> From: xen-devel-bounces@lists.xensource.com >>>> [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of Mr. Teo >>>> En Ming (Zhang Enming) Sent: Tuesday, August 25, 2009 11:57 AM >>>> To: enming.teo@asiasoftsea.net >>>> Cc: xen-devel@lists.xensource.com >>>> Subject: Re: [Xen-devel] nVidia Geforce 8400 GS PCI Express x16 VGA >>>> PassThroughto Windows XP Home 32-bit HVM Virtual Machine with >>>> Intel Desktop BoardDQ45CB >>>> >>>> I have uninstalled Xen 3.4.1 and installed Xen 3.5-unstable as >>>> suggested by Weidong. >>>> >>>> >>>> On 08/25/2009 11:47 PM, Mr. Teo En Ming (Zhang Enming) wrote: >>>>> Dear All, >>>>> >>>>> I have managed to do PCI-e VGA passthrough with the open source >>>>> Xen but the work is still in progress because although Windows XP >>>>> guest can see the REAL PCI-e x16 graphics card instead of an >>>>> emulated graphics driver, it cannot be initialized yet. >>>>> >>>>> Thanks to Intel Engineer Han Weidong, Pasi Kärkkäinen, Boris >>>>> Derzhavets, Marc, Caz Yokoyama, and others who have helped me and >>>>> shared their knowledge with me along the way. >>>>> >>>>> System Configuration: >>>>> >>>>> Intel Desktop Board DQ45CB with BIOS upgraded to 0093 >>>>> Onboard Intel GMA 4500 Graphics (IGD) >>>>> nVidia Geforce 8400 GS PCI Express x16 Graphics Card >>>>> >>>>> Fedora 11 Linux 64-bit Xen paravirt operations Domain 0 Host >>>>> Operating System Xen 3.5 Unstable/Development Type 1 Hypervisor >>>>> Jeremy Fitzhardinge''s Xen paravirt-ops domain 0 Kernel 2.6.31-rc6 >>>>> Primary Video Adapter in BIOS: IGD >>>>> >>>>> Please see the screenshots and my blog at the link here: >>>>> >>>>> >>> >> > http://teo-en-ming-aka-zhang-enming.blogspot.com/2009/08/nvidia-geforce-8400 >>> -gs-pci-express-x16.html >>>>> >>>>> >>>> >>>> >>>> >>>> >>>> _______________________________________________ >>>> Xen-devel mailing list >>>> Xen-devel@lists.xensource.com >>>> http://lists.xensource.com/xen-devel >>>> >>>> _______________________________________________ >>>> Xen-devel mailing list >>>> Xen-devel@lists.xensource.com >>>> http://lists.xensource.com/xen-devel >>> >>> >>> _______________________________________________ >>> Xen-devel mailing list >>> Xen-devel@lists.xensource.com >>> http://lists.xensource.com/xen-devel >>> >>> No virus found in this incoming message. >>> Checked by AVG - www.avg.com >>> Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: >>> 08/25/09 18:07:00 >>> >>> No virus found in this outgoing message. >>> Checked by AVG - www.avg.com >>> Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: >>> 08/25/09 18:07:00 >> >> >> No virus found in this incoming message. >> Checked by AVG - www.avg.com >> Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: >> 08/25/09 18:07:00 >> >> No virus found in this outgoing message. >> Checked by AVG - www.avg.com >> Version: 8.5.392 / Virus Database: 270.13.65/2324 - Release Date: >> 08/25/09 18:07:00 > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: > 08/25/09 18:07:00 > > No virus found in this outgoing message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.67/2326 - Release Date: > 08/26/09 12:16:00 > > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.69/2328 - Release Date: > 08/26/09 12:16:00 > > No virus found in this outgoing message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.69/2328 - Release Date: > 08/26/09 12:16:00 > > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.69/2328 - Release Date: > 08/26/09 12:16:00 > > No virus found in this outgoing message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.69/2328 - Release Date: > 08/26/09 12:16:00_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel