[PATCH] acpi: remove dock event handling from ibm_acpi
authorKristen Accardi <kristen.c.accardi@intel.com>
Fri, 24 Feb 2006 01:56:06 +0000 (17:56 -0800)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 23 Mar 2006 22:35:15 +0000 (14:35 -0800)
Remove dock station support from ibm_acpi by default.  This support has
been put into acpiphp instead.  Allow ibm_acpi to continue to provide
docking station support via config option for laptops/docking stations
that are not supported by acpiphp.

Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/acpi/Kconfig
drivers/acpi/ibm_acpi.c

index 33e2ca8..82710ae 100644 (file)
@@ -205,6 +205,18 @@ config ACPI_IBM
 
          If you have an IBM ThinkPad laptop, say Y or M here.
 
+config ACPI_IBM_DOCK
+       bool "Legacy Docking Station Support"
+       depends on ACPI_IBM
+       default n
+       ---help---
+         Allows the ibm_acpi driver to handle docking station events.
+         This support is obsoleted by CONFIG_HOTPLUG_PCI_ACPI.  It will
+         allow locking and removing the laptop from the docking station,
+         but will not properly connect PCI devices.
+
+         If you are not sure, say N here.
+
 config ACPI_TOSHIBA
        tristate "Toshiba Laptop Extras"
        depends on X86
index 5cc0903..262b1f4 100644 (file)
@@ -160,13 +160,13 @@ IBM_HANDLE(cmos, root, "\\UCMS",  /* R50, R50e, R50p, R51, T4x, X31, X40 */
           "\\CMOS",            /* A3x, G4x, R32, T23, T30, X22-24, X30 */
           "\\CMS",             /* R40, R40e */
     );                         /* all others */
-
+#ifdef CONFIG_ACPI_IBM_DOCK
 IBM_HANDLE(dock, root, "\\_SB.GDCK",   /* X30, X31, X40 */
           "\\_SB.PCI0.DOCK",   /* 600e/x,770e,770x,A2xm/p,T20-22,X20-21 */
           "\\_SB.PCI0.PCI1.DOCK",      /* all others */
           "\\_SB.PCI.ISA.SLCE",        /* 570 */
     );                         /* A21e,G4x,R30,R31,R32,R40,R40e,R50e */
-
+#endif
 IBM_HANDLE(bay, root, "\\_SB.PCI.IDE.SECN.MAST",       /* 570 */
           "\\_SB.PCI0.IDE0.IDES.IDSM", /* 600e/x, 770e, 770x */
           "\\_SB.PCI0.IDE0.SCND.MSTR", /* all others */
@@ -844,7 +844,7 @@ static int _sta(acpi_handle handle)
 
        return status;
 }
-
+#ifdef CONFIG_ACPI_IBM_DOCK
 #define dock_docked() (_sta(dock_handle) & 1)
 
 static int dock_read(char *p)
@@ -907,6 +907,7 @@ static void dock_notify(struct ibm_struct *ibm, u32 event)
                acpi_bus_generate_event(ibm->device, event, 0); /* unknown */
        }
 }
+#endif
 
 static int bay_status_supported;
 static int bay_status2_supported;
@@ -1574,6 +1575,7 @@ static struct ibm_struct ibms[] = {
         .read = light_read,
         .write = light_write,
         },
+#ifdef CONFIG_ACPI_IBM_DOCK
        {
         .name = "dock",
         .read = dock_read,
@@ -1589,6 +1591,7 @@ static struct ibm_struct ibms[] = {
         .handle = &pci_handle,
         .type = ACPI_SYSTEM_NOTIFY,
         },
+#endif
        {
         .name = "bay",
         .init = bay_init,
@@ -1880,7 +1883,9 @@ IBM_PARAM(hotkey);
 IBM_PARAM(bluetooth);
 IBM_PARAM(video);
 IBM_PARAM(light);
+#ifdef CONFIG_ACPI_IBM_DOCK
 IBM_PARAM(dock);
+#endif
 IBM_PARAM(bay);
 IBM_PARAM(cmos);
 IBM_PARAM(led);
@@ -1927,7 +1932,9 @@ static int __init acpi_ibm_init(void)
        IBM_HANDLE_INIT(hkey);
        IBM_HANDLE_INIT(lght);
        IBM_HANDLE_INIT(cmos);
+#ifdef CONFIG_ACPI_IBM_DOCK
        IBM_HANDLE_INIT(dock);
+#endif
        IBM_HANDLE_INIT(pci);
        IBM_HANDLE_INIT(bay);
        if (bay_handle)