mirror of
https://github.com/torvalds/linux.git
synced 2026-06-30 10:05:51 +02:00
swsusp is unable to suspend my machine (DTK FortisPro TOP-5A notebook) with kernel 2.6.17.5 because it's unable to suspend PNP device 00:16 (mouse). The problem is in PNP BIOS. pnp_bus_suspend() calls pnp_stop_dev() for the device if the device can be disabled according to pnp_can_disable(). The problem is that pnpbios_disable_resources() returns -EPERM if the device is not dynamic (!pnpbios_is_dynamic()) but insert_device() happily sets PNP_DISABLE capability/flag even if the device is not dynamic. So we try to disable non-dynamic devices which will fail. This patch prevents insert_device() from setting PNP_DISABLE if the device is not dynamic and fixes suspend on my system. Signed-off-by: Ondrej Zary <linux@rainbow-software.org> Cc: Pavel Machek <pavel@ucw.cz> Cc: "Rafael J. Wysocki" <rjw@sisk.pl> Cc: Bjorn Helgaas <bjorn.helgaas@hp.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> |
||
|---|---|---|
| .. | ||
| isapnp | ||
| pnpacpi | ||
| pnpbios | ||
| base.h | ||
| card.c | ||
| core.c | ||
| driver.c | ||
| interface.c | ||
| Kconfig | ||
| Makefile | ||
| manager.c | ||
| quirks.c | ||
| resource.c | ||
| support.c | ||
| system.c | ||