[Nouveau] [Bug 26980] GT230M or GT218 with nouveau: X server hangs spontaneously

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Tue Jul 13 11:12:23 PDT 2010


https://bugs.freedesktop.org/show_bug.cgi?id=26980

--- Comment #25 from Marcin Kościelnicki <koriakin at 0x04.net> 2010-07-13 11:12:22 PDT ---
Well... the status is still the same. We [me and darktama / Ben Skeggs] both
have no fucking idea what's 
causing this problem.

It turns out, stuff is complicated. NVA3+ card introduced some sort of 
microcontroller on-board that runs all the time and controls stuff like power 
management. In all NVA3+ traces, we see a lot of places where blob is talking 
to that controller and does stuff to PGRAPH. Atm we can only assume that 
lockups are caused by us not doing this.

We have no idea what exactly that microcontroller does and how to talk to it. 
Worse, this microcontroller needs microcode that is uploaded by the driver. 
And judging by what I've seen already, ctxprogs were a walk in the park 
compared to this new uc. The progs are huge, and there are shitloads of 
opcodes to RE.

So - we're blocked again on REing some magical code. And we're talking real 
code this time, as opposed to ctxprogs which were mostly just a list of regs 
to copy...

Until we understand what's going on, status for NVA3+ cards stays the same - 
we have absoluely no idea how to fix that bug and ETA is on the order of at 
least months.

And for the record: I'm going to kill anyone who calls this new progs 
"voodoo", "magic", or anything like that. We already decided on the name of 
"fuc progs". And the PM microkontroller is not the only place where there are 
used. Right now we know of the following:

 - NV98+ cryptographic engine setup
 - NV98+ cryptographic engine ctxprogs
 - NV98+ video decoding ctxprogs
 - NVA3+ unknown engine 104xxx [DMA copier?] ctxprogs
 - NVA3+ PM microcontroller
 - NVC0 PGRAPH ctxprogs

With such a huge list of users, REing fuc progs is a high priority for me. 
Keep your fingers crossed. And find lots of RE-capable people to help, this is 
going to be a long ride...

PS. Note that chipset ordering is a bit funny and it does NOT follow NVxx 
numerical values. The saner ordering I've come up with is at 
http://github.com/pathscale/envytools/blob/master/nvchipsets.xml - it best 
matches order of adding new functionality. Also, for video decoding units, 
NVA0 and NV98 should be swapped, ie. NV98+ video decoding does not include 
NVA0. So NVA3+ cards are NVA3, NVA5, NVA8, NVAF, NVC0. But not NVAA/NVAC.

PPS. In other words, if you want your card to work with nouveau, don't buy
NVA3+ cards yet. Or, following nvidia codenames, don't buy stuff with GT21x
chipset in it. Nor MCP89, but that one is too damn rare anyway.

PPPS. If you think you're able to RE microcodes, contact me. Srsly. We need
more people. Badly.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the Nouveau mailing list