diff options
| author | Tony Lindgren <tony@atomide.com> | 2010-05-20 11:07:23 -0700 |
|---|---|---|
| committer | Tony Lindgren <tony@atomide.com> | 2010-05-20 11:07:23 -0700 |
| commit | df760137ad3cbfa15ceed42478f81bff01b6e799 (patch) | |
| tree | be939c9d11094858d74141a4c62cb23f477754d8 /drivers/pcmcia/cs.c | |
| parent | 754b8e653412106ff613f4750b197f807fcd8347 (diff) | |
| parent | de997718b64df2f766736f23f8557da450b83a25 (diff) | |
Merge branch 'omap-boards' into omap-for-linus
Diffstat (limited to 'drivers/pcmcia/cs.c')
| -rw-r--r-- | drivers/pcmcia/cs.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/drivers/pcmcia/cs.c b/drivers/pcmcia/cs.c index 75ed866e695..c3383750e33 100644 --- a/drivers/pcmcia/cs.c +++ b/drivers/pcmcia/cs.c @@ -671,20 +671,22 @@ static int pccardd(void *__skt) socket_remove(skt); if (sysfs_events & PCMCIA_UEVENT_INSERT) socket_insert(skt); - if ((sysfs_events & PCMCIA_UEVENT_RESUME) && - !(skt->state & SOCKET_CARDBUS)) { - ret = socket_resume(skt); - if (!ret && skt->callback) - skt->callback->resume(skt); - } if ((sysfs_events & PCMCIA_UEVENT_SUSPEND) && !(skt->state & SOCKET_CARDBUS)) { if (skt->callback) ret = skt->callback->suspend(skt); else ret = 0; - if (!ret) + if (!ret) { socket_suspend(skt); + msleep(100); + } + } + if ((sysfs_events & PCMCIA_UEVENT_RESUME) && + !(skt->state & SOCKET_CARDBUS)) { + ret = socket_resume(skt); + if (!ret && skt->callback) + skt->callback->resume(skt); } if ((sysfs_events & PCMCIA_UEVENT_REQUERY) && !(skt->state & SOCKET_CARDBUS)) { |
