sunffb
Michael <[email protected]>
| Newsgroups | gmane.comp.xfree86.devel |
|---|---|
| Message-ID | <20050531074108.33a5d616@inishowen> |
Hello, just a question. Again. We finally got the sunffb driver to work on NetBSD/sparc64, including acceleration. Turns out there was a problem in the VIS assembler code: wr %g0, 0, %fprs this will turn off the FPU so any subsequent FPU instruction will cause a trap. On NetBSD this led to huge numbers of traps which rendered the Xserver unusable when acceleration was enabled. So for NetBSD I changed this to wr %g0, 4, %fprs to leave the FPU active and clean only the dirty bits. No more excessive traps and things work. Since I highly doubt this is an oversight - what's the purpose of turning off the FPU after using VIS? Apparently the author expected the OS to do something which NetBSD doesn't do, but what? And why? Provoking a trap seems a rather expensive way to reset the FPU ( if that's the purpose... ) have fun Michael PS: yes, I mailed the author too
signature.asc
(application/pgp-signature, 478 B)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (NetBSD) iQEVAwUBQpxNVMpnzkX8Yg2nAQKpXgf/WgPbO1j8P6608KWTb570OI1z7WFvzrFu 4Og72EGdORtc489Vn7zujP+XmnGF5p/peBhasAu76xSuyBAY70dvZCS3PkarmwTx +pXT7HGy7m8yCxasTLzZhKQ/CVTnIDuoCcI87oxuxPuWP+IOhocSvtukUciS7ZjB EMK5rN0x+vcKi0v6DbN+EgH3SeRJNLI62oap5wJciFik5SLvOYSKeF0OePLXK1OI RAOH1ZIr6Hb/OeL8WFXFMhCR2lch6MREmX2hKiUkIQQGKo3jeILdj76UKKdSAytx Zvf1iMviMymPtpzsueLMza9xdKM34t5RNeg8cJVvm1WGW1hWoiqGQA== =qFAl -----END PGP SIGNATURE-----