aboutsummaryrefslogtreecommitdiffstats
path: root/arch/ppc/platforms/gemini_serial.h
diff options
context:
space:
mode:
Diffstat (limited to 'arch/ppc/platforms/gemini_serial.h')
-rw-r--r--arch/ppc/platforms/gemini_serial.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/arch/ppc/platforms/gemini_serial.h b/arch/ppc/platforms/gemini_serial.h
new file mode 100644
index 000000000000..69855aeec888
--- /dev/null
+++ b/arch/ppc/platforms/gemini_serial.h
@@ -0,0 +1,41 @@
1#ifdef __KERNEL__
2#ifndef __ASMPPC_GEMINI_SERIAL_H
3#define __ASMPPC_GEMINI_SERIAL_H
4
5#include <linux/config.h>
6#include <platforms/gemini.h>
7
8#ifdef CONFIG_SERIAL_MANY_PORTS
9#define RS_TABLE_SIZE 64
10#else
11#define RS_TABLE_SIZE 4
12#endif
13
14/* Rate for the 24.576 Mhz clock for the onboard serial chip */
15#define BASE_BAUD (24576000 / 16)
16
17#ifdef CONFIG_SERIAL_DETECT_IRQ
18#define STD_COM_FLAGS (ASYNC_BOOT_AUTOCONF|ASYNC_SKIP_TEST|ASYNC_AUTO_IRQ)
19#define STD_COM4_FLAGS (ASYNC_BOOT_AUTOCONF|ASYNC_AUTO_IRQ)
20#else
21#define STD_COM_FLAGS (ASYNC_BOOT_AUTOCONF|ASYNC_SKIP_TEST)
22#define STD_COM4_FLAGS (ASYNC_BOOT_AUTOCONF)
23#endif
24
25#define STD_SERIAL_PORT_DEFNS \
26 { 0, BASE_BAUD, GEMINI_SERIAL_A, 15, STD_COM_FLAGS }, /* ttyS0 */ \
27 { 0, BASE_BAUD, GEMINI_SERIAL_B, 14, STD_COM_FLAGS }, /* ttyS1 */ \
28
29#ifdef CONFIG_GEMINI_PU32
30#define PU32_SERIAL_PORT_DEFNS \
31 { 0, BASE_BAUD, NULL, 0, STD_COM_FLAGS },
32#else
33#define PU32_SERIAL_PORT_DEFNS
34#endif
35
36#define SERIAL_PORT_DFNS \
37 STD_SERIAL_PORT_DEFNS \
38 PU32_SERIAL_PORT_DEFNS
39
40#endif
41#endif /* __KERNEL__ */