mirror of https://gitee.com/openkylin/linux.git
[PATCH] Serial: Split 8250 port table (part 2)
Remove legacy ISA serial ports for Accent, Boca, Fourport, Hub6 and MCA from the architecture specific serial.h include. The only ports which remain in asm-*/serial.h are the platform specific entries. These should really be converted by platform maintainers to use a platform device, such as can be found in arch/arm/mach-footbridge/isa.c Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
e763b90c41
commit
026d02a236
|
@ -506,7 +506,7 @@ CONFIG_HW_CONSOLE=y
|
|||
#
|
||||
CONFIG_SERIAL_8250=y
|
||||
CONFIG_SERIAL_8250_CONSOLE=y
|
||||
CONFIG_SERIAL_8250_NR_UARTS=8
|
||||
CONFIG_SERIAL_8250_NR_UARTS=17
|
||||
CONFIG_SERIAL_8250_EXTENDED=y
|
||||
CONFIG_SERIAL_8250_MANY_PORTS=y
|
||||
CONFIG_SERIAL_8250_SHARE_IRQ=y
|
||||
|
|
|
@ -662,7 +662,7 @@ CONFIG_HW_CONSOLE=y
|
|||
CONFIG_SERIAL_8250=y
|
||||
CONFIG_SERIAL_8250_CONSOLE=y
|
||||
CONFIG_SERIAL_8250_CS=m
|
||||
CONFIG_SERIAL_8250_NR_UARTS=8
|
||||
CONFIG_SERIAL_8250_NR_UARTS=17
|
||||
CONFIG_SERIAL_8250_EXTENDED=y
|
||||
CONFIG_SERIAL_8250_MANY_PORTS=y
|
||||
CONFIG_SERIAL_8250_SHARE_IRQ=y
|
||||
|
|
|
@ -514,7 +514,7 @@ CONFIG_HW_CONSOLE=y
|
|||
#
|
||||
CONFIG_SERIAL_8250=y
|
||||
CONFIG_SERIAL_8250_CONSOLE=y
|
||||
CONFIG_SERIAL_8250_NR_UARTS=4
|
||||
CONFIG_SERIAL_8250_NR_UARTS=13
|
||||
CONFIG_SERIAL_8250_EXTENDED=y
|
||||
CONFIG_SERIAL_8250_MANY_PORTS=y
|
||||
CONFIG_SERIAL_8250_SHARE_IRQ=y
|
||||
|
|
|
@ -661,7 +661,7 @@ CONFIG_HW_CONSOLE=y
|
|||
#
|
||||
CONFIG_SERIAL_8250=y
|
||||
CONFIG_SERIAL_8250_CONSOLE=y
|
||||
CONFIG_SERIAL_8250_NR_UARTS=4
|
||||
CONFIG_SERIAL_8250_NR_UARTS=13
|
||||
CONFIG_SERIAL_8250_EXTENDED=y
|
||||
CONFIG_SERIAL_8250_MANY_PORTS=y
|
||||
CONFIG_SERIAL_8250_SHARE_IRQ=y
|
||||
|
|
|
@ -517,7 +517,7 @@ CONFIG_HW_CONSOLE=y
|
|||
#
|
||||
CONFIG_SERIAL_8250=y
|
||||
CONFIG_SERIAL_8250_CONSOLE=y
|
||||
CONFIG_SERIAL_8250_NR_UARTS=4
|
||||
CONFIG_SERIAL_8250_NR_UARTS=13
|
||||
CONFIG_SERIAL_8250_EXTENDED=y
|
||||
CONFIG_SERIAL_8250_MANY_PORTS=y
|
||||
CONFIG_SERIAL_8250_SHARE_IRQ=y
|
||||
|
|
|
@ -105,7 +105,7 @@ static struct old_serial_port old_serial_port[] = {
|
|||
SERIAL_PORT_DFNS /* defined in asm/serial.h */
|
||||
};
|
||||
|
||||
#define UART_NR (ARRAY_SIZE(old_serial_port) + CONFIG_SERIAL_8250_NR_UARTS)
|
||||
#define UART_NR CONFIG_SERIAL_8250_NR_UARTS
|
||||
|
||||
#ifdef CONFIG_SERIAL_8250_RSA
|
||||
|
||||
|
|
|
@ -86,7 +86,7 @@ config SERIAL_8250_ACPI
|
|||
namespace, say Y here. If unsure, say N.
|
||||
|
||||
config SERIAL_8250_NR_UARTS
|
||||
int "Maximum number of non-legacy 8250/16550 serial ports"
|
||||
int "Maximum number of 8250/16550 serial ports"
|
||||
depends on SERIAL_8250
|
||||
default "4"
|
||||
help
|
||||
|
|
|
@ -22,54 +22,9 @@
|
|||
#define STD_COM4_FLAGS ASYNC_BOOT_AUTOCONF
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SERIAL_MANY_PORTS
|
||||
#define FOURPORT_FLAGS ASYNC_FOURPORT
|
||||
#define ACCENT_FLAGS 0
|
||||
#define BOCA_FLAGS 0
|
||||
#endif
|
||||
|
||||
#define STD_SERIAL_PORT_DEFNS \
|
||||
#define SERIAL_PORT_DFNS \
|
||||
/* UART CLK PORT IRQ FLAGS */ \
|
||||
{ 0, BASE_BAUD, 0x3F8, 4, STD_COM_FLAGS }, /* ttyS0 */ \
|
||||
{ 0, BASE_BAUD, 0x2F8, 3, STD_COM_FLAGS }, /* ttyS1 */ \
|
||||
{ 0, BASE_BAUD, 0x3E8, 4, STD_COM_FLAGS }, /* ttyS2 */ \
|
||||
{ 0, BASE_BAUD, 0x2E8, 3, STD_COM4_FLAGS }, /* ttyS3 */
|
||||
|
||||
|
||||
#ifdef CONFIG_SERIAL_MANY_PORTS
|
||||
#define EXTRA_SERIAL_PORT_DEFNS \
|
||||
{ 0, BASE_BAUD, 0x1A0, 9, FOURPORT_FLAGS }, /* ttyS4 */ \
|
||||
{ 0, BASE_BAUD, 0x1A8, 9, FOURPORT_FLAGS }, /* ttyS5 */ \
|
||||
{ 0, BASE_BAUD, 0x1B0, 9, FOURPORT_FLAGS }, /* ttyS6 */ \
|
||||
{ 0, BASE_BAUD, 0x1B8, 9, FOURPORT_FLAGS }, /* ttyS7 */ \
|
||||
{ 0, BASE_BAUD, 0x2A0, 5, FOURPORT_FLAGS }, /* ttyS8 */ \
|
||||
{ 0, BASE_BAUD, 0x2A8, 5, FOURPORT_FLAGS }, /* ttyS9 */ \
|
||||
{ 0, BASE_BAUD, 0x2B0, 5, FOURPORT_FLAGS }, /* ttyS10 */ \
|
||||
{ 0, BASE_BAUD, 0x2B8, 5, FOURPORT_FLAGS }, /* ttyS11 */ \
|
||||
{ 0, BASE_BAUD, 0x330, 4, ACCENT_FLAGS }, /* ttyS12 */ \
|
||||
{ 0, BASE_BAUD, 0x338, 4, ACCENT_FLAGS }, /* ttyS13 */ \
|
||||
{ 0, BASE_BAUD, 0x000, 0, 0 }, /* ttyS14 (spare) */ \
|
||||
{ 0, BASE_BAUD, 0x000, 0, 0 }, /* ttyS15 (spare) */ \
|
||||
{ 0, BASE_BAUD, 0x100, 12, BOCA_FLAGS }, /* ttyS16 */ \
|
||||
{ 0, BASE_BAUD, 0x108, 12, BOCA_FLAGS }, /* ttyS17 */ \
|
||||
{ 0, BASE_BAUD, 0x110, 12, BOCA_FLAGS }, /* ttyS18 */ \
|
||||
{ 0, BASE_BAUD, 0x118, 12, BOCA_FLAGS }, /* ttyS19 */ \
|
||||
{ 0, BASE_BAUD, 0x120, 12, BOCA_FLAGS }, /* ttyS20 */ \
|
||||
{ 0, BASE_BAUD, 0x128, 12, BOCA_FLAGS }, /* ttyS21 */ \
|
||||
{ 0, BASE_BAUD, 0x130, 12, BOCA_FLAGS }, /* ttyS22 */ \
|
||||
{ 0, BASE_BAUD, 0x138, 12, BOCA_FLAGS }, /* ttyS23 */ \
|
||||
{ 0, BASE_BAUD, 0x140, 12, BOCA_FLAGS }, /* ttyS24 */ \
|
||||
{ 0, BASE_BAUD, 0x148, 12, BOCA_FLAGS }, /* ttyS25 */ \
|
||||
{ 0, BASE_BAUD, 0x150, 12, BOCA_FLAGS }, /* ttyS26 */ \
|
||||
{ 0, BASE_BAUD, 0x158, 12, BOCA_FLAGS }, /* ttyS27 */ \
|
||||
{ 0, BASE_BAUD, 0x160, 12, BOCA_FLAGS }, /* ttyS28 */ \
|
||||
{ 0, BASE_BAUD, 0x168, 12, BOCA_FLAGS }, /* ttyS29 */ \
|
||||
{ 0, BASE_BAUD, 0x170, 12, BOCA_FLAGS }, /* ttyS30 */ \
|
||||
{ 0, BASE_BAUD, 0x178, 12, BOCA_FLAGS }, /* ttyS31 */
|
||||
#else
|
||||
#define EXTRA_SERIAL_PORT_DEFNS
|
||||
#endif
|
||||
|
||||
#define SERIAL_PORT_DFNS \
|
||||
STD_SERIAL_PORT_DEFNS \
|
||||
EXTRA_SERIAL_PORT_DEFNS
|
||||
|
|
|
@ -30,34 +30,16 @@
|
|||
#if defined(CONFIG_ARCH_A5K)
|
||||
/* UART CLK PORT IRQ FLAGS */
|
||||
|
||||
#define STD_SERIAL_PORT_DEFNS \
|
||||
#define SERIAL_PORT_DFNS \
|
||||
{ 0, BASE_BAUD, 0x3F8, 10, STD_COM_FLAGS }, /* ttyS0 */ \
|
||||
{ 0, BASE_BAUD, 0x2F8, 10, STD_COM_FLAGS }, /* ttyS1 */
|
||||
|
||||
#else
|
||||
|
||||
#define STD_SERIAL_PORT_DEFNS \
|
||||
#define SERIAL_PORT_DFNS \
|
||||
{ 0, BASE_BAUD, 0 , 0, STD_COM_FLAGS }, /* ttyS0 */ \
|
||||
{ 0, BASE_BAUD, 0 , 0, STD_COM_FLAGS }, /* ttyS1 */
|
||||
|
||||
#endif
|
||||
|
||||
#define EXTRA_SERIAL_PORT_DEFNS \
|
||||
{ 0, BASE_BAUD, 0 , 0, STD_COM_FLAGS }, /* ttyS2 */ \
|
||||
{ 0, BASE_BAUD, 0 , 0, STD_COM_FLAGS }, /* ttyS3 */ \
|
||||
{ 0, BASE_BAUD, 0 , 0, STD_COM_FLAGS }, /* ttyS4 */ \
|
||||
{ 0, BASE_BAUD, 0 , 0, STD_COM_FLAGS }, /* ttyS5 */ \
|
||||
{ 0, BASE_BAUD, 0 , 0, STD_COM_FLAGS }, /* ttyS6 */ \
|
||||
{ 0, BASE_BAUD, 0 , 0, STD_COM_FLAGS }, /* ttyS7 */ \
|
||||
{ 0, BASE_BAUD, 0 , 0, STD_COM_FLAGS }, /* ttyS8 */ \
|
||||
{ 0, BASE_BAUD, 0 , 0, STD_COM_FLAGS }, /* ttyS9 */ \
|
||||
{ 0, BASE_BAUD, 0 , 0, STD_COM_FLAGS }, /* ttyS10 */ \
|
||||
{ 0, BASE_BAUD, 0 , 0, STD_COM_FLAGS }, /* ttyS11 */ \
|
||||
{ 0, BASE_BAUD, 0 , 0, STD_COM_FLAGS }, /* ttyS12 */ \
|
||||
{ 0, BASE_BAUD, 0 , 0, STD_COM_FLAGS }, /* ttyS13 */
|
||||
|
||||
#define SERIAL_PORT_DFNS \
|
||||
STD_SERIAL_PORT_DEFNS \
|
||||
EXTRA_SERIAL_PORT_DEFNS
|
||||
|
||||
#endif
|
||||
|
|
|
@ -22,109 +22,9 @@
|
|||
#define STD_COM4_FLAGS ASYNC_BOOT_AUTOCONF
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SERIAL_MANY_PORTS
|
||||
#define FOURPORT_FLAGS ASYNC_FOURPORT
|
||||
#define ACCENT_FLAGS 0
|
||||
#define BOCA_FLAGS 0
|
||||
#define HUB6_FLAGS 0
|
||||
#endif
|
||||
|
||||
#define MCA_COM_FLAGS (STD_COM_FLAGS|ASYNC_BOOT_ONLYMCA)
|
||||
|
||||
/*
|
||||
* The following define the access methods for the HUB6 card. All
|
||||
* access is through two ports for all 24 possible chips. The card is
|
||||
* selected through the high 2 bits, the port on that card with the
|
||||
* "middle" 3 bits, and the register on that port with the bottom
|
||||
* 3 bits.
|
||||
*
|
||||
* While the access port and interrupt is configurable, the default
|
||||
* port locations are 0x302 for the port control register, and 0x303
|
||||
* for the data read/write register. Normally, the interrupt is at irq3
|
||||
* but can be anything from 3 to 7 inclusive. Note that using 3 will
|
||||
* require disabling com2.
|
||||
*/
|
||||
|
||||
#define C_P(card,port) (((card)<<6|(port)<<3) + 1)
|
||||
|
||||
#define STD_SERIAL_PORT_DEFNS \
|
||||
#define SERIAL_PORT_DFNS \
|
||||
/* UART CLK PORT IRQ FLAGS */ \
|
||||
{ 0, BASE_BAUD, 0x3F8, 4, STD_COM_FLAGS }, /* ttyS0 */ \
|
||||
{ 0, BASE_BAUD, 0x2F8, 3, STD_COM_FLAGS }, /* ttyS1 */ \
|
||||
{ 0, BASE_BAUD, 0x3E8, 4, STD_COM_FLAGS }, /* ttyS2 */ \
|
||||
{ 0, BASE_BAUD, 0x2E8, 3, STD_COM4_FLAGS }, /* ttyS3 */
|
||||
|
||||
|
||||
#ifdef CONFIG_SERIAL_MANY_PORTS
|
||||
#define EXTRA_SERIAL_PORT_DEFNS \
|
||||
{ 0, BASE_BAUD, 0x1A0, 9, FOURPORT_FLAGS }, /* ttyS4 */ \
|
||||
{ 0, BASE_BAUD, 0x1A8, 9, FOURPORT_FLAGS }, /* ttyS5 */ \
|
||||
{ 0, BASE_BAUD, 0x1B0, 9, FOURPORT_FLAGS }, /* ttyS6 */ \
|
||||
{ 0, BASE_BAUD, 0x1B8, 9, FOURPORT_FLAGS }, /* ttyS7 */ \
|
||||
{ 0, BASE_BAUD, 0x2A0, 5, FOURPORT_FLAGS }, /* ttyS8 */ \
|
||||
{ 0, BASE_BAUD, 0x2A8, 5, FOURPORT_FLAGS }, /* ttyS9 */ \
|
||||
{ 0, BASE_BAUD, 0x2B0, 5, FOURPORT_FLAGS }, /* ttyS10 */ \
|
||||
{ 0, BASE_BAUD, 0x2B8, 5, FOURPORT_FLAGS }, /* ttyS11 */ \
|
||||
{ 0, BASE_BAUD, 0x330, 4, ACCENT_FLAGS }, /* ttyS12 */ \
|
||||
{ 0, BASE_BAUD, 0x338, 4, ACCENT_FLAGS }, /* ttyS13 */ \
|
||||
{ 0, BASE_BAUD, 0x000, 0, 0 }, /* ttyS14 (spare) */ \
|
||||
{ 0, BASE_BAUD, 0x000, 0, 0 }, /* ttyS15 (spare) */ \
|
||||
{ 0, BASE_BAUD, 0x100, 12, BOCA_FLAGS }, /* ttyS16 */ \
|
||||
{ 0, BASE_BAUD, 0x108, 12, BOCA_FLAGS }, /* ttyS17 */ \
|
||||
{ 0, BASE_BAUD, 0x110, 12, BOCA_FLAGS }, /* ttyS18 */ \
|
||||
{ 0, BASE_BAUD, 0x118, 12, BOCA_FLAGS }, /* ttyS19 */ \
|
||||
{ 0, BASE_BAUD, 0x120, 12, BOCA_FLAGS }, /* ttyS20 */ \
|
||||
{ 0, BASE_BAUD, 0x128, 12, BOCA_FLAGS }, /* ttyS21 */ \
|
||||
{ 0, BASE_BAUD, 0x130, 12, BOCA_FLAGS }, /* ttyS22 */ \
|
||||
{ 0, BASE_BAUD, 0x138, 12, BOCA_FLAGS }, /* ttyS23 */ \
|
||||
{ 0, BASE_BAUD, 0x140, 12, BOCA_FLAGS }, /* ttyS24 */ \
|
||||
{ 0, BASE_BAUD, 0x148, 12, BOCA_FLAGS }, /* ttyS25 */ \
|
||||
{ 0, BASE_BAUD, 0x150, 12, BOCA_FLAGS }, /* ttyS26 */ \
|
||||
{ 0, BASE_BAUD, 0x158, 12, BOCA_FLAGS }, /* ttyS27 */ \
|
||||
{ 0, BASE_BAUD, 0x160, 12, BOCA_FLAGS }, /* ttyS28 */ \
|
||||
{ 0, BASE_BAUD, 0x168, 12, BOCA_FLAGS }, /* ttyS29 */ \
|
||||
{ 0, BASE_BAUD, 0x170, 12, BOCA_FLAGS }, /* ttyS30 */ \
|
||||
{ 0, BASE_BAUD, 0x178, 12, BOCA_FLAGS }, /* ttyS31 */
|
||||
#else
|
||||
#define EXTRA_SERIAL_PORT_DEFNS
|
||||
#endif
|
||||
|
||||
/* You can have up to four HUB6's in the system, but I've only
|
||||
* included two cards here for a total of twelve ports.
|
||||
*/
|
||||
#if (defined(CONFIG_HUB6) && defined(CONFIG_SERIAL_MANY_PORTS))
|
||||
#define HUB6_SERIAL_PORT_DFNS \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,0) }, /* ttyS32 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,1) }, /* ttyS33 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,2) }, /* ttyS34 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,3) }, /* ttyS35 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,4) }, /* ttyS36 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,5) }, /* ttyS37 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,0) }, /* ttyS38 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,1) }, /* ttyS39 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,2) }, /* ttyS40 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,3) }, /* ttyS41 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,4) }, /* ttyS42 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,5) }, /* ttyS43 */
|
||||
#else
|
||||
#define HUB6_SERIAL_PORT_DFNS
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_MCA
|
||||
#define MCA_SERIAL_PORT_DFNS \
|
||||
{ 0, BASE_BAUD, 0x3220, 3, MCA_COM_FLAGS }, \
|
||||
{ 0, BASE_BAUD, 0x3228, 3, MCA_COM_FLAGS }, \
|
||||
{ 0, BASE_BAUD, 0x4220, 3, MCA_COM_FLAGS }, \
|
||||
{ 0, BASE_BAUD, 0x4228, 3, MCA_COM_FLAGS }, \
|
||||
{ 0, BASE_BAUD, 0x5220, 3, MCA_COM_FLAGS }, \
|
||||
{ 0, BASE_BAUD, 0x5228, 3, MCA_COM_FLAGS },
|
||||
#else
|
||||
#define MCA_SERIAL_PORT_DFNS
|
||||
#endif
|
||||
|
||||
#define SERIAL_PORT_DFNS \
|
||||
STD_SERIAL_PORT_DEFNS \
|
||||
EXTRA_SERIAL_PORT_DEFNS \
|
||||
HUB6_SERIAL_PORT_DFNS \
|
||||
MCA_SERIAL_PORT_DFNS
|
||||
|
||||
|
|
|
@ -26,54 +26,9 @@
|
|||
#define STD_COM4_FLAGS ASYNC_BOOT_AUTOCONF
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SERIAL_MANY_PORTS
|
||||
#define FOURPORT_FLAGS ASYNC_FOURPORT
|
||||
#define ACCENT_FLAGS 0
|
||||
#define BOCA_FLAGS 0
|
||||
#endif
|
||||
|
||||
#define STD_SERIAL_PORT_DEFNS \
|
||||
#define SERIAL_PORT_DFNS \
|
||||
/* UART CLK PORT IRQ FLAGS */ \
|
||||
{ 0, BASE_BAUD, 0x3F8, 4, STD_COM_FLAGS }, /* ttyS0 */ \
|
||||
{ 0, BASE_BAUD, 0x2F8, 3, STD_COM_FLAGS }, /* ttyS1 */ \
|
||||
{ 0, BASE_BAUD, 0x3E8, 4, STD_COM_FLAGS }, /* ttyS2 */ \
|
||||
{ 0, BASE_BAUD, 0x2E8, 3, STD_COM4_FLAGS }, /* ttyS3 */
|
||||
|
||||
|
||||
#ifdef CONFIG_SERIAL_MANY_PORTS
|
||||
#define EXTRA_SERIAL_PORT_DEFNS \
|
||||
{ 0, BASE_BAUD, 0x1A0, 9, FOURPORT_FLAGS }, /* ttyS4 */ \
|
||||
{ 0, BASE_BAUD, 0x1A8, 9, FOURPORT_FLAGS }, /* ttyS5 */ \
|
||||
{ 0, BASE_BAUD, 0x1B0, 9, FOURPORT_FLAGS }, /* ttyS6 */ \
|
||||
{ 0, BASE_BAUD, 0x1B8, 9, FOURPORT_FLAGS }, /* ttyS7 */ \
|
||||
{ 0, BASE_BAUD, 0x2A0, 5, FOURPORT_FLAGS }, /* ttyS8 */ \
|
||||
{ 0, BASE_BAUD, 0x2A8, 5, FOURPORT_FLAGS }, /* ttyS9 */ \
|
||||
{ 0, BASE_BAUD, 0x2B0, 5, FOURPORT_FLAGS }, /* ttyS10 */ \
|
||||
{ 0, BASE_BAUD, 0x2B8, 5, FOURPORT_FLAGS }, /* ttyS11 */ \
|
||||
{ 0, BASE_BAUD, 0x330, 4, ACCENT_FLAGS }, /* ttyS12 */ \
|
||||
{ 0, BASE_BAUD, 0x338, 4, ACCENT_FLAGS }, /* ttyS13 */ \
|
||||
{ 0, BASE_BAUD, 0x000, 0, 0 }, /* ttyS14 (spare) */ \
|
||||
{ 0, BASE_BAUD, 0x000, 0, 0 }, /* ttyS15 (spare) */ \
|
||||
{ 0, BASE_BAUD, 0x100, 12, BOCA_FLAGS }, /* ttyS16 */ \
|
||||
{ 0, BASE_BAUD, 0x108, 12, BOCA_FLAGS }, /* ttyS17 */ \
|
||||
{ 0, BASE_BAUD, 0x110, 12, BOCA_FLAGS }, /* ttyS18 */ \
|
||||
{ 0, BASE_BAUD, 0x118, 12, BOCA_FLAGS }, /* ttyS19 */ \
|
||||
{ 0, BASE_BAUD, 0x120, 12, BOCA_FLAGS }, /* ttyS20 */ \
|
||||
{ 0, BASE_BAUD, 0x128, 12, BOCA_FLAGS }, /* ttyS21 */ \
|
||||
{ 0, BASE_BAUD, 0x130, 12, BOCA_FLAGS }, /* ttyS22 */ \
|
||||
{ 0, BASE_BAUD, 0x138, 12, BOCA_FLAGS }, /* ttyS23 */ \
|
||||
{ 0, BASE_BAUD, 0x140, 12, BOCA_FLAGS }, /* ttyS24 */ \
|
||||
{ 0, BASE_BAUD, 0x148, 12, BOCA_FLAGS }, /* ttyS25 */ \
|
||||
{ 0, BASE_BAUD, 0x150, 12, BOCA_FLAGS }, /* ttyS26 */ \
|
||||
{ 0, BASE_BAUD, 0x158, 12, BOCA_FLAGS }, /* ttyS27 */ \
|
||||
{ 0, BASE_BAUD, 0x160, 12, BOCA_FLAGS }, /* ttyS28 */ \
|
||||
{ 0, BASE_BAUD, 0x168, 12, BOCA_FLAGS }, /* ttyS29 */ \
|
||||
{ 0, BASE_BAUD, 0x170, 12, BOCA_FLAGS }, /* ttyS30 */ \
|
||||
{ 0, BASE_BAUD, 0x178, 12, BOCA_FLAGS }, /* ttyS31 */
|
||||
#else
|
||||
#define EXTRA_SERIAL_PORT_DEFNS
|
||||
#endif
|
||||
|
||||
#define SERIAL_PORT_DFNS \
|
||||
STD_SERIAL_PORT_DEFNS \
|
||||
EXTRA_SERIAL_PORT_DEFNS
|
||||
|
|
|
@ -29,32 +29,6 @@
|
|||
#define STD_COM4_FLAGS ASYNC_BOOT_AUTOCONF
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SERIAL_MANY_PORTS
|
||||
#define FOURPORT_FLAGS ASYNC_FOURPORT
|
||||
#define ACCENT_FLAGS 0
|
||||
#define BOCA_FLAGS 0
|
||||
#define HUB6_FLAGS 0
|
||||
#define RS_TABLE_SIZE 64
|
||||
#else
|
||||
#define RS_TABLE_SIZE
|
||||
#endif
|
||||
|
||||
/*
|
||||
* The following define the access methods for the HUB6 card. All
|
||||
* access is through two ports for all 24 possible chips. The card is
|
||||
* selected through the high 2 bits, the port on that card with the
|
||||
* "middle" 3 bits, and the register on that port with the bottom
|
||||
* 3 bits.
|
||||
*
|
||||
* While the access port and interrupt is configurable, the default
|
||||
* port locations are 0x302 for the port control register, and 0x303
|
||||
* for the data read/write register. Normally, the interrupt is at irq3
|
||||
* but can be anything from 3 to 7 inclusive. Note that using 3 will
|
||||
* require disabling com2.
|
||||
*/
|
||||
|
||||
#define C_P(card,port) (((card)<<6|(port)<<3) + 1)
|
||||
|
||||
#ifdef CONFIG_MACH_JAZZ
|
||||
#include <asm/jazz.h>
|
||||
|
||||
|
@ -240,66 +214,10 @@
|
|||
{ 0, BASE_BAUD, 0x3E8, 4, STD_COM_FLAGS }, /* ttyS2 */ \
|
||||
{ 0, BASE_BAUD, 0x2E8, 3, STD_COM4_FLAGS }, /* ttyS3 */
|
||||
|
||||
#ifdef CONFIG_SERIAL_MANY_PORTS
|
||||
#define EXTRA_SERIAL_PORT_DEFNS \
|
||||
{ 0, BASE_BAUD, 0x1A0, 9, FOURPORT_FLAGS }, /* ttyS4 */ \
|
||||
{ 0, BASE_BAUD, 0x1A8, 9, FOURPORT_FLAGS }, /* ttyS5 */ \
|
||||
{ 0, BASE_BAUD, 0x1B0, 9, FOURPORT_FLAGS }, /* ttyS6 */ \
|
||||
{ 0, BASE_BAUD, 0x1B8, 9, FOURPORT_FLAGS }, /* ttyS7 */ \
|
||||
{ 0, BASE_BAUD, 0x2A0, 5, FOURPORT_FLAGS }, /* ttyS8 */ \
|
||||
{ 0, BASE_BAUD, 0x2A8, 5, FOURPORT_FLAGS }, /* ttyS9 */ \
|
||||
{ 0, BASE_BAUD, 0x2B0, 5, FOURPORT_FLAGS }, /* ttyS10 */ \
|
||||
{ 0, BASE_BAUD, 0x2B8, 5, FOURPORT_FLAGS }, /* ttyS11 */ \
|
||||
{ 0, BASE_BAUD, 0x330, 4, ACCENT_FLAGS }, /* ttyS12 */ \
|
||||
{ 0, BASE_BAUD, 0x338, 4, ACCENT_FLAGS }, /* ttyS13 */ \
|
||||
{ 0, BASE_BAUD, 0x000, 0, 0 }, /* ttyS14 (spare) */ \
|
||||
{ 0, BASE_BAUD, 0x000, 0, 0 }, /* ttyS15 (spare) */ \
|
||||
{ 0, BASE_BAUD, 0x100, 12, BOCA_FLAGS }, /* ttyS16 */ \
|
||||
{ 0, BASE_BAUD, 0x108, 12, BOCA_FLAGS }, /* ttyS17 */ \
|
||||
{ 0, BASE_BAUD, 0x110, 12, BOCA_FLAGS }, /* ttyS18 */ \
|
||||
{ 0, BASE_BAUD, 0x118, 12, BOCA_FLAGS }, /* ttyS19 */ \
|
||||
{ 0, BASE_BAUD, 0x120, 12, BOCA_FLAGS }, /* ttyS20 */ \
|
||||
{ 0, BASE_BAUD, 0x128, 12, BOCA_FLAGS }, /* ttyS21 */ \
|
||||
{ 0, BASE_BAUD, 0x130, 12, BOCA_FLAGS }, /* ttyS22 */ \
|
||||
{ 0, BASE_BAUD, 0x138, 12, BOCA_FLAGS }, /* ttyS23 */ \
|
||||
{ 0, BASE_BAUD, 0x140, 12, BOCA_FLAGS }, /* ttyS24 */ \
|
||||
{ 0, BASE_BAUD, 0x148, 12, BOCA_FLAGS }, /* ttyS25 */ \
|
||||
{ 0, BASE_BAUD, 0x150, 12, BOCA_FLAGS }, /* ttyS26 */ \
|
||||
{ 0, BASE_BAUD, 0x158, 12, BOCA_FLAGS }, /* ttyS27 */ \
|
||||
{ 0, BASE_BAUD, 0x160, 12, BOCA_FLAGS }, /* ttyS28 */ \
|
||||
{ 0, BASE_BAUD, 0x168, 12, BOCA_FLAGS }, /* ttyS29 */ \
|
||||
{ 0, BASE_BAUD, 0x170, 12, BOCA_FLAGS }, /* ttyS30 */ \
|
||||
{ 0, BASE_BAUD, 0x178, 12, BOCA_FLAGS }, /* ttyS31 */
|
||||
#else /* CONFIG_SERIAL_MANY_PORTS */
|
||||
#define EXTRA_SERIAL_PORT_DEFNS
|
||||
#endif /* CONFIG_SERIAL_MANY_PORTS */
|
||||
|
||||
#else /* CONFIG_HAVE_STD_PC_SERIAL_PORTS */
|
||||
#define STD_SERIAL_PORT_DEFNS
|
||||
#define EXTRA_SERIAL_PORT_DEFNS
|
||||
#endif /* CONFIG_HAVE_STD_PC_SERIAL_PORTS */
|
||||
|
||||
/* You can have up to four HUB6's in the system, but I've only
|
||||
* included two cards here for a total of twelve ports.
|
||||
*/
|
||||
#if (defined(CONFIG_HUB6) && defined(CONFIG_SERIAL_MANY_PORTS))
|
||||
#define HUB6_SERIAL_PORT_DFNS \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,0) }, /* ttyS32 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,1) }, /* ttyS33 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,2) }, /* ttyS34 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,3) }, /* ttyS35 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,4) }, /* ttyS36 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,5) }, /* ttyS37 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,0) }, /* ttyS38 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,1) }, /* ttyS39 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,2) }, /* ttyS40 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,3) }, /* ttyS41 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,4) }, /* ttyS42 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,5) }, /* ttyS43 */
|
||||
#else
|
||||
#define HUB6_SERIAL_PORT_DFNS
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_MOMENCO_JAGUAR_ATX
|
||||
/* Ordinary NS16552 duart with a 20MHz crystal. */
|
||||
#define JAGUAR_ATX_UART_CLK 20000000
|
||||
|
@ -427,8 +345,6 @@
|
|||
COBALT_SERIAL_PORT_DEFNS \
|
||||
DDB5477_SERIAL_PORT_DEFNS \
|
||||
EV96100_SERIAL_PORT_DEFNS \
|
||||
EXTRA_SERIAL_PORT_DEFNS \
|
||||
HUB6_SERIAL_PORT_DFNS \
|
||||
IP32_SERIAL_PORT_DEFNS \
|
||||
ITE_SERIAL_PORT_DEFNS \
|
||||
IVR_SERIAL_PORT_DEFNS \
|
||||
|
|
|
@ -19,18 +19,4 @@
|
|||
* A500 w/ PCI serial cards: 5 + 4 * card ~= 17
|
||||
*/
|
||||
|
||||
#define STD_SERIAL_PORT_DEFNS \
|
||||
{ 0, }, /* ttyS0 */ \
|
||||
{ 0, }, /* ttyS1 */ \
|
||||
{ 0, }, /* ttyS2 */ \
|
||||
{ 0, }, /* ttyS3 */ \
|
||||
{ 0, }, /* ttyS4 */ \
|
||||
{ 0, }, /* ttyS5 */ \
|
||||
{ 0, }, /* ttyS6 */ \
|
||||
{ 0, }, /* ttyS7 */ \
|
||||
{ 0, }, /* ttyS8 */
|
||||
|
||||
|
||||
#define SERIAL_PORT_DFNS \
|
||||
STD_SERIAL_PORT_DEFNS
|
||||
|
||||
#define SERIAL_PORT_DFNS
|
||||
|
|
|
@ -35,93 +35,9 @@
|
|||
#define STD_COM4_FLAGS ASYNC_BOOT_AUTOCONF
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SERIAL_MANY_PORTS
|
||||
#define FOURPORT_FLAGS ASYNC_FOURPORT
|
||||
#define ACCENT_FLAGS 0
|
||||
#define BOCA_FLAGS 0
|
||||
#define HUB6_FLAGS 0
|
||||
#endif
|
||||
|
||||
/*
|
||||
* The following define the access methods for the HUB6 card. All
|
||||
* access is through two ports for all 24 possible chips. The card is
|
||||
* selected through the high 2 bits, the port on that card with the
|
||||
* "middle" 3 bits, and the register on that port with the bottom
|
||||
* 3 bits.
|
||||
*
|
||||
* While the access port and interrupt is configurable, the default
|
||||
* port locations are 0x302 for the port control register, and 0x303
|
||||
* for the data read/write register. Normally, the interrupt is at irq3
|
||||
* but can be anything from 3 to 7 inclusive. Note that using 3 will
|
||||
* require disabling com2.
|
||||
*/
|
||||
|
||||
#define C_P(card,port) (((card)<<6|(port)<<3) + 1)
|
||||
|
||||
#define STD_SERIAL_PORT_DEFNS \
|
||||
#define SERIAL_PORT_DFNS \
|
||||
/* UART CLK PORT IRQ FLAGS */ \
|
||||
{ 0, BASE_BAUD, 0x3F8, 4, STD_COM_FLAGS }, /* ttyS0 */ \
|
||||
{ 0, BASE_BAUD, 0x2F8, 3, STD_COM_FLAGS }, /* ttyS1 */ \
|
||||
{ 0, BASE_BAUD, 0x3E8, 4, STD_COM_FLAGS }, /* ttyS2 */ \
|
||||
{ 0, BASE_BAUD, 0x2E8, 3, STD_COM4_FLAGS }, /* ttyS3 */
|
||||
|
||||
|
||||
#ifdef CONFIG_SERIAL_MANY_PORTS
|
||||
#define EXTRA_SERIAL_PORT_DEFNS \
|
||||
{ 0, BASE_BAUD, 0x1A0, 9, FOURPORT_FLAGS }, /* ttyS4 */ \
|
||||
{ 0, BASE_BAUD, 0x1A8, 9, FOURPORT_FLAGS }, /* ttyS5 */ \
|
||||
{ 0, BASE_BAUD, 0x1B0, 9, FOURPORT_FLAGS }, /* ttyS6 */ \
|
||||
{ 0, BASE_BAUD, 0x1B8, 9, FOURPORT_FLAGS }, /* ttyS7 */ \
|
||||
{ 0, BASE_BAUD, 0x2A0, 5, FOURPORT_FLAGS }, /* ttyS8 */ \
|
||||
{ 0, BASE_BAUD, 0x2A8, 5, FOURPORT_FLAGS }, /* ttyS9 */ \
|
||||
{ 0, BASE_BAUD, 0x2B0, 5, FOURPORT_FLAGS }, /* ttyS10 */ \
|
||||
{ 0, BASE_BAUD, 0x2B8, 5, FOURPORT_FLAGS }, /* ttyS11 */ \
|
||||
{ 0, BASE_BAUD, 0x330, 4, ACCENT_FLAGS }, /* ttyS12 */ \
|
||||
{ 0, BASE_BAUD, 0x338, 4, ACCENT_FLAGS }, /* ttyS13 */ \
|
||||
{ 0, BASE_BAUD, 0x000, 0, 0 }, /* ttyS14 (spare) */ \
|
||||
{ 0, BASE_BAUD, 0x000, 0, 0 }, /* ttyS15 (spare) */ \
|
||||
{ 0, BASE_BAUD, 0x100, 12, BOCA_FLAGS }, /* ttyS16 */ \
|
||||
{ 0, BASE_BAUD, 0x108, 12, BOCA_FLAGS }, /* ttyS17 */ \
|
||||
{ 0, BASE_BAUD, 0x110, 12, BOCA_FLAGS }, /* ttyS18 */ \
|
||||
{ 0, BASE_BAUD, 0x118, 12, BOCA_FLAGS }, /* ttyS19 */ \
|
||||
{ 0, BASE_BAUD, 0x120, 12, BOCA_FLAGS }, /* ttyS20 */ \
|
||||
{ 0, BASE_BAUD, 0x128, 12, BOCA_FLAGS }, /* ttyS21 */ \
|
||||
{ 0, BASE_BAUD, 0x130, 12, BOCA_FLAGS }, /* ttyS22 */ \
|
||||
{ 0, BASE_BAUD, 0x138, 12, BOCA_FLAGS }, /* ttyS23 */ \
|
||||
{ 0, BASE_BAUD, 0x140, 12, BOCA_FLAGS }, /* ttyS24 */ \
|
||||
{ 0, BASE_BAUD, 0x148, 12, BOCA_FLAGS }, /* ttyS25 */ \
|
||||
{ 0, BASE_BAUD, 0x150, 12, BOCA_FLAGS }, /* ttyS26 */ \
|
||||
{ 0, BASE_BAUD, 0x158, 12, BOCA_FLAGS }, /* ttyS27 */ \
|
||||
{ 0, BASE_BAUD, 0x160, 12, BOCA_FLAGS }, /* ttyS28 */ \
|
||||
{ 0, BASE_BAUD, 0x168, 12, BOCA_FLAGS }, /* ttyS29 */ \
|
||||
{ 0, BASE_BAUD, 0x170, 12, BOCA_FLAGS }, /* ttyS30 */ \
|
||||
{ 0, BASE_BAUD, 0x178, 12, BOCA_FLAGS }, /* ttyS31 */
|
||||
#else
|
||||
#define EXTRA_SERIAL_PORT_DEFNS
|
||||
#endif
|
||||
|
||||
/* You can have up to four HUB6's in the system, but I've only
|
||||
* included two cards here for a total of twelve ports.
|
||||
*/
|
||||
#if (defined(CONFIG_HUB6) && defined(CONFIG_SERIAL_MANY_PORTS))
|
||||
#define HUB6_SERIAL_PORT_DFNS \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,0) }, /* ttyS32 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,1) }, /* ttyS33 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,2) }, /* ttyS34 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,3) }, /* ttyS35 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,4) }, /* ttyS36 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,5) }, /* ttyS37 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,0) }, /* ttyS38 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,1) }, /* ttyS39 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,2) }, /* ttyS40 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,3) }, /* ttyS41 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,4) }, /* ttyS42 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,5) }, /* ttyS43 */
|
||||
#else
|
||||
#define HUB6_SERIAL_PORT_DFNS
|
||||
#endif
|
||||
|
||||
#define SERIAL_PORT_DFNS \
|
||||
STD_SERIAL_PORT_DEFNS \
|
||||
EXTRA_SERIAL_PORT_DEFNS \
|
||||
HUB6_SERIAL_PORT_DFNS
|
||||
|
|
|
@ -14,13 +14,10 @@
|
|||
#define STD_COM_FLAGS (ASYNC_BOOT_AUTOCONF | ASYNC_SKIP_TEST)
|
||||
|
||||
|
||||
#define STD_SERIAL_PORT_DEFNS \
|
||||
#define SERIAL_PORT_DFNS \
|
||||
/* UART CLK PORT IRQ FLAGS */ \
|
||||
{ 0, BASE_BAUD, 0x3F8, HD64465_IRQ_UART, STD_COM_FLAGS } /* ttyS0 */
|
||||
|
||||
|
||||
#define SERIAL_PORT_DFNS STD_SERIAL_PORT_DEFNS
|
||||
|
||||
/* XXX: This should be moved ino irq.h */
|
||||
#define irq_cannonicalize(x) (x)
|
||||
|
||||
|
|
|
@ -10,13 +10,11 @@
|
|||
* it's got the keyboard controller behind it so we can't really use it
|
||||
* (without moving the keyboard driver to userspace, which doesn't sound
|
||||
* like a very good idea) */
|
||||
#define STD_SERIAL_PORT_DEFNS \
|
||||
#define SERIAL_PORT_DFNS \
|
||||
/* UART CLK PORT IRQ FLAGS */ \
|
||||
{ 0, BASE_BAUD, 0x11C00, EC3104_IRQBASE+7, STD_COM_FLAGS }, /* ttyS0 */ \
|
||||
{ 0, BASE_BAUD, 0x12000, EC3104_IRQBASE+8, STD_COM_FLAGS }, /* ttyS1 */ \
|
||||
{ 0, BASE_BAUD, 0x12400, EC3104_IRQBASE+9, STD_COM_FLAGS }, /* ttyS2 */
|
||||
|
||||
#define SERIAL_PORT_DFNS STD_SERIAL_PORT_DEFNS
|
||||
|
||||
/* XXX: This should be moved ino irq.h */
|
||||
#define irq_cannonicalize(x) (x)
|
||||
|
|
|
@ -29,20 +29,18 @@
|
|||
#ifdef CONFIG_HD64465
|
||||
#include <asm/hd64465.h>
|
||||
|
||||
#define STD_SERIAL_PORT_DEFNS \
|
||||
#define SERIAL_PORT_DFNS \
|
||||
/* UART CLK PORT IRQ FLAGS */ \
|
||||
{ 0, BASE_BAUD, 0x3F8, HD64465_IRQ_UART, STD_COM_FLAGS } /* ttyS0 */
|
||||
|
||||
#else
|
||||
|
||||
#define STD_SERIAL_PORT_DEFNS \
|
||||
#define SERIAL_PORT_DFNS \
|
||||
/* UART CLK PORT IRQ FLAGS */ \
|
||||
{ 0, BASE_BAUD, 0x3F8, 4, STD_COM_FLAGS }, /* ttyS0 */ \
|
||||
{ 0, BASE_BAUD, 0x2F8, 3, STD_COM_FLAGS } /* ttyS1 */
|
||||
|
||||
#endif
|
||||
|
||||
#define SERIAL_PORT_DFNS STD_SERIAL_PORT_DEFNS
|
||||
|
||||
#endif
|
||||
#endif /* _ASM_SERIAL_H */
|
||||
|
|
|
@ -20,13 +20,11 @@
|
|||
|
||||
#define STD_COM_FLAGS (ASYNC_BOOT_AUTOCONF | ASYNC_SKIP_TEST)
|
||||
|
||||
#define STD_SERIAL_PORT_DEFNS \
|
||||
#define SERIAL_PORT_DFNS \
|
||||
/* UART CLK PORT IRQ FLAGS */ \
|
||||
{ 0, BASE_BAUD, 0x3F8, 4, STD_COM_FLAGS }, /* ttyS0 */ \
|
||||
{ 0, BASE_BAUD, 0x2F8, 3, STD_COM_FLAGS } /* ttyS1 */
|
||||
|
||||
#define SERIAL_PORT_DFNS STD_SERIAL_PORT_DEFNS
|
||||
|
||||
/* XXX: This should be moved ino irq.h */
|
||||
#define irq_cannonicalize(x) (x)
|
||||
|
||||
|
|
|
@ -22,109 +22,9 @@
|
|||
#define STD_COM4_FLAGS ASYNC_BOOT_AUTOCONF
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SERIAL_MANY_PORTS
|
||||
#define FOURPORT_FLAGS ASYNC_FOURPORT
|
||||
#define ACCENT_FLAGS 0
|
||||
#define BOCA_FLAGS 0
|
||||
#define HUB6_FLAGS 0
|
||||
#endif
|
||||
|
||||
#define MCA_COM_FLAGS (STD_COM_FLAGS|ASYNC_BOOT_ONLYMCA)
|
||||
|
||||
/*
|
||||
* The following define the access methods for the HUB6 card. All
|
||||
* access is through two ports for all 24 possible chips. The card is
|
||||
* selected through the high 2 bits, the port on that card with the
|
||||
* "middle" 3 bits, and the register on that port with the bottom
|
||||
* 3 bits.
|
||||
*
|
||||
* While the access port and interrupt is configurable, the default
|
||||
* port locations are 0x302 for the port control register, and 0x303
|
||||
* for the data read/write register. Normally, the interrupt is at irq3
|
||||
* but can be anything from 3 to 7 inclusive. Note that using 3 will
|
||||
* require disabling com2.
|
||||
*/
|
||||
|
||||
#define C_P(card,port) (((card)<<6|(port)<<3) + 1)
|
||||
|
||||
#define STD_SERIAL_PORT_DEFNS \
|
||||
#define SERIAL_PORT_DFNS \
|
||||
/* UART CLK PORT IRQ FLAGS */ \
|
||||
{ 0, BASE_BAUD, 0x3F8, 4, STD_COM_FLAGS }, /* ttyS0 */ \
|
||||
{ 0, BASE_BAUD, 0x2F8, 3, STD_COM_FLAGS }, /* ttyS1 */ \
|
||||
{ 0, BASE_BAUD, 0x3E8, 4, STD_COM_FLAGS }, /* ttyS2 */ \
|
||||
{ 0, BASE_BAUD, 0x2E8, 3, STD_COM4_FLAGS }, /* ttyS3 */
|
||||
|
||||
|
||||
#ifdef CONFIG_SERIAL_MANY_PORTS
|
||||
#define EXTRA_SERIAL_PORT_DEFNS \
|
||||
{ 0, BASE_BAUD, 0x1A0, 9, FOURPORT_FLAGS }, /* ttyS4 */ \
|
||||
{ 0, BASE_BAUD, 0x1A8, 9, FOURPORT_FLAGS }, /* ttyS5 */ \
|
||||
{ 0, BASE_BAUD, 0x1B0, 9, FOURPORT_FLAGS }, /* ttyS6 */ \
|
||||
{ 0, BASE_BAUD, 0x1B8, 9, FOURPORT_FLAGS }, /* ttyS7 */ \
|
||||
{ 0, BASE_BAUD, 0x2A0, 5, FOURPORT_FLAGS }, /* ttyS8 */ \
|
||||
{ 0, BASE_BAUD, 0x2A8, 5, FOURPORT_FLAGS }, /* ttyS9 */ \
|
||||
{ 0, BASE_BAUD, 0x2B0, 5, FOURPORT_FLAGS }, /* ttyS10 */ \
|
||||
{ 0, BASE_BAUD, 0x2B8, 5, FOURPORT_FLAGS }, /* ttyS11 */ \
|
||||
{ 0, BASE_BAUD, 0x330, 4, ACCENT_FLAGS }, /* ttyS12 */ \
|
||||
{ 0, BASE_BAUD, 0x338, 4, ACCENT_FLAGS }, /* ttyS13 */ \
|
||||
{ 0, BASE_BAUD, 0x000, 0, 0 }, /* ttyS14 (spare) */ \
|
||||
{ 0, BASE_BAUD, 0x000, 0, 0 }, /* ttyS15 (spare) */ \
|
||||
{ 0, BASE_BAUD, 0x100, 12, BOCA_FLAGS }, /* ttyS16 */ \
|
||||
{ 0, BASE_BAUD, 0x108, 12, BOCA_FLAGS }, /* ttyS17 */ \
|
||||
{ 0, BASE_BAUD, 0x110, 12, BOCA_FLAGS }, /* ttyS18 */ \
|
||||
{ 0, BASE_BAUD, 0x118, 12, BOCA_FLAGS }, /* ttyS19 */ \
|
||||
{ 0, BASE_BAUD, 0x120, 12, BOCA_FLAGS }, /* ttyS20 */ \
|
||||
{ 0, BASE_BAUD, 0x128, 12, BOCA_FLAGS }, /* ttyS21 */ \
|
||||
{ 0, BASE_BAUD, 0x130, 12, BOCA_FLAGS }, /* ttyS22 */ \
|
||||
{ 0, BASE_BAUD, 0x138, 12, BOCA_FLAGS }, /* ttyS23 */ \
|
||||
{ 0, BASE_BAUD, 0x140, 12, BOCA_FLAGS }, /* ttyS24 */ \
|
||||
{ 0, BASE_BAUD, 0x148, 12, BOCA_FLAGS }, /* ttyS25 */ \
|
||||
{ 0, BASE_BAUD, 0x150, 12, BOCA_FLAGS }, /* ttyS26 */ \
|
||||
{ 0, BASE_BAUD, 0x158, 12, BOCA_FLAGS }, /* ttyS27 */ \
|
||||
{ 0, BASE_BAUD, 0x160, 12, BOCA_FLAGS }, /* ttyS28 */ \
|
||||
{ 0, BASE_BAUD, 0x168, 12, BOCA_FLAGS }, /* ttyS29 */ \
|
||||
{ 0, BASE_BAUD, 0x170, 12, BOCA_FLAGS }, /* ttyS30 */ \
|
||||
{ 0, BASE_BAUD, 0x178, 12, BOCA_FLAGS }, /* ttyS31 */
|
||||
#else
|
||||
#define EXTRA_SERIAL_PORT_DEFNS
|
||||
#endif
|
||||
|
||||
/* You can have up to four HUB6's in the system, but I've only
|
||||
* included two cards here for a total of twelve ports.
|
||||
*/
|
||||
#if (defined(CONFIG_HUB6) && defined(CONFIG_SERIAL_MANY_PORTS))
|
||||
#define HUB6_SERIAL_PORT_DFNS \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,0) }, /* ttyS32 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,1) }, /* ttyS33 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,2) }, /* ttyS34 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,3) }, /* ttyS35 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,4) }, /* ttyS36 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(0,5) }, /* ttyS37 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,0) }, /* ttyS38 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,1) }, /* ttyS39 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,2) }, /* ttyS40 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,3) }, /* ttyS41 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,4) }, /* ttyS42 */ \
|
||||
{ 0, BASE_BAUD, 0x302, 3, HUB6_FLAGS, C_P(1,5) }, /* ttyS43 */
|
||||
#else
|
||||
#define HUB6_SERIAL_PORT_DFNS
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_MCA
|
||||
#define MCA_SERIAL_PORT_DFNS \
|
||||
{ 0, BASE_BAUD, 0x3220, 3, MCA_COM_FLAGS }, \
|
||||
{ 0, BASE_BAUD, 0x3228, 3, MCA_COM_FLAGS }, \
|
||||
{ 0, BASE_BAUD, 0x4220, 3, MCA_COM_FLAGS }, \
|
||||
{ 0, BASE_BAUD, 0x4228, 3, MCA_COM_FLAGS }, \
|
||||
{ 0, BASE_BAUD, 0x5220, 3, MCA_COM_FLAGS }, \
|
||||
{ 0, BASE_BAUD, 0x5228, 3, MCA_COM_FLAGS },
|
||||
#else
|
||||
#define MCA_SERIAL_PORT_DFNS
|
||||
#endif
|
||||
|
||||
#define SERIAL_PORT_DFNS \
|
||||
STD_SERIAL_PORT_DEFNS \
|
||||
EXTRA_SERIAL_PORT_DEFNS \
|
||||
HUB6_SERIAL_PORT_DFNS \
|
||||
MCA_SERIAL_PORT_DFNS
|
||||
|
||||
|
|
Loading…
Reference in New Issue