All of lore.kernel.org
 help / color / mirror / Atom feed
* Video Presentation on PCI Express x16 VGA Pass Through to Xen-based Windows XP Home Edition HVM Virtual Machine
@ 2009-09-06 22:23 Mr. Teo En Ming (Zhang Enming)
  2009-09-07  9:40 ` Teo En Ming (Zhang Enming)
  0 siblings, 1 reply; 54+ messages in thread
From: Mr. Teo En Ming (Zhang Enming) @ 2009-09-06 22:23 UTC (permalink / raw)
  To: xen-devel
  Cc: 'timothy.moore@expidas.net',
	enming.teo, Han, Weidong, bderzhavets, djmagee, bengheng

Dear All,

I have made a two-part video series on VGA pass through using Xen 
virtualization and Intel VT-d. These are home-made videos so please bear 
with me :-)

Please check out my blog at 
http://teo-en-ming-aka-zhang-enming.blogspot.com/2009/09/video-presentation-on-pci-express-x16.html 
for the two-part videos and additional details.

Thank you very much for viewing.

-- 
Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics) 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
Company Website: http://www.asiasoft.sg/
Mobile: +65-9648-9798
MSN: teoenming@hotmail.com
Alma Maters:
(1) Singapore Polytechnic
(2) National University of Singapore

^ permalink raw reply	[flat|nested] 54+ messages in thread
* Re: Video Presentation on PCI Express x16 VGA PassThrough to Xen-based Windows XP Home Edition HVM Virtual Machine
@ 2009-09-08  0:51 Mr. Teo En Ming (Zhang Enming)
  2009-09-08 10:57 ` Video Presentation on PCI Express x16 VGA Pass Through " Teo En Ming (Zhang Enming)
  0 siblings, 1 reply; 54+ messages in thread
From: Mr. Teo En Ming (Zhang Enming) @ 2009-09-08  0:51 UTC (permalink / raw)
  To: weidong.han
  Cc: 'xen-devel@lists.xensource.com',
	'timothy.moore@expidas.net',
	'bengheng@eecs.umich.edu'


[-- Attachment #1.1: Type: text/plain, Size: 10977 bytes --]


Hi Weidong,

Here are my Youtube video presentation links:

http://www.youtube.com/watch?v=HNEiSInrav0

http://www.youtube.com/watch?v=_hOT_9LIG5w

-- 
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
Company Website: http://www.asiasoft.sg/
Mobile: +65-9648-9798
MSN: teoenming@hotmail.com
Alma Maters: Singapore Polytechnic, National University of Singapore



On 09/08/2009 08:46 AM, Han, Weidong wrote:
> I tried nVidia GeForce 8400 GS on Q35. I didn't see that message. BTW,
> I cannot access your video URL.
> Regards,
> Weidong
>
> ------------------------------------------------------------------------
> *From:* Mr. Teo En Ming (Zhang Enming)
> [mailto:enming.teo@asiasoftsea.net]
> *Sent:* 2009年9月8日 8:08
> *To:* enming.teo@asiasoftsea.net
> *Cc:* timothy.moore@expidas.net; xen-devel@lists.xensource.com; Han,
> Weidong; bengheng@eecs.umich.edu
> *Subject:* Re: [Xen-devel] Video Presentation on PCI Express x16 VGA
> PassThrough to Xen-based Windows XP Home Edition HVM Virtual Machine
>
> Hi Weidong,
>
> Are you also using nVidia GeForce 8400 GS PCI-E x16 with Intel DQ45CB
> as well?
>
> -- 
> 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
> Company Website: http://www.asiasoft.sg/
> Mobile: +65-9648-9798
> MSN: teoenming@hotmail.com
> Alma Maters: Singapore Polytechnic, National University of Singapore
>
>
> On 09/08/2009 07:54 AM, Mr. Teo En Ming (Zhang Enming) wrote:
>> All other things being equal, then it must be the differences between
>> our graphics card.
>>
>> What motherboard are you using?
>>
>> Can you do a video presentation as well?
>>
>> -- 
>> 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
>> Company Website: http://www.asiasoft.sg/
>> Mobile: +65-9648-9798
>> MSN: teoenming@hotmail.com
>> Alma Maters: Singapore Polytechnic, National University of Singapore
>>
>>
>> On 09/07/2009 11:45 PM, Tim Moore wrote:
>>>
>>> Version 1 still,
>>>
>>> Kernel 2.6.18 or pvops rc6 worked for me -
>>>
>>> *From:* Mr. Teo En Ming (Zhang Enming)
>>> [mailto:enming.teo@asiasoftsea.net]
>>> *Sent:* 07 September 2009 16:03
>>> *To:* enming.teo@asiasoftsea.net
>>> *Cc:* xen-devel@lists.xensource.com; bengheng@eecs.umich.edu; Han,
>>> Weidong; Tim Moore
>>> *Subject:* Re: [Xen-devel] Video Presentation on PCI Express x16 VGA
>>> PassThrough to Xen-based Windows XP Home Edition HVM Virtual Machine
>>>
>>>
>>> Hi Timothy,
>>>
>>> Are you using the Intel gfx passthrough Version 1 or Version 2 patches?
>>>
>>> I am still using Version 1 patches.
>>>
>>> -- 
>>> 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
>>> Company Website: http://www.asiasoft.sg/
>>> Mobile: +65-9648-9798
>>> MSN: teoenming@hotmail.com <mailto:teoenming@hotmail.com>
>>> Alma Maters: Singapore Polytechnic, National University of Singapore
>>>
>>>
>>>
>>> On 09/07/2009 10:56 PM, Mr. Teo En Ming (Zhang Enming) wrote:
>>>
>>> Hi,
>>>
>>> Here is my "xm dmesg" output. Important lines have been bolded and
>>> underlined.
>>>
>>> *_(XEN) [VT-D]iommu.c:1292:d0 domain_context_unmap:PCIe: bdf = 1:0.0
>>> (XEN) [VT-D]iommu.c:1178:d0 domain_context_mapping:PCIe: bdf = 1:0.0_*
>>> (XEN) domctl.c:887:d0 ioport_map:add f_gport=3b0 f_mport=3b0 np=c
>>> (XEN) domctl.c:887:d0 ioport_map:add f_gport=3c0 f_mport=3c0 np=20
>>> (XEN) domctl.c:836:d0 memory_map:add: gfn=a0 mfn=a0 nr_mfns=20
>>> (XEN) [VT-D]io.c:284:d0 VT-d irq bind: m_irq = 37 device = 4 intx = 0
>>> (XEN) HVM1: HVM Loader
>>> (XEN) HVM1: Detected Xen v3.5-unstable
>>> (XEN) HVM1: CPU speed is 2800 MHz
>>> (XEN) irq.c:243: Dom1 PCI link 0 changed 0 -> 5
>>> (XEN) HVM1: PCI-ISA link 0 routed to IRQ5
>>> (XEN) irq.c:243: Dom1 PCI link 1 changed 0 -> 10
>>> (XEN) HVM1: PCI-ISA link 1 routed to IRQ10
>>> (XEN) irq.c:243: Dom1 PCI link 2 changed 0 -> 11
>>> (XEN) HVM1: PCI-ISA link 2 routed to IRQ11
>>> (XEN) irq.c:243: Dom1 PCI link 3 changed 0 -> 5
>>> (XEN) HVM1: PCI-ISA link 3 routed to IRQ5
>>> (XEN) HVM1: pci dev 01:2 INTD->IRQ5
>>> (XEN) HVM1: pci dev 01:3 INTA->IRQ10
>>> (XEN) HVM1: pci dev 02:0 INTA->IRQ11
>>> (XEN) HVM1: pci dev 03:0 INTA->IRQ5
>>> *_(XEN) HVM1: Make vBAR = pBAR of assigned gfx_*
>>> (XEN) domctl.c:836:d0 memory_map:add: gfn=d2000 mfn=d2000 nr_mfns=1000
>>> (XEN) domctl.c:836:d0 memory_map:add: gfn=c0000 mfn=c0000 nr_mfns=10000
>>> (XEN) domctl.c:836:d0 memory_map:add: gfn=d0000 mfn=d0000 nr_mfns=2000
>>> (XEN) domctl.c:887:d0 ioport_map:add f_gport=d000 f_mport=d000 np=80
>>> (XEN) HVM1: pci dev 02:0 bar 14 size 01000000: e0000008
>>> (XEN) HVM1: pci dev 02:0 bar 10 size 00000100: 0000c001
>>> (XEN) HVM1: pci dev 03:0 bar 10 size 00000100: 0000c101
>>> (XEN) HVM1: pci dev 03:0 bar 14 size 00000100: e1000000
>>> (XEN) HVM1: pci dev 01:2 bar 20 size 00000020: 0000c201
>>> (XEN) HVM1: pci dev 01:1 bar 20 size 00000010: 0000c221
>>> (XEN) HVM1: Multiprocessor initialisation:
>>> (XEN) HVM1: - CPU0 ... 36-bit phys ... fixed MTRRs ... var MTRRs
>>> [3/8] ... done.
>>> (XEN) HVM1: - CPU1 ... 36-bit phys ... fixed MTRRs ... var MTRRs
>>> [3/8] ... done.
>>> (XEN) HVM1: Testing HVM environment:
>>> (XEN) HVM1: - REP INSB across page boundaries ... passed
>>> (XEN) HVM1: - GS base MSRs and SWAPGS ... passed
>>> (XEN) HVM1: Passed 2 of 2 tests
>>> (XEN) HVM1: Writing SMBIOS tables ...
>>> (XEN) HVM1: Loading ROMBIOS ...
>>> (XEN) HVM1: 11900 bytes of ROMBIOS high-memory extensions:
>>> (XEN) HVM1: Relocating to 0xfc000000-0xfc002e7c ... done
>>> (XEN) HVM1: Creating MP tables ...
>>> *_(XEN) HVM1: Loading VGABIOS of passthroughed gfx ..._*
>>> (XEN) HVM1: Loading PCI Option ROM ...
>>> (XEN) HVM1: - Manufacturer: http://etherboot.org
>>> (XEN) HVM1: - Product name: gPXE
>>> (XEN) HVM1: Loading ACPI ...
>>> (XEN) HVM1: - Lo data: 000ea020-000ea04f
>>> (XEN) HVM1: - Hi data: fc003000-fc01261f
>>> (XEN) HVM1: vm86 TSS at fc012800
>>> (XEN) HVM1: BIOS map:
>>> *_(XEN) HVM1: c0000-cf7ff: VGA BIOS_*
>>> (XEN) HVM1: cf800-dbfff: Etherboot ROM
>>> (XEN) HVM1: eb000-eb175: SMBIOS tables
>>> (XEN) HVM1: f0000-fffff: Main BIOS
>>> (XEN) HVM1: Invoking ROMBIOS ...
>>> (XEN) HVM1: $Revision: 1.221 $ $Date: 2008/12/07 17:32:29 $
>>> (XEN) HVM1: *** int 15h function AX=5f14, BX=078f not yet supported!
>>> (XEN) HVM1: Bochs BIOS - build: 06/23/99
>>> (XEN) HVM1: $Revision: 1.221 $ $Date: 2008/12/07 17:32:29 $
>>> (XEN) HVM1: Options: apmbios pcibios eltorito PMM
>>> (XEN) HVM1:
>>> (XEN) HVM1: ata0-0: PCHS=16383/16/63 translation=lba LCHS=1024/255/63
>>> (XEN) HVM1: ata0 master: QEMU HARDDISK ATA-7 Hard-Disk (51200 MBytes)
>>> (XEN) HVM1: IDE time out
>>> (XEN) HVM1: ata1 master: QEMU DVD-ROM ATAPI-4 CD-Rom/DVD-Rom
>>> (XEN) HVM1: IDE time out
>>> (XEN) HVM1:
>>> (XEN) HVM1:
>>> (XEN) HVM1:
>>> (XEN) HVM1: Press F12 for boot menu.
>>> (XEN) HVM1:
>>> (XEN) HVM1: Booting from Hard Disk...
>>> (XEN) HVM1: Booting from 0000:7c00
>>> (XEN) HVM1: int13_harddisk: function 15, unmapped device for ELDL=81
>>> (XEN) HVM1: *** int 15h function AX=e980, BX=0066 not yet supported!
>>> (XEN) mce.c:694:d1 MCE: rdmsr MCG_CAP 0x806
>>> (XEN) mce.c:714:d1 MCE: rdmsr MC0_CTL 0xffffffffffffffff
>>> (XEN) mce.c:694:d1 MCE: rdmsr MCG_CAP 0x806
>>> (XEN) mce.c:694:d1 MCE: rdmsr MCG_CAP 0x806
>>> (XEN) irq.c:243: Dom1 PCI link 0 changed 5 -> 0
>>> (XEN) irq.c:243: Dom1 PCI link 1 changed 10 -> 0
>>> (XEN) irq.c:243: Dom1 PCI link 2 changed 11 -> 0
>>> (XEN) irq.c:243: Dom1 PCI link 3 changed 5 -> 0
>>> (XEN) domctl.c:846:d0 memory_map:remove: gfn=d2000 mfn=d2000
>>> nr_mfns=1000
>>> (XEN) domctl.c:846:d0 memory_map:remove: gfn=c0000 mfn=c0000
>>> nr_mfns=10000
>>> (XEN) domctl.c:846:d0 memory_map:remove: gfn=d0000 mfn=d0000
>>> nr_mfns=2000
>>> (XEN) domctl.c:911:d0 ioport_map:remove f_gport=d000 f_mport=d000 np=80
>>> (XEN) domctl.c:836:d0 memory_map:add: gfn=d2000 mfn=d2000 nr_mfns=1000
>>> (XEN) domctl.c:836:d0 memory_map:add: gfn=c0000 mfn=c0000 nr_mfns=10000
>>> (XEN) domctl.c:836:d0 memory_map:add: gfn=d0000 mfn=d0000 nr_mfns=2000
>>> (XEN) domctl.c:887:d0 ioport_map:add f_gport=d000 f_mport=d000 np=80
>>>
>>> Thank you.
>>>
>>> -- 
>>> 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
>>> Company Website: http://www.asiasoft.sg/
>>> Mobile: +65-9648-9798
>>> MSN: teoenming@hotmail.com <mailto:teoenming@hotmail.com>
>>> Alma Maters: Singapore Polytechnic, National University of Singapore
>>>
>>>
>>>
>>> On 09/07/2009 10:00 PM, Mr. Teo En Ming (Zhang Enming) wrote:
>>>
>>> OK I have just reached home after work.
>>>
>>> >Teo,
>>>
>>> >Please can you post your
>>>
>>> >1) lspci output from Dom0 for your VGA card
>>>
>>> 01:00.0 VGA compatible controller: nVidia Corporation GeForce 8400
>>> GS (rev a1) (prog-if 00 [VGA controller])
>>>
>>> 01:00.0 0300: 10de:06e4 (rev a1) (prog-if 00 [VGA controller])
>>>
>>> >2) qemu log for DomU
>>>
>>> Will post later when I reboot with Serial Console
>>>
>>> >3) xm dmesg output
>>>
>>> Will post later when I reboot with Serial Console
>>>
>>> >4) Modifications you made to vBAR-pBAR patch
>>>
>>> I did not make any modifications to the vbar-pbar patch. I used the
>>> 1:1 map patch as provided by Weidong Intel verbatim.
>>>
>>> >Thanks Tim
>>>
>>> Thank you.
>>>
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> 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
>   



[-- Attachment #1.2: Type: text/html, Size: 18711 bytes --]

[-- Attachment #2: Type: text/plain, Size: 138 bytes --]

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

^ permalink raw reply	[flat|nested] 54+ messages in thread
* RE: Video Presentation on PCI Express x16 VGA Pass Through to Xen-based Windows XP Home Edition HVM Virtual Machine
@ 2009-09-08 14:48 Mr. Teo En Ming (Zhang Enming)
  2009-09-09  6:06 ` Han, Weidong
  2009-09-09  7:23 ` Christian Tramnitz
  0 siblings, 2 replies; 54+ messages in thread
From: Mr. Teo En Ming (Zhang Enming) @ 2009-09-08 14:48 UTC (permalink / raw)
  To: xen-devel
  Cc: 'timothy.moore@expidas.net',
	djmagee, Han, Weidong, 'bengheng@eecs.umich.edu'

Hi All,

I went through the history and here are the steps I took to patch xen 
3.5-unstable for VGA passthrough.

Based on Weidong's advice I checked out changeset earlier than 20144.

Initial trial without secondary gfx passthrough patch
=================================

   637  hg clone http://xenbits.xensource.com/xen-unstable.hg
   638  cd xen-unstable.hg
   639  vi tools/firmware/hvmloader/hvmloader.c
   640  hg checkout 20143
   641  cp 
~enming/intel-gfx-passthru-patches/intel-gfx-passthru-patch01.patch .
   642  patch -p1 < intel-gfx-passthru-patch01.patch
   643  make tools
   644  history
   645  cd tools/ioemu-remote/
   646  cp 
~enming/intel-gfx-passthru-patches/intel-gfx-passthru-patch02.patch .
   647  patch -p1 < intel-gfx-passthru-patch02.patch
   648  cd ..
   649  cd ..
   650  cp ~enming/intel-gfx-passthru-patches/xen-load-vbios-file.patch .
   651  patch -p1 < xen-load-vbios-file.patch
   652  cp ~enming/intel-gfx-passthru-patches/xen-vBAR-pBAR.patch .
   653  patch -p1 < xen-vBAR-pBAR.patch
   654  cd tools/ioemu-remote/
   655  cp 
~enming/intel-gfx-passthru-patches/qemu-change-for-vBAR-pBAR.patch .
   656  patch -p1 < qemu-change-for-vBAR-pBAR.patch
   657  cd ../../
   658  make clean
   659  cp ~enming/vgabios-pt.bin tools/firmware/vgabios/
   660  ls tools/firmware/vgabios/vgabios-pt.bin
   661  make xen
   662  make install-xen
   663  make tools
   664  make install-tools

In the above case, intel-gfx-passthru-patch01.patch is actually 
xen-gfx-passthrough.patch as posted by Weidong.

intel-gfx-passthru-patch02.patch is actually qemu-gfx-passthrough.patch 
as posted by Weidong.

After building and installing everything, I rebooted. When I tried to 
passthrough the nVidia Geforce 8400 GS, I got "not enough free 
resources" in Windows XP domU. This is in fact much better than my 
earlier trial when I got "device cannot start" in Windows XP domU device 
manager with the wrong approach of using onboard gma4500 graphics as 
primary and nvidia geforce 8400 gs as secondary. This time I am using 
nvidia geforce 8400 gs as the primary and nothing else as the secondary.

After Timothy Moore's suggestion, I proceeded to the next trial.

Next trial WITH secondary gfx passthrough patch
==============================

   679  cd /usr/src
   680  mv xen-unstable.hg xen-unstable.hg-20143-no-secondary-patch
   681  cp -R xen-unstable.hg-20143-no-secondary-patch xen-unstable.hg
   682  cd xen-unstable.hg
   683  history
   684  cd tools/ioemu-remote/
   685  cp 
~enming/intel-gfx-passthru-patches/qemu-claim-vga-cycle-for-secondary-gfx-passthrough.patch 
.
   686  patch -p1 < 
qemu-claim-vga-cycle-for-secondary-gfx-passthrough.patch
   687  cd ../..
   688  make clean
   689  cp ~enming/vgabios-pt.bin tools/firmware/vgabios/
   690  ls tools/firmware/vgabios/vgabios-pt.bin
   691  make xen
   692  make install-xen
   693  make tools
   694  make install-tools

At this point, I encountered an error with build.c as documented with my 
earlier postings in xen-devel mailing list.

So I applied my very own patch:

Patch created by Teo En Ming (Zhang Enming) on 29 August 2009 Saturday 
at 8:00 P.M. Singapore Time
Email #1: enming.teo@asiasoftsea.net
Email #2: space.time.universe@gmail.com
MSN: teoenming@hotmail.com
Mobile Phone: +65-9648-9798

--- ssdt_pm.h 2009-08-29 19:54:52.653088000 +0800
+++ ssdt_pm.h 2009-08-29 19:56:51.813088550 +0800
@@ -10,7 +10,7 @@
* C source code output
*
*/
-unsigned char AmlCode[] =
+unsigned char AmlCode_PM[] =
{
0x53,0x53,0x44,0x54,0xD6,0x05,0x00,0x00, /* 00000000 "SSDT...." */
0x02,0xB9,0x58,0x65,0x6E,0x00,0x00,0x00, /* 00000008 "..Xen..." */
--- ssdt_tpm.h 2009-08-29 19:55:44.578738954 +0800
+++ ssdt_tpm.h 2009-08-29 19:57:27.896638884 +0800
@@ -10,7 +10,7 @@
* C source code output
*
*/
-unsigned char AmlCode[] =
+unsigned char AmlCode_TPM[] =
{
0x53,0x53,0x44,0x54,0x4C,0x00,0x00,0x00, /* 00000000 "SSDTL..." */
0x02,0x2A,0x58,0x65,0x6E,0x00,0x00,0x00, /* 00000008 ".*Xen..." */

Then I checked ssdt_pm.h and ssdt_tpm.h to make sure they are correct.

   695  vi tools/firmware/hvmloader/acpi/ssdt_pm.h
   696  vi tools/firmware/hvmloader/acpi/ssdt_tpm.h
   697  make install-tools


But I still get "not enough free resources" in Win XP domU device 
manager. So apparently
the patch qemu-claim-vga-cycle-for-secondary-gfx-passthrough.patch 
doesn't affect my nvidia geforce 8400 gs passed through operations since 
I am using nvidia as primary and nothing as secondary. The secondary gfx 
patch is for cases when you have a primary for dom0 and passing through 
the secondary gfx to a HVM domU.

-- 
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
Company Website: http://www.asiasoft.sg/
Mobile: +65-9648-9798
MSN: teoenming@hotmail.com
Alma Maters: Singapore Polytechnic, National University of Singapore

^ permalink raw reply	[flat|nested] 54+ messages in thread
* Re: Video Presentation on PCI Express x16 VGA Pass Through to Xen-based Windows XP Home Edition HVM Virtual Machine
@ 2009-09-09 15:19 Mr. Teo En Ming (Zhang Enming)
  0 siblings, 0 replies; 54+ messages in thread
From: Mr. Teo En Ming (Zhang Enming) @ 2009-09-09 15:19 UTC (permalink / raw)
  To: xen-devel


[-- Attachment #1.1: Type: text/plain, Size: 742 bytes --]

Dear Christian,

>Did you verify (and modify if applicable) the PCI resources as per
Weidong's comment here?
http://permalink.gmane.org/gmane.comp.emulators.xen.devel/70749

Thanks for the tip! I missed this one. I believe it should solve the "not
enough free resources" problem for my graphics card. Weidong and me are
using different nvidia graphics card. Hence I should modify the dsdt.asl
MMIO BARs entries in xen-vBAR-pBAR.patch to reflect my graphics card.

>On another topic, please don't answer to other threads to get attention and
keep threading working by replying to previous versions of your own post or
its replies (and and least for me, don't reply to my personal mail address
but just to the mailing-list)

Sorry! No problem.

[-- Attachment #1.2: Type: text/html, Size: 922 bytes --]

[-- Attachment #2: Type: text/plain, Size: 138 bytes --]

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

^ permalink raw reply	[flat|nested] 54+ messages in thread
* Re: Video Presentation on PCI Express x16 VGA Pass Through to Xen-based Windows XP Home Edition HVM Virtual Machine
@ 2009-09-10  0:14 Mr. Teo En Ming (Zhang Enming)
  0 siblings, 0 replies; 54+ messages in thread
From: Mr. Teo En Ming (Zhang Enming) @ 2009-09-10  0:14 UTC (permalink / raw)
  To: xen-devel


[-- Attachment #1.1: Type: text/plain, Size: 2379 bytes --]

Hi All,

I have solved the final problem.

Thank you Christian Tramnitz for pointing me to the missing link.

I have tested my own modifications to xen-vBAR-pBAR.patch and it works!

I reproduce part of xen-vBAR-pBAR.patch here which I modified for my nVidia
Geforce 8400 GS graphics card:

<CODE>
diff -r 96b634bf65c3 tools/firmware/hvmloader/acpi/dsdt.asl
--- a/tools/firmware/hvmloader/acpi/dsdt.asl    Mon Aug 31 13:14:47 2009
+0800
+++ b/tools/firmware/hvmloader/acpi/dsdt.asl    Mon Aug 31 16:03:27 2009
+0800
@@ -175,6 +175,34 @@ DefinitionBlock ("DSDT.aml", "DSDT", 2,
                         0x000BFFFF,
                         0x00000000,
                         0x00020000)
+
+                    /* reserve MMIO BARs of gfx for 1:1 mapping */
+                    DWordMemory(
+                        ResourceProducer, PosDecode, MinFixed, MaxFixed,
+                        Cacheable, ReadWrite,
+                        0x00000000,
+                        0xC0000000,
+                        0xCFFFFFFF,
+                        0x00000000,
+                        0x10000000)
+
+                    DWordMemory(
+                        ResourceProducer, PosDecode, MinFixed, MaxFixed,
+                        NonCacheable, ReadWrite,
+                        0x00000000,
+                        0xD0000000,
+                        0xD1FFFFFF,
+                        0x00000000,
+                        0x02000000)
+
+                    DWordMemory(
+                        ResourceProducer, PosDecode, MinFixed, MaxFixed,
+                        NonCacheable, ReadWrite,
+                        0x00000000,
+                        0xD2000000,
+                        0xD2FFFFFF,
+                        0x00000000,
+                        0x01000000)

                     DWordMemory(
                         ResourceProducer, PosDecode, MinFixed, MaxFixed,

</CODE>


Once again, thanks to Xen developers, engineers at Intel and everybody who
have helped me along the way.
-- 
Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics) BEng(Hons)(Mechanical
Engineering)
Alma Maters:
(1) Singapore Polytechnic
(2) National University of Singapore
Blog URL: http://teo-en-ming-aka-zhang-enming.blogspot.com
Email: space.time.universe@gmail.com
MSN: teoenming@hotmail.com
Mobile Phone: +65-9648-9798
Street: Bedok Reservoir Road
Republic of Singapore

[-- Attachment #1.2: Type: text/html, Size: 2791 bytes --]

[-- Attachment #2: Type: text/plain, Size: 138 bytes --]

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

^ permalink raw reply	[flat|nested] 54+ messages in thread
* RE: Video Presentation on PCI Express x16 VGA Pass Through to Xen-based Windows XP Home Edition HVM Virtual Machine
@ 2009-09-10 12:28 Mr. Teo En Ming (Zhang Enming)
  2009-09-10 14:03 ` Pasi Kärkkäinen
  0 siblings, 1 reply; 54+ messages in thread
From: Mr. Teo En Ming (Zhang Enming) @ 2009-09-10 12:28 UTC (permalink / raw)
  To: xen-devel; +Cc: space.time.universe


[-- Attachment #1.1: Type: text/plain, Size: 2466 bytes --]

Dear All,

Here is my latest video presentation on VGA passthrough. Please check out my
blog at http://teo-en-ming-aka-zhang-enming.blogspot.com/ or the Youtube
link at http://www.youtube.com/watch?v=1ia3IwG6tp4

The "not enough free resources" problem for nVidia Geforce 8400 GS PCI
Express x16 graphics card in earlier presentation videos:

http://www.youtube.com/watch?v=HNEiSI...<http://www.youtube.com/watch?v=HNEiSInrav0>

http://www.youtube.com/watch?v=_hOT_9...<http://www.youtube.com/watch?v=_hOT_9LIG5w>

was fixed. Device manager in Windows XP HVM domU no longer shows an
exclamation mark besides the nVidia Geforce 8400 GS graphics card. The
device is working properly and the resources tab shows the available memory
ranges.

Full VGA passthrough to Windows XP HVM guest operating system using Xen
virtualization has been realized. I am now able to run 3-D video benchmarks
on the passed through nVidia GeForce 8400 GS graphics card.

All this is possible using Xen 3.5 hypervisor with Intel supplied VGA
passthrough patches. Instead of using pvops dom0 kernel 2.6.31-rc6 which
causes Win XP domU to run slowly, I am now using pvops dom0 kernel
2.6.30-rc3.

Many thanks to Xen developers, Han Weidong and other engineers at Intel, and
also Christian Tramnitz for pointing me to the missing puzzle which helped
me in resolving the final problem.

I am now able to bootstrap Windows XP HVM domU from within Linux using Xen
virtualization and play 3D games in the Windows virtual machine. In the
past, Windows virtual machines can only see a 2D emulated/virtual display
adapter. The virtualized Windows operating systems were more palatable to
server administrators than gamers. With VGA pass through and direct hardware
access by Windows virtual machines to the graphics hardware, gamers will now
be able to play 3D games inside Windows virtual machines.

PS: I am still unable to passthrough USB devices, e.g. keyboard and mouse,
to the Windows XP HVM domU. This video is captured and rendered using the
open source kdenlive non-linear video editor. The video is taken using Canon
HV20.

-- 
Mr. Teo En Ming (Zhang Enming) Dip(Mechatronics) BEng(Hons)(Mechanical
Engineering)
Alma Maters:
(1) Singapore Polytechnic
(2) National University of Singapore
Blog URL: http://teo-en-ming-aka-zhang-enming.blogspot.com
Email: space.time.universe@gmail.com
MSN: teoenming@hotmail.com
Mobile Phone: +65-9648-9798
Street: Bedok Reservoir Road
Republic of Singapore

[-- Attachment #1.2: Type: text/html, Size: 3122 bytes --]

[-- Attachment #2: Type: text/plain, Size: 138 bytes --]

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

^ permalink raw reply	[flat|nested] 54+ messages in thread

end of thread, other threads:[~2009-10-14 10:26 UTC | newest]

Thread overview: 54+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-09-06 22:23 Video Presentation on PCI Express x16 VGA Pass Through to Xen-based Windows XP Home Edition HVM Virtual Machine Mr. Teo En Ming (Zhang Enming)
2009-09-07  9:40 ` Teo En Ming (Zhang Enming)
2009-09-07  9:58   ` Tim Moore
2009-09-07 10:10     ` Video Presentation on PCI Express x16 VGA PassThrough " Teo En Ming (Zhang Enming)
2009-09-07 10:12       ` Tim Moore
2009-09-07 10:15       ` Video Presentation on PCI Express x16 VGA PassThroughto " Teo En Ming (Zhang Enming)
2009-09-07 10:34         ` Tim Moore
2009-09-07 10:41           ` Video Presentation on PCI Express x16 VGAPassThroughto " Teo En Ming (Zhang Enming)
2009-09-08  0:51 Video Presentation on PCI Express x16 VGA PassThrough to " Mr. Teo En Ming (Zhang Enming)
2009-09-08 10:57 ` Video Presentation on PCI Express x16 VGA Pass Through " Teo En Ming (Zhang Enming)
2009-09-08 14:48 Mr. Teo En Ming (Zhang Enming)
2009-09-09  6:06 ` Han, Weidong
2009-09-10 10:13   ` Tim Moore
2009-09-09  7:23 ` Christian Tramnitz
2009-09-09 15:19 Mr. Teo En Ming (Zhang Enming)
2009-09-10  0:14 Mr. Teo En Ming (Zhang Enming)
2009-09-10 12:28 Mr. Teo En Ming (Zhang Enming)
2009-09-10 14:03 ` Pasi Kärkkäinen
2009-09-10 18:17   ` Jeremy Fitzhardinge
2009-09-11  0:19     ` Mr. Teo En Ming (Zhang Enming)
2009-09-11 15:37       ` Mr. Teo En Ming (Zhang Enming)
2009-09-11 16:03         ` Pasi Kärkkäinen
2009-09-12  2:52           ` Mr. Teo En Ming (Zhang Enming)
2009-09-12  8:44             ` Mr. Teo En Ming (Zhang Enming)
2009-09-12 10:11               ` Mr. Teo En Ming (Zhang Enming)
2009-09-12 12:23                 ` Mr. Teo En Ming (Zhang Enming)
2009-09-13  0:31                   ` Mr. Teo En Ming (Zhang Enming)
2009-09-13  9:12                     ` Pasi Kärkkäinen
2009-09-13 18:22                       ` Mr. Teo En Ming (Zhang Enming)
2009-09-13 18:28                         ` Mr. Teo En Ming (Zhang Enming)
2009-09-13 19:01                           ` Mr. Teo En Ming (Zhang Enming)
2009-09-13 19:26                         ` Pasi Kärkkäinen
2009-09-13 19:33                           ` Mr. Teo En Ming (Zhang Enming)
2009-09-13 19:45                             ` Pasi Kärkkäinen
2009-09-15 23:40             ` Jeremy Fitzhardinge
2009-09-19 16:44               ` Mr. Teo En Ming (Zhang Enming)
2009-09-19 17:03                 ` Mr. Teo En Ming (Zhang Enming)
2009-09-20  3:25                   ` Mr. Teo En Ming (Zhang Enming)
2009-09-20  3:36                     ` Mr. Teo En Ming (Zhang Enming)
2009-09-20  5:16                       ` Mr. Teo En Ming (Zhang Enming)
2009-10-08 13:36               ` Mr. Teo En Ming (Zhang Enming)
2009-10-08 13:48                 ` Mr. Teo En Ming (Zhang Enming)
2009-10-08 13:59                   ` Konrad Rzeszutek Wilk
2009-10-08 14:13                     ` Mr. Teo En Ming (Zhang Enming)
2009-10-08 14:22                       ` Konrad Rzeszutek Wilk
2009-10-08 14:44                         ` Mr. Teo En Ming (Zhang Enming)
2009-10-08 14:49                           ` Konrad Rzeszutek Wilk
2009-10-08 15:05                             ` Mr. Teo En Ming (Zhang Enming)
2009-10-09  0:54                               ` Mr. Teo En Ming (Zhang Enming)
2009-10-09  7:11                                 ` Pasi Kärkkäinen
2009-10-09  7:52                                   ` Mr. Teo En Ming (Zhang Enming)
2009-10-09 21:41                                     ` Jeremy Fitzhardinge
2009-10-11  7:22                                       ` Mr. Teo En Ming (Zhang Enming)
2009-10-14 10:26                                         ` Mr. Teo En Ming (Zhang Enming)
2009-10-08 14:06                   ` Mr. Teo En Ming (Zhang Enming)

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.