ACPI / PCI: Make pci_slot built-in only, not a module
authorJiang Liu <liuj97@gmail.com>
Fri, 18 Jan 2013 16:07:42 +0000 (00:07 +0800)
committerBjorn Helgaas <bhelgaas@google.com>
Fri, 15 Feb 2013 18:35:05 +0000 (11:35 -0700)
As discussed in thread at https://patchwork.kernel.org/patch/1946851/,
there's no value in supporting CONFIG_ACPI_PCI_SLOT=m any more.
So change Kconfig and code to only support building pci_slot as
built-in driver.

Signed-off-by: Jiang Liu <jiang.liu@huawei.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
drivers/acpi/Kconfig
drivers/acpi/internal.h
drivers/acpi/pci_slot.c
drivers/acpi/scan.c

index 38c5078..27fde5e 100644 (file)
@@ -308,7 +308,7 @@ config ACPI_DEBUG_FUNC_TRACE
          is about half of the penalty and is rarely useful.
 
 config ACPI_PCI_SLOT
-       tristate "PCI slot detection driver"
+       bool "PCI slot detection driver"
        depends on SYSFS
        default n
        help
@@ -317,9 +317,6 @@ config ACPI_PCI_SLOT
          i.e., segment/bus/device/function tuples, with physical slots in
          the system.  If you are unsure, say N.
 
-         To compile this driver as a module, choose M here:
-         the module will be called pci_slot.
-
 config X86_PM_TIMER
        bool "Power Management Timer Support" if EXPERT
        depends on X86
index e050254..7374cfc 100644 (file)
@@ -67,6 +67,11 @@ struct acpi_ec {
 
 extern struct acpi_ec *first_ec;
 
+#ifdef CONFIG_ACPI_PCI_SLOT
+void acpi_pci_slot_init(void);
+#else
+static inline void acpi_pci_slot_init(void) { }
+#endif
 int acpi_pci_root_init(void);
 int acpi_ec_init(void);
 int acpi_ec_ecdt_probe(void);
index d22585f..a7d7e77 100644 (file)
@@ -330,19 +330,8 @@ static struct dmi_system_id acpi_pci_slot_dmi_table[] __initdata = {
        {}
 };
 
-static int __init
-acpi_pci_slot_init(void)
+void __init acpi_pci_slot_init(void)
 {
        dmi_check_system(acpi_pci_slot_dmi_table);
        acpi_pci_register_driver(&acpi_pci_slot_driver);
-       return 0;
 }
-
-static void __exit
-acpi_pci_slot_exit(void)
-{
-       acpi_pci_unregister_driver(&acpi_pci_slot_driver);
-}
-
-module_init(acpi_pci_slot_init);
-module_exit(acpi_pci_slot_exit);
index 7c43bdc..236e476 100644 (file)
@@ -1687,6 +1687,7 @@ int __init acpi_scan_init(void)
 
        acpi_power_init();
        acpi_pci_root_init();
+       acpi_pci_slot_init();
 
        /*
         * Enumerate devices in the ACPI namespace.