ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.6.tar.bz2
[linux-2.6.git] / arch / ppc / platforms / mcpn765_serial.h
1 /*
2  * include/asm-ppc/mcpn765_serial.h
3  *
4  * Definitions for Motorola MCG MCPN765 cPCI board support
5  *
6  * Author: Mark A. Greer
7  *         mgreer@mvista.com
8  *
9  * 2001 (c) MontaVista, Software, Inc.  This file is licensed under
10  * the terms of the GNU General Public License version 2.  This program
11  * is licensed "as is" without any warranty of any kind, whether express
12  * or implied.
13  */
14
15 #ifndef __ASMPPC_MCPN765_SERIAL_H
16 #define __ASMPPC_MCPN765_SERIAL_H
17
18 #include <linux/config.h>
19
20 /* Define the UART base addresses */
21 #define MCPN765_SERIAL_1                0xfef88000
22 #define MCPN765_SERIAL_2                0xfef88200
23 #define MCPN765_SERIAL_3                0xfef88400
24 #define MCPN765_SERIAL_4                0xfef88600
25
26 #ifdef CONFIG_SERIAL_MANY_PORTS
27 #define RS_TABLE_SIZE  64
28 #else
29 #define RS_TABLE_SIZE  4
30 #endif
31
32 /* Rate for the 1.8432 Mhz clock for the onboard serial chip */
33 #define BASE_BAUD       ( 1843200 / 16 )
34 #define UART_CLK        1843200
35
36 #ifdef CONFIG_SERIAL_DETECT_IRQ
37 #define STD_COM_FLAGS (ASYNC_BOOT_AUTOCONF|ASYNC_SKIP_TEST|ASYNC_AUTO_IRQ)
38 #else
39 #define STD_COM_FLAGS (ASYNC_BOOT_AUTOCONF|ASYNC_SKIP_TEST)
40 #endif
41
42 /* All UART IRQ's are wire-OR'd to IRQ 17 */
43 #define STD_SERIAL_PORT_DFNS \
44         { 0, BASE_BAUD, MCPN765_SERIAL_1, 17, STD_COM_FLAGS, /* ttyS0 */\
45                 iomem_base: (u8 *)MCPN765_SERIAL_1,                     \
46                 iomem_reg_shift: 4,                                     \
47                 io_type: SERIAL_IO_MEM },                               \
48         { 0, BASE_BAUD, MCPN765_SERIAL_2, 17, STD_COM_FLAGS, /* ttyS1 */\
49                 iomem_base: (u8 *)MCPN765_SERIAL_2,                     \
50                 iomem_reg_shift: 4,                                     \
51                 io_type: SERIAL_IO_MEM },                               \
52         { 0, BASE_BAUD, MCPN765_SERIAL_3, 17, STD_COM_FLAGS, /* ttyS2 */\
53                 iomem_base: (u8 *)MCPN765_SERIAL_3,                     \
54                 iomem_reg_shift: 4,                                     \
55                 io_type: SERIAL_IO_MEM },                               \
56         { 0, BASE_BAUD, MCPN765_SERIAL_4, 17, STD_COM_FLAGS, /* ttyS3 */\
57                 iomem_base: (u8 *)MCPN765_SERIAL_4,                     \
58                 iomem_reg_shift: 4,                                     \
59                 io_type: SERIAL_IO_MEM },
60
61 #define SERIAL_PORT_DFNS \
62         STD_SERIAL_PORT_DFNS
63
64 #endif /* __ASMPPC_MCPN765_SERIAL_H */