serial: Add SERIAL_SH_SCI_NR_UARTS for sh-sci.
authorPaul Mundt <lethal@linux-sh.org>
Wed, 27 Sep 2006 08:32:30 +0000 (17:32 +0900)
committerPaul Mundt <lethal@linux-sh.org>
Wed, 27 Sep 2006 08:32:30 +0000 (17:32 +0900)
sh-sci needs to be able to define its number of ports to
support, we do this with a config option, like most other
ports do.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
drivers/serial/Kconfig
include/asm-sh/sci.h [new file with mode: 0644]

index 5b48ac22c9c5964b62b93500831f1656a1b84e1a..261eaa4429532cd9303a7dcf5cbfe0bda9985a65 100644 (file)
@@ -642,12 +642,17 @@ config V850E_UART_CONSOLE
        select SERIAL_CORE_CONSOLE
 
 config SERIAL_SH_SCI
-       tristate "SH SCI(F) serial port support"
+       tristate "SuperH SCI(F) serial port support"
        depends on SUPERH || H8300
        select SERIAL_CORE
 
+config SERIAL_SH_SCI_NR_UARTS
+       int "Maximum number of SCI(F) serial ports"
+       depends on SERIAL_SH_SCI
+       default "2"
+
 config SERIAL_SH_SCI_CONSOLE
-       bool "Support for console on SH SCI(F)"
+       bool "Support for console on SuperH SCI(F)"
        depends on SERIAL_SH_SCI=y
        select SERIAL_CORE_CONSOLE
 
diff --git a/include/asm-sh/sci.h b/include/asm-sh/sci.h
new file mode 100644 (file)
index 0000000..52e7366
--- /dev/null
@@ -0,0 +1,34 @@
+#ifndef __ASM_SH_SCI_H
+#define __ASM_SH_SCI_H
+
+#include <linux/serial_core.h>
+
+/*
+ * Generic header for SuperH SCI(F)
+ *
+ * Do not place SH-specific parts in here, sh64 and h8300 depend on this too.
+ */
+
+/* Offsets into the sci_port->irqs array */
+enum {
+       SCIx_ERI_IRQ,
+       SCIx_RXI_IRQ,
+       SCIx_TXI_IRQ,
+       SCIx_BRI_IRQ,
+       SCIx_NR_IRQS,
+};
+
+/*
+ * Platform device specific platform_data struct
+ */
+struct plat_sci_port {
+       void __iomem    *membase;               /* io cookie */
+       unsigned long   mapbase;                /* resource base */
+       unsigned int    irqs[SCIx_NR_IRQS];     /* ERI, RXI, TXI, BRI */
+       unsigned int    type;                   /* SCI / SCIF / IRDA */
+       upf_t           flags;                  /* UPF_* flags */
+};
+
+int early_sci_setup(struct uart_port *port);
+
+#endif /* __ASM_SH_SCI_H */