git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fedora kernel-2.6.17-1.2142_FC4 patched with stable patch-2.6.17.4-vs2.0.2-rc26.diff
[linux-2.6.git]
/
drivers
/
serial
/
21285.c
diff --git
a/drivers/serial/21285.c
b/drivers/serial/21285.c
index
0b10169
..
7572665
100644
(file)
--- a/
drivers/serial/21285.c
+++ b/
drivers/serial/21285.c
@@
-58,8
+58,7
@@
static const char serial21285_name[] = "Footbridge UART";
* int((BAUD_BASE - (baud >> 1)) / baud)
*/
* int((BAUD_BASE - (baud >> 1)) / baud)
*/
-static void
-serial21285_stop_tx(struct uart_port *port, unsigned int tty_stop)
+static void serial21285_stop_tx(struct uart_port *port)
{
if (tx_enabled(port)) {
disable_irq(IRQ_CONTX);
{
if (tx_enabled(port)) {
disable_irq(IRQ_CONTX);
@@
-67,8
+66,7
@@
serial21285_stop_tx(struct uart_port *port, unsigned int tty_stop)
}
}
}
}
-static void
-serial21285_start_tx(struct uart_port *port, unsigned int tty_start)
+static void serial21285_start_tx(struct uart_port *port)
{
if (!tx_enabled(port)) {
enable_irq(IRQ_CONTX);
{
if (!tx_enabled(port)) {
enable_irq(IRQ_CONTX);
@@
-96,15
+94,6
@@
static irqreturn_t serial21285_rx_chars(int irq, void *dev_id, struct pt_regs *r
status = *CSR_UARTFLG;
while (!(status & 0x10) && max_count--) {
status = *CSR_UARTFLG;
while (!(status & 0x10) && max_count--) {
- if (tty->flip.count >= TTY_FLIPBUF_SIZE) {
- if (tty->low_latency)
- tty_flip_buffer_push(tty);
- /*
- * If this failed then we will throw away the
- * bytes but must do so to clear interrupts
- */
- }
-
ch = *CSR_UARTDR;
flag = TTY_NORMAL;
port->icount.rx++;
ch = *CSR_UARTDR;
flag = TTY_NORMAL;
port->icount.rx++;
@@
-148,7
+137,7
@@
static irqreturn_t serial21285_tx_chars(int irq, void *dev_id, struct pt_regs *r
goto out;
}
if (uart_circ_empty(xmit) || uart_tx_stopped(port)) {
goto out;
}
if (uart_circ_empty(xmit) || uart_tx_stopped(port)) {
- serial21285_stop_tx(port
, 0
);
+ serial21285_stop_tx(port);
goto out;
}
goto out;
}
@@
-164,7
+153,7
@@
static irqreturn_t serial21285_tx_chars(int irq, void *dev_id, struct pt_regs *r
uart_write_wakeup(port);
if (uart_circ_empty(xmit))
uart_write_wakeup(port);
if (uart_circ_empty(xmit))
- serial21285_stop_tx(port
, 0
);
+ serial21285_stop_tx(port);
out:
return IRQ_HANDLED;
out:
return IRQ_HANDLED;
@@
-373,11
+362,11
@@
static struct uart_ops serial21285_ops = {
static struct uart_port serial21285_port = {
.mapbase = 0x42000160,
static struct uart_port serial21285_port = {
.mapbase = 0x42000160,
- .iotype =
SERIAL_
IO_MEM,
+ .iotype =
UP
IO_MEM,
.irq = NO_IRQ,
.fifosize = 16,
.ops = &serial21285_ops,
.irq = NO_IRQ,
.fifosize = 16,
.ops = &serial21285_ops,
- .flags =
ASYNC
_BOOT_AUTOCONF,
+ .flags =
UPF
_BOOT_AUTOCONF,
};
static void serial21285_setup_ports(void)
};
static void serial21285_setup_ports(void)
@@
-386,23
+375,18
@@
static void serial21285_setup_ports(void)
}
#ifdef CONFIG_SERIAL_21285_CONSOLE
}
#ifdef CONFIG_SERIAL_21285_CONSOLE
+static void serial21285_console_putchar(struct uart_port *port, int ch)
+{
+ while (*CSR_UARTFLG & 0x20)
+ barrier();
+ *CSR_UARTDR = ch;
+}
static void
serial21285_console_write(struct console *co, const char *s,
unsigned int count)
{
static void
serial21285_console_write(struct console *co, const char *s,
unsigned int count)
{
- int i;
-
- for (i = 0; i < count; i++) {
- while (*CSR_UARTFLG & 0x20)
- barrier();
- *CSR_UARTDR = s[i];
- if (s[i] == '\n') {
- while (*CSR_UARTFLG & 0x20)
- barrier();
- *CSR_UARTDR = '\r';
- }
- }
+ uart_console_write(&serial21285_port, s, count, serial21285_console_putchar);
}
static void __init
}
static void __init
@@
-465,7
+449,7
@@
static int __init serial21285_console_setup(struct console *co, char *options)
return uart_set_options(port, co, baud, parity, bits, flow);
}
return uart_set_options(port, co, baud, parity, bits, flow);
}
-
extern
struct uart_driver serial21285_reg;
+
static
struct uart_driver serial21285_reg;
static struct console serial21285_console =
{
static struct console serial21285_console =
{