Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/macppc/macppc Consider "have /psuedo-hid and only A...



details:   https://anonhg.NetBSD.org/src/rev/3f92f51e52e4
branches:  trunk
changeset: 473674:3f92f51e52e4
user:      tsubai <tsubai%NetBSD.org@localhost>
date:      Mon Jun 14 06:22:50 1999 +0000

description:
Consider "have /psuedo-hid and only ADB keyboard" case to make the
new PowerBook G3 happy.

diffstat:

 sys/arch/macppc/macppc/machdep.c |  17 ++++++++++++++++-
 1 files changed, 16 insertions(+), 1 deletions(-)

diffs (45 lines):

diff -r 483dbd9b58c1 -r 3f92f51e52e4 sys/arch/macppc/macppc/machdep.c
--- a/sys/arch/macppc/macppc/machdep.c  Mon Jun 14 03:11:34 1999 +0000
+++ b/sys/arch/macppc/macppc/machdep.c  Mon Jun 14 06:22:50 1999 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: machdep.c,v 1.47 1999/05/26 19:16:32 thorpej Exp $     */
+/*     $NetBSD: machdep.c,v 1.48 1999/06/14 06:22:50 tsubai Exp $      */
 
 /*
  * Copyright (C) 1995, 1996 Wolfgang Solfrank.
@@ -1021,6 +1021,7 @@
        struct consdev *cp;
        int l, node;
        int stdout;
+       int akbd_ih;
        char type[16];
 
        l = OF_getprop(chosen, "stdout", &stdout, sizeof(stdout));
@@ -1068,6 +1069,19 @@
                        return;
                }
 
+               /*
+                * Newer PowerBook G3 has /psuedo-hid and ADB keyboard.
+                * So, test "`adb-kbd-ihandle" method and use the value if
+                * it succeeded.
+                */
+               if (OF_call_method("`adb-kbd-ihandle", stdin, 0, 1, &akbd_ih)
+                   != -1) {
+                       int akbd;
+
+                       if ((akbd = OF_instance_to_package(akbd_ih)) != -1)
+                               node = akbd;
+               }
+
                node = OF_parent(node);
                bzero(type, sizeof(type));
                l = OF_getprop(node, "name", type, sizeof(type));
@@ -1127,6 +1141,7 @@
                 */
                ofkbd_ihandle = stdin;
                wsdisplay_set_cons_kbd(ofkbd_cngetc, ofkbd_cnpollc);
+               return;
        }
 #endif /* NOFB > 0 */
 



Home | Main Index | Thread Index | Old Index