static int cmpc_init(void) { int r; r = acpi_bus_register_driver(&cmpc_keys_acpi_driver); if (r) goto failed_keys; r = acpi_bus_register_driver(&cmpc_ipml_acpi_driver); if (r) goto failed_bl; r = acpi_bus_register_driver(&cmpc_tablet_acpi_driver); if (r) goto failed_tablet; r = acpi_bus_register_driver(&cmpc_accel_acpi_driver); if (r) goto failed_accel; return r; failed_accel: acpi_bus_unregister_driver(&cmpc_tablet_acpi_driver); failed_tablet: acpi_bus_unregister_driver(&cmpc_ipml_acpi_driver); failed_bl: acpi_bus_unregister_driver(&cmpc_keys_acpi_driver); failed_keys: return r; }
static int __init acpi_motherboard_init(void) { acpi_bus_register_driver(&acpi_motherboard_driver1); acpi_bus_register_driver(&acpi_motherboard_driver2); /* * Guarantee motherboard IO reservation first * This module must run after scan.c */ if (!acpi_disabled) acpi_reserve_resources(); return 0; }
static int __init acpi_memory_device_init(void) { int result; acpi_status status; ACPI_FUNCTION_TRACE("acpi_memory_device_init"); result = acpi_bus_register_driver(&acpi_memory_device_driver); if (result < 0) return_VALUE(-ENODEV); status = acpi_walk_namespace(ACPI_TYPE_DEVICE, ACPI_ROOT_OBJECT, ACPI_UINT32_MAX, acpi_memory_register_notify_handler, NULL, NULL); if (ACPI_FAILURE(status)) { ACPI_DEBUG_PRINT((ACPI_DB_ERROR, "walk_namespace failed\n")); acpi_bus_unregister_driver(&acpi_memory_device_driver); return_VALUE(-ENODEV); } return_VALUE(0); }
/* fjes_init_module - Driver Registration Routine */ static int __init fjes_init_module(void) { bool found = false; int result; acpi_walk_namespace(ACPI_TYPE_DEVICE, ACPI_ROOT_OBJECT, ACPI_UINT32_MAX, acpi_find_extended_socket_device, NULL, &found, NULL); if (!found) return -ENODEV; pr_info("%s - version %s - %s\n", fjes_driver_string, fjes_driver_version, fjes_copyright); fjes_dbg_init(); result = platform_driver_register(&fjes_driver); if (result < 0) { fjes_dbg_exit(); return result; } result = acpi_bus_register_driver(&fjes_acpi_driver); if (result < 0) goto fail_acpi_driver; return 0; fail_acpi_driver: platform_driver_unregister(&fjes_driver); fjes_dbg_exit(); return result; }
static int __init toshiba_acpi_init(void) { int ret; /* */ if (wmi_has_guid(TOSHIBA_WMI_EVENT_GUID)) return -ENODEV; toshiba_proc_dir = proc_mkdir(PROC_TOSHIBA, acpi_root_dir); if (!toshiba_proc_dir) { pr_err("Unable to create proc dir " PROC_TOSHIBA "\n"); return -ENODEV; } ret = acpi_bus_register_driver(&toshiba_acpi_driver); if (ret) { pr_err("Failed to register ACPI driver: %d\n", ret); remove_proc_entry(PROC_TOSHIBA, acpi_root_dir); } return ret; }
static int __init alsa_card_mpu401_init(void) { int dev; #ifdef USE_ACPI_PNP if (acpi_bus_register_driver(&snd_mpu401_acpi_driver) >= 0) acpi_driver_registered = 1; #endif for (dev = 0; dev < SNDRV_CARDS; dev++) { if (!enable[dev]) continue; #ifdef USE_ACPI_PNP if (acpipnp[dev] && acpi_driver_registered) continue; #endif snd_card_mpu401_probe(dev, NULL); } if (!cards) { #ifdef MODULE printk(KERN_ERR "MPU-401 device not found or device busy\n"); #endif #ifdef USE_ACPI_PNP if (acpi_driver_registered) acpi_bus_unregister_driver(&snd_mpu401_acpi_driver); #endif return -ENODEV; } return 0; }
static int __init toshiba_acpi_init(void) { int ret; /* * Machines with this WMI guid aren't supported due to bugs in * their AML. This check relies on wmi initializing before * toshiba_acpi to guarantee guids have been identified. */ if (wmi_has_guid(TOSHIBA_WMI_EVENT_GUID)) return -ENODEV; toshiba_proc_dir = proc_mkdir(PROC_TOSHIBA, acpi_root_dir); if (!toshiba_proc_dir) { pr_err("Unable to create proc dir " PROC_TOSHIBA "\n"); return -ENODEV; } ret = acpi_bus_register_driver(&toshiba_acpi_driver); if (ret) { pr_err("Failed to register ACPI driver: %d\n", ret); remove_proc_entry(PROC_TOSHIBA, acpi_root_dir); } return ret; }
static int __init atlas_acpi_init(void) { if (acpi_disabled) return -ENODEV; return acpi_bus_register_driver(&atlas_acpi_driver); }
static int __init acpi_processor_init(void) { int result = 0; ACPI_FUNCTION_TRACE("acpi_processor_init"); memset(&processors, 0, sizeof(processors)); memset(&errata, 0, sizeof(errata)); acpi_processor_dir = proc_mkdir(ACPI_PROCESSOR_CLASS, acpi_root_dir); if (!acpi_processor_dir) return_VALUE(0); acpi_processor_dir->owner = THIS_MODULE; result = acpi_bus_register_driver(&acpi_processor_driver); if (result < 0) { remove_proc_entry(ACPI_PROCESSOR_CLASS, acpi_root_dir); return_VALUE(0); } acpi_processor_install_hotplug_notify(); acpi_thermal_cpufreq_init(); acpi_processor_ppc_init(); return_VALUE(0); }
static int __init acpi_pad_init(void) { power_saving_mwait_init(); if (power_saving_mwait_eax == 0) return -EINVAL; return acpi_bus_register_driver(&acpi_pad_driver); }
int xen_stub_processor_init(void) { if (!xen_initial_domain()) return -ENODEV; /* just reserve space for Xen, block native driver loaded */ return acpi_bus_register_driver(&xen_stub_processor_driver); }
static int __init acpi_processor_init(void) { int result = 0; if (acpi_disabled) return 0; memset(&errata, 0, sizeof(errata)); #ifdef CONFIG_SMP if (ACPI_FAILURE(acpi_get_table(ACPI_SIG_MADT, 0, (struct acpi_table_header **)&madt))) madt = NULL; #endif #ifdef CONFIG_ACPI_PROCFS acpi_processor_dir = proc_mkdir(ACPI_PROCESSOR_CLASS, acpi_root_dir); if (!acpi_processor_dir) return -ENOMEM; #endif /* * Check whether the system is DMI table. If yes, OSPM * should not use mwait for CPU-states. */ dmi_check_system(processor_idle_dmi_table); if (!cpuidle_register_driver(&acpi_idle_driver)) { printk(KERN_DEBUG "ACPI: %s registered with cpuidle\n", acpi_idle_driver.name); } else { printk(KERN_DEBUG "ACPI: acpi_idle yielding to %s", cpuidle_get_driver()->name); } result = acpi_bus_register_driver(&acpi_processor_driver); if (result < 0) goto out_cpuidle; acpi_processor_install_hotplug_notify(); acpi_thermal_cpufreq_init(); acpi_processor_ppc_init(); acpi_processor_throttling_init(); return 0; out_cpuidle: cpuidle_unregister_driver(&acpi_idle_driver); #ifdef CONFIG_ACPI_PROCFS remove_proc_entry(ACPI_PROCESSOR_CLASS, acpi_root_dir); #endif return result; }
static int __init acpi_hed_init(void) { if (acpi_disabled) return -ENODEV; if (acpi_bus_register_driver(&acpi_hed_driver) < 0) return -ENODEV; return 0; }
static int __init acpi_fan_init(void) { int result = 0; result = acpi_bus_register_driver(&acpi_fan_driver); if (result < 0) return -ENODEV; return 0; }
static int __init als_init(void) { int result = 0; result = acpi_bus_register_driver(&als_driver); if (result < 0) { ACPI_DEBUG_PRINT((ACPI_DB_ERROR, "Error registering driver\n")); return -ENODEV; } return 0; }
static int __init toshiba_bt_rfkill_init(void) { int result; result = acpi_bus_register_driver(&toshiba_bt_rfkill_driver); if (result < 0) { ACPI_DEBUG_PRINT((ACPI_DB_ERROR, "Error registering driver\n")); return result; } return 0; }
int __init acpi_system_init (void) { int result = 0; ACPI_FUNCTION_TRACE("acpi_system_init"); result = acpi_bus_register_driver(&acpi_system_driver); if (result < 0) return_VALUE(-ENODEV); return_VALUE(0); }
int acpi_thermal_init (void) { int result = 0; ACPI_FUNCTION_TRACE("acpi_thermal_init"); result = acpi_bus_register_driver(&acpi_thermal_driver); if (result < 0) { return_VALUE(-ENODEV); } return_VALUE(0); }
static int __init acpi_power_meter_init(void) { int result; if (acpi_disabled) return -ENODEV; dmi_check_system(pm_dmi_table); result = acpi_bus_register_driver(&acpi_power_meter_driver); if (result < 0) return -ENODEV; return 0; }
static int __init atlas_acpi_init(void) { int result; if (acpi_disabled) return -ENODEV; result = acpi_bus_register_driver(&atlas_acpi_driver); if (result < 0) { printk(KERN_ERR "Atlas ACPI: Unable to register driver\n"); return -ENODEV; } return 0; }
static int __init acpi_processor_init(void) { int result = 0; memset(&errata, 0, sizeof(errata)); #ifdef CONFIG_SMP if (ACPI_FAILURE(acpi_get_table(ACPI_SIG_MADT, 0, (struct acpi_table_header **)&madt))) madt = NULL; #endif acpi_processor_dir = proc_mkdir(ACPI_PROCESSOR_CLASS, acpi_root_dir); if (!acpi_processor_dir) return -ENOMEM; acpi_processor_dir->owner = THIS_MODULE; /* * Check whether the system is DMI table. If yes, OSPM * should not use mwait for CPU-states. */ dmi_check_system(processor_idle_dmi_table); result = cpuidle_register_driver(&acpi_idle_driver); if (result < 0) goto out_proc; result = acpi_bus_register_driver(&acpi_processor_driver); if (result < 0) goto out_cpuidle; acpi_processor_install_hotplug_notify(); acpi_thermal_cpufreq_init(); acpi_processor_ppc_init(); acpi_processor_throttling_init(); return 0; out_cpuidle: cpuidle_unregister_driver(&acpi_idle_driver); out_proc: remove_proc_entry(ACPI_PROCESSOR_CLASS, acpi_root_dir); return result; }
static int __init hpwl_init(void) { int err; pr_info("Initializing HPQ6001 module\n"); err = acpi_bus_register_driver(&hpwl_driver); if (err) { pr_err("Unable to register HP wireless control driver.\n"); goto error_acpi_register; } return 0; error_acpi_register: return err; }
static int __init acpi_processor_init(void) { int result = 0; if (acpi_disabled) return 0; memset(&errata, 0, sizeof(errata)); #ifdef CONFIG_SMP if (ACPI_FAILURE(acpi_get_table(ACPI_SIG_MADT, 0, (struct acpi_table_header **)&madt))) madt = NULL; #endif #ifdef CONFIG_ACPI_PROCFS acpi_processor_dir = proc_mkdir(ACPI_PROCESSOR_CLASS, acpi_root_dir); if (!acpi_processor_dir) return -ENOMEM; #endif result = cpuidle_register_driver(&acpi_idle_driver); if (result < 0) goto out_proc; result = acpi_bus_register_driver(&acpi_processor_driver); if (result < 0) goto out_cpuidle; acpi_processor_install_hotplug_notify(); acpi_thermal_cpufreq_init(); acpi_processor_ppc_init(); acpi_processor_throttling_init(); return 0; out_cpuidle: cpuidle_unregister_driver(&acpi_idle_driver); out_proc: #ifdef CONFIG_ACPI_PROCFS remove_proc_entry(ACPI_PROCESSOR_CLASS, acpi_root_dir); #endif return result; }
static int __init acpi_thermal_init(void) { int result = 0; dmi_check_system(thermal_dmi_table); if (off) { printk(KERN_NOTICE "ACPI: thermal control disabled\n"); return -ENODEV; } result = acpi_bus_register_driver(&acpi_thermal_driver); if (result < 0) return -ENODEV; return 0; }
static int __init acpi_container_init(void) { int result = 0; int action = INSTALL_NOTIFY_HANDLER; result = acpi_bus_register_driver(&acpi_container_driver); if (result < 0) { return (result); } /* register notify handler to every container device */ acpi_walk_namespace(ACPI_TYPE_DEVICE, ACPI_ROOT_OBJECT, ACPI_UINT32_MAX, container_walk_namespace_cb, &action, NULL); return (0); }
static int __init xen_acpi_processor_init(void) { int result = 0; if (!xen_initial_domain()) return -ENODEV; /* unregister the stub which only used to reserve driver space */ xen_stub_processor_exit(); result = acpi_bus_register_driver(&xen_acpi_processor_driver); if (result < 0) { xen_stub_processor_init(); return result; } acpi_processor_install_hotplug_notify(); return 0; }
static int __init acpi_battery_init(void) { int result = 0; ACPI_FUNCTION_TRACE("acpi_battery_init"); acpi_battery_dir = proc_mkdir(ACPI_BATTERY_CLASS, acpi_root_dir); if (!acpi_battery_dir) return_VALUE(-ENODEV); acpi_battery_dir->owner = THIS_MODULE; result = acpi_bus_register_driver(&acpi_battery_driver); if (result < 0) { remove_proc_entry(ACPI_BATTERY_CLASS, acpi_root_dir); return_VALUE(-ENODEV); } return_VALUE(0); }
static int __init acpi_battery_init(void) { int result; if (acpi_disabled) return -ENODEV; acpi_battery_dir = acpi_lock_battery_dir(); if (!acpi_battery_dir) return -ENODEV; result = acpi_bus_register_driver(&acpi_battery_driver); if (result < 0) { acpi_unlock_battery_dir(acpi_battery_dir); return -ENODEV; } return 0; }
int __init acpi_fan_init (void) { int result = 0; ACPI_FUNCTION_TRACE("acpi_fan_init"); acpi_fan_dir = proc_mkdir(ACPI_FAN_CLASS, acpi_root_dir); if (!acpi_fan_dir) return_VALUE(-ENODEV); result = acpi_bus_register_driver(&acpi_fan_driver); if (result < 0) { remove_proc_entry(ACPI_FAN_CLASS, acpi_root_dir); return_VALUE(-ENODEV); } return_VALUE(0); }
static int __init acpi_fan_init(void) { int result = 0; #ifdef CONFIG_ACPI_PROCFS acpi_fan_dir = proc_mkdir(ACPI_FAN_CLASS, acpi_root_dir); if (!acpi_fan_dir) return -ENODEV; #endif result = acpi_bus_register_driver(&acpi_fan_driver); if (result < 0) { #ifdef CONFIG_ACPI_PROCFS remove_proc_entry(ACPI_FAN_CLASS, acpi_root_dir); #endif return -ENODEV; } return 0; }