From: Matteo Croce <technoboy85@gmail.com>
To: linux-mips@linux-mips.org
Cc: Florian Fainelli <florian@openwrt.org>,
Felix Fietkau <nbd@openwrt.org>, Nicolas Thill <nico@openwrt.org>,
linux-serial@vger.kernel.org,
Andrew Morton <akpm@linux-foundation.org>
Subject: [PATCH][MIPS][5/6]: AR7: serial hack
Date: Wed, 12 Mar 2008 02:30:06 +0100 [thread overview]
Message-ID: <200803120230.06420.technoboy85@gmail.com> (raw)
In-Reply-To: <200803120221.25044.technoboy85@gmail.com>
Ugly but we need it
Signed-off-by: Matteo Croce <technoboy85@gmail.com>
Signed-off-by: Florian Fainelli <florian@openwrt.org>
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Nicolas Thill <nico@openwrt.org>
diff --git a/drivers/serial/8250.c b/drivers/serial/8250.c
index 77f7a7f..a3a271d 100644
--- a/drivers/serial/8250.c
+++ b/drivers/serial/8250.c
@@ -267,6 +267,13 @@ static const struct serial8250_config uart_config[] = {
.fcr = UART_FCR_ENABLE_FIFO | UART_FCR_R_TRIG_10,
.flags = UART_CAP_FIFO,
},
+ [PORT_AR7] = {
+ .name = "TI-AR7",
+ .fifo_size = 16,
+ .tx_loadsz = 16,
+ .fcr = UART_FCR_ENABLE_FIFO | UART_FCR_R_TRIG_00,
+ .flags = UART_CAP_FIFO | UART_CAP_AFE,
+ },
};
#if defined (CONFIG_SERIAL_8250_AU1X00)
@@ -2455,7 +2462,11 @@ static void serial8250_console_putchar(struct uart_port *port, int ch)
{
struct uart_8250_port *up = (struct uart_8250_port *)port;
+#ifdef CONFIG_AR7
+ wait_for_xmitr(up, BOTH_EMPTY);
+#else
wait_for_xmitr(up, UART_LSR_THRE);
+#endif
serial_out(up, UART_TX, ch);
}
diff --git a/include/linux/serialP.h b/include/linux/serialP.h
index e811a61..cf71de9 100644
--- a/include/linux/serialP.h
+++ b/include/linux/serialP.h
@@ -135,6 +135,10 @@ struct rs_multiport_struct {
* the interrupt line _up_ instead of down, so if we register the IRQ
* while the UART is in that state, we die in an IRQ storm. */
#define ALPHA_KLUDGE_MCR (UART_MCR_OUT2)
+#elif defined(CONFIG_AR7)
+/* This is how it is set up by bootloader... */
+#define ALPHA_KLUDGE_MCR (UART_MCR_OUT2 | UART_MCR_OUT1 \
+ | UART_MCR_RTS | UART_MCR_DTR)
#else
#define ALPHA_KLUDGE_MCR 0
#endif
diff --git a/include/linux/serial_core.h b/include/linux/serial_core.h
index 289942f..869b6df 100644
--- a/include/linux/serial_core.h
+++ b/include/linux/serial_core.h
@@ -40,6 +40,7 @@
#define PORT_NS16550A 14
#define PORT_XSCALE 15
#define PORT_RM9000 16 /* PMC-Sierra RM9xxx internal UART */
+#define PORT_AR7 16
#define PORT_MAX_8250 16 /* max port ID */
/*
next prev parent reply other threads:[~2008-03-12 1:30 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-03-12 1:21 [PATCH][MIPS][0/6]: AR7 final Matteo Croce
2008-03-12 1:25 ` [PATCH][MIPS][2/6]: AR7 mtd partition map Matteo Croce
2008-03-12 1:25 ` Matteo Croce
2008-03-12 1:26 ` [PATCH][MIPS][3/6]: AR7: VLYNQ bus Matteo Croce
2008-03-29 9:59 ` Florian Lohoff
2008-04-02 12:56 ` Matteo Croce
2008-04-02 18:31 ` Florian Lohoff
2008-04-03 0:19 ` Matteo Croce
2008-04-03 6:08 ` Florian Lohoff
2008-04-02 13:57 ` Matteo Croce
2008-04-02 14:58 ` Matteo Croce
2008-03-12 1:28 ` [PATCH][MIPS][4/6]: AR7 gpio Matteo Croce
2008-03-12 1:30 ` Matteo Croce [this message]
2008-03-12 9:31 ` [PATCH][MIPS][5/6]: AR7: serial hack Thomas Bogendoerfer
2008-03-13 0:38 ` Matteo Croce
2008-03-13 8:45 ` Thomas Bogendoerfer
2008-03-14 15:46 ` Matteo Croce
2008-03-15 10:40 ` Thomas Bogendoerfer
2008-03-16 15:45 ` Matteo Croce
2008-03-18 13:30 ` Thomas Bogendoerfer
2008-03-18 13:43 ` Sergei Shtylyov
2008-03-18 13:49 ` Sergei Shtylyov
2008-03-18 14:01 ` Alan Cox
2008-03-18 14:01 ` Alan Cox
2008-03-18 15:28 ` Thomas Bogendoerfer
2008-03-21 1:55 ` Thomas Bogendoerfer
2008-03-27 21:14 ` Matteo Croce
2008-03-27 21:17 ` Matteo Croce
2008-03-15 11:38 ` Alan Cox
2008-03-12 11:16 ` Alan Cox
2008-03-13 0:31 ` Matteo Croce
2008-03-13 9:01 ` Thomas Bogendoerfer
2008-03-16 15:27 ` Matteo Croce
2008-03-16 15:49 ` Matteo Croce
2008-03-12 1:34 ` [PATCH][MIPS][6/6]: AR7 leds Matteo Croce
2008-03-13 0:34 ` Matteo Croce
2008-03-12 18:06 ` [PATCH][MIPS][1/6]: AR7: core Matteo Croce
2008-03-12 19:33 ` Ralf Baechle
2008-03-29 10:34 ` Florian Lohoff
-- strict thread matches above, loose matches on Subject: below --
2008-03-18 15:40 [PATCH][MIPS][5/6]: AR7: serial hack Nico Coesel
2008-03-18 15:40 ` Nico Coesel
2007-12-27 18:19 [PATCH][MIPS][0/6]: AR7 refresh Matteo Croce
2007-12-27 18:27 ` [PATCH][MIPS][5/6]: AR7: serial hack Matteo Croce
2007-12-28 12:13 ` Sergei Shtylyov
2007-10-11 0:48 [PATCH][MIPS][0/6] AR7: AR7 strikes back Matteo Croce
2007-10-11 0:59 ` [PATCH][MIPS][5/6] AR7: serial hack Matteo Croce
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=200803120230.06420.technoboy85@gmail.com \
--to=technoboy85@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=florian@openwrt.org \
--cc=linux-mips@linux-mips.org \
--cc=linux-serial@vger.kernel.org \
--cc=nbd@openwrt.org \
--cc=nico@openwrt.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.