From: eric@eukrea.com (Eric Bénard)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 5/8] serial/imx.c: fix suspend/resume
Date: Thu, 27 May 2010 08:33:17 +0200 [thread overview]
Message-ID: <1274942000-3580-5-git-send-email-eric@eukrea.com> (raw)
In-Reply-To: <1274942000-3580-4-git-send-email-eric@eukrea.com>
* when uart is used as a kernel's console, its baudrate is wrong
after resume :
when resuming, serial_core call set_termios which fails to
get the right baudrate.
Signed-off-by: Eric B?nard <eric@eukrea.com>
---
drivers/serial/imx.c | 16 ++++++++++++++++
1 files changed, 16 insertions(+), 0 deletions(-)
diff --git a/drivers/serial/imx.c b/drivers/serial/imx.c
index eacb588..936f810 100644
--- a/drivers/serial/imx.c
+++ b/drivers/serial/imx.c
@@ -1020,6 +1020,17 @@ imx_verify_port(struct uart_port *port, struct serial_struct *ser)
return ret;
}
+static void
+imx_suspend(struct uart_port *port, unsigned int state, unsigned int oldstate)
+{
+ struct imx_port *sport = (struct imx_port *)port;
+
+ if (!state)
+ clk_enable(sport->clk);
+ else
+ clk_disable(sport->clk);
+}
+
static struct uart_ops imx_pops = {
.tx_empty = imx_tx_empty,
.set_mctrl = imx_set_mctrl,
@@ -1037,6 +1048,7 @@ static struct uart_ops imx_pops = {
.request_port = imx_request_port,
.config_port = imx_config_port,
.verify_port = imx_verify_port,
+ .pm = imx_suspend,
};
static struct imx_port *imx_ports[UART_NR];
@@ -1207,6 +1219,7 @@ static struct uart_driver imx_reg = {
.cons = IMX_CONSOLE,
};
+#ifdef CONFIG_PM
static int serial_imx_suspend(struct platform_device *dev, pm_message_t state)
{
struct imx_port *sport = platform_get_drvdata(dev);
@@ -1226,6 +1239,7 @@ static int serial_imx_resume(struct platform_device *dev)
return 0;
}
+#endif
static int serial_imx_probe(struct platform_device *pdev)
{
@@ -1343,8 +1357,10 @@ static struct platform_driver serial_imx_driver = {
.probe = serial_imx_probe,
.remove = serial_imx_remove,
+#ifdef CONFIG_PM
.suspend = serial_imx_suspend,
.resume = serial_imx_resume,
+#endif
.driver = {
.name = "imx-uart",
.owner = THIS_MODULE,
--
1.6.3.3
next prev parent reply other threads:[~2010-05-27 6:33 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-05-27 6:33 [PATCH v2 1/8] i.MX27: add suspend to RAM support Eric Bénard
2010-05-27 6:33 ` [PATCH v2 2/8] mxc_nand: fix PM Eric Bénard
2010-05-27 6:33 ` [PATCH v2 3/8] imx_keypad: add PM support Eric Bénard
2010-05-27 6:33 ` [PATCH v2 4/8] eukrea_mbimx27: update keyboard platform data Eric Bénard
2010-05-27 6:33 ` Eric Bénard [this message]
2010-05-27 6:33 ` [PATCH v2 6/8] serial/imx: drvdata is sport and not &sport->port Eric Bénard
2010-05-27 6:33 ` [PATCH v2 7/8] net/fec: fix pm to survive to suspend/resume Eric Bénard
2010-05-27 6:33 ` [PATCH v2 8/8] imxfb: fix PM Eric Bénard
2010-05-27 10:37 ` [PATCH v2 7/8] net/fec: fix pm to survive to suspend/resume Sergei Shtylyov
2010-05-27 14:19 ` [PATCH v3] " Eric Bénard
2010-05-27 17:09 ` Fabio Estevam
2010-05-27 17:53 ` [PATCH] " Eric Bénard
2010-05-29 7:15 ` David Miller
2010-05-29 20:04 ` [PATCH v2] " Eric Bénard
2010-06-02 13:13 ` David Miller
2010-05-29 12:23 ` [PATCH v2 3/8] imx_keypad: add PM support Alberto Panizzo
2010-05-30 8:51 ` [PATCH] " Eric Bénard
2010-06-02 8:02 ` Dmitry Torokhov
2010-05-27 17:55 ` [PATCH] mxc_nand: fix PM Eric Bénard
2010-06-14 7:07 ` Eric Bénard
2010-06-29 6:41 ` Artem Bityutskiy
2010-07-01 3:47 ` Artem Bityutskiy
2010-06-14 8:43 ` Uwe Kleine-König
2010-05-27 14:13 ` [PATCH v3] i.MX27: add suspend to RAM support Eric Bénard
2010-05-27 19:43 ` Russell King - ARM Linux
2010-05-27 20:06 ` Eric Bénard
2010-05-27 20:16 ` Russell King - ARM Linux
2010-05-27 20:48 ` [PATCH v4] " Eric Bénard
2010-05-27 20:54 ` [PATCH v3] " Eric Bénard
2010-05-27 21:46 ` Russell King - ARM Linux
2010-06-01 19:57 ` [PATCH v5] " Eric Bénard
2010-06-03 8:28 ` Sascha Hauer
2010-05-27 21:13 ` [PATCH v3] " Wolfram Sang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1274942000-3580-5-git-send-email-eric@eukrea.com \
--to=eric@eukrea.com \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).