Subject: Re: sparc64 w /PCI
To: None <mcesare@nc.rr.com>
From: Michael Lorenz <macallan@netbsd.org>
List: port-sparc64
Date: 06/10/2006 13:13:53
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

- -----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello,

> Do you suggest doing a headless insatallation
> then adding video card(s) and Xfree86 install
> or doing it all at once ?

I didn't suggest anything.
As NetBSD is right now no non-OF video cards will work. This is a 
limitation imposed by the way XFree tries to access PCI video cards on 
sparc64 - it simply tries to mmap() their resources through /dev/ttyE0 
which only allows access to the console device. I merely mentioned that 
there are ways around this limitation which would get more or less any 
PCI video card - OF or not - to work, this requires changes both in the 
kernel and in XFree86 though.
The idea is to attach a dev/fb* to any PCI video device, even those we 
can't use otherwise, and use them to mmap() the chips' BARs. This way 
we don't need to frob with /dev/pci* - just go through /dev/fb* to 
discover devices and no need to muck with bridges etc. We have a file 
handle for each device and the Xserver doesn't need to run as root - 
provided the fb devices have the right permissions. Machfb already 
exports a /dev/fb and I wrote a simple driver that attaches to anything 
PCI video as low priority catch-all which does nothing but provide a 
/dev/fb for otherwise unsupported chips.
With these patches in place I've been able to use all video controllers 
in my U10 at once, including a Millennium II with PC firmware and a 
Millennium I with Apple firmware ( which does nothing but give the OF 
node a funny name - it doesn't work as OF console in a Mac either )

have fun
Michael
- -----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (Darwin)

iQEVAwUBRIr9ocpnzkX8Yg2nAQJrRQf+PsEpWaeSWH1TmYCE8Q6y5rW50niFziLY
YZvgRpw17Bf0jJ+9G69DOrwOrub8vT+f4i4Z1UM5AEOOqXCKsfG/MofR/xJjUpGb
vpTU5ac93yzWAlMT0VnOFjx43Em3tdFZOnyi0UDhkthJPBOS8DPC35GSLkcth2S4
hcJrz2b7g+D5RRqJXYGJwrB8zQGKzG9UERwwXrq3fnMG8YdHzI/Npn8ovPlbW4sN
9pxoN3dCR2ZoMGEsNhVjF/o5c1Wma/HSDwX8HTgId+Xphwj+av+JRltJJE7TZiA5
fBBqGOfhdCMT4Z9fUwEQyvwCh1lsWKjcKijf/r5mdc3NdbOXZ6ab2w==
=7EAy
- -----END PGP SIGNATURE-----

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (Darwin)

iQEVAwUBRIr90cpnzkX8Yg2nAQJ2CwgAnRruhxEdgyjaWF588NuJskKMwKIX1izH
DO9TXI7kkJ4k9sYnPvlRncExuio9Fik0AmDcRxcCQv1VjRPH3sb3cq0P0Pi8uJ5j
/I5yH2fdnlchfmzs2vNYHWCLcpBkYM0bmHLpDBeTkldh/br5u/oA7Vc+Em/zSQAr
HtgVCuTxYqGrJ0Rb4dIgg5xvTEEUHHbzwK1cpQxCB1v+0MP57+8e9uf3hwxoKOoM
xVf81SsQvB1q++FPnQ6yOfzqjqfK9fx1kqpjkI4Dz6USRwRbUT1Xs38A7emtPg91
ihhhHZN+/bpUVFYZKYvwx3RDaOf/0CTzvGiRVUSTcpg9jmvABTVvtQ==
=e9C0
-----END PGP SIGNATURE-----