[Nouveau] Add pause/unpause methods for PFIFO & PGRAPH. Use them to get stable clock changes
martin.peres at free.fr
Thu Sep 30 10:14:38 PDT 2010
Here is an updated set of patches (in regards on comments got on IRC and
an handling error when using several channels).
These updated patch allow me to run 5 glxgears at the same time and
reclock the card almost 100 times per second without crashing.
Don't panic if you get theses in your logs:
PGRAPH: wait for idle fail: 00000000 00000000 00000000 00000103!
PGRAPH: PGRAPH paused while running a ctxprog, NV40_PGRAPH_CTXCTL_0310 =
It means that we tried to reclock during a context switch. It would be
safe to continue as when the program is at 0x11, it means it waits for
another process (which is stopped because we stopped PFIFO before). I
could allow to get this value (ie continue and clock), but if someone
changes the ctxprog, he would have to update it here.
For the moment, I don't mind if from time to time, setting the clocks fail.
Waiting for your comments.
More information about the Nouveau