Index: sys/dev/acpica/acpi_ec.c =================================================================== --- sys/dev/acpica/acpi_ec.c +++ sys/dev/acpica/acpi_ec.c @@ -346,7 +346,8 @@ static char *ec_ids[] = { "PNP0C09", NULL }; /* Check that this is a device and that EC is not disabled. */ - if (acpi_get_type(dev) != ACPI_TYPE_DEVICE || acpi_disabled("ec")) + if (acpi_get_type(dev) != ACPI_TYPE_DEVICE || acpi_disabled("ec") || + !ACPI_ID_PROBE(device_get_parent(dev), dev, ec_ids)) return (ENXIO); /* @@ -362,7 +363,7 @@ if (params != NULL) { ecdt = 1; ret = 0; - } else if (ACPI_ID_PROBE(device_get_parent(dev), dev, ec_ids)) { + } else { params = malloc(sizeof(struct acpi_ec_params), M_TEMP, M_WAITOK | M_ZERO); h = acpi_get_handle(dev);