Thursday, May 15, 2008

Fedora 9 and Nouveau Nvidia Driver

Given that the current nvidia driver does not support all the fancy features which are required to run a fully productive desktop, i've tried to see the current state of the nouveau

Fedora 9 currently does not ship the 'nouvea_dri.so' with its mesa rpms. In order to get the feel of the dri using nouveau, i've compiled the mesa drivers from sources.


Instructions follows

NOTE: Do not report any issues to Fedora Bugzilla or Nouveau Bugzilla when using the Gallium Drivers. These are completely experimental.

NOTE: Since the gallium 3d does not support all the Visuals (ARGBGLX) required to run compiz, compiz does not work.

0. Below are my Hardware Details

Smolt profile :: http://www.smolts.org/client/show/pub_af62c229-68e1-4b66-9171-b8be36c7a3fd



[nareshv@fallenAngel mesa]$ /sbin/lspci | grep -i nvidia
01:00.0 VGA compatible controller: nVidia Corporation G72M [GeForce Go 7400] (rev a1)



1. Get the mesa sources (50M sources) using git


cd /tmp
git clone git://anongit.freedesktop.org/git/nouveau/mesa



2. Switch to the gallium-0.1 branch



cd mesa/
git checkout origin/gallium-0.1
git checkout -b gallium-0.1



3. Configure the Library installation paths. (open and edit the file so that below 2 settings should be like this)


[nareshv@fallenAngel configs]$ pwd
/tmp/mesa/configs
[nareshv@fallenAngel configs]$ grep INSTALL_DIR default | grep -v SEARCH
INSTALL_DIR = /usr/
DRI_DRIVER_INSTALL_DIR = /usr/lib/dri/


4. Make sure you have all the Xorg development libraries installed.


[root@fallenAngel ~]# rpm -qa lib\*-devel
libacl-devel-2.2.47-1.fc9.i386
libXfixes-devel-4.0.3-3.fc9.i386
libSM-devel-1.0.2-5.fc9.i386
libattr-devel-2.4.41-1.fc9.i386
libogg-devel-1.1.3-9.fc9.i386
libuser-devel-0.56.9-1.i386
libXau-devel-1.0.3-5.fc9.i386
libXmu-devel-1.0.4-1.fc9.i386
libcap-devel-2.06-4.fc9.i386
libxml2-devel-2.6.32-1.fc9.i386
libxcb-devel-1.1-4.fc9.i386
libX11-devel-1.1.4-1.fc9.i386
libdrm-devel-2.4.0-0.11.fc9.i386
libXt-devel-1.0.4-5.fc9.i386
libsepol-devel-2.0.26-1.fc9.i386
libgdiplus-devel-1.9-4.fc9.i386
libcurl-devel-7.18.1-1.fc9.i386
libXdmcp-devel-1.0.2-5.fc9.i386
libXdamage-devel-1.1.1-4.fc9.i386
libXxf86vm-devel-1.0.1-5.fc9.i386
libselinux-devel-2.0.61-1.fc9.i386
libXext-devel-1.0.4-1.fc9.i386
libXi-devel-1.1.3-4.fc9.i386
libstdc++-devel-4.3.0-8.i386
libidn-devel-0.6.14-7.i386
libvorbis-devel-1.2.0-3.fc9.i386
libICE-devel-1.0.4-3.fc9.i386


5. Start building mesa for your OS (i386 or x86_64)


[nareshv@fallenAngel mesa]$ ls
bin configs doxygen Makefile SConstruct winddk.py
common.py docs include progs src
[nareshv@fallenAngel mesa]$ make DRI_DIRS=nouveau linux-dri-x86

(replace linux-dri-x86 with linux-dri-x86_64 if you are on 64bit Fedora)



8. Try running glxgears with the latest drivers that are built


bash$ LD_LIBRARY_PATH="/tmp/mesa/lib" LIBGL_DRIVERS_PATH="/tmp/mesa/lib" glxgears



9. Verify that the screen has direct rendering enabled


[nareshv@fallenAngel tmp]$ LD_LIBRARY_PATH="/tmp/mesa/lib" LIBGL_DRIVERS_PATH="/tmp/mesa/lib" glxinfo 2>/dev/null | grep ^OpenGL
OpenGL vendor string: Tungsten Graphics, Inc. and nouveau
OpenGL renderer string: Gallium 0.1, NV46 on Nouveau/DRI
OpenGL version string: 1.5 Mesa 7.1
OpenGL extensions:


9. Screenshot with Gallium3d on my desktop ( I am getting from 900fps to 1200fps !, while the nouveau driver without this gallium gives only 250fps [same with nv driver])




10. I dont have any games to test the FPS, but you can try running openarena and see things working


NOTE: Remember, this gallium 3d is completely experimental and may not work with all the nvidia chipsets and might even crash your X when running heavy 3d applications. DONT REPORT ANY ISSUES WITH NOUVEAU TEAM WHEN USING GALLIUM

Related Posts:

  • Fedora 11 (Leonidas) 64-bit - Rawhide - on Macbook Pro 4,1Fedora 11 is not out yet, its just in the rawhide repository. In order to upgrade from Fedora 10 to Fedora 11, you need to do it via yum. Pre Upgrade Steps 1. Enable the rawhide repositorycat /etc/yum.repos.d/rawhide.repo[raw… Read More
  • Using Telugu Spell Checker in Fedora 8Spell checking in telugu language is pretty easy in Linux, you can install the 'aspell' telugu sets and start spell checking. Below are the steps to do on a Fedora 8 System.1. Install the aspell-te package if you haven't done… Read More
  • Fedora 9 and Nouveau Nvidia DriverGiven that the current nvidia driver does not support all the fancy features which are required to run a fully productive desktop, i've tried to see the current state of the nouveauFedora 9 currently does not ship the 'nouvea… Read More
  • Fedora 10 64-bit on Nvidia 180.16 running 2.6.29 kernelFedora 10 64-bit on 2.6.29 kernel with Nvidia 180.162.6.29 is not yet in the stable branch. Be warnedKoji has the latest 2.6.29 kernel release. In order to try that, just download the latest kernel and install themnareshv@@ /… Read More
  • Fedora 10 64-bit on 2.6.28 kernel with Nvidia 180.16Fedora 10 64-bit on 2.6.28 kernel with Nvidia 180.16Linux kernel 2.6.28 will be out during christmas. I Wanted to try it on my Fedora 10 Desktop. Just download the kernel,kernel-devel,kernel-firmware rpms from koji.Also, Tr… Read More

2 comments:

  1. I saw ur blog.. I liked it very much. I have few questions ... I recently bought HP Pavilion 9500t laptop. I want to install any linux version on it.. Would recommend me which version have most of the driver available for this laptop?

    ReplyDelete
  2. I have the same video card and when i try to compiled i got:


    ../../../../../src/mesa/drivers/dri/common/xmlconfig.c:940: error: ‘struct OptConfData’ has no member named ‘ignoringApp’
    ../../../../../src/mesa/drivers/dri/common/xmlconfig.c:941: error: ‘struct OptConfData’ has no member named ‘inDriConf’
    ../../../../../src/mesa/drivers/dri/common/xmlconfig.c:942: error: ‘struct OptConfData’ has no member named ‘inDevice’
    ../../../../../src/mesa/drivers/dri/common/xmlconfig.c:943: error: ‘struct OptConfData’ has no member named ‘inApp’
    ../../../../../src/mesa/drivers/dri/common/xmlconfig.c:944: error: ‘struct OptConfData’ has no member named ‘inOption’
    ../../../../../src/mesa/drivers/dri/common/xmlconfig.c:946: warning: implicit declaration of function ‘parseOneConfigFile’
    make[5]: *** [../../../../../src/mesa/drivers/dri/common/xmlconfig.o] Error 1
    make[5]: Leaving directory `/tmp/mesa/src/gallium/winsys/dri/nouveau'
    make[4]: *** [subdirs] Error 1
    make[4]: Leaving directory `/tmp/mesa/src/gallium/winsys/dri'
    make[3]: *** [subdirs] Error 1
    make[3]: Leaving directory `/tmp/mesa/src/gallium/winsys'
    make[2]: *** [subdirs] Error 1
    make[2]: Leaving directory `/tmp/mesa/src'
    make[1]: *** [default] Error 1
    make[1]: Leaving directory `/tmp/mesa'



    Do you know what is wrong?
    Salu2...

    ReplyDelete