diff options
author | Paul Mundt <lethal@linux-sh.org> | 2006-09-27 17:32:30 +0900 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2006-09-27 17:32:30 +0900 |
commit | ecd9561687a0952a96a0a705f618e59cb6f3189b (patch) | |
tree | ec73915c651734e9d5bcf5baf0824a20e814577f | |
parent | 7dec62e96b38e6c62490ea5dc6939dd8d680a8b8 (diff) | |
download | linux-3.10-ecd9561687a0952a96a0a705f618e59cb6f3189b.tar.gz linux-3.10-ecd9561687a0952a96a0a705f618e59cb6f3189b.tar.bz2 linux-3.10-ecd9561687a0952a96a0a705f618e59cb6f3189b.zip |
serial: Add SERIAL_SH_SCI_NR_UARTS for sh-sci.
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>
-rw-r--r-- | drivers/serial/Kconfig | 9 | ||||
-rw-r--r-- | include/asm-sh/sci.h | 34 |
2 files changed, 41 insertions, 2 deletions
diff --git a/drivers/serial/Kconfig b/drivers/serial/Kconfig index 5b48ac22c9c..261eaa44295 100644 --- a/drivers/serial/Kconfig +++ b/drivers/serial/Kconfig @@ -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 index 00000000000..52e73660c12 --- /dev/null +++ b/include/asm-sh/sci.h @@ -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 */ |