You are not logged in.

#1 2006-08-29 12:15:57

user
Member
Registered: 2006-03-29
Posts: 465

reverse engineering nvidia

While surfing about nvidia and hardware acceleration, i found this.

http://nouveau.freedesktop.org/wiki/

[url=http://www.hboeck.de/categories/11-Gentoo]Hanno[/url] wrote:

Monday, February 27. 2006, 22:59
Gentoo at Fosdem
Gentoo at Fosdem
As there was only very limited internet access at Fosdem, I didn't find the time to blog live, so here my collected impressions.

Keynote with Richard Stallman about software patents. I already knew this talk, so it wasn't so interesting. I also think there weren't much people in the room that had to be persuaded to resist software patents, so they should have probably choosen a more »visionary« topic for RMS to talk about. After that an interesting talk about the GPL v3 (also by RMS). I asked a question about the problem that GPL v2 only code can't be mixed with GPL v3 code, he asked me to email discuss this with him, what I will do.

There were two talks about Xgl, one from Matthias Hopf telling what xgl is, what problems they face and some compiz presentation (with the always-known whooo-effect). Zack Rusin did a »Why Xgl is not the answer« talk. Was very interesting to hear the pros and cons of Xgl, I don't have a real opinion on that (I don't feel that I understand the technical details enough), but we should probably have an eye on the different futures X has (Xgl and aiglx at the moment).

Another very interesting talk in the X room: Stephane Marchesin is working on reverse-engineering nvidia chipsets and intends to write a free driver for them. It's in a very early stage (basically at the moment just finding out how the chips work), let's wish him all success (see nouveau - his not yet working first sources).

Suse gave out free (as in beer) t-shirts, so don't be amazed if you see me with a suse t-shirt running around ;-)

Some other more or less interesting talks, overall the presentations are the highlights of fosdem, you'll probably hardly find another event with so many interesting, high level talks about open source and free software.

Pictures will be here as soon as I find time to upload them.
Linux, Life, Gentoo, English, Code | Comments (3) | Trackbacks (0)

[color=red][b]a summary for the time until August, 26[/b][/color] wrote:

NoveauCompanion 1


The irregular Nouveau-Development companion

Issue for August 26, 2006

Introduction

Hello and welcome to the first issue of TiNDC. Through this companion we will try to tell you something about the status and progress of our work, what we are developing and where we could need some help from you. Now why "irregular"? Well, eloquent wrinting isn't exactly our strong point, not even our main interest. So we will create a new issue only if we find time, as development has top priority.

Current status

Since this is the first issue of TiNDC, perhaps a small overview of the current status would be a good idea. Currently most work is done in renouveau, while work in other areas is slowly starting.

Renouveau runs small OpenGL programs and dumps the current state of the Nvidia card. When comparing these dumps manually with the executed OpenGL program, it is possible to find out, what certain commands do. You can probably understand that this is a slow process. But pmdata has nearly completely charted all NV10 objects and commands, though quadro ones may still be missing.

Sturmflut did honor his name and flooded us with a bunchof patches, all for lightning stuff on NV20+. But still, there is much work left, for example at the time of the writing of this article, there were still 80 unknown commands for a NV40 based card (like Gforce 6600 etc.). Before this count for all cards intended to be supported hasn't dropped significantly, a complete and working driver for 3d operations is not more than just an illusion.

Nevertheless, development speed is picking up: While there were 187 patches to all modules during the month of July, this number was reached already on August, 22.

Some renouveau documentation autogenerated by additional doxygen annotation was added to our website recently and has seen quite some demand (please see our Help section too). Have a look there, if you want to know more about renouveau. Some more information can be gathered from the README in the renouveau CVS repository.

<marcheu> actually, you know how I came up with that name (or how I didn't, rather) ?
<marcheu> I've got an automatic replacement in my irc client which turns "nv"into "nouveau"
<marcheu> (for speaking in french channels) and I was saying on a xorg channel that I was working on
<marcheu> a "nv" driver. and the replacement changed that to "nouveau", and people told me they liked the name smile

Now for that, what most of you are looking for: Nouveau the new 3d enabled X11 driver (based on the current nv X11 driver) has gained a memory manager thanks to marcheu. This lead darktama and marcheu to try to initialize the card to a working 3d state, currently without success, as command execution comes to a grinding halt sooner or later. However, the 2d functionality including Xv, XAA and EXA is working again thanks to stillunknown and marcheu. But as the current version is based on the somewhat obfuscated X11-nv driver, no enhancements can be expected yet. XAA and EXA are two different acceleration architectures for X. Xv are the video extensions.

Further work was started by arlied who kindly offered to do "mode switching work" based on the nv and Haiku drivers (as well as his personal experience as a DRM maintainer). A sound foundation here will allow us for easy dual head configurations.

Adventurous users may try to use our version of the nv driver (called DDX) but shouldn't expect anything else than the X11-nv driver does. Current estimate for a usable first version is still summer 2007.

Help needed

Summer 2007 is too late for you, you want your driver earlier? No problem at all, just offer your help!

If you can program in C, know something about OpenGL you would be more than welcome if you would like to join our project. If not, you could still help us, if you have a quadro card (age doesn't matter, as long as the cards works in Linux). Just drop into IRC on freenode channel #nouveau and offer your help to darktama, marcheu, pmdata or lumag.

Currently we need:

    *

      A way to upload automatically generated html pages into the MoinMoin Wiki, so that KoalaBR can fold his docs (created through doxygen) into the official website (is this even possible?).
    * If you have a Quadro card, please do contact pmdata, we are desperately seeking dumps of this cards.


I removed my sig, cause i select the flag, the flag often the target of enemy.

SAR brain-tumor
[img]http://img91.imageshack.us/img91/460/cellphonethumb0ff.jpg[/img]

Offline

#2 2006-08-29 16:49:32

iBertus
Member
From: Greenville, NC
Registered: 2004-11-04
Posts: 2,228

Re: reverse engineering nvidia

I seriously doubt that anyone will ever be able to write a fully featured or even partially featured display driver for nvidia chipsets using reverse engineering. I wish the guy all the luck, but I don't feel overly optimistic.

First, what is really the point? Sescond, it seems like they would run into some legal issues trying to reverse engineer a proprietary technology.

Offline

#3 2006-08-29 20:09:50

test1000
Member
Registered: 2005-04-03
Posts: 834

Re: reverse engineering nvidia

i'm not going to waste my time explaining why binary blobs are a bad idea... Instead i'm gonna supply a bit of trivia: What was the name of the propriatory module which delayed xorg 7.1 adoption in archlinux?


KISS = "It can scarcely be denied that the supreme goal of all theory is to make the irreducible basic elements as simple and as few as possible without having to surrender the adequate representation of a single datum of experience." - Albert Einstein

Offline

#4 2006-08-29 21:10:33

iBertus
Member
From: Greenville, NC
Registered: 2004-11-04
Posts: 2,228

Re: reverse engineering nvidia

I am completely aware of why binary drivers are "bad" for linux. But I cannot accept arguments like "delayed xorg 7.1 adoption in archlinux" based on the fact that nobody forced the devs to wait for these driver to be updated. The choice was made to wait because the devs felt like it was the correct choice.

Maybe the move to xorg 7.1 should have go ahead of nvidia or ati driver updates. Whatever, it's not our choice to make. If we wanted xorg 7.1 ahead of the offical arch migration we could have compiled it ourselves.

Offline

#5 2006-10-03 16:01:21

brazzmonkey
Member
From: between keyboard and chair
Registered: 2006-03-16
Posts: 818

Re: reverse engineering nvidia

who cares ? let the guy do, help him if you can/want to. sometimes too much energy is wasted in trying to make alternatives that are just worse than what already exists.

everybody's got to find a hobby.


what goes up must come down

Offline

#6 2006-10-04 01:58:46

iphitus
Forum Fellow
From: Melbourne, Australia
Registered: 2004-10-09
Posts: 4,927

Re: reverse engineering nvidia

iBertus wrote:

I seriously doubt that anyone will ever be able to write a fully featured or even partially featured display driver for nvidia chipsets using reverse engineering. I wish the guy all the luck, but I don't feel overly optimistic.

First, what is really the point? Sescond, it seems like they would run into some legal issues trying to reverse engineer a proprietary technology.

It's already happened for ATI, so it's entirely plausible.

And secondly, they're doing a clean room reverse engineer. They are not decompiling or touching the nvidia blogs or code. They're just intercepting the output and input between these and the card, and this is completely legal and would be merged with the linux kernel without problem. Added to this, the developer is from france, which doesnt have some of the crap laws of the US which may prohibit reverse engineering.

What's the point? It's great. Currently we're at the ransom of NVIDIA when it comes to drivers, I'd much prefer to have a free driver for my hardware than be at NVIDIA's ransom.

James

Offline

#7 2006-10-07 14:24:57

archuser
Member
From: Northamptonshire, UK
Registered: 2006-09-10
Posts: 122

Re: reverse engineering nvidia

At least nvidia support linux and their drivers work. But would be good to be freed from their leash. smile


Intel i7-920 (stock), ASUS P6TD-Deluxe, AMD R9 270X, RAM: 6GB

Offline

#8 2006-10-11 14:52:09

Eliatamby
Member
Registered: 2005-05-06
Posts: 80

Re: reverse engineering nvidia

iBertus wrote:

I am completely aware of why binary drivers are "bad" for linux. But I cannot accept arguments like "delayed xorg 7.1 adoption in archlinux" based on the fact that nobody forced the devs to wait for these driver to be updated. The choice was made to wait because the devs felt like it was the correct choice.

Maybe the move to xorg 7.1 should have go ahead of nvidia or ati driver updates. Whatever, it's not our choice to make. If we wanted xorg 7.1 ahead of the offical arch migration we could have compiled it ourselves.

AFAIK there is nothing illegal about reverse engineering, as long as the people reverse engineering the nividia driver code haven't used the proprietary nvidia driver (ie accepted it's licenese agreement).

Offline

#9 2006-10-11 16:41:53

twiistedkaos
Member
Registered: 2006-05-20
Posts: 666

Re: reverse engineering nvidia

sounds like an interesting project. I'll look more into it when I get home.(In school now)

Offline

#10 2006-10-23 20:52:16

Pavel Jackoff
Member
Registered: 2006-08-05
Posts: 30

Re: reverse engineering nvidia

Eliatamby wrote:

AFAIK there is nothing illegal about reverse engineering, as long as the people reverse engineering the nividia driver code haven't used the proprietary nvidia driver (ie accepted it's licenese agreement).

i don't know about the usa, but here in germany, eulas are null and void.

Offline

Board footer

Powered by FluxBB