diff options
author | Dominik Brodowski <linux@dominikbrodowski.net> | 2010-01-02 14:14:23 +0100 |
---|---|---|
committer | Dominik Brodowski <linux@dominikbrodowski.net> | 2010-01-17 18:30:12 +0100 |
commit | 88b060d6c03fcb9e4d2018b4349954c4242a5c7f (patch) | |
tree | 34954c1b7f1d4d978cae56ee40a9ab57829dccf2 /include/pcmcia | |
parent | pcmcia: cleanup pccard_validate_cis() (diff) | |
download | linux-88b060d6c03fcb9e4d2018b4349954c4242a5c7f.tar.xz linux-88b060d6c03fcb9e4d2018b4349954c4242a5c7f.zip |
pcmcia: improve check for same card in slot after resume
During a suspend/resume cycle, an user may change the card in the
PCMCIA/CardBus slot. The pcmcia_core can at least look at the
socket state to check whether it is the same.
For PCMCIA devices, move the detection and handling of such a
change to ds.c.
For CardBus devices, the PCI hotplug interface doesn't offer a "rescan"
facility which also _removes_ devices no longer to be found behind a
bridge. Therefore, remove and re-add all devices unconditionally.
CC: Jesse Barnes <jbarnes@virtuousgeek.org>
CC: Linus Torvalds <torvalds@linux-foundation.org>
Tested-by: Wolfram Sang <w.sang@pengutronix.de>
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Diffstat (limited to 'include/pcmcia')
-rw-r--r-- | include/pcmcia/ss.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/pcmcia/ss.h b/include/pcmcia/ss.h index cbfba885eb85..b0ebd11130cc 100644 --- a/include/pcmcia/ss.h +++ b/include/pcmcia/ss.h @@ -137,6 +137,7 @@ struct pcmcia_socket { spinlock_t lock; socket_state_t socket; u_int state; + u_int suspended_state; /* state before suspend */ u_short functions; u_short lock_count; pccard_mem_map cis_mem; |