Subject: port-i386/10306: pckbc at pnpbios can succeed partially, causing hosage.
To: None <gnats-bugs@gnats.netbsd.org>
From: John Hawkinson <jhawk@mit.edu>
List: netbsd-bugs
Date: 06/07/2000 02:07:13
>Number:         10306
>Category:       port-i386
>Synopsis:       pckbc at pnpbios can succeed partially, causing hosage.
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    port-i386-maintainer
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Jun 07 02:08:00 PDT 2000
>Closed-Date:
>Last-Modified:
>Originator:     John Hawkinson
>Release:        3 Jun 2000
>Organization:
MIT
>Environment:
	
System: NetBSD zorkmid.mit.edu 1.4Z NetBSD 1.4Z (ZORKMID-$Revision: 1.12 $) #169: Mon Jun 5 23:09:18 EDT 2000 jhawk@zorkmid.mit.edu:/usr/local/current-src/sys/arch/i386/compile/ZORKMID i386


>Description:

	With Jason's recent addition to GENERIC of

#pckbc*		at pnpbios? index ?	# PC keyboard/mouse controller

	My Sony VAIO loses in more interesting ways.
It appears that PNPBIOS pckbc attachment requires two pnpbios indices,
one for the regular keyboard slot and one for the "aux" slot. The latter
happens to cause my Vaio to spontaneously reboot (sigh).

	If pnpbios is configured to exclude the reboot-causing pnpbios
index, then the boot appears to be normal, however the console
keyboard is non-functional. It hasn't been convenient to test this
with a serial console, so I'm not certain if pckbd0 is attaching to
pckbc0.

	In any case, I get a machine with no working keyboard.

	I'm somewhat at a loss (failure to understand something
in the autoconfig system?) as to why pckbc0 does not attach
on isa0 as normal in this case. Does it have to do with the multiple
required attachments of pckbc? at pnpbios?

>How-To-Repeat:

Here are the kernel probe messages when "pckbc? at pnpbios?" is
configured:

pnpbios0: getting info for index 6
PNP0303 (static): type 0x09 subtype 0x00 dpi 0x00 attr 0x0003:
PNP0303: allocated config scan:
	tag io flags 01 min 0060 max 0060 align 0x01 len 0x01
	tag io flags 01 min 0064 max 0064 align 0x01 len 0x01
	tag irq flags 01 mask 0002
	tag end cksum 00
	possible config scan:
	tag end cksum 00
	compat id scan:
	tag end cksum 00
PNP0303 (dynamic): type 0x09 subtype 0x00 dpi 0x00 attr 0x0003:
PNP0303: allocated config scan:
	tag io flags 01 min 0060 max 0060 align 0x01 len 0x01
	tag io flags 01 min 0064 max 0064 align 0x01 len 0x01
	tag irq flags 01 mask 0002
	tag end cksum 00
	possible config scan:
	tag end cksum 00
	compat id scan:
	tag end cksum 00
pckbc1 at pnpbios0 index 6 (PNP0303): kbd port
pnpbios0: getting info for index 20
PNP0F13 (static): type 0x09 subtype 0x02 dpi 0x00 attr 0x0088:
PNP0F13: allocated config scan:
	tag irq flags 01 mask 1000
	tag end cksum 00
	possible config scan:
	tag irq flags 01 mask 1000
	tag end cksum 00
	compat id scan:
	tag end cksum 00

>Fix:
	workaround:
	  Don't configure "pckbc? at pnpbios?", and don't make it the default
	  in 1.5.
>Release-Note:
>Audit-Trail:
>Unformatted: