]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
thinkpad-acpi: disable broken bay and dock subdrivers
authorHenrique de Moraes Holschuh <hmh@hmh.eng.br>
Sat, 1 Aug 2009 15:04:17 +0000 (12:04 -0300)
committerGreg Kroah-Hartman <gregkh@suse.de>
Sun, 16 Aug 2009 21:18:33 +0000 (14:18 -0700)
commit 550e7fd8afb7664ae7cedb398c407694e2bf7d3c upstream.

Currently, the ThinkPad-ACPI bay and dock drivers are completely
broken, and cause a NULL pointer derreference in kernel mode (and,
therefore, an OOPS) when they try to issue events (i.e. on dock,
undock, bay ejection, etc).

OTOH, the standard ACPI dock driver can handle the hotplug bays and
docks of the ThinkPads just fine (including batteries) as of 2.6.27.
In fact, it does a much better job of it than thinkpad-acpi ever did.

It is just not worth the hassle to find a way to fix this crap without
breaking the (deprecated) thinkpad-acpi dock/bay ABI.  This is old,
deprecated code that sees little testing or use.

As a quick fix suitable for -stable backports, mark the thinkpad-acpi
bay and dock subdrivers as BROKEN in Kconfig.  The dead code will be
removed by a later patch.

This fixes bugzilla #13669, and should be applied to 2.6.27 and later.

Signed-off-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Reported-by: Joerg Platte <jplatte@naasa.net>
Signed-off-by: Len Brown <len.brown@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/platform/x86/Kconfig

index 284ebaca6e454797622c136213a7e05b48e1d46e..0b159b53068ca84dc3c74ff413e35dc6d694fe9f 100644 (file)
@@ -265,6 +265,7 @@ config THINKPAD_ACPI_DOCK
        bool "Legacy Docking Station Support"
        depends on THINKPAD_ACPI
        depends on ACPI_DOCK=n
+       depends on BROKEN
        default n
        ---help---
          Allows the thinkpad_acpi driver to handle docking station events.
@@ -278,7 +279,8 @@ config THINKPAD_ACPI_DOCK
 config THINKPAD_ACPI_BAY
        bool "Legacy Removable Bay Support"
        depends on THINKPAD_ACPI
-       default y
+       depends on BROKEN
+       default n
        ---help---
          Allows the thinkpad_acpi driver to handle removable bays.  It will
          electrically disable the device in the bay, and also generate