Subject: Re: Ultra 5 X11
To: Gert Doering <gert@greenie.muc.de>
From: Michael <macallan18@earthlink.net>
List: port-sparc
Date: 02/10/2005 08:25:00
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello,
>>> How does "accellerated wscons" work? I thought wscons just presents
>>> a dumb frame buffer device to the X server? Or can XFree86 figure
>>> out
>>> "hey, behind this wscons, it's hiding an Mach64 chip, so let's use
>>> the
>>> XFree86 hardware driver"?
>>
>> (a) wscons can use acceleration, if the kernel display driver
>> provides
>> them. Michael made machfb do so.
>
> How are these acceleration functions accessed?
Via function pointers in struct rasops_info
> Is it an ioctl() on the /dev/ttyE* device?
No.
> Which "client" can/does make use of this acceleration? XFree86/wscons,
> or "text mode console" output?
None. Currently there's no way to expose these blitter operations to
userspace clients, although there's some thinking going on about a
generic wscons framebuffer driver in XFree86 ( to get rid of most
platform-specific Xservers like Xsun, Xmacppc and so on ) and
acceleration.
>> (b) XFree just accesses the card directly (and uses acceleration
>> too).
>> The kernel driver only allows it to mmap the frame buffer *and*
>> the controll registers.
>
> So you would use the "ati" driver in XFree, and not "wscons"?
Exactly.
> (Some background: I've tried to run XFree with the ati driver some
> months
> ago, and it complained that it couldn't access the card, but I still
> don't
> understand the puzzle enough to figure out what *should* have
> happened).
It tries to mmap() the card's memory-mapped PCI resources through
/dev/ttyE0. This requires the kernel driver to
- - provide its own mmap() function
- - translate these bus addresses to physical addresses (
bus_space_mmap() is our friend )
That's one of the things I added to machfb. So without -current machfb
in your kernel you won't be able to run XFree with the ati driver.
have fun
Michael
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (Darwin)
iQEVAwUBQgtgrcpnzkX8Yg2nAQKL/Af/fTg37wrmf0F2ry3U5QhMQrlmf4oXDMVS
B8xTlBF1RjSAsb0LRkbsif3/TxoIW7ZFKxXlp7rvzesK0Et+dGbJPEWTGXt2nIho
lS/hX/DI9H70nMhpFx/rigXxEcxvzhJUu5crSsmOhGU1tABembVS+3NUJEoXn0eu
LzeKcbEGr1E4Y9qciQkS4vQiuLK3mZNUxcd3xSXEE6w2YwGT+79HJXDoLTvJHP82
0hrTP6EkvcKtBXSiYzItCh7I3sQSvMcacssd9PpWmWaOy7y9iNobYD64UTIMjxmq
L+TY9ClmMfhfiaZ/neWJKohw0hnWGyVm9wFBpP4HPsf3R1v5JZoo7g==
=zGFX
-----END PGP SIGNATURE-----