[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-users] turning nvidia gts 450 into quadro 2000


  • To: xen-users@xxxxxxxxxxxxx
  • From: Imre Oolberg <imre@xxxxxxxxxxx>
  • Date: Wed, 05 Feb 2014 18:08:40 +0200
  • Delivery-date: Wed, 05 Feb 2014 16:09:57 +0000
  • List-id: Xen user discussion <xen-users.lists.xen.org>

Hi!

Excuse my impatience but please if somebody could answer this. I am a
fan in using Xen at my desktop computer and it serves me well. Missing
piece is working Windows domU. From
http://wiki.xen.org/wiki/Xen_VGA_Passthrough_Tested_Adapters i got
exited about turning old nvidia gts 450 adapter into quadro 2000. And
reading achives people on this list seemed also to be enthusiastic about
it. So i managed to get me used but in good shape gts 450 and now i am
sitting on it, unsure to press enter to change contents of its flash :)


Imre

On Sat, 2014-02-01 at 01:52 +0200, Imre Oolberg wrote:
> Hi!
> 
> I am trying to get my Xen domU correctly working with vga passthrough
> and Win7 32 bit or 64 bit. At the moment graphics does not work at all,
> i believe that my Quadro K600, GTS 450 or GeForce 7600 GS video card
> even shouldnt work with Win7 under domU although with Ubuntu guests they
> work (at least Ubuntu domU could be booted up once successfully with
> graphics).
> 
> So, gts 450 -> quardo 2000 to the rescue :)
> 
> I would be very thankful if somebody goes thru the rest of this letter
> and confirms what i intend to do is correct and also cares to answer
> some questions.
> 
> First of all i went thru these articles
> 
> 1.
> http://www.altechnative.net/2013/11/25/virtualized-gaming-nvidia-cards-part-3-how-to-modify-a-fermi-based-geforce-into-a-quadro-geforce-gts450gtx470gtx480-to-quadro-200050006000/
> 2.
> https://devtalk.nvidia.com/default/topic/489965/cuda-programming-and-performance/gtx480-to-c2050-hack-or-unlocking-tcc-mode-on-geforce/post/3511598/#3511598
> 3.
> http://www.davidgis.fr/blog/index.php?2013/09/18/969-xen-430-vga-passthrough-gtx-480-soft-moded-to-quadro-6000
> 
> As i understand they more-or-less describe the same procedure, i
> compiled this sequence for myself.
> 
> 1. my hardware is
> http://www.gigabyte.us/products/product-page.aspx?pid=3600#ov
> 
> 2. booted computer under natively installed Win7 32 bit, installed
> driver from nvidia.com, gpu-z from techpowerup.com and saved .rom
> 
> 3. looked up my gts 450 pci dev id which turns to be 0DC4 
> 
> # lspci -nn | grep -i vga
> ...
> 04:00.0 VGA compatible controller [0300]: NVIDIA Corporation GF106
> [GeForce GTS 450] [10de:0dc4] (rev a1)
> 
> 4. looked up strap area values, taking endianness into account as asking
> by 4 byte items (all four masks)
> 
> $ od -tx4 -Ax GF106.rom | grep -A 1 ^000050
> 000050 002a72e9 35031458 7ffc3fff 00004000
> 000060 7fffffff 80000000 4aa537e5 e9446ce9
> 
> 5. wrote down 'and mask 0' and 'or mask 0' in binary form
> 
> PCI ID bits in mask
>  Fxx4 xxxx xxxx xxxx xx32 10xx xxxx xxxx
> 
> and mask 0:
>  7f        fc        3f        ff
>  0111 1111 1111 1100 0011 1111 1111 1111
> 
> or mask 0:
>  00        00        40        00
>  0000 0000 0000 0000 0100 0000 0000 0000
> 
> 6. my gts 450 pci id is according to lspci 0DC4 and
> http://us.download.nvidia.com/XFree86/Linux-x86/331.20/README/supportedchips.html
>  says Quadro 2000 is 0DD8, so in binary
> 
> GTS 450      -  0x0DC4  -  0000 1101 1100 0100
> Quadro 2000  -  0x0DD8  -  0000 1101 1101 1000
> 
> i see 3 bits within 5 lower bits are different, good. 
> 
> 7. Five special ID Bits (10-13 and 28) can be used to show to the driver
> pci-id differently, and some of them need to be amended, i hope in my
> case like this (i understand 'and mask' is for suppressing hardstrap bit
> value into zero and 'or mask' is for making hardstrap value into one, as
> driver sees them)
> 
> 2nd bit in 'and mask 0' from 1 to 0
> 3rd bit in 'or mask 0' from 0 to 1
> 4th bit in 'or mask 0' from 0 to 1
> 
> so i get such new masks
> 
> 'and mask 0':
>  0111 1111 1111 1100 0010 1111 1111 1111
> 
> 'or mask 0':
>  0001 0000 0000 0000 0110 0000 0000 0000
> 
> they are in hex
> 
> new 'and mask 0': 7ffc 2fff
> new 'or mask 0': 0100 6000
> 
> 9. So all together and takining into account that 31th bit should be
> always zero (so 'or mask 1' 8000 0000 gets 0000 0000) i need to issue
> from dos prompt
> 
> C:\> nvflash --index=X --strap 0x7FFC2FFF 0x10006000 0x7fffffff
> 0x00000000
> 
> Please confirm i got to the right outcome assuming i had the input data
> i started out from.
> 
> This is long letter already but i have some more questions
> 
> 1. GPU-Z says my bios version is 70.06.13.00.01, do i need to update it
> somehow before coversion into quadro or is it just all right? (and i
> believe it is not tuned in any way)
> 
> 2. in
> https://devtalk.nvidia.com/default/topic/489965/cuda-programming-and-performance/gtx480-to-c2050-hack-or-unlocking-tcc-mode-on-geforce/post/3511598/#3511598
> readers are instructed to change besides strap masks many other things
> like pci dev id at 0x0000018E, Board boot string etc, are those changes
> essential or rahter so to say cosmetic (and harmless to do)?
> http://www.altechnative.net/2013/11/25/virtualized-gaming-nvidia-cards-part-3-how-to-modify-a-fermi-based-geforce-into-a-quadro-geforce-gts450gtx470gtx480-to-quadro-200050006000/
>  isnt mentioning them.
> 
> 3. a used usb dos boot material as guided at, i hope this is ok (it
> contains windows millenium dos, nvflash v. 5.100.0.1)
> http://www.techpowerup.com/forums/threads/guide-for-flashing-bios-of-nvidia-gpu.119955/
> 
> 4. i didnt find Quadro 2000 .rom from
> http://www.techpowerup.com/vgabios/, if anybody is willing to send it to
> me, it would be interesting to look at (original or yet better gts
> modified into quadro 2000)
> 
> 
> Best regards,
> 
> Imre
> 
> 
> 
> _______________________________________________
> Xen-users mailing list
> Xen-users@xxxxxxxxxxxxx
> http://lists.xen.org/xen-users




_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxx
http://lists.xen.org/xen-users


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.