Commit a3377f2f authored by Patrick Mochel's avatar Patrick Mochel

ACPI: remove the rest of the explicit init function calls and move them

into the various files and make them initcalls.
parent e9a39153
......@@ -32,7 +32,7 @@ obj-$(CONFIG_ACPI_INTERPRETER) += osl.o utils.o \
#
# ACPI Bus and Device Drivers
#
obj-$(CONFIG_ACPI_BUS) += bus.o scan.o
obj-$(CONFIG_ACPI_BUS) += bus.o
obj-$(CONFIG_ACPI_AC) += ac.o
obj-$(CONFIG_ACPI_BATTERY) += battery.o
obj-$(CONFIG_ACPI_BUTTON) += button.o
......@@ -47,5 +47,6 @@ obj-$(CONFIG_ACPI_DEBUG) += debug.o
obj-$(CONFIG_ACPI_SLEEP) += sleep.o
obj-$(CONFIG_ACPI_NUMA) += numa.o
obj-$(CONFIG_ACPI_TOSHIBA) += toshiba_acpi.o
obj-$(CONFIG_ACPI_BUS) += scan.o
include $(TOPDIR)/Rules.make
......@@ -123,11 +123,7 @@
#define ACPI_EC_FILE_INFO "info"
#ifdef CONFIG_ACPI_EC
int acpi_ec_ecdt_probe (void);
int acpi_ec_init (void);
void acpi_ec_exit (void);
#endif
......@@ -159,8 +155,6 @@ void acpi_ec_exit (void);
#define ACPI_PCI_ROOT_DRIVER_NAME "ACPI PCI Root Bridge Driver"
#define ACPI_PCI_ROOT_DEVICE_NAME "PCI Root Bridge"
int acpi_pci_root_init (void);
void acpi_pci_root_exit (void);
void acpi_pci_get_translations (acpi_pci_id* id, u64* mem_tra, u64* io_tra);
/* ACPI PCI Interrupt Link (pci_link.c) */
......@@ -174,8 +168,6 @@ void acpi_pci_get_translations (acpi_pci_id* id, u64* mem_tra, u64* io_tra);
int acpi_pci_link_check (void);
int acpi_pci_link_get_irq (acpi_handle handle, int index);
int acpi_pci_link_init (void);
void acpi_pci_link_exit (void);
/* ACPI PCI Interrupt Routing (pci_irq.c) */
......@@ -210,9 +202,6 @@ int acpi_pci_bind_root (struct acpi_device *device, acpi_pci_id *id, struct pci_
int acpi_power_get_inferred_state (struct acpi_device *device);
int acpi_power_transition (struct acpi_device *device, int state);
int acpi_power_init (void);
void acpi_power_exit (void);
#endif
......
......@@ -672,18 +672,6 @@ acpi_bus_init (void)
}
acpi_root_dir = acpi_device_dir(acpi_root);
/*
* Install drivers required for proper enumeration of the
* ACPI namespace.
*/
acpi_power_init(); /* ACPI Bus Power Management */
#ifdef CONFIG_ACPI_EC
acpi_ec_init(); /* ACPI Embedded Controller */
#endif
#ifdef CONFIG_ACPI_PCI
acpi_pci_link_init(); /* ACPI PCI Interrupt Link */
acpi_pci_root_init(); /* ACPI PCI Root Bridge */
#endif
return_VALUE(0);
/* Mimic structured exception handling */
......
......@@ -781,13 +781,15 @@ acpi_ec_ecdt_probe (void)
}
int __init
acpi_ec_init (void)
static int __init acpi_ec_init (void)
{
int result = 0;
ACPI_FUNCTION_TRACE("acpi_ec_init");
if (acpi_disabled)
return_VALUE(0);
result = acpi_bus_register_driver(&acpi_ec_driver);
if (result < 0) {
remove_proc_entry(ACPI_EC_CLASS, acpi_root_dir);
......@@ -797,6 +799,8 @@ acpi_ec_init (void)
return_VALUE(0);
}
subsys_initcall(acpi_ec_init);
void __exit
acpi_ec_ecdt_exit (void)
{
......
......@@ -567,11 +567,13 @@ acpi_pci_link_remove (
}
int __init
acpi_pci_link_init (void)
static int __init acpi_pci_link_init (void)
{
ACPI_FUNCTION_TRACE("acpi_pci_link_init");
if (acpi_disabled)
return_VALUE(0);
acpi_link.count = 0;
INIT_LIST_HEAD(&acpi_link.entries);
......@@ -580,3 +582,5 @@ acpi_pci_link_init (void)
return_VALUE(0);
}
subsys_initcall(acpi_pci_link_init);
......@@ -316,11 +316,13 @@ acpi_pci_root_remove (
}
int __init
acpi_pci_root_init (void)
static int __init acpi_pci_root_init (void)
{
ACPI_FUNCTION_TRACE("acpi_pci_root_init");
if (acpi_disabled)
return_VALUE(0);
/* DEBUG:
acpi_dbg_layer = ACPI_PCI_COMPONENT;
acpi_dbg_level = 0xFFFFFFFF;
......@@ -334,13 +336,5 @@ acpi_pci_root_init (void)
return_VALUE(0);
}
subsys_initcall(acpi_pci_root_init);
void __exit
acpi_pci_root_exit (void)
{
ACPI_FUNCTION_TRACE("acpi_pci_root_exit");
acpi_bus_unregister_driver(&acpi_pci_root_driver);
return_VOID;
}
......@@ -570,13 +570,15 @@ acpi_power_remove (
}
int __init
acpi_power_init (void)
static int __init acpi_power_init (void)
{
int result = 0;
ACPI_FUNCTION_TRACE("acpi_power_init");
if (acpi_disabled)
return_VALUE(0);
INIT_LIST_HEAD(&acpi_power_resource_list);
result = acpi_bus_register_driver(&acpi_power_driver);
......@@ -588,19 +590,5 @@ acpi_power_init (void)
return_VALUE(0);
}
subsys_initcall(acpi_power_init);
void __exit
acpi_power_exit (void)
{
int result = 0;
ACPI_FUNCTION_TRACE("acpi_power_exit");
/* TBD: Empty acpi_power_resource_list */
result = acpi_bus_unregister_driver(&acpi_power_driver);
if (!result)
remove_proc_entry(ACPI_POWER_CLASS, acpi_root_dir);
return_VOID;
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment