##master-page:FrontPage #format wiki #language en #pragma section-numbers off || [[#About|About]] ||<12% style="border: 1px solid black; text-align: center;"> [[#News|News]] ||<12% style="border: 1px solid black; text-align: center;"> [[#Status|Status]] ||<12% style="border: 1px solid black; text-align: center;"> [[#Bugs|Bugs]] ||<12% style="border: 1px solid black; text-align: center;"> [[#Source|Sources]] ||<12% style="border: 1px solid black; text-align: center;"> [[#Tools|Tools]] ||<12% style="border: 1px solid black; text-align: center;"> [[#Docs|Docs]] ||<12% style="border: 1px solid black; text-align: center;">[[FrontPage-de|DE]]/EN/[[Portada_Español|ES]]/[[FrontPage-fr|FR]]/[[FrontPage-ru|RU]]/[[FrontPage-it|IT]]/[[Translation_Team|Team]] || <> ~-[[http://feed43.com/nouveau.xml|{{attachment:feed-icon-14x14.png|"News feed"}}]]. '''''Latest news: '''''<
> '''''07.07.2009 posted by pq'''''<
>Pre-randr 1.2 support has been dropped, -2 kLOC change to the DDX. Yay!<
> = Nouveau : Accelerated Open Source driver for nVidia cards = <> === About Nouveau === The '''nouveau''' project aims to build high-quality, open source drivers for [[NvHardwareDocs|nVidia cards]]. “Nouveau” [''nuvo''] is the French word for “new”. If you have questions or problems, please have a look at our '''[[FAQ]]''' before contacting us. Most development talk occurs in the [[irc://irc.freenode.net/nouveau|#nouveau]] '''IRC channel''' on [[http://freenode.net/|freenode]]. Raw logs and edited summaries (the so-called ''TiNDC''s, or The irregular Nouveau Development Companions) can be found on the '''[[IrcChatLogs|IRC chat logs]]''' page. We also use several '''mailing lists''': bug reports and some development talk take place on the '''[[http://lists.freedesktop.org/mailman/listinfo/nouveau|nouveau]]''' list, and changes to nVidia’s [[http://xorg.freedesktop.org/wiki/nv|nv]] driver and Nouveau’s development tools (e.g., ''rules-ng'' and ''renouveau'') and hardware documentation are reported to the [[http://lists.sourceforge.net/lists/listinfo/nouveau-cvs|CVS commits]] list. The [[https://lists.sourceforge.net/lists/listinfo/dri-devel|dri-devel]] and [[https://lists.sourceforge.net/lists/listinfo/mesa3d-dev|mesa3d-dev]] lists are also important; see [[http://dri.freedesktop.org/wiki/MailingLists|DRI mailing lists]] for their descriptions, and please notice the difference between end-user support lists and developer lists. We are also interested in what is said about the project, so links are collected in the page InThePress. <> === Current Status === See the [[FeatureMatrix|status matrix]] for functionality supported on each chipset. We also keep a [[ToDo|TODO list]]. Users can help the development by installing Nouveau and trying to use it for regular desktop activities including web surfing, watching videos, 2D games (not using OpenGL). Enable the [[KernelModeSetting|KMS feature]], use dual-head, try tv-out. Any encountered problems should be found in the bugzilla or the notes here below. If not, submit a report, please. Accelerated OpenGL, although progressing, is not yet supported. If problems are found, you may be requested to provide [[REnouveauDumps||REnouveau dumps]] or [[MmioTrace|MMIO traces]]. Also, specific testing requests may be found in the TestersWanted page. Some GPUs integrated onto the motherboard do not function with nouveau for some unknown reason. These include the !GeForce 8200/8300 and probably the 9400 as well. All other 8000/9000 series chipsets should be able to function, assuming someone bothers to extract some microcode from an mmio-trace in case this is not done already. The problematic GPUs identify as {{{NVIDIA NVAx}}} in the Xorg log, with {{{x}}} a hexadecimal digit. If you have any {{{NVAx}}} card, you need to use KMS. Integrated nforce1 and nforce2 graphics probably do not work, either. 2-D support is in fairly good shape with EXA acceleration, Xv and [[Randr12]] (dual-head, rotations, etc.). Any 3-D functionality that might exist is still unsupported. '''Do not ask''' for instructions to try it. See the [[http://www.x.org/wiki/GalliumStatus|current status]] of Gallium3D on each chipset. If you have nVidia hardware you don't need, [[HardwareDonations|donating]] it could be helpful! See HardwareDonations. For developers and advanced users, we have instructions on [[InstallNouveau|compiling and using nouveau]]. <> === News === News feed: [[http://feed43.com/nouveau.xml|{{attachment:feed-icon-14x14.png|"News feed"}}]] '''''07.07.2009 posted by pq'''''<
> Pre-randr 1.2 support has been dropped, -2 kLOC change to the DDX. Yay!<
> '''''30.06.2009 posted by pq'''''<
> Nouveau has moved the DRM kernel code into a kernel tree, the DRM.git linux-core is abandoned. <
> '''''20.03.2009 posted by KoalaBR'''''<
> With some status update for FreeBSD, FOSDEM and much much more: [[Nouveau Companion 43|TiNDC #43]] <
> '''''21.01.2009 posted by KoalaBR'''''<
> Continuing the coverage from November up until last week, here is [[Nouveau Companion 42|TiNDC #42]] <
> '''''14.11.2008 posted by KoalaBR'''''<
> After a long hiatus KoalaBR is back with TiNDC #41. The [[Nouveau Companion 41|TiNDC]] covers everything from June, 1st up until October, 30th.<
> <> === Bugs === We use [[https://bugs.freedesktop.org|FreeDesktop Bugzilla]]. Bugs [[https://bugs.freedesktop.org/buglist.cgi?product=xorg&component=Driver%2Fnouveau|in the 2-D driver]] are filed under product “xorg”, component “Driver/nouveau” ([[https://bugs.freedesktop.org/report.cgi?x_axis_field=resolution&y_axis_field=bug_status&z_axis_field=&query_format=report-table&short_desc_type=allwordssubstr&short_desc=&component=Driver%2Fnouveau&long_desc_type=substring&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&status_whiteboard_type=allwordssubstr&status_whiteboard=&keywords_type=allwords&keywords=&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailqa_contact2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&chfieldfrom=&chfieldto=Now&chfieldvalue=&format=table&action=wrap&field0-0-0=noop&type0-0-0=noop&value0-0-0=|statistics]]). Bugs [[https://bugs.freedesktop.org/buglist.cgi?product=Mesa&component=Drivers%2FDRI%2Fnouveau|in the 3-D driver]] are under product “Mesa”, component “Drivers/DRI/nouveau”, but please do not submit bugs on the 3-D support yet. Feel free to search and submit bugs about 2-D implementation, please search the bugzilla before submitting new bugs. If you are not sure your bug is a manifestation of an existing bug report, do open a new bug. Please, '''do not compress files''' you attach to bug reports, especially plain text files such as logs, unless the file is so huge bugzilla refuses to take it. Gzipping files makes taking a quick look impossible. Also, make sure the mime-type of text files really is set to {{{text/plain}}}, and not e.g. {{{application/octet-stream}}}. This makes life a little easier for people reading bug reports. We also have a [[http://lists.freedesktop.org/mailman/listinfo/nouveau|mailing list]] where you can send in bug reports, ask questions, discuss patches or whatever is related to nouveau and its tools. <> === Source code repositories === The current code is in git trees on [[http://cgit.freedesktop.org/|freedesktop.org]]. * [[http://cgit.freedesktop.org/nouveau/xf86-video-nouveau/|DDX git]] (2D driver) holds the accelerated Nouveau Xorg driver. * This was forked from nVidia’s [[http://xorg.freedesktop.org/wiki/nv|nv driver]] a long time ago. * Git address: {{{git://anongit.freedesktop.org/git/nouveau/xf86-video-nouveau}}} * [[http://cgit.freedesktop.org/mesa/drm/|DRM git]] (DRM userspace libraries) holds libdrm and libdrm_nouveau. * These provide a userspace interface for the kernel’s [[http://dri.freedesktop.org/wiki/DRM|direct rendering manager]]. * Git address: {{{git://anongit.freedesktop.org/git/mesa/drm}}} * [[http://cgit.freedesktop.org/nouveau/linux-2.6/|Nouveau kernel tree]] (DRM modules) holds the latest {{{nouveau}}} kernel driver. * for public development, not for upstreaming. See the [[http://lists.freedesktop.org/archives/nouveau/2009-March/002765.html|original discussion]]. * Git address: {{{git://anongit.freedesktop.org/git/nouveau/linux-2.6}}} * [[InstallDRM|Build instructions]]. * Shortcut to the [[http://cgit.freedesktop.org/nouveau/linux-2.6/tree/drivers/gpu/drm/nouveau|code]] in git. * [[http://cgit.freedesktop.org/mesa/mesa/|Mesa master]] is the place for 3D driver development (unsupported). * DriProject There is information for nouveau DRI developers here. * Git address: {{{git://anongit.freedesktop.org/git/mesa/mesa}}} <> === Tools === Tools that help the driver writing process * [[REnouveau]] (view [[http://nouveau.cvs.sourceforge.net/nouveau/renouveau/|CVS]]) dumps the modifications in the command fifo and user-mapped registers when a process emits rendering commands. Read [[REnouveauDumps|this page]] to learn how to submit dumps. * [[http://nouveau.freedesktop.org/tests/|Renouveau dumps repository]] * [[http://nouveau.cvs.sourceforge.net/nouveau/nvclock/|A modified nvclock]] this nvclock is modified in order to be able to read/write all the nVidia registers. * MmioTrace to trace memory mapped I/O access within kernel. It can be used to record how a driver module uses MMIO reads and writes, for reverse engineering and debugging. * [[RulesNG]] is a hardware register description database format. * [[Valgrind-mmt]] * [[Nvtrace]] is a variant of valgrind-mmt that aims to intercept all traffic to the driver * All our tools and scripts in CVS (e.g. crashdump and createdump) can be found [[http://nouveau.cvs.sourceforge.net/nouveau/|here]]. <> ==== Debugging tools ==== * [[OProfile]] is a useful statistical profiler, for a system wide performance overview. === Documentation/Available source code === ==== Introduction and API docs ==== * IntroductoryCourse - selected links and documents as a course material * CtxInit - How to create a new context init * [[http://people.freedesktop.org/~ajax/dri-explanation.txt|DRI, DDX, DRM, GLX... how it works together]] * [[http://dri.freedesktop.org/wiki/MesaDriver|How to write a Mesa driver]] * [[http://dri.freedesktop.org/wiki/Documentation|The DRI documentation page]] * [[http://dri.sourceforge.net/doc/hardware_locking_low_level.html|A locking mechanism for the DRI]] * [[GraphicStackOverview|Graphics Stack Overview]] * [[http://wiki.sourcemage.org/Git_Guide|A simple git guide]] * GalliumHowto in case you are brave enough. Please don't come and complain if it doesn't work for you. * [[http://wiki.x.org/wiki/Development/git|How to build and install a full graphics stack from git]] without overwriting your distribution provided X. * KernelModeSetting ==== Presentations ==== * [[http://icps.u-strasbg.fr/~marchesin/nvdri/fosdem1.pdf|Marcheu's talk about Xorg Myths (FOSDEM 2007)]] * [[http://icps.u-strasbg.fr/~marchesin/nvdri/fosdem2.pdf|Marcheu's talk about Nouveau (FOSDEM 2007)]] * [[attachment:fosdem-nvidia-slides.sxi|The FOSDEM 2006 presentation]] * [[http://www.skynet.ie/~airlied/talks/lca07/nouveau.odp|David Airlied's LCA 2007 talk]] ==== Video Hardware docs ==== * [[http://wiki.x.org/wiki/Development/Documentation/HowVideoCardsWork|X.Org How Video Cards Work]] ==== Other nVidia drivers ==== * [[http://www.directfb.org/index.php/viewcvs.cgi/DirectFB/gfxdrivers/nvidia|The DirectFB nVidia driver]] * [[http://web.inter.nl.net/users/be-hold/BeOS/NVdriver/index.html|The BeOS/Haiku nVidia driver]] ([[http://svn.berlios.de/viewcvs/haiku/haiku/trunk/headers/private/graphics/nvidia/|svn header]]; [[http://svn.berlios.de/viewcvs/haiku/haiku/trunk/src/add-ons/accelerants/nvidia/|svn driver]]) * [[http://utah-glx.sourceforge.net/|Utah-GLX]] * [[http://cvsweb.xfree86.org/cvsweb/xc/programs/Xserver/hw/xfree86/vga256/drivers/nv/?hideattic=0&only_with_tag=xf-3_3_3|The xfree 3.3.3 nvidia driver just after obfuscation]] <> ==== Misc ==== * NvHardwareDocs all documented nv registers, hardware protocols, articles, and miscellaneous hardware info about nv vid cards * [[Games]] - how games use graphics * List of all CodeNames for NVIDIA cards * [[http://www.openchrome.org|openChrome Project]] - open source device drivers for VIA S3 (has updated [[http://nouveau.freedesktop.org/wiki/XvMC|XvMC]] with MPEG-4 acceleration support) * [[http://intellinuxgraphics.org|intellinuxgraphics.org]] open source Linux Graphics Device Drivers from Intel (with [[http://nouveau.freedesktop.org/wiki/XvMC|XvMC]] for MPEG-2 acceleration support) * [[http://dri.freedesktop.org/wiki/R300|R300 DRI (Direct Rendering Infrastructure)]] - open source device drivers development for AMD/ATI R300 chipset * [[http://www.tungstengraphics.com/wiki/index.php/Gallium3D|Gallium3D]] - where Mesa is going * NouveauDemo a test suite * DumpingVideoBios ---- CategoryTranslationGerman CategoryHomepage