blob: 7c17e950ed62e28ada96c5e79c57f7225db1c185 [file] [log] [blame]
From stable-bounces@linux.kernel.org Tue Oct 17 04:20:54 2006
Date: Tue, 17 Oct 2006 13:19:40 +0200
From: Russell King <rmk+kernel@arm.linux.org.uk>
To: stable@kernel.org
Message-ID: <20061017111940.GC24505@nancy>
MIME-Version: 1.0
Content-Disposition: inline
Cc: Russell King <rmk@dyn-67.arm.linux.org.uk>, David Woodhouse <dwmw2@infradead.org>
Subject: SERIAL: Fix resume handling bug
Content-Type: text/plain; charset="us-ascii"
From: Russell King <rmk+kernel@arm.linux.org.uk>
Unfortunately, pcmcia_dev_present() returns false when a device is
suspended, so checking this on resume does not work too well. Omit
this test.
the backported patch below is already in fedora tree. -maks
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: maximilian attems <maks@sternwelten.at>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
---
drivers/serial/serial_cs.c | 12 +++++-------
1 file changed, 5 insertions(+), 7 deletions(-)
--- linux-2.6.18.1.orig/drivers/serial/serial_cs.c
+++ linux-2.6.18.1/drivers/serial/serial_cs.c
@@ -185,14 +185,12 @@ static int serial_suspend(struct pcmcia_
static int serial_resume(struct pcmcia_device *link)
{
- if (pcmcia_dev_present(link)) {
- struct serial_info *info = link->priv;
- int i;
+ struct serial_info *info = link->priv;
+ int i;
- for (i = 0; i < info->ndev; i++)
- serial8250_resume_port(info->line[i]);
- wakeup_card(info);
- }
+ for (i = 0; i < info->ndev; i++)
+ serial8250_resume_port(info->line[i]);
+ wakeup_card(info);
return 0;
}