[HW drivers, especially ATI's] What is "pseudo DMA"?
mardy at users.sourceforge.net
Sun Apr 16 05:36:54 PDT 2006
I'm willing to write a kdrive driver for the ATI Imageon (w100), used
in several handheld devices. At a first glance at the sources, it
appears to be quite close to a Radeon, so I've started by copying all
the "ati" directory in a "w100" directory, and I've begun working on it.
The first problem I've met is that I don't understand what pseudo DMA
is, and if I really need it. My reference is the reverse-engineered
AtiCore driver from the Sharp Zaurus; from what I understood, they
upload the microcode in the FPGA (is this the same thing as the PM4?),
and then the commands are written into the ring buffer.
The ring buffer is controlled by registers named mmRBBM_STATUS,
mmCP_[WR]B_RPTR, nothing else.
In particular, the registers mmCP_CSQ_APER_PRIMARY and
mmCP_CSQ_APER_INDIRECT are never used (yet present), while I see the
kdrive ATI drivers use them a lot, and they seem to be used for pseudo
Hence I'm a bit confused, on how I should port the driver. Do I need
pseudo DMA? Is it an improvement (I guess not)?
Any hint will be much appreciated. :-)
Yahoo! Mail: gratis 1GB per i messaggi e allegati da 10MB
More information about the xorg