[Nouveau] SERIALIZE command
Shinpei KATO
shinpei at il.is.s.u-tokyo.ac.jp
Fri Apr 9 08:54:39 PDT 2010
Hi Marcin,
Thanks for your quick response.
I found some examples in DDX!
These examples use with Nv2D (subc=2).
Do you think that the SERIALIZE command also works for other objects, like M2MF?
Thanks,
- Shinpei
> -----Original Message-----
> From: Marcin Kościelnicki [mailto:koriakin at 0x04.net]
> Sent: Saturday, April 10, 2010 12:11 AM
> To: Shinpei KATO
> Cc: nouveau at lists.freedesktop.org
> Subject: Re: [Nouveau] SERIALIZE command
>
> > I am trying to use the 0x110 SERIALIZE (or 0x108 WAIT_FOR_IDLE?) command
> to
> > barrier the PGRAPH commands.
> > Unfortunately, I do not find any examples either in nouveau or gallium.
>
> There are some examples in DDX, but they don't use the symbolic name
>
> > If it plays just a barrier, I guess it should work by something like (in
> > case of m2mf):
> > BEGIN_RING(chan, m2mf, 0x110, 1);
> > OUT_RING(chan, 1);
> >
> > Otherwise, it may actually play to serialize some commands, then I would
> > rather use as follows:
> > BEGIN_RING(chan, m2mf, 0x110, 1);
> > OUT_RING(chan, NUMBER_OF_FOLLOWING_COMMANDS);
> >
> > I have tried both approaches, and the application runs without any
> > problems, but I am not sure if barriers have happened or not ;-)
> > I would appreciate if anyone can tell me how to use the barrier command.
>
> The WAIT_FOR_IDLE/SERIALIZE methods [they're really the same, I just didn't
> know it when I named the 0x110 on nv50] ignore the data value. Whenever
> they're on the tip of the internal PGRAPH command FIFO, they'll stall all
> processing until all PGRAPH subunits are idled, effectively acting as a
> full
> barrier.
>
> Yes, SERIALIZE should be renamed to WAIT_FOR_IDLE.
>
> > Best,
> > - Shinpei
>
> Marcin Kościelnicki
More information about the Nouveau
mailing list