Hi
Finally I succeeded to use my graphic card EVGA GTX 460 SE 1024M with Xen 4.2 unstable.
Before I was using my MSI GT 440.
I am little excited that it works now.
Kernel
=====
Kernel ---> 3.1.0-rc9 downloaded from http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=summary
My kernel's config is attached to this mail.
Xen
====
Download Xen
hg clone -r 23965 http://xenbits.xensource.com/staging/xen-unstable.hg/ xen-unstable.hg-rev-23965-ok
Make a first init build for tools
cd xen-unstable.hg-rev-23965-ok/tools
make -j4
make clean
cd ..
Apply the patches attached to this mail (patch -p0 < ....)
Copy the VGA BIOS extracted using
nvlfash 5.100
cp /path/to/VGABIOS.ROM tools/firmware/vgabios/vgabios-pt.bin
Compil again
make -j4 tools
Install
make -j4 install-tools PYTHON_PREFIX_ARG=
Since my old domU XP 64 bits was using GT 440, I replaced my old graphic card with the EVGA GTX 460 SE.
Everything was OK (except that it is impossible to restart the domU withtout restarting the dom0 as usual)
About dsdt.asl.patch file
=================
There is no real changes from the patches I've sent in August/September. The change is only for dsdt.asl.patch
For your information concerning the patch for dsd (I've already give the informations in an other mail but I will give it again)
Get the identifier for your graphic card
root@mercury:/opt/tmp/gfx_patchs_gtx-460-se-evga# lspci |grep VGA
01:00.0 VGA compatible controller: nVidia Corporation Device 0e23 (rev a1)
Use dmesg to
get the required ranges
root@mercury:/opt/tmp/gfx_patchs_gtx-460-se-evga# dmesg | grep 01:00.0 | grep BAR
[ 2.481779] pci 0000:01:00.0: BAR 0: reserving [mem 0xf8000000-0xf9ffffff flags 0x40200] (d=0, p=0)
[ 2.481782] pci 0000:01:00.0: BAR 1: reserving [mem 0xd0000000-0xd7ffffff flags 0x14220c] (d=0, p=0)
[ 2.481784] pci 0000:01:00.0: BAR 3: reserving [mem 0xd8000000-0xdbffffff flags 0x14220c] (d=0, p=0)
[ 2.481787] pci 0000:01:00.0: BAR 5: reserving [io 0xe000-0xe07f flags 0x40101] (d=0, p=0)
The 3 ranges [0xf8000000-0xf9fffff], [0xd0000000-0xd7ffffff], [0xd8000000-0xdbfffff] need to be specify in dsdt.asl.patch
Moreover you need to use the formula
Maximum - Minimum + 1 for the difference.
As a example: for the first range [0xf8000000-0xf9fffff]
Maximum = (0xf9fffff) / Minimum = 0xf8000000 => Difference = 4194303999 -
4160749568 + 1 = 33554432 => hexadecimal = 0x02000000
That the reason why that in the patch, there are
+ 0xF8000000,
+ 0xF9FFFFFF,
0x00000000,
- 0x05000000,
- ,,
_Y01)
+ 0x02000000)
Do the same for the others ranges
Hope this help.
I do not make test for Windows 7. I do not plan to try.
David