From: David Eger <eger@havoc.gtf.org>
To: Andrew Morton <akpm@osdl.org>
Cc: Jurriaan <thunder7@xs4all.nl>, linux-fbdev-devel@lists.sourceforge.net
Subject: [PATCH] radeonfb: 16bpp accel broken. a work-around
Date: Fri, 25 Jun 2004 03:18:19 -0400 [thread overview]
Message-ID: <20040625071819.GA12537@havoc.gtf.org> (raw)
In-Reply-To: <20040618110450.GA2771@middle.of.nowhere>
Dear Andrew,
I've tracked Jurriaan's radeonfb problem down to copyarea() malfunctioning
in 16bpp mode. Here's a hack to just do a software copyarea() in 16bpp mode.
No more screen garbage, but then it's slow :-/
for instance, cat' ing the MAINTAINERS file:
8bpp - ~1.5 sec
16bpp - ~19 sec (with yucky fix)
32bpp - ~6 sec
-dte
radeonfb: 16bpp work-around - copyarea() doesn't work
Signed-off-by: David Eger <eger@havoc.gtf.org>
diff -Nru a/drivers/video/aty/radeon_accel.c b/drivers/video/aty/radeon_accel.c
--- a/drivers/video/aty/radeon_accel.c 2004-06-25 09:15:24 +02:00
+++ b/drivers/video/aty/radeon_accel.c 2004-06-25 09:15:24 +02:00
@@ -99,7 +99,9 @@
if (info->state != FBINFO_STATE_RUNNING)
return;
- if (radeon_accel_disabled()) {
+ if (radeon_accel_disabled()
+ || info->var.bits_per_pixel == 16) {
+ /* hack alert: why is 16bpp broken? dunno */
cfb_copyarea(info, area);
return;
}
diff -Nru a/drivers/video/aty/radeon_base.c b/drivers/video/aty/radeon_base.c
--- a/drivers/video/aty/radeon_base.c 2004-06-25 09:15:24 +02:00
+++ b/drivers/video/aty/radeon_base.c 2004-06-25 09:15:24 +02:00
@@ -1573,6 +1573,12 @@
}
#endif
+ /* for some reason, copyarea is broken at 16bpp... :-/ */
+ if (mode->bits_per_pixel == 16)
+ info->flags &= ~FBINFO_HWACCEL_COPYAREA;
+ else
+ info->flags |= FBINFO_HWACCEL_COPYAREA;
+
/* Clear surface registers */
for (i=0; i<8; i++) {
newmode.surf_lower_bound[i] = 0;
-------------------------------------------------------
This SF.Net email sponsored by Black Hat Briefings & Training.
Attend Black Hat Briefings & Training, Las Vegas July 24-29 -
digital self defense, top technical experts, no vendor pitches,
unmatched networking opportunities. Visit www.blackhat.com
next prev parent reply other threads:[~2004-06-25 7:19 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-06-16 18:24 accelerated radeonfb produces artifacts on scrolling in 2.6.7 Jurriaan
2004-06-16 18:24 ` Jurriaan
2004-06-16 18:41 ` David Eger
2004-06-16 18:41 ` [Linux-fbdev-devel] " David Eger
2004-06-16 19:55 ` Timothy Miller
2004-06-16 19:55 ` [Linux-fbdev-devel] " Timothy Miller
2004-06-16 19:52 ` Jurriaan
2004-06-16 19:52 ` [Linux-fbdev-devel] " Jurriaan
2004-06-17 13:51 ` Timothy Miller
2004-06-17 13:51 ` [Linux-fbdev-devel] " Timothy Miller
2004-06-17 2:21 ` [PATCH] fix radeonfb panning and make it play nice with copyarea() David Eger
2004-06-17 2:21 ` David Eger
2004-06-17 5:19 ` Jurriaan
2004-06-17 5:19 ` Jurriaan
2004-06-17 5:35 ` David Eger
2004-06-17 5:35 ` David Eger
2004-06-17 5:47 ` David Eger
[not found] ` <20040618110450.GA2771@middle.of.nowhere>
2004-06-25 7:18 ` David Eger [this message]
2004-06-25 7:26 ` [PATCH] radeonfb: 16bpp accel broken. a work-around Andrew Morton
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20040625071819.GA12537@havoc.gtf.org \
--to=eger@havoc.gtf.org \
--cc=akpm@osdl.org \
--cc=linux-fbdev-devel@lists.sourceforge.net \
--cc=thunder7@xs4all.nl \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.