[PATCH] atmel_serial: Support AVR32

Make CONFIG_SERIAL_ATMEL selectable on AVR32 and #ifdef out some ARM-
specific code in the driver.

Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
Acked-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Haavard Skinnemoen 2006-10-04 16:02:09 +02:00 committed by Linus Torvalds
parent 75d3521377
commit acca9b83ac
2 changed files with 16 additions and 12 deletions

View File

@ -301,31 +301,31 @@ config SERIAL_AMBA_PL011_CONSOLE
config SERIAL_ATMEL
bool "AT91 / AT32 on-chip serial port support"
depends on ARM && (ARCH_AT91RM9200 || ARCH_AT91SAM9261)
depends on (ARM && ARCH_AT91) || AVR32
select SERIAL_CORE
help
This enables the driver for the on-chip UARTs of the Atmel
AT91RM9200 and AT91SAM926 processor.
AT91 and AT32 processors.
config SERIAL_ATMEL_CONSOLE
bool "Support for console on AT91 / AT32 serial port"
depends on SERIAL_ATMEL=y
select SERIAL_CORE_CONSOLE
help
Say Y here if you wish to use a UART on the Atmel AT91RM9200 or
AT91SAM9261 as the system console (the system console is the device
which receives all kernel messages and warnings and which allows
logins in single user mode).
Say Y here if you wish to use an on-chip UART on a Atmel
AT91 or AT32 processor as the system console (the system
console is the device which receives all kernel messages and
warnings and which allows logins in single user mode).
config SERIAL_ATMEL_TTYAT
bool "Install as device ttyAT0-4 instead of ttyS0-4"
bool "Install as device ttyATn instead of ttySn"
depends on SERIAL_ATMEL=y
help
Say Y here if you wish to have the five internal AT91RM9200 UARTs
appear as /dev/ttyAT0-4 (major 204, minor 154-158) instead of the
normal /dev/ttyS0-4 (major 4, minor 64-68). This is necessary if
you also want other UARTs, such as external 8250/16C550 compatible
UARTs.
Say Y here if you wish to have the internal AT91 / AT32 UARTs
appear as /dev/ttyATn (major 204, minor starting at 154)
instead of the normal /dev/ttySn (major 4, minor starting at
64). This is necessary if you also want other UARTs, such as
external 8250/16C550 compatible UARTs.
The ttySn nodes are legally reserved for the 8250 serial driver
but are often misused by other serial drivers.

View File

@ -39,8 +39,10 @@
#include <asm/arch/at91rm9200_pdc.h>
#include <asm/mach/serial_at91.h>
#include <asm/arch/board.h>
#ifdef CONFIG_ARM
#include <asm/arch/system.h>
#include <asm/arch/gpio.h>
#endif
#include "atmel_serial.h"
@ -135,6 +137,7 @@ static void atmel_set_mctrl(struct uart_port *port, u_int mctrl)
unsigned int control = 0;
unsigned int mode;
#ifdef CONFIG_ARM
if (arch_identify() == ARCH_ID_AT91RM9200) {
/*
* AT91RM9200 Errata #39: RTS0 is not internally connected to PA21.
@ -147,6 +150,7 @@ static void atmel_set_mctrl(struct uart_port *port, u_int mctrl)
at91_set_gpio_value(AT91_PIN_PA21, 1);
}
}
#endif
if (mctrl & TIOCM_RTS)
control |= ATMEL_US_RTSEN;