Subject: machdep.c and OF 3 keyboard handling
To: None <port-macppc@netbsd.org>
From: Derek Peschel <dpeschel@eskimo.com>
List: port-macppc
Date: 11/02/2001 17:37:19
I have some nit-picky questions about how /sys/arch/macppc/macppc/machdep.c
handles keyboard input.  The version on my system (PCI G4, 1.5 kernel)
is 1.74.2.1 and I've also been looking at 1.86.

* 1.74.2.1 tries to call `usb-kbd-ihandle which doesn't exist on my system.
  I have a USB keyboard (not an ADB keyboard -- AFAIK my computer doesn't
  even support ADB).  So why am I still able to use my keyboard?

* 1.86 tries to call `usb-kbd-ihandles.  What will happen if 1.86 is used
  with an old OF that has only `usb-kbd-ihandle?

* Can 1.86 be made to work with both method names?  Would it have to get
  the OF version, or is there a way to ask OF directly if a method exists?
  Note, ' is not what I had in mind since it prints an error if the method
  doesn't exist.  I already see one error from OF (because of the call to
  `usb-kbd-ihandle) and I would rather not see more.

* When I run halt from the shell, I assume I'm supposed to be dumped back
  to an OF prompt.  I do get the prompt but I can't type.  Does machdep.c
  need to set standard input back to OF's on shutdown (just as it sets it
  away from OF's on startup)?

* I can imagine an error happening at an arbitrary point in the
  initialization code.  The error might get me back to an OF prompt,
  or it might bring up the kernel debugger.  Can machdep.c guarantee that
  the input stream is correctly set for both possibilities (OF or ddb)
  for all times during startup?

Thanks,

-- Derek