Commit 71b149b3 authored by Jean-Christophe PLAGNIOL-VILLARD's avatar Jean-Christophe PLAGNIOL-VILLARD Committed by Nicolas Ferre

ARM: at91: do not pin mux the UARTs in init_early

There is no need to pinmux the UART so early in the kernel.
Move it to the board init.

This will also allow to finally move the gpio driver to platform device/driver.
Signed-off-by: default avatarJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Acked-by: default avatarNicolas Ferre <nicolas.ferre@atmel.com>
parent a27fa581
...@@ -47,17 +47,6 @@ static void __init onearm_init_early(void) ...@@ -47,17 +47,6 @@ static void __init onearm_init_early(void)
/* Initialize processor: 18.432 MHz crystal */ /* Initialize processor: 18.432 MHz crystal */
at91_initialize(18432000); at91_initialize(18432000);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1 (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91RM9200_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS);
/* USART1 on ttyS2 (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91RM9200_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
} }
static struct macb_platform_data __initdata onearm_eth_data = { static struct macb_platform_data __initdata onearm_eth_data = {
...@@ -79,6 +68,16 @@ static struct at91_udc_data __initdata onearm_udc_data = { ...@@ -79,6 +68,16 @@ static struct at91_udc_data __initdata onearm_udc_data = {
static void __init onearm_board_init(void) static void __init onearm_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1 (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91RM9200_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS);
/* USART1 on ttyS2 (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91RM9200_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
at91_add_device_serial(); at91_add_device_serial();
/* Ethernet */ /* Ethernet */
at91_add_device_eth(&onearm_eth_data); at91_add_device_eth(&onearm_eth_data);
......
...@@ -52,19 +52,6 @@ static void __init afeb9260_init_early(void) ...@@ -52,19 +52,6 @@ static void __init afeb9260_init_early(void)
{ {
/* Initialize processor: 18.432 MHz crystal */ /* Initialize processor: 18.432 MHz crystal */
at91_initialize(18432000); at91_initialize(18432000);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1,
ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR
| ATMEL_UART_DCD | ATMEL_UART_RI);
/* USART1 on ttyS2. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9260_ID_US1, 2,
ATMEL_UART_CTS | ATMEL_UART_RTS);
} }
/* /*
...@@ -180,6 +167,18 @@ static struct at91_cf_data afeb9260_cf_data = { ...@@ -180,6 +167,18 @@ static struct at91_cf_data afeb9260_cf_data = {
static void __init afeb9260_board_init(void) static void __init afeb9260_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1,
ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR
| ATMEL_UART_DCD | ATMEL_UART_RI);
/* USART1 on ttyS2. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9260_ID_US1, 2,
ATMEL_UART_CTS | ATMEL_UART_RTS);
at91_add_device_serial(); at91_add_device_serial();
/* USB Host */ /* USB Host */
at91_add_device_usbh(&afeb9260_usbh_data); at91_add_device_usbh(&afeb9260_usbh_data);
......
...@@ -49,9 +49,6 @@ static void __init cam60_init_early(void) ...@@ -49,9 +49,6 @@ static void __init cam60_init_early(void)
{ {
/* Initialize processor: 10 MHz crystal */ /* Initialize processor: 10 MHz crystal */
at91_initialize(10000000); at91_initialize(10000000);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
} }
/* /*
...@@ -172,6 +169,8 @@ static void __init cam60_add_device_nand(void) ...@@ -172,6 +169,8 @@ static void __init cam60_add_device_nand(void)
static void __init cam60_board_init(void) static void __init cam60_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
at91_add_device_serial(); at91_add_device_serial();
/* SPI */ /* SPI */
at91_add_device_spi(cam60_spi_devices, ARRAY_SIZE(cam60_spi_devices)); at91_add_device_spi(cam60_spi_devices, ARRAY_SIZE(cam60_spi_devices));
......
...@@ -44,14 +44,6 @@ static void __init carmeva_init_early(void) ...@@ -44,14 +44,6 @@ static void __init carmeva_init_early(void)
{ {
/* Initialize processor: 20.000 MHz crystal */ /* Initialize processor: 20.000 MHz crystal */
at91_initialize(20000000); at91_initialize(20000000);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART1 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91RM9200_ID_US1, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
} }
static struct macb_platform_data __initdata carmeva_eth_data = { static struct macb_platform_data __initdata carmeva_eth_data = {
...@@ -136,6 +128,13 @@ static struct gpio_led carmeva_leds[] = { ...@@ -136,6 +128,13 @@ static struct gpio_led carmeva_leds[] = {
static void __init carmeva_board_init(void) static void __init carmeva_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART1 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91RM9200_ID_US1, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
at91_add_device_serial(); at91_add_device_serial();
/* Ethernet */ /* Ethernet */
at91_add_device_eth(&carmeva_eth_data); at91_add_device_eth(&carmeva_eth_data);
......
...@@ -52,31 +52,6 @@ static void __init cpu9krea_init_early(void) ...@@ -52,31 +52,6 @@ static void __init cpu9krea_init_early(void)
{ {
/* Initialize processor: 18.432 MHz crystal */ /* Initialize processor: 18.432 MHz crystal */
at91_initialize(18432000); at91_initialize(18432000);
/* DGBU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS |
ATMEL_UART_RTS | ATMEL_UART_DTR | ATMEL_UART_DSR |
ATMEL_UART_DCD | ATMEL_UART_RI);
/* USART1 on ttyS2. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS |
ATMEL_UART_RTS);
/* USART2 on ttyS3. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9260_ID_US2, 3, ATMEL_UART_CTS |
ATMEL_UART_RTS);
/* USART3 on ttyS4. (Rx, Tx) */
at91_register_uart(AT91SAM9260_ID_US3, 4, 0);
/* USART4 on ttyS5. (Rx, Tx) */
at91_register_uart(AT91SAM9260_ID_US4, 5, 0);
/* USART5 on ttyS6. (Rx, Tx) */
at91_register_uart(AT91SAM9260_ID_US5, 6, 0);
} }
/* /*
...@@ -349,6 +324,30 @@ static void __init cpu9krea_board_init(void) ...@@ -349,6 +324,30 @@ static void __init cpu9krea_board_init(void)
/* NOR */ /* NOR */
cpu9krea_add_device_nor(); cpu9krea_add_device_nor();
/* Serial */ /* Serial */
/* DGBU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS |
ATMEL_UART_RTS | ATMEL_UART_DTR | ATMEL_UART_DSR |
ATMEL_UART_DCD | ATMEL_UART_RI);
/* USART1 on ttyS2. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS |
ATMEL_UART_RTS);
/* USART2 on ttyS3. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9260_ID_US2, 3, ATMEL_UART_CTS |
ATMEL_UART_RTS);
/* USART3 on ttyS4. (Rx, Tx) */
at91_register_uart(AT91SAM9260_ID_US3, 4, 0);
/* USART4 on ttyS5. (Rx, Tx) */
at91_register_uart(AT91SAM9260_ID_US4, 5, 0);
/* USART5 on ttyS6. (Rx, Tx) */
at91_register_uart(AT91SAM9260_ID_US5, 6, 0);
at91_add_device_serial(); at91_add_device_serial();
/* USB Host */ /* USB Host */
at91_add_device_usbh(&cpu9krea_usbh_data); at91_add_device_usbh(&cpu9krea_usbh_data);
......
...@@ -59,25 +59,6 @@ static void __init cpuat91_init_early(void) ...@@ -59,25 +59,6 @@ static void __init cpuat91_init_early(void)
/* Initialize processor: 18.432 MHz crystal */ /* Initialize processor: 18.432 MHz crystal */
at91_initialize(18432000); at91_initialize(18432000);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91RM9200_ID_US0, 1, ATMEL_UART_CTS |
ATMEL_UART_RTS);
/* USART1 on ttyS2. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91RM9200_ID_US1, 2, ATMEL_UART_CTS |
ATMEL_UART_RTS | ATMEL_UART_DTR | ATMEL_UART_DSR |
ATMEL_UART_DCD | ATMEL_UART_RI);
/* USART2 on ttyS3 (Rx, Tx) */
at91_register_uart(AT91RM9200_ID_US2, 3, 0);
/* USART3 on ttyS4 (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91RM9200_ID_US3, 4, ATMEL_UART_CTS |
ATMEL_UART_RTS);
} }
static struct macb_platform_data __initdata cpuat91_eth_data = { static struct macb_platform_data __initdata cpuat91_eth_data = {
...@@ -158,6 +139,24 @@ static struct platform_device *platform_devices[] __initdata = { ...@@ -158,6 +139,24 @@ static struct platform_device *platform_devices[] __initdata = {
static void __init cpuat91_board_init(void) static void __init cpuat91_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91RM9200_ID_US0, 1, ATMEL_UART_CTS |
ATMEL_UART_RTS);
/* USART1 on ttyS2. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91RM9200_ID_US1, 2, ATMEL_UART_CTS |
ATMEL_UART_RTS | ATMEL_UART_DTR | ATMEL_UART_DSR |
ATMEL_UART_DCD | ATMEL_UART_RI);
/* USART2 on ttyS3 (Rx, Tx) */
at91_register_uart(AT91RM9200_ID_US2, 3, 0);
/* USART3 on ttyS4 (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91RM9200_ID_US3, 4, ATMEL_UART_CTS |
ATMEL_UART_RTS);
at91_add_device_serial(); at91_add_device_serial();
/* LEDs. */ /* LEDs. */
at91_gpio_leds(cpuat91_leds, ARRAY_SIZE(cpuat91_leds)); at91_gpio_leds(cpuat91_leds, ARRAY_SIZE(cpuat91_leds));
......
...@@ -50,9 +50,6 @@ static void __init csb337_init_early(void) ...@@ -50,9 +50,6 @@ static void __init csb337_init_early(void)
/* Setup the LEDs */ /* Setup the LEDs */
at91_init_leds(AT91_PIN_PB0, AT91_PIN_PB1); at91_init_leds(AT91_PIN_PB0, AT91_PIN_PB1);
/* DBGU on ttyS0 */
at91_register_uart(0, 0, 0);
} }
static struct macb_platform_data __initdata csb337_eth_data = { static struct macb_platform_data __initdata csb337_eth_data = {
...@@ -226,6 +223,8 @@ static struct gpio_led csb_leds[] = { ...@@ -226,6 +223,8 @@ static struct gpio_led csb_leds[] = {
static void __init csb337_board_init(void) static void __init csb337_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0 */
at91_register_uart(0, 0, 0);
at91_add_device_serial(); at91_add_device_serial();
/* Ethernet */ /* Ethernet */
at91_add_device_eth(&csb337_eth_data); at91_add_device_eth(&csb337_eth_data);
......
...@@ -44,9 +44,6 @@ static void __init csb637_init_early(void) ...@@ -44,9 +44,6 @@ static void __init csb637_init_early(void)
{ {
/* Initialize processor: 3.6864 MHz crystal */ /* Initialize processor: 3.6864 MHz crystal */
at91_initialize(3686400); at91_initialize(3686400);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
} }
static struct macb_platform_data __initdata csb637_eth_data = { static struct macb_platform_data __initdata csb637_eth_data = {
...@@ -115,6 +112,8 @@ static void __init csb637_board_init(void) ...@@ -115,6 +112,8 @@ static void __init csb637_board_init(void)
/* LED(s) */ /* LED(s) */
at91_gpio_leds(csb_leds, ARRAY_SIZE(csb_leds)); at91_gpio_leds(csb_leds, ARRAY_SIZE(csb_leds));
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
at91_add_device_serial(); at91_add_device_serial();
/* Ethernet */ /* Ethernet */
at91_add_device_eth(&csb637_eth_data); at91_add_device_eth(&csb637_eth_data);
......
...@@ -44,17 +44,6 @@ static void __init eb9200_init_early(void) ...@@ -44,17 +44,6 @@ static void __init eb9200_init_early(void)
{ {
/* Initialize processor: 18.432 MHz crystal */ /* Initialize processor: 18.432 MHz crystal */
at91_initialize(18432000); at91_initialize(18432000);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART1 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91RM9200_ID_US1, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
/* USART2 on ttyS2. (Rx, Tx) - IRDA */
at91_register_uart(AT91RM9200_ID_US2, 2, 0);
} }
static struct macb_platform_data __initdata eb9200_eth_data = { static struct macb_platform_data __initdata eb9200_eth_data = {
...@@ -98,6 +87,16 @@ static struct i2c_board_info __initdata eb9200_i2c_devices[] = { ...@@ -98,6 +87,16 @@ static struct i2c_board_info __initdata eb9200_i2c_devices[] = {
static void __init eb9200_board_init(void) static void __init eb9200_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART1 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91RM9200_ID_US1, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
/* USART2 on ttyS2. (Rx, Tx) - IRDA */
at91_register_uart(AT91RM9200_ID_US2, 2, 0);
at91_add_device_serial(); at91_add_device_serial();
/* Ethernet */ /* Ethernet */
at91_add_device_eth(&eb9200_eth_data); at91_add_device_eth(&eb9200_eth_data);
......
...@@ -53,12 +53,6 @@ static void __init ecb_at91init_early(void) ...@@ -53,12 +53,6 @@ static void __init ecb_at91init_early(void)
/* Setup the LEDs */ /* Setup the LEDs */
at91_init_leds(AT91_PIN_PC7, AT91_PIN_PC7); at91_init_leds(AT91_PIN_PC7, AT91_PIN_PC7);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx & Tx only) */
at91_register_uart(AT91RM9200_ID_US0, 1, 0);
} }
static struct macb_platform_data __initdata ecb_at91eth_data = { static struct macb_platform_data __initdata ecb_at91eth_data = {
...@@ -149,6 +143,11 @@ static struct spi_board_info __initdata ecb_at91spi_devices[] = { ...@@ -149,6 +143,11 @@ static struct spi_board_info __initdata ecb_at91spi_devices[] = {
static void __init ecb_at91board_init(void) static void __init ecb_at91board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx & Tx only) */
at91_register_uart(AT91RM9200_ID_US0, 1, 0);
at91_add_device_serial(); at91_add_device_serial();
/* Ethernet */ /* Ethernet */
......
...@@ -40,9 +40,6 @@ static void __init eco920_init_early(void) ...@@ -40,9 +40,6 @@ static void __init eco920_init_early(void)
/* Setup the LEDs */ /* Setup the LEDs */
at91_init_leds(AT91_PIN_PB0, AT91_PIN_PB1); at91_init_leds(AT91_PIN_PB0, AT91_PIN_PB1);
/* DBGU on ttyS0. (Rx & Tx only */
at91_register_uart(0, 0, 0);
} }
static struct macb_platform_data __initdata eco920_eth_data = { static struct macb_platform_data __initdata eco920_eth_data = {
...@@ -100,6 +97,8 @@ static struct spi_board_info eco920_spi_devices[] = { ...@@ -100,6 +97,8 @@ static struct spi_board_info eco920_spi_devices[] = {
static void __init eco920_board_init(void) static void __init eco920_board_init(void)
{ {
/* DBGU on ttyS0. (Rx & Tx only */
at91_register_uart(0, 0, 0);
at91_add_device_serial(); at91_add_device_serial();
at91_add_device_eth(&eco920_eth_data); at91_add_device_eth(&eco920_eth_data);
at91_add_device_usbh(&eco920_usbh_data); at91_add_device_usbh(&eco920_usbh_data);
......
...@@ -41,9 +41,6 @@ static void __init flexibity_init_early(void) ...@@ -41,9 +41,6 @@ static void __init flexibity_init_early(void)
{ {
/* Initialize processor: 18.432 MHz crystal */ /* Initialize processor: 18.432 MHz crystal */
at91_initialize(18432000); at91_initialize(18432000);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
} }
/* USB Host port */ /* USB Host port */
...@@ -140,6 +137,8 @@ static struct gpio_led flexibity_leds[] = { ...@@ -140,6 +137,8 @@ static struct gpio_led flexibity_leds[] = {
static void __init flexibity_board_init(void) static void __init flexibity_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
at91_add_device_serial(); at91_add_device_serial();
/* USB Host */ /* USB Host */
at91_add_device_usbh(&flexibity_usbh_data); at91_add_device_usbh(&flexibity_usbh_data);
......
...@@ -61,41 +61,6 @@ static void __init foxg20_init_early(void) ...@@ -61,41 +61,6 @@ static void __init foxg20_init_early(void)
{ {
/* Initialize processor: 18.432 MHz crystal */ /* Initialize processor: 18.432 MHz crystal */
at91_initialize(18432000); at91_initialize(18432000);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1,
ATMEL_UART_CTS
| ATMEL_UART_RTS
| ATMEL_UART_DTR
| ATMEL_UART_DSR
| ATMEL_UART_DCD
| ATMEL_UART_RI);
/* USART1 on ttyS2. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9260_ID_US1, 2,
ATMEL_UART_CTS
| ATMEL_UART_RTS);
/* USART2 on ttyS3. (Rx & Tx only) */
at91_register_uart(AT91SAM9260_ID_US2, 3, 0);
/* USART3 on ttyS4. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9260_ID_US3, 4,
ATMEL_UART_CTS
| ATMEL_UART_RTS);
/* USART4 on ttyS5. (Rx & Tx only) */
at91_register_uart(AT91SAM9260_ID_US4, 5, 0);
/* USART5 on ttyS6. (Rx & Tx only) */
at91_register_uart(AT91SAM9260_ID_US5, 6, 0);
/* Set the internal pull-up resistor on DRXD */
at91_set_A_periph(AT91_PIN_PB14, 1);
} }
/* /*
...@@ -238,6 +203,39 @@ static struct i2c_board_info __initdata foxg20_i2c_devices[] = { ...@@ -238,6 +203,39 @@ static struct i2c_board_info __initdata foxg20_i2c_devices[] = {
static void __init foxg20_board_init(void) static void __init foxg20_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1,
ATMEL_UART_CTS
| ATMEL_UART_RTS
| ATMEL_UART_DTR
| ATMEL_UART_DSR
| ATMEL_UART_DCD
| ATMEL_UART_RI);
/* USART1 on ttyS2. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9260_ID_US1, 2,
ATMEL_UART_CTS
| ATMEL_UART_RTS);
/* USART2 on ttyS3. (Rx & Tx only) */
at91_register_uart(AT91SAM9260_ID_US2, 3, 0);
/* USART3 on ttyS4. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9260_ID_US3, 4,
ATMEL_UART_CTS
| ATMEL_UART_RTS);
/* USART4 on ttyS5. (Rx & Tx only) */
at91_register_uart(AT91SAM9260_ID_US4, 5, 0);
/* USART5 on ttyS6. (Rx & Tx only) */
at91_register_uart(AT91SAM9260_ID_US5, 6, 0);
/* Set the internal pull-up resistor on DRXD */
at91_set_A_periph(AT91_PIN_PB14, 1);
at91_add_device_serial(); at91_add_device_serial();
/* USB Host */ /* USB Host */
at91_add_device_usbh(&foxg20_usbh_data); at91_add_device_usbh(&foxg20_usbh_data);
......
...@@ -41,38 +41,6 @@ ...@@ -41,38 +41,6 @@
static void __init gsia18s_init_early(void) static void __init gsia18s_init_early(void)
{ {
stamp9g20_init_early(); stamp9g20_init_early();
/*
* USART0 on ttyS1 (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI).
* Used for Internal Analog Modem.
*/
at91_register_uart(AT91SAM9260_ID_US0, 1,
ATMEL_UART_CTS | ATMEL_UART_RTS |
ATMEL_UART_DTR | ATMEL_UART_DSR |
ATMEL_UART_DCD | ATMEL_UART_RI);
/*
* USART1 on ttyS2 (Rx, Tx, CTS, RTS).
* Used for GPS or WiFi or Data stream.
*/
at91_register_uart(AT91SAM9260_ID_US1, 2,
ATMEL_UART_CTS | ATMEL_UART_RTS);
/*
* USART2 on ttyS3 (Rx, Tx, CTS, RTS).
* Used for External Modem.
*/
at91_register_uart(AT91SAM9260_ID_US2, 3,
ATMEL_UART_CTS | ATMEL_UART_RTS);
/*
* USART3 on ttyS4 (Rx, Tx, RTS).
* Used for RS-485.
*/
at91_register_uart(AT91SAM9260_ID_US3, 4, ATMEL_UART_RTS);
/*
* USART4 on ttyS5 (Rx, Tx).
* Used for TRX433 Radio Module.
*/
at91_register_uart(AT91SAM9260_ID_US4, 5, 0);
} }
/* /*
...@@ -558,6 +526,37 @@ static int __init gsia18s_power_off_init(void) ...@@ -558,6 +526,37 @@ static int __init gsia18s_power_off_init(void)
static void __init gsia18s_board_init(void) static void __init gsia18s_board_init(void)
{ {
/*
* USART0 on ttyS1 (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI).
* Used for Internal Analog Modem.
*/
at91_register_uart(AT91SAM9260_ID_US0, 1,
ATMEL_UART_CTS | ATMEL_UART_RTS |
ATMEL_UART_DTR | ATMEL_UART_DSR |
ATMEL_UART_DCD | ATMEL_UART_RI);
/*
* USART1 on ttyS2 (Rx, Tx, CTS, RTS).
* Used for GPS or WiFi or Data stream.
*/
at91_register_uart(AT91SAM9260_ID_US1, 2,
ATMEL_UART_CTS | ATMEL_UART_RTS);
/*
* USART2 on ttyS3 (Rx, Tx, CTS, RTS).
* Used for External Modem.
*/
at91_register_uart(AT91SAM9260_ID_US2, 3,
ATMEL_UART_CTS | ATMEL_UART_RTS);
/*
* USART3 on ttyS4 (Rx, Tx, RTS).
* Used for RS-485.
*/
at91_register_uart(AT91SAM9260_ID_US3, 4, ATMEL_UART_RTS);
/*
* USART4 on ttyS5 (Rx, Tx).
* Used for TRX433 Radio Module.
*/
at91_register_uart(AT91SAM9260_ID_US4, 5, 0);
stamp9g20_board_init(); stamp9g20_board_init();
at91_add_device_usbh(&usbh_data); at91_add_device_usbh(&usbh_data);
at91_add_device_udc(&udc_data); at91_add_device_udc(&udc_data);
......
...@@ -50,12 +50,6 @@ static void __init kafa_init_early(void) ...@@ -50,12 +50,6 @@ static void __init kafa_init_early(void)
/* Set up the LEDs */ /* Set up the LEDs */
at91_init_leds(AT91_PIN_PB4, AT91_PIN_PB4); at91_init_leds(AT91_PIN_PB4, AT91_PIN_PB4);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1 (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91RM9200_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS);
} }
static struct macb_platform_data __initdata kafa_eth_data = { static struct macb_platform_data __initdata kafa_eth_data = {
...@@ -77,6 +71,11 @@ static struct at91_udc_data __initdata kafa_udc_data = { ...@@ -77,6 +71,11 @@ static struct at91_udc_data __initdata kafa_udc_data = {
static void __init kafa_board_init(void) static void __init kafa_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1 (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91RM9200_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS);
at91_add_device_serial(); at91_add_device_serial();
/* Ethernet */ /* Ethernet */
at91_add_device_eth(&kafa_eth_data); at91_add_device_eth(&kafa_eth_data);
......
...@@ -53,18 +53,6 @@ static void __init kb9202_init_early(void) ...@@ -53,18 +53,6 @@ static void __init kb9202_init_early(void)
/* Set up the LEDs */ /* Set up the LEDs */
at91_init_leds(AT91_PIN_PC19, AT91_PIN_PC18); at91_init_leds(AT91_PIN_PC19, AT91_PIN_PC18);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1 (Rx & Tx only) */
at91_register_uart(AT91RM9200_ID_US0, 1, 0);
/* USART1 on ttyS2 (Rx & Tx only) - IRDA (optional) */
at91_register_uart(AT91RM9200_ID_US1, 2, 0);
/* USART3 on ttyS3 (Rx, Tx, CTS, RTS) - RS485 (optional) */
at91_register_uart(AT91RM9200_ID_US3, 3, ATMEL_UART_CTS | ATMEL_UART_RTS);
} }
static struct macb_platform_data __initdata kb9202_eth_data = { static struct macb_platform_data __initdata kb9202_eth_data = {
...@@ -113,6 +101,17 @@ static struct atmel_nand_data __initdata kb9202_nand_data = { ...@@ -113,6 +101,17 @@ static struct atmel_nand_data __initdata kb9202_nand_data = {
static void __init kb9202_board_init(void) static void __init kb9202_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1 (Rx & Tx only) */
at91_register_uart(AT91RM9200_ID_US0, 1, 0);
/* USART1 on ttyS2 (Rx & Tx only) - IRDA (optional) */
at91_register_uart(AT91RM9200_ID_US1, 2, 0);
/* USART3 on ttyS3 (Rx, Tx, CTS, RTS) - RS485 (optional) */
at91_register_uart(AT91RM9200_ID_US3, 3, ATMEL_UART_CTS | ATMEL_UART_RTS);
at91_add_device_serial(); at91_add_device_serial();
/* Ethernet */ /* Ethernet */
at91_add_device_eth(&kb9202_eth_data); at91_add_device_eth(&kb9202_eth_data);
......
...@@ -55,12 +55,6 @@ static void __init neocore926_init_early(void) ...@@ -55,12 +55,6 @@ static void __init neocore926_init_early(void)
{ {
/* Initialize processor: 20 MHz crystal */ /* Initialize processor: 20 MHz crystal */
at91_initialize(20000000); at91_initialize(20000000);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9263_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS);
} }
/* /*
...@@ -338,6 +332,11 @@ static struct ac97c_platform_data neocore926_ac97_data = { ...@@ -338,6 +332,11 @@ static struct ac97c_platform_data neocore926_ac97_data = {
static void __init neocore926_board_init(void) static void __init neocore926_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9263_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS);
at91_add_device_serial(); at91_add_device_serial();
/* USB Host */ /* USB Host */
......
...@@ -40,17 +40,6 @@ ...@@ -40,17 +40,6 @@
static void __init pcontrol_g20_init_early(void) static void __init pcontrol_g20_init_early(void)
{ {
stamp9g20_init_early(); stamp9g20_init_early();
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS) piggyback A2 */
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS
| ATMEL_UART_RTS);
/* USART1 on ttyS2. (Rx, Tx, CTS, RTS) isolated RS485 X5 */
at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS
| ATMEL_UART_RTS);
/* USART2 on ttyS3. (Rx, Tx) 9bit-Bus Multidrop-mode X4 */
at91_register_uart(AT91SAM9260_ID_US4, 3, 0);
} }
static struct sam9_smc_config __initdata pcontrol_smc_config[2] = { { static struct sam9_smc_config __initdata pcontrol_smc_config[2] = { {
...@@ -199,6 +188,16 @@ static struct spi_board_info pcontrol_g20_spi_devices[] = { ...@@ -199,6 +188,16 @@ static struct spi_board_info pcontrol_g20_spi_devices[] = {
static void __init pcontrol_g20_board_init(void) static void __init pcontrol_g20_board_init(void)
{ {
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS) piggyback A2 */
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS
| ATMEL_UART_RTS);
/* USART1 on ttyS2. (Rx, Tx, CTS, RTS) isolated RS485 X5 */
at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS
| ATMEL_UART_RTS);
/* USART2 on ttyS3. (Rx, Tx) 9bit-Bus Multidrop-mode X4 */
at91_register_uart(AT91SAM9260_ID_US4, 3, 0);
stamp9g20_board_init(); stamp9g20_board_init();
at91_add_device_usbh(&usbh_data); at91_add_device_usbh(&usbh_data);
at91_add_device_eth(&macb_data); at91_add_device_eth(&macb_data);
......
...@@ -48,14 +48,6 @@ static void __init picotux200_init_early(void) ...@@ -48,14 +48,6 @@ static void __init picotux200_init_early(void)
{ {
/* Initialize processor: 18.432 MHz crystal */ /* Initialize processor: 18.432 MHz crystal */
at91_initialize(18432000); at91_initialize(18432000);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART1 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91RM9200_ID_US1, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
} }
static struct macb_platform_data __initdata picotux200_eth_data = { static struct macb_platform_data __initdata picotux200_eth_data = {
...@@ -103,6 +95,13 @@ static struct platform_device picotux200_flash = { ...@@ -103,6 +95,13 @@ static struct platform_device picotux200_flash = {
static void __init picotux200_board_init(void) static void __init picotux200_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART1 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91RM9200_ID_US1, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
at91_add_device_serial(); at91_add_device_serial();
/* Ethernet */ /* Ethernet */
at91_add_device_eth(&picotux200_eth_data); at91_add_device_eth(&picotux200_eth_data);
......
...@@ -52,20 +52,6 @@ static void __init ek_init_early(void) ...@@ -52,20 +52,6 @@ static void __init ek_init_early(void)
{ {
/* Initialize processor: 12.000 MHz crystal */ /* Initialize processor: 12.000 MHz crystal */
at91_initialize(12000000); at91_initialize(12000000);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
/* USART1 on ttyS2. (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS);
/* USART2 on ttyS3. (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91SAM9260_ID_US2, 3, ATMEL_UART_CTS | ATMEL_UART_RTS);
} }
/* /*
...@@ -231,6 +217,19 @@ static struct gpio_led ek_leds[] = { ...@@ -231,6 +217,19 @@ static struct gpio_led ek_leds[] = {
static void __init ek_board_init(void) static void __init ek_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
/* USART1 on ttyS2. (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS);
/* USART2 on ttyS3. (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91SAM9260_ID_US2, 3, ATMEL_UART_CTS | ATMEL_UART_RTS);
at91_add_device_serial(); at91_add_device_serial();
/* USB Host */ /* USB Host */
at91_add_device_usbh(&ek_usbh_data); at91_add_device_usbh(&ek_usbh_data);
......
...@@ -53,14 +53,6 @@ static void __init dk_init_early(void) ...@@ -53,14 +53,6 @@ static void __init dk_init_early(void)
/* Setup the LEDs */ /* Setup the LEDs */
at91_init_leds(AT91_PIN_PB2, AT91_PIN_PB2); at91_init_leds(AT91_PIN_PB2, AT91_PIN_PB2);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART1 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91RM9200_ID_US1, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
} }
static struct macb_platform_data __initdata dk_eth_data = { static struct macb_platform_data __initdata dk_eth_data = {
...@@ -188,6 +180,13 @@ static struct gpio_led dk_leds[] = { ...@@ -188,6 +180,13 @@ static struct gpio_led dk_leds[] = {
static void __init dk_board_init(void) static void __init dk_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART1 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91RM9200_ID_US1, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
at91_add_device_serial(); at91_add_device_serial();
/* Ethernet */ /* Ethernet */
at91_add_device_eth(&dk_eth_data); at91_add_device_eth(&dk_eth_data);
......
...@@ -53,14 +53,6 @@ static void __init ek_init_early(void) ...@@ -53,14 +53,6 @@ static void __init ek_init_early(void)
/* Setup the LEDs */ /* Setup the LEDs */
at91_init_leds(AT91_PIN_PB1, AT91_PIN_PB2); at91_init_leds(AT91_PIN_PB1, AT91_PIN_PB2);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART1 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91RM9200_ID_US1, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
} }
static struct macb_platform_data __initdata ek_eth_data = { static struct macb_platform_data __initdata ek_eth_data = {
...@@ -159,6 +151,13 @@ static struct gpio_led ek_leds[] = { ...@@ -159,6 +151,13 @@ static struct gpio_led ek_leds[] = {
static void __init ek_board_init(void) static void __init ek_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART1 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91RM9200_ID_US1, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
at91_add_device_serial(); at91_add_device_serial();
/* Ethernet */ /* Ethernet */
at91_add_device_eth(&ek_eth_data); at91_add_device_eth(&ek_eth_data);
......
...@@ -38,20 +38,6 @@ static void __init rsi_ews_init_early(void) ...@@ -38,20 +38,6 @@ static void __init rsi_ews_init_early(void)
/* Setup the LEDs */ /* Setup the LEDs */
at91_init_leds(AT91_PIN_PB6, AT91_PIN_PB9); at91_init_leds(AT91_PIN_PB6, AT91_PIN_PB9);
/* DBGU on ttyS0. (Rx & Tx only) */
/* This one is for debugging */
at91_register_uart(0, 0, 0);
/* USART1 on ttyS2. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
/* Dialin/-out modem interface */
at91_register_uart(AT91RM9200_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
/* USART3 on ttyS4. (Rx, Tx, RTS) */
/* RS485 communication */
at91_register_uart(AT91RM9200_ID_US3, 4, ATMEL_UART_RTS);
} }
/* /*
...@@ -202,6 +188,19 @@ static struct platform_device rsiews_nor_flash = { ...@@ -202,6 +188,19 @@ static struct platform_device rsiews_nor_flash = {
static void __init rsi_ews_board_init(void) static void __init rsi_ews_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
/* This one is for debugging */
at91_register_uart(0, 0, 0);
/* USART1 on ttyS2. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
/* Dialin/-out modem interface */
at91_register_uart(AT91RM9200_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
/* USART3 on ttyS4. (Rx, Tx, RTS) */
/* RS485 communication */
at91_register_uart(AT91RM9200_ID_US3, 4, ATMEL_UART_RTS);
at91_add_device_serial(); at91_add_device_serial();
at91_set_gpio_output(AT91_PIN_PA21, 0); at91_set_gpio_output(AT91_PIN_PA21, 0);
/* Ethernet */ /* Ethernet */
......
...@@ -51,17 +51,6 @@ static void __init ek_init_early(void) ...@@ -51,17 +51,6 @@ static void __init ek_init_early(void)
/* Setup the LEDs */ /* Setup the LEDs */
at91_init_leds(AT91_PIN_PA9, AT91_PIN_PA6); at91_init_leds(AT91_PIN_PA9, AT91_PIN_PA6);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
/* USART1 on ttyS2. (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS);
} }
/* /*
...@@ -182,6 +171,16 @@ static struct at91_mmc_data __initdata ek_mmc_data = { ...@@ -182,6 +171,16 @@ static struct at91_mmc_data __initdata ek_mmc_data = {
static void __init ek_board_init(void) static void __init ek_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
/* USART1 on ttyS2. (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS);
at91_add_device_serial(); at91_add_device_serial();
/* USB Host */ /* USB Host */
at91_add_device_usbh(&ek_usbh_data); at91_add_device_usbh(&ek_usbh_data);
......
...@@ -54,17 +54,6 @@ static void __init ek_init_early(void) ...@@ -54,17 +54,6 @@ static void __init ek_init_early(void)
{ {
/* Initialize processor: 18.432 MHz crystal */ /* Initialize processor: 18.432 MHz crystal */
at91_initialize(18432000); at91_initialize(18432000);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
/* USART1 on ttyS2. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS);
} }
/* /*
...@@ -317,6 +306,16 @@ static void __init ek_add_device_buttons(void) {} ...@@ -317,6 +306,16 @@ static void __init ek_add_device_buttons(void) {}
static void __init ek_board_init(void) static void __init ek_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
/* USART1 on ttyS2. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS);
at91_add_device_serial(); at91_add_device_serial();
/* USB Host */ /* USB Host */
at91_add_device_usbh(&ek_usbh_data); at91_add_device_usbh(&ek_usbh_data);
......
...@@ -61,9 +61,6 @@ static void __init ek_init_early(void) ...@@ -61,9 +61,6 @@ static void __init ek_init_early(void)
/* Setup the LEDs */ /* Setup the LEDs */
at91_init_leds(AT91_PIN_PA13, AT91_PIN_PA14); at91_init_leds(AT91_PIN_PA13, AT91_PIN_PA14);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
} }
/* /*
...@@ -574,6 +571,8 @@ static struct gpio_led ek_leds[] = { ...@@ -574,6 +571,8 @@ static struct gpio_led ek_leds[] = {
static void __init ek_board_init(void) static void __init ek_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
at91_add_device_serial(); at91_add_device_serial();
/* USB Host */ /* USB Host */
at91_add_device_usbh(&ek_usbh_data); at91_add_device_usbh(&ek_usbh_data);
......
...@@ -57,12 +57,6 @@ static void __init ek_init_early(void) ...@@ -57,12 +57,6 @@ static void __init ek_init_early(void)
{ {
/* Initialize processor: 16.367 MHz crystal */ /* Initialize processor: 16.367 MHz crystal */
at91_initialize(16367660); at91_initialize(16367660);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9263_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS);
} }
/* /*
...@@ -409,6 +403,11 @@ static struct at91_can_data ek_can_data = { ...@@ -409,6 +403,11 @@ static struct at91_can_data ek_can_data = {
static void __init ek_board_init(void) static void __init ek_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9263_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS);
at91_add_device_serial(); at91_add_device_serial();
/* USB Host */ /* USB Host */
at91_add_device_usbh(&ek_usbh_data); at91_add_device_usbh(&ek_usbh_data);
......
...@@ -65,17 +65,6 @@ static void __init ek_init_early(void) ...@@ -65,17 +65,6 @@ static void __init ek_init_early(void)
{ {
/* Initialize processor: 18.432 MHz crystal */ /* Initialize processor: 18.432 MHz crystal */
at91_initialize(18432000); at91_initialize(18432000);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
/* USART1 on ttyS2. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS);
} }
/* /*
...@@ -369,6 +358,16 @@ static struct i2c_board_info __initdata ek_i2c_devices[] = { ...@@ -369,6 +358,16 @@ static struct i2c_board_info __initdata ek_i2c_devices[] = {
static void __init ek_board_init(void) static void __init ek_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
/* USART1 on ttyS2. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS);
at91_add_device_serial(); at91_add_device_serial();
/* USB Host */ /* USB Host */
at91_add_device_usbh(&ek_usbh_data); at91_add_device_usbh(&ek_usbh_data);
......
...@@ -53,13 +53,6 @@ static void __init ek_init_early(void) ...@@ -53,13 +53,6 @@ static void __init ek_init_early(void)
{ {
/* Initialize processor: 12.000 MHz crystal */ /* Initialize processor: 12.000 MHz crystal */
at91_initialize(12000000); at91_initialize(12000000);
/* DGBU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 not connected on the -EK board */
/* USART1 on ttyS2. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9G45_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS);
} }
/* /*
...@@ -454,6 +447,12 @@ static struct platform_device *devices[] __initdata = { ...@@ -454,6 +447,12 @@ static struct platform_device *devices[] __initdata = {
static void __init ek_board_init(void) static void __init ek_board_init(void)
{ {
/* Serial */ /* Serial */
/* DGBU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 not connected on the -EK board */
/* USART1 on ttyS2. (Rx, Tx, RTS, CTS) */
at91_register_uart(AT91SAM9G45_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS);
at91_add_device_serial(); at91_add_device_serial();
/* USB HS Host */ /* USB HS Host */
at91_add_device_usbh_ohci(&ek_usbh_hs_data); at91_add_device_usbh_ohci(&ek_usbh_hs_data);
......
...@@ -42,12 +42,6 @@ static void __init ek_init_early(void) ...@@ -42,12 +42,6 @@ static void __init ek_init_early(void)
{ {
/* Initialize processor: 12.000 MHz crystal */ /* Initialize processor: 12.000 MHz crystal */
at91_initialize(12000000); at91_initialize(12000000);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91SAM9RL_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS);
} }
/* /*
...@@ -293,6 +287,11 @@ static void __init ek_add_device_buttons(void) {} ...@@ -293,6 +287,11 @@ static void __init ek_add_device_buttons(void) {}
static void __init ek_board_init(void) static void __init ek_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91SAM9RL_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS);
at91_add_device_serial(); at91_add_device_serial();
/* USB HS */ /* USB HS */
at91_add_device_usba(&ek_usba_udc_data); at91_add_device_usba(&ek_usba_udc_data);
......
...@@ -43,15 +43,6 @@ ...@@ -43,15 +43,6 @@
static void __init snapper9260_init_early(void) static void __init snapper9260_init_early(void)
{ {
at91_initialize(18432000); at91_initialize(18432000);
/* Debug on ttyS0 */
at91_register_uart(0, 0, 0);
at91_register_uart(AT91SAM9260_ID_US0, 1,
ATMEL_UART_CTS | ATMEL_UART_RTS);
at91_register_uart(AT91SAM9260_ID_US1, 2,
ATMEL_UART_CTS | ATMEL_UART_RTS);
at91_register_uart(AT91SAM9260_ID_US2, 3, 0);
} }
static struct at91_usbh_data __initdata snapper9260_usbh_data = { static struct at91_usbh_data __initdata snapper9260_usbh_data = {
...@@ -167,6 +158,14 @@ static void __init snapper9260_board_init(void) ...@@ -167,6 +158,14 @@ static void __init snapper9260_board_init(void)
snapper9260_i2c_isl1208.irq = gpio_to_irq(AT91_PIN_PA31); snapper9260_i2c_isl1208.irq = gpio_to_irq(AT91_PIN_PA31);
i2c_register_board_info(0, &snapper9260_i2c_isl1208, 1); i2c_register_board_info(0, &snapper9260_i2c_isl1208, 1);
/* Debug on ttyS0 */
at91_register_uart(0, 0, 0);
at91_register_uart(AT91SAM9260_ID_US0, 1,
ATMEL_UART_CTS | ATMEL_UART_RTS);
at91_register_uart(AT91SAM9260_ID_US1, 2,
ATMEL_UART_CTS | ATMEL_UART_RTS);
at91_register_uart(AT91SAM9260_ID_US2, 3, 0);
at91_add_device_serial(); at91_add_device_serial();
at91_add_device_usbh(&snapper9260_usbh_data); at91_add_device_usbh(&snapper9260_usbh_data);
at91_add_device_udc(&snapper9260_udc_data); at91_add_device_udc(&snapper9260_udc_data);
......
...@@ -36,41 +36,6 @@ void __init stamp9g20_init_early(void) ...@@ -36,41 +36,6 @@ void __init stamp9g20_init_early(void)
{ {
/* Initialize processor: 18.432 MHz crystal */ /* Initialize processor: 18.432 MHz crystal */
at91_initialize(18432000); at91_initialize(18432000);
/* DGBU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
}
static void __init stamp9g20evb_init_early(void)
{
stamp9g20_init_early();
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR
| ATMEL_UART_DCD | ATMEL_UART_RI);
}
static void __init portuxg20_init_early(void)
{
stamp9g20_init_early();
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR
| ATMEL_UART_DCD | ATMEL_UART_RI);
/* USART1 on ttyS2. (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS);
/* USART2 on ttyS3. (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91SAM9260_ID_US2, 3, ATMEL_UART_CTS | ATMEL_UART_RTS);
/* USART4 on ttyS5. (Rx, Tx only) */
at91_register_uart(AT91SAM9260_ID_US4, 5, 0);
/* USART5 on ttyS6. (Rx, Tx only) */
at91_register_uart(AT91SAM9260_ID_US5, 6, 0);
} }
/* /*
...@@ -251,6 +216,8 @@ void add_w1(void) ...@@ -251,6 +216,8 @@ void add_w1(void)
void __init stamp9g20_board_init(void) void __init stamp9g20_board_init(void)
{ {
/* Serial */ /* Serial */
/* DGBU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
at91_add_device_serial(); at91_add_device_serial();
/* NAND */ /* NAND */
add_device_nand(); add_device_nand();
...@@ -266,6 +233,22 @@ void __init stamp9g20_board_init(void) ...@@ -266,6 +233,22 @@ void __init stamp9g20_board_init(void)
static void __init portuxg20_board_init(void) static void __init portuxg20_board_init(void)
{ {
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR
| ATMEL_UART_DCD | ATMEL_UART_RI);
/* USART1 on ttyS2. (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS);
/* USART2 on ttyS3. (Rx, Tx, CTS, RTS) */
at91_register_uart(AT91SAM9260_ID_US2, 3, ATMEL_UART_CTS | ATMEL_UART_RTS);
/* USART4 on ttyS5. (Rx, Tx only) */
at91_register_uart(AT91SAM9260_ID_US4, 5, 0);
/* USART5 on ttyS6. (Rx, Tx only) */
at91_register_uart(AT91SAM9260_ID_US5, 6, 0);
stamp9g20_board_init(); stamp9g20_board_init();
/* USB Host */ /* USB Host */
at91_add_device_usbh(&usbh_data); at91_add_device_usbh(&usbh_data);
...@@ -283,6 +266,10 @@ static void __init portuxg20_board_init(void) ...@@ -283,6 +266,10 @@ static void __init portuxg20_board_init(void)
static void __init stamp9g20evb_board_init(void) static void __init stamp9g20evb_board_init(void)
{ {
/* USART0 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91SAM9260_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR
| ATMEL_UART_DCD | ATMEL_UART_RI);
stamp9g20_board_init(); stamp9g20_board_init();
/* USB Host */ /* USB Host */
at91_add_device_usbh(&usbh_data); at91_add_device_usbh(&usbh_data);
...@@ -300,7 +287,7 @@ MACHINE_START(PORTUXG20, "taskit PortuxG20") ...@@ -300,7 +287,7 @@ MACHINE_START(PORTUXG20, "taskit PortuxG20")
/* Maintainer: taskit GmbH */ /* Maintainer: taskit GmbH */
.timer = &at91sam926x_timer, .timer = &at91sam926x_timer,
.map_io = at91_map_io, .map_io = at91_map_io,
.init_early = portuxg20_init_early, .init_early = stamp9g20_init_early,
.init_irq = at91_init_irq_default, .init_irq = at91_init_irq_default,
.init_machine = portuxg20_board_init, .init_machine = portuxg20_board_init,
MACHINE_END MACHINE_END
...@@ -309,7 +296,7 @@ MACHINE_START(STAMP9G20, "taskit Stamp9G20") ...@@ -309,7 +296,7 @@ MACHINE_START(STAMP9G20, "taskit Stamp9G20")
/* Maintainer: taskit GmbH */ /* Maintainer: taskit GmbH */
.timer = &at91sam926x_timer, .timer = &at91sam926x_timer,
.map_io = at91_map_io, .map_io = at91_map_io,
.init_early = stamp9g20evb_init_early, .init_early = stamp9g20_init_early,
.init_irq = at91_init_irq_default, .init_irq = at91_init_irq_default,
.init_machine = stamp9g20evb_board_init, .init_machine = stamp9g20evb_board_init,
MACHINE_END MACHINE_END
...@@ -53,9 +53,6 @@ static void __init ek_init_early(void) ...@@ -53,9 +53,6 @@ static void __init ek_init_early(void)
{ {
/* Initialize processor: 12.00 MHz crystal */ /* Initialize processor: 12.00 MHz crystal */
at91_initialize(12000000); at91_initialize(12000000);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
} }
/* /*
...@@ -322,6 +319,8 @@ static void __init ek_add_device_leds(void) ...@@ -322,6 +319,8 @@ static void __init ek_add_device_leds(void)
static void __init ek_board_init(void) static void __init ek_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
at91_add_device_serial(); at91_add_device_serial();
/* USB Host */ /* USB Host */
at91_add_device_usbh(&ek_usbh_data); at91_add_device_usbh(&ek_usbh_data);
......
...@@ -61,20 +61,6 @@ static void __init yl9200_init_early(void) ...@@ -61,20 +61,6 @@ static void __init yl9200_init_early(void)
/* Setup the LEDs D2=PB17 (timer), D3=PB16 (cpu) */ /* Setup the LEDs D2=PB17 (timer), D3=PB16 (cpu) */
at91_init_leds(AT91_PIN_PB16, AT91_PIN_PB17); at91_init_leds(AT91_PIN_PB16, AT91_PIN_PB17);
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART1 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91RM9200_ID_US1, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
/* USART0 on ttyS2. (Rx & Tx only to JP3) */
at91_register_uart(AT91RM9200_ID_US0, 2, 0);
/* USART3 on ttyS3. (Rx, Tx, RTS - RS485 interface) */
at91_register_uart(AT91RM9200_ID_US3, 3, ATMEL_UART_RTS);
} }
/* /*
...@@ -558,6 +544,19 @@ void __init yl9200_add_device_video(void) {} ...@@ -558,6 +544,19 @@ void __init yl9200_add_device_video(void) {}
static void __init yl9200_board_init(void) static void __init yl9200_board_init(void)
{ {
/* Serial */ /* Serial */
/* DBGU on ttyS0. (Rx & Tx only) */
at91_register_uart(0, 0, 0);
/* USART1 on ttyS1. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */
at91_register_uart(AT91RM9200_ID_US1, 1, ATMEL_UART_CTS | ATMEL_UART_RTS
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
| ATMEL_UART_RI);
/* USART0 on ttyS2. (Rx & Tx only to JP3) */
at91_register_uart(AT91RM9200_ID_US0, 2, 0);
/* USART3 on ttyS3. (Rx, Tx, RTS - RS485 interface) */
at91_register_uart(AT91RM9200_ID_US3, 3, ATMEL_UART_RTS);
at91_add_device_serial(); at91_add_device_serial();
/* Ethernet */ /* Ethernet */
at91_add_device_eth(&yl9200_eth_data); at91_add_device_eth(&yl9200_eth_data);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment