* UniNorth AGP: Some success
[not found] <20010814090523.21635@smtp.adsl.oleane.com>
@ 2001-08-14 13:38 ` Benjamin Herrenschmidt
2001-08-14 21:15 ` Michel Lanners
0 siblings, 1 reply; 2+ messages in thread
From: Benjamin Herrenschmidt @ 2001-08-14 13:38 UTC (permalink / raw)
To: dri-devel; +Cc: linuxppc-dev
Ok, I've made some progress. It sort of works, but dies after a few
seconds. Here are the details:
- Machine is a PowerBook "Pismo" with a rev. of UniNorth that can do x2
AGP only and no fast write (it does SBA fortunately). I use the alpha
nopage() code for userland mappings and a home made ioremap_agp() for in-
kernel mappings. Everything is mapped uncached, which is a performance
hit on PPC, I'll have to see how I can make things cachable by adding the
proper flush routines all over the place. X is 4.1 from top of 4.1 branch
in XFree CVS, DRM is hacked from the 2.4.8 kernel version.
- glxgears display is sorta broken (but that happened with PCI GART as
well, so I beleive it's a problem with the GL driver vs. the Rage M3
(r128 mobility).
- It's a bit slower than PCI GART (about 430 fps in gears, but it's not
stable, while PCI GART gives me a stable 474 fps). This may be partially
do to the fact that we have all the AGP memory uncachable, I think that
will prevent the PPC from doing write-combining.
- After running for a few seconds with any GL app (I tried glxgears and
tuxracer), X dies with the message "drmR128SwapBuffers: return = -16". In
dmesg, I also have a bunch of:
[drm:r128_cce_vertex] *ERROR* ring space check failed!
[drm:r128_cce_vertex] *ERROR* ring space check failed!
[drm:r128_cce_vertex] *ERROR* ring space check failed!
[drm:r128_cce_vertex] *ERROR* ring space check failed!
[drm:r128_cce_vertex] *ERROR* ring space check failed!
etc... and one
[drm:r128_cce_swap] *ERROR* ring space check failed!
It seems to stop at this point.
Any clue what's up here ? I beleive I will have better perfs with more
recent Apple machines that can do x4 AGP and support fast write. Also,
the rage M3 is not a very fast chip anyway...
For those interested, the hacked code is available in my rsync kernel
tree at penguinppc.org::linux-2.4-benh
Regards,
Ben.
** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: UniNorth AGP: Some success
2001-08-14 13:38 ` UniNorth AGP: Some success Benjamin Herrenschmidt
@ 2001-08-14 21:15 ` Michel Lanners
0 siblings, 0 replies; 2+ messages in thread
From: Michel Lanners @ 2001-08-14 21:15 UTC (permalink / raw)
To: benh; +Cc: dri-devel, linuxppc-dev
Hi all,
On 14 Aug, this message from Benjamin Herrenschmidt echoed through cyberspace:
> - Machine is a PowerBook "Pismo" with a rev. of UniNorth that can do x2
> AGP only and no fast write (it does SBA fortunately). I use the alpha
> nopage() code for userland mappings and a home made ioremap_agp() for in-
> kernel mappings. Everything is mapped uncached, which is a performance
> hit on PPC, I'll have to see how I can make things cachable by adding the
> proper flush routines all over the place.
Depending on cache mode and data direction, you might not need cache
flushing. I mapped the 'control' framebuffer write-through; since only
the cpu writes there (it's not accelerated), that's ok without cache
flushing, but it does enable store gathering in the processor (and maybe
also in the PCI bridge; not sure...) Not sure whether that applies to
AGP as well.
> - It's a bit slower than PCI GART (about 430 fps in gears, but it's not
> stable, while PCI GART gives me a stable 474 fps). This may be partially
> do to the fact that we have all the AGP memory uncachable, I think that
> will prevent the PPC from doing write-combining.
Yes, that's how I understand all the docs I read so far. I'd suggest
tackling cacheing issues first; that will probably provide the biggest
benefit.
Cheers, and happy hacking ;-)
Michel
-------------------------------------------------------------------------
Michel Lanners | " Read Philosophy. Study Art.
23, Rue Paul Henkes | Ask Questions. Make Mistakes.
L-1710 Luxembourg |
email mlan@cpu.lu |
http://www.cpu.lu/~mlan | Learn Always. "
** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2001-08-14 21:15 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20010814090523.21635@smtp.adsl.oleane.com>
2001-08-14 13:38 ` UniNorth AGP: Some success Benjamin Herrenschmidt
2001-08-14 21:15 ` Michel Lanners
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).