Subject: Re: Blade 100 USB keyboard problems
To: Michael <macallan18@earthlink.net>
From: Wouter Schoot <wouter@schoot.org>
List: port-sparc64
Date: 12/16/2005 22:57:19
Michael wrote:
> Hello,
>
>> >> Just built a new release and booted it, but still no luck.
>> >
>> > Did you try Julian's patch? ( I thought it was already committed,
>> > turns out it wasn't... )
>> > http://mail-index.netbsd.org/port-sparc64/2005/12/16/0002.html
>>
>> No, I did not. Let's retry.
>
> Please do that.

Didn't work, but the patch didn't apply cleanly, so maybe there's a problem:

[root@ascent /home/test2/current/src]# patch < patch
Hmm...  Looks like a unified diff to me...
The text leading up to this was:
--------------------------
|--- sys/arch/sparc64/dev/consinit.c.dist        2005-12-11
15:05:37.000000000 +0000
|+++ sys/arch/sparc64/dev/consinit.c        2005-12-16 17:58:59.000000000
+0000
--------------------------
Patching file sys/arch/sparc64/dev/consinit.c using Plan A...
Hunk #1 succeeded at 33.
Hunk #2 succeeded at 60.
Hunk #3 failed at 209.
1 out of 3 hunks failed--saving rejects to
sys/arch/sparc64/dev/consinit.c.rej
Hmm...  Ignoring the trailing garbage.
done
[root@ascent /home/test2/current/src]# cat
sys/arch/sparc64/dev/consinit.c.rej
***************
*** 206,216 ****

          if (prom_stdin_node != 0 &&
              (prom_getproplen(prom_stdin_node, "keyboard") >= 0)) {
- #if NKBD > 0
-                 printf("cninit: kdb/display not configured\n");
  #endif
-                 consname = "keyboard/display";
-         } else if (prom_stdout_node != 0 &&
                     (OF_instance_to_path(prom_stdin(), buffer,
sizeof(buffer)) >= 0)) {
                  consname = buffer;
          }
--- 209,227 ----

          if (prom_stdin_node != 0 &&
              (prom_getproplen(prom_stdin_node, "keyboard") >= 0)) {
+ #if NUKBD > 0
+                 if ((OF_instance_to_path(prom_stdin(), buffer,
sizeof(buffer)) >= 0) &&
+                     (strstr(buffer, "/usb@") != NULL)) {
+                         /*
+                          * If we have a USB keyboard, it will show up as
(e.g.)
+                          *   /pci@1f,0/usb@c,3/keyboard@1        (Blade
100)
+                          */
+                         consname = "usb-keyboard/display";
+                         ukbd_cnattach();
+                 } else
  #endif
+                         consname = "sun-keyboard/display";
+         } else if (prom_stdin_node != 0 &&
                     (OF_instance_to_path(prom_stdin(), buffer,
sizeof(buffer)) >= 0)) {
                  consname = buffer;
          }
[root@ascent /home/test2/current/src]#


Rejected part:


mvg,

Wouter

--
Wouter Schoot (wouter@schoot.org)
Website: http://www.schoot.org
UIN# 42109851