Subject: Re: Beautiful Sparc, take 2
To: John Gould <johng@powinv.co.uk>
From: Michael Lorenz <macallan@netbsd.org>
List: port-sparc
Date: 05/04/2006 12:17:12
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello,

> Can someone point me in the direction of how to get XFree working with 
> acceleration on a Sparcstation 20?

Hmm, I really should write this down somewhere ;)

First you need -current. 3.0 has no XFree on sparc.
Then you'll need to build a kernel with wscons support - this is the 
crucial part, XFree neds it and we don't (yet) have wscons-compliant 
drivers for all common graphics hardware on sparc. Right now we only 
have support for CG6 variants, Krups and the Weitek P9100 found in the 
SPARCbook 3 series ( that's the hardware I have access to )
Have a look at the kernel config files for sparc64 - you'll need to 
attach the ttys, mouse and keyboard the same way as on sparc64, add 
wsdisplay* at wsdisplayemuldev? and some pseudo-devices needed by 
wscons. Don't bother with any of this if you don't have a supported 
framebuffer, on a sparcstation that currently means some sort of cg6.
Like this:

zs0	at obio0					# sun4m
zstty0	at zs0 channel 0	# ttya
zstty1	at zs0 channel 1	# ttyb

zs1	at obio0					# sun4m
zstty*	at zs1 channel ?	# mouse/keyboard

kbd0	at zstty?
ms0	at zstty?

wskbd*		at kbd? console ?
wsmouse*	at ms?

wsdisplay* 	at wsemuldisplaydev? console ?

pseudo-device	wsmux			# mouse and keyboard multiplexor
pseudo-device	wsfont

Besides that you might want something like this to customize console 
output:
# wsdisplay options
options 	WSEMUL_SUN
#options 	WSEMUL_VT100
options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
options 	WSDISPLAY_CUSTOM_OUTPUT		# wsconsctl(8)

# black on white, kernel output in green
options 	WS_DEFAULT_FG=WSCOL_BLACK
options 	WS_DEFAULT_BG=WSCOL_LIGHT_WHITE
options 	WS_KERNEL_FG=WSCOL_GREEN
options 	WS_KERNEL_BG=WSCOL_LIGHT_WHITE

options 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
options 	WSDISPLAY_COMPAT_SYSCONS	# emulate some ioctls
options 	WSDISPLAY_COMPAT_USL		# VT handling

options 	WSDISPLAY_DEFAULTSCREENS=1

options 	FONT_GALLANT12x22	# the console font
#options 	FONT_BOLD8x16		# a somewhat smaller font

This will also give you virtual consoles ( switch with Stop-Fn )
You may want to put 'wscons-yes' into your rc.conf and you'll also want 
to have a look at /etc/ttys and add likes for ttyE0-3 to get login 
prompts on the additional consoles.

When you're done with this change the /usr/X11R6/bin/X symlink to point 
to XFree86 and run X -configure. This should give you a working config 
file.
Make sure /dev/fb0 exists though, in doubt make it a symlink to 
/dev/fb. Recent -current should have /dev/fb0 and probably a few more.

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

iQEVAwUBRFopCMpnzkX8Yg2nAQLRSwf/SXbSm451JDYqbIAUKZ2I67QwQfqlPReT
otuWaYZPxjrLnohlSu9q1ITLMjl5tzGqqgmoVyX08XVWyEnEdJAUHO2JRz//0bEv
ZQ6A0ufs/Rq65lX/Xu/uQ5VcCeKPrl0kjtFCk9n8/ltHAw0APOXCXHg4RS/OFbKy
cC5OWri4GjdTXb5Psp//FkGngIDKwIa0bKsLasExW5grKQxXAfWO2p2cXy1158Ec
HhoRjlXwc5M209V4D7+pdDliZDQJbeIIS+KT/vfYusHDFwdSeDYElqKNCW1BtBHO
eW9vcYh3CNm0cNM7+Z2rr70EnOmKcrpZgcaciSmWX7KroRFUhyIuQQ==
=ix4n
-----END PGP SIGNATURE-----