Re: [Linux-fbdev-devel] accelerated radeonfb produces artifacts onscrolling in 2.6.7

From: Timothy Miller
Date: Wed Jun 16 2004 - 14:40:40 EST




David Eger wrote:
On Wed, Jun 16, 2004 at 08:24:15PM +0200, Jurriaan wrote:

The radeonfb driver in 2.6.7 produces some interesting artifacts on
scrolling, both scrolling horizontally and vertically.


The corruption you are talking about is, I believe, caused by a couple of things:

(1) we're not issuing enough fifo_wait()'s around our accel engine
and pan register writes.
(2) there's some disconnect between writing to fb memory, panning, and
copyarea()/fillrect() calls

I sent a hack of a fix for this to Ben a week ago, adding a call to radeonfb_sync()
at the end of radeonfb_copyarea() and radeonfb_fillrect(). This seems to fix the
problem for me, but you *shouldn't* have to do this.

I haven't tracked it any further than this. My next guess would be auditing register writes and making sure there are enough fifo_wait()'s...


Is this the case even with the off-by-one error in the bitblt code fixed? In the 2.4 kernel, I got rid of all artifacts by fixing the off-by-one error.

In case, you don't know what I'm talking about, when you bitblt up or to the left on Radeon, x and y need to be adjusted by (w-1) and/or (h-1), respectively. The code there, however, adjusted by w and/or h, which is off-by-one.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/