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_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_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 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_processor_driver_init(void) { int result = 0; if (acpi_disabled) return 0; result = driver_register(&acpi_processor_driver); if (result < 0) return result; register_hotcpu_notifier(&acpi_cpu_notifier); acpi_thermal_cpufreq_init(); acpi_processor_ppc_init(); acpi_processor_throttling_init(); return 0; }
static int __init acpi_processor_init(void) { int result = 0; if (acpi_disabled) return 0; memset(&errata, 0, sizeof(errata)); result = acpi_bus_register_driver(&acpi_processor_driver); if (result < 0) return result; acpi_processor_install_hotplug_notify(); acpi_thermal_cpufreq_init(); acpi_processor_ppc_init(); acpi_processor_throttling_init(); return 0; }
static int __init acpi_processor_init(void) { int result = 0; if (acpi_disabled) return 0; memset(&errata, 0, sizeof(errata)); 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\n", 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); return result; }