Subject: Re: wscons and XFree keyboard problems on SPARCbook 3TX
To: None <>
From: Michael Lorenz <>
List: port-sparc
Date: 10/28/2005 18:59:54
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable


> The kernel and the console works fine, on my Tadpole S3TX, although
> I cannot switch virtual consoles.

The Tadpole keyboard doesn't send the right scancode for STOP it seems,
to your kernel config and rebuild, then you can switch using Alt-F[1-n]

> After some minor adjustments to the config file generated by XFree86
> -configure (namely changing DefaultDepth and mouse protocol and
> device)

This is odd, X -configure should generate a config file that only needs
to get DefaultDepth adjusted. So far I didn't find out how to set that
as default, there are a couple more urgent problems to sort out and
this is comparably cosmetic ...
For instance there is an ugly problem with the way the driver writes
the cursor bitmap into the DAC - sometimes the DAC would lose track of
the address to write to for some reason with the result that the driver
stomps all over the DAC's registers which has rather funny effects on
the display. I think I found a fix and I'm going to commit it soon, so
for the time being - run powerd so you can shut down the machine using
the power button.=20
When you run X and the display suddenly freezes ( typically during
mouse movement when the cursor shape is supposed to change ) and the
image seems to decay then the above mentioned thing happened. The
effect is hard to describe but you'll know it when you see it.
As far as I can tell this is not in any way dangerous to the hardware,
the Xserver is blissfully oblivious that anything bad happend and the
whole thing just keeps running. Quitting and restarting the Xserver
doesn't bring the DAC back into a sane state but rebooting the box does.

Maybe I should just save the DAC registers somewhere and restore them
when the driver switches back into terminal emulation mode. The DAC
register access problem seems to bite only in userland, I didn't see a
trace of it in kernel code.

> the Xserver starts, and the display looks fine, and the mouse
> can be moved. (The server takes considerably longer to start than the
> Xsun, though).

XFree86 is considerably larger than Xsun and loads a multitude of
modules which takes some time. You probably don't want half of them (
like glx for example ) - playing with XF86Config and commenting out some
Load statements may speed things up a little.

> However, I cannot type anything useful at all, only random characters
> appear instead of the ones I type. This happens regardless of the
> way I start the Xserver, i. e. via xinit/startx or via xdm. I didn't
> find any clue as to what happens or how I could fix it. Does it
> work on other SPARCbooks, and/or sun4m machines with cgsix? Anything
> I could try?

Your keyboard section should look like this:

Section "InputDevice"
    Identifier  "Keyboard0"
    Driver      "kbd"
    Option "XkbRules"   "xfree86"
    Option "XkbModel"   "pc101"
    Option "XkbLayout"  "us"
    Option "Protocol"   "wskbd"
    Option "Device"     "/dev/wskbd0"

... provided you want us layout. This is what I'm using on my 3GX.
Hmm, using /dev/wskbd /should/ work but doesn't for some reason. Using
/dev/wskbd0 however works.

> The good news is that -current appears to be quite stable again,
> maybe it was due to the cache flush problem with split-I/D-cache
> machines that was fixed recently.

Indeed, thanks uwe ;)

> Keep up the good work, and thanks a lot for bringing new hardware
> support to the Tadpole. I'm typing this via WLAN/IPSEC on the
> SPARCbook :)

Looks like the tslot driver should really go into the next release.

have fun

Content-Type: application/pgp-signature

Version: GnuPG v1.4.0 (NetBSD)