Subject: Re: port-macppc/12894
To: port-macppc <port-macppc@NetBSD.ORG>
From: Bob Nestor <rnestor@augustmail.com>
List: port-macppc
Date: 05/28/2001 12:49:04
Discovered a bit more information on this problem.  The wscons glue code 
logic was rewritten between 1.4.3 and 1.5 and this contributes to the 
console keyboard and display not getting glued together.  In the old code 
it was nessary to force a reattachment by calling wsdisplay_set_cons_kbd 
in cninit in the machdep.c file.  This was done to delay wscons 
associations until all the parent devices were configured.

Under 1.5 the glue logic automatically defers associations if the parent 
device(s) aren't yet configured. The hacked call to 
wsdisplay_set_cons_kbd in machdep.c is stepping on the information used 
in the deferred processing. By eliminating the hack the data isn't 
getting trashed and the new deferred processing code in wscons works 
correctly creating the proper associations between the console keyboard 
and display.

This still doesn't fix the problem of being able to use the USB keyboard 
after the system displays the login prompt though.  It appears that the 
USB keyboard interrupts are enabled during boot as evidenced by the 
messages "ignored interrupt while polling" when the system is asking for 
the boot device.  However once the system comes up and prompts for user 
login the USB keyboard is dead.  The USB doesn't respond to 
disconnect/connect interrupts either as it does if the system is brought 
up with an ADB keyboard.  It appears this remaining problem is due to 
interrupts being disabled on the USB, probably due to some timing error 
during initialization.

Can someone verify that the call in machdep.c to wsdisplay_set_cons_kbd 
is no longer needed and remove it?  Does anyone have any ideas on the USB 
interrupt problem?

Thanks,
-bob