Subject: Re: Ultra 5 X11
To: Eduardo Horvath <eeh@NetBSD.org>
From: Michael <macallan18@earthlink.net>
List: port-sparc
Date: 02/10/2005 13:44:13
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello,
>> Which console? XFree doesn't tell wscons what it does to the video
>> hardware so wscons has no way to print anything meaningful on the
>> screen as long as XFree is running. Handing it back when the Xserver
>> exits works fine.
>
> This is not a PC (although it does use some of the same hardware).
> There is no character mode display. Everything is in graphics mode.
I know. I wrote half of what's now machfb :)
> And machfb can initialze the screen from powerup. I have seen it
> do so.
I wasn't sure if it really works, only saw the code.
> Whatever strange things XFree does to the display machfb
> should be able to undo.
Sort of. But this isn't quite as easy. When XFree exits it tries to set
everything back to the state it found when starting - works fine on my
U10. Then it uses some ioctl() to silence the console while it's
working and another one to tell the console it can take over again, I
use it to clean things up when XFree exits ( cleaning the screen for
instance, but that's not yet in the cvs tree ). But if XFree crashes or
we get a kernel panic there's no graceful exit, therefore no ioctl() to
tell machfb what's going on and ultimately no console output on the
screen.
> Under
> Solaris I can hit Stop-A, get to the OBP, type some commands, type
> `go' and resume X (after a refresh screen) with no problems. In
> fact, I just did. I don't see why NetBSD can't do the same.
The Sun Xserver usually doesn't change resolution, it uses whatever it
finds - you do that somewhere else and then it uses the framebuffer
device instead of poking the hardware directly so it affects everything
and the console can stay functional when X is running. To achieve the
same we'd have to hack XFree to do the same, it's not (really) a NetBSD
problem.
It would be nice to have something to notify a display driver of a
panic or a crash of whatever program put it into silent mode so it can
re-initialize itself and either adapt to whatever the video circuitry
is programmed to or to reset it to some default.
have fun
Michael
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (Darwin)
iQEVAwUBQgurfcpnzkX8Yg2nAQLk/wgAs+bZRhZztzH19uB1hRF5LjPNp5lni2li
UJePqJ6IIhtI4we8BGh1tFuG6ZZPVRHbtSYGuWdp8tCMfKDQ4C6RFAbues8O7RQx
PYQvXcS9nW+sjfBP9zSyabRp1LmsvsMIOB4aolAihNBzhriLJQ9TYJQh1EFqMQcY
6Cq4608zehF4iTgoUEiKdE/J6r3jwEeT9t6AEui7q6vfGxJiPLjX6LUvkmNhDNwg
3XNnNGISBdw1oUC3wMYNeHpsyhl/iCYiNCHPbBKqxCPDiFo/i/Wr8oKiW0OwdOK2
FeQ0sgA+R2wa5rIR0s8AMsjj0LonGCtKQH/5AR6ddBKxUMsTx8vX3A==
=w08j
-----END PGP SIGNATURE-----