This driver is for non-hot-pluggable hardware. Therefore, if the hardware isn't present, we want to return -ENODEV so a module load will fail. We previously returned "result" from the acpi_bus_register_driver() call. Registering the driver usually succeeds even if no devices are present, because the ACPI core allows you to load a driver before a device is hot-added. Someday the kernel will expose enough information so user-space can tell what ACPI drivers should be loaded. But the kernel doesn't do that yet, so distros have to load this driver always and rely on the -ENODEV causing the load to fail if the hardware isn't found. Signed-off-by: Bjorn Helgaas <bjorn.helgaas@xxxxxx> Index: work-1/drivers/acpi/asus_acpi.c =================================================================== --- work-1.orig/drivers/acpi/asus_acpi.c 2006-10-24 15:35:24.000000000 -0600 +++ work-1/drivers/acpi/asus_acpi.c 2006-10-24 15:37:54.000000000 -0600 @@ -1367,7 +1367,7 @@ if (!asus_hotk_found) { acpi_bus_unregister_driver(&asus_hotk_driver); remove_proc_entry(PROC_ASUS, acpi_root_dir); - return result; + return -ENODEV; } return 0; - To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html