atkbc not loaded with ACPI enabled in 9.0

aconnolly08 at aconnolly08 at
Sat Jan 21 05:11:56 UTC 2012

--- On Wed, 2012/1/18, John Baldwin <jhb at> wrote:

On Friday, January 13, 2012 10:27:13 pm aconnolly08 at wrote:
> Please try this patch:
> Index: sys/dev/atkbdc/atkbdc_isa.c
> ===================================================================
> --- atkbdc_isa.c    (revision 230009)
> +++ atkbdc_isa.c    (working copy)
> @@ -87,6 +87,7 @@ static driver_t atkbdc_isa_driver = {
>  static struct isa_pnp_id atkbdc_ids[] = {
>      { 0x0303d041, "Keyboard controller (i8042)" },    /* PNP0303 */
> +    { 0x0320d041, "Keyboard controller (i8042)" },    /* PNP0320 */
>      { 0 }
>  };
> -- 
> John Baldwin
> _______________________________________________
> freebsd-current at mailing list
> To unsubscribe, send any mail to "freebsd-current-unsubscribe at
> John,
> Thanks for your help, but that patch doesn't appear to address the problem. 
I edited the atkbdc_isa.c file as you instructed, rebuilt and installed my 
kernel, but my integrated keyboard remains unresponsive with ACPI enabled.
> Here's the new output of dmesg -a -ur -vr
> Perhaps I was supposed to remove PNP0303 support?

No, the goal was to get atkbdc to try to attach to PNP0320 devices since those 
have your keyboard I/O ports.  Can you add some printfs to atkbdc_isa_probe() 
to see how many times it is getting past the ID check, and how far along it 
gets in each cases (i.e. which failure case causes the probe routine to return 
an error)?

John Baldwin


I added some printfs to the isa_probe() function to see how far it was getting. The function is called many times as you can see in the dmesg, but mostly it exits at the PnP ID check with ENXIO.

At one point it gets further, but still exits with ENXIO when port0 is found to be NULL.

Any suggestions for further investigation?

edited function
dmesg -a

More information about the freebsd-current mailing list