From: Michael Trimarchi <trimarchimichael@yahoo.it>
To: linux-kernel@vger.kernel.org
Cc: Haavard Skinnemoen <hskinnemoen@atmel.com>
Subject: [PATCH] atmel serial reduce trasmitting window & code style patch
Date: Thu, 3 Apr 2008 10:39:06 +0200 (CEST) [thread overview]
Message-ID: <524838.25009.qm@web26206.mail.ukl.yahoo.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 182 bytes --]
Hi,
two more patches for atmel serial driver.
Regards
Michael
Inviato da Yahoo! Mail.
La casella di posta intelligente.
http://it.docs.yahoo.com/mail/overview/index.html
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 3607956876-coding-style-cleanup.patch --]
[-- Type: text/x-patch; name="coding-style-cleanup.patch", Size: 1749 bytes --]
Coding style clean-up patch.
Signed-off-by: michael <trimarchi@gandalf.sssup.it>
---
drivers/serial/atmel_serial.c | 14 +++++++-------
1 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/drivers/serial/atmel_serial.c b/drivers/serial/atmel_serial.c
index d57bf3e..9f58eb3 100644
--- a/drivers/serial/atmel_serial.c
+++ b/drivers/serial/atmel_serial.c
@@ -122,7 +122,7 @@ struct atmel_uart_char {
u16 ch;
};
-#define ATMEL_SERIAL_RINGSIZE 1024
+#define ATMEL_SERIAL_RINGSIZE 1024
/*
* We wrap our port structure around the generic uart_port.
@@ -394,8 +394,8 @@ static void atmel_rx_chars(struct uart_port *port)
/* clear error */
UART_PUT_CR(port, ATMEL_US_RSTSTA);
- if (status & ATMEL_US_RXBRK
- && !atmel_port->break_active) {
+ if (status & ATMEL_US_RXBRK &&
+ !atmel_port->break_active) {
atmel_port->break_active = 1;
UART_PUT_IER(port, ATMEL_US_RXBRK);
} else {
@@ -1394,8 +1394,8 @@ console_initcall(atmel_console_init);
*/
static int __init atmel_late_console_init(void)
{
- if (atmel_default_console_device
- && !(atmel_console.flags & CON_ENABLED))
+ if (atmel_default_console_device &&
+ !(atmel_console.flags & CON_ENABLED))
register_console(&atmel_console);
return 0;
@@ -1434,8 +1434,8 @@ static int atmel_serial_suspend(struct platform_device *pdev,
struct uart_port *port = platform_get_drvdata(pdev);
struct atmel_uart_port *atmel_port = to_atmel_uart_port(port);
- if (device_may_wakeup(&pdev->dev)
- && !at91_suspend_entering_slow_clock())
+ if (device_may_wakeup(&pdev->dev) &&
+ !at91_suspend_entering_slow_clock())
enable_irq_wake(port->irq);
else {
uart_suspend_port(&atmel_uart, port);
--
1.5.2.1.174.gcd03-dirty
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #3: 3362687731-atmel-interrupt-tx-chars-fix.patch --]
[-- Type: text/x-patch; name="atmel-interrupt-tx-chars-fix.patch", Size: 1405 bytes --]
Reduce the trasmitting window size to avoid blocking of tasklet because
it must handle the receive phase too.
Signed-off-by: michael <trimarchi@gandalf.sssup.it>
---
drivers/serial/atmel_serial.c | 6 +++++-
1 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/drivers/serial/atmel_serial.c b/drivers/serial/atmel_serial.c
index 9f58eb3..511a0cc 100644
--- a/drivers/serial/atmel_serial.c
+++ b/drivers/serial/atmel_serial.c
@@ -123,6 +123,7 @@ struct atmel_uart_char {
};
#define ATMEL_SERIAL_RINGSIZE 1024
+#define ATMEL_SERIAL_TXSIZE 32
/*
* We wrap our port structure around the generic uart_port.
@@ -426,6 +427,7 @@ static void atmel_rx_chars(struct uart_port *port)
static void atmel_tx_chars(struct uart_port *port)
{
struct circ_buf *xmit = &port->info->xmit;
+ int count = 0;
if (port->x_char && UART_GET_CSR(port) & ATMEL_US_TXRDY) {
UART_PUT_CHAR(port, port->x_char);
@@ -435,10 +437,12 @@ static void atmel_tx_chars(struct uart_port *port)
if (uart_circ_empty(xmit) || uart_tx_stopped(port))
return;
- while (UART_GET_CSR(port) & ATMEL_US_TXRDY) {
+ while (UART_GET_CSR(port) & ATMEL_US_TXRDY &&
+ count < ATMEL_SERIAL_TXSIZE) {
UART_PUT_CHAR(port, xmit->buf[xmit->tail]);
xmit->tail = (xmit->tail + 1) & (UART_XMIT_SIZE - 1);
port->icount.tx++;
+ count++;
if (uart_circ_empty(xmit))
break;
}
--
1.5.2.1.174.gcd03-dirty
next reply other threads:[~2008-04-03 8:39 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-03 8:39 Michael Trimarchi [this message]
2008-04-06 20:46 ` Haavard Skinnemoen
2008-04-06 20:57 ` Haavard Skinnemoen
2008-04-07 8:14 ` Michael Trimarchi
2008-04-08 8:32 ` Marc Pignat
2008-04-08 8:44 ` Michael Trimarchi
2008-04-07 9:22 Michael Trimarchi
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=524838.25009.qm@web26206.mail.ukl.yahoo.com \
--to=trimarchimichael@yahoo.it \
--cc=hskinnemoen@atmel.com \
--cc=linux-kernel@vger.kernel.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
all inboxes | Powered by JetHome®