Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 11aadac4 authored by Andrew Victor's avatar Andrew Victor Committed by Russell King
Browse files

[ARM] 4982/1: [AT91] Drop old-style UART initialization (Part 1)



All the SAM9 boards supported by mainline and the AT91 patches have
been converted to the new-style UART initialization.  Therefore drop
support for the old at91_init_serial() interface for SAM9.

at91_uarts[] array can also be marked as __initdata.

The warning that no serial-console is defined moved from
at91_set_serial_console() to at91_add_device_serial() since the whole
point is the board-specific file is not calling
at91_set_serial_console().

Signed-off-by: default avatarAndrew Victor <linux@maxim.org.za>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 2f036ac6
Loading
Loading
Loading
Loading
+6 −4
Original line number Original line Diff line number Diff line
@@ -16,7 +16,7 @@


#include <linux/dma-mapping.h>
#include <linux/dma-mapping.h>
#include <linux/platform_device.h>
#include <linux/platform_device.h>
#include <linux/mtd/physmap.h>
#include <linux/i2c-gpio.h>


#include <video/atmel_lcdc.h>
#include <video/atmel_lcdc.h>


@@ -349,6 +349,7 @@ void __init at91_add_device_nand(struct at91_nand_data *data)
void __init at91_add_device_nand(struct at91_nand_data *data) {}
void __init at91_add_device_nand(struct at91_nand_data *data) {}
#endif
#endif



/* --------------------------------------------------------------------
/* --------------------------------------------------------------------
 *  TWI (i2c)
 *  TWI (i2c)
 * -------------------------------------------------------------------- */
 * -------------------------------------------------------------------- */
@@ -1041,7 +1042,7 @@ static inline void configure_usart2_pins(unsigned pins)
		at91_set_B_periph(AT91_PIN_PD6, 0);	/* CTS2 */
		at91_set_B_periph(AT91_PIN_PD6, 0);	/* CTS2 */
}
}


static struct platform_device *at91_uarts[ATMEL_MAX_UART];	/* the UARTs to use */
static struct platform_device *__initdata at91_uarts[ATMEL_MAX_UART];	/* the UARTs to use */
struct platform_device *atmel_default_console_device;	/* the serial console device */
struct platform_device *atmel_default_console_device;	/* the serial console device */


void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins)
void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins)
@@ -1082,8 +1083,6 @@ void __init at91_set_serial_console(unsigned portnr)
{
{
	if (portnr < ATMEL_MAX_UART)
	if (portnr < ATMEL_MAX_UART)
		atmel_default_console_device = at91_uarts[portnr];
		atmel_default_console_device = at91_uarts[portnr];
	if (!atmel_default_console_device)
		printk(KERN_INFO "AT91: No default serial console defined.\n");
}
}


void __init at91_add_device_serial(void)
void __init at91_add_device_serial(void)
@@ -1094,6 +1093,9 @@ void __init at91_add_device_serial(void)
		if (at91_uarts[i])
		if (at91_uarts[i])
			platform_device_register(at91_uarts[i]);
			platform_device_register(at91_uarts[i]);
	}
	}

	if (!atmel_default_console_device)
		printk(KERN_INFO "AT91: No default serial console defined.\n");
}
}
#else
#else
void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins) {}
void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins) {}
+4 −3
Original line number Original line Diff line number Diff line
@@ -1103,7 +1103,7 @@ static inline void configure_usart3_pins(unsigned pins)
		at91_set_B_periph(AT91_PIN_PB0, 0);	/* RTS3 */
		at91_set_B_periph(AT91_PIN_PB0, 0);	/* RTS3 */
}
}


static struct platform_device *at91_uarts[ATMEL_MAX_UART];	/* the UARTs to use */
static struct platform_device *__initdata at91_uarts[ATMEL_MAX_UART];	/* the UARTs to use */
struct platform_device *atmel_default_console_device;	/* the serial console device */
struct platform_device *atmel_default_console_device;	/* the serial console device */


void __init __deprecated at91_init_serial(struct at91_uart_config *config)
void __init __deprecated at91_init_serial(struct at91_uart_config *config)
@@ -1194,8 +1194,6 @@ void __init at91_set_serial_console(unsigned portnr)
{
{
	if (portnr < ATMEL_MAX_UART)
	if (portnr < ATMEL_MAX_UART)
		atmel_default_console_device = at91_uarts[portnr];
		atmel_default_console_device = at91_uarts[portnr];
	if (!atmel_default_console_device)
		printk(KERN_INFO "AT91: No default serial console defined.\n");
}
}


void __init at91_add_device_serial(void)
void __init at91_add_device_serial(void)
@@ -1206,6 +1204,9 @@ void __init at91_add_device_serial(void)
		if (at91_uarts[i])
		if (at91_uarts[i])
			platform_device_register(at91_uarts[i]);
			platform_device_register(at91_uarts[i]);
	}
	}

	if (!atmel_default_console_device)
		printk(KERN_INFO "AT91: No default serial console defined.\n");
}
}
#else
#else
void __init __deprecated at91_init_serial(struct at91_uart_config *config) {}
void __init __deprecated at91_init_serial(struct at91_uart_config *config) {}
+4 −59
Original line number Original line Diff line number Diff line
@@ -1051,64 +1051,9 @@ static inline void configure_usart5_pins(void)
	at91_set_A_periph(AT91_PIN_PB13, 0);		/* RXD5 */
	at91_set_A_periph(AT91_PIN_PB13, 0);		/* RXD5 */
}
}


static struct platform_device *at91_uarts[ATMEL_MAX_UART];	/* the UARTs to use */
static struct platform_device *__initdata at91_uarts[ATMEL_MAX_UART];	/* the UARTs to use */
struct platform_device *atmel_default_console_device;	/* the serial console device */
struct platform_device *atmel_default_console_device;	/* the serial console device */


void __init __deprecated at91_init_serial(struct at91_uart_config *config)
{
	int i;

	/* Fill in list of supported UARTs */
	for (i = 0; i < config->nr_tty; i++) {
		switch (config->tty_map[i]) {
			case 0:
				configure_usart0_pins(ATMEL_UART_CTS | ATMEL_UART_RTS | ATMEL_UART_DSR | ATMEL_UART_DTR | ATMEL_UART_DCD | ATMEL_UART_RI);
				at91_uarts[i] = &at91sam9260_uart0_device;
				at91_clock_associate("usart0_clk", &at91sam9260_uart0_device.dev, "usart");
				break;
			case 1:
				configure_usart1_pins(ATMEL_UART_CTS | ATMEL_UART_RTS);
				at91_uarts[i] = &at91sam9260_uart1_device;
				at91_clock_associate("usart1_clk", &at91sam9260_uart1_device.dev, "usart");
				break;
			case 2:
				configure_usart2_pins(0);
				at91_uarts[i] = &at91sam9260_uart2_device;
				at91_clock_associate("usart2_clk", &at91sam9260_uart2_device.dev, "usart");
				break;
			case 3:
				configure_usart3_pins(0);
				at91_uarts[i] = &at91sam9260_uart3_device;
				at91_clock_associate("usart3_clk", &at91sam9260_uart3_device.dev, "usart");
				break;
			case 4:
				configure_usart4_pins();
				at91_uarts[i] = &at91sam9260_uart4_device;
				at91_clock_associate("usart4_clk", &at91sam9260_uart4_device.dev, "usart");
				break;
			case 5:
				configure_usart5_pins();
				at91_uarts[i] = &at91sam9260_uart5_device;
				at91_clock_associate("usart5_clk", &at91sam9260_uart5_device.dev, "usart");
				break;
			case 6:
				configure_dbgu_pins();
				at91_uarts[i] = &at91sam9260_dbgu_device;
				at91_clock_associate("mck", &at91sam9260_dbgu_device.dev, "usart");
				break;
			default:
				continue;
		}
		at91_uarts[i]->id = i;		/* update ID number to mapped ID */
	}

	/* Set serial console device */
	if (config->console_tty < ATMEL_MAX_UART)
		atmel_default_console_device = at91_uarts[config->console_tty];
	if (!atmel_default_console_device)
		printk(KERN_INFO "AT91: No default serial console defined.\n");
}

void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins)
void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins)
{
{
	struct platform_device *pdev;
	struct platform_device *pdev;
@@ -1162,8 +1107,6 @@ void __init at91_set_serial_console(unsigned portnr)
{
{
	if (portnr < ATMEL_MAX_UART)
	if (portnr < ATMEL_MAX_UART)
		atmel_default_console_device = at91_uarts[portnr];
		atmel_default_console_device = at91_uarts[portnr];
	if (!atmel_default_console_device)
		printk(KERN_INFO "AT91: No default serial console defined.\n");
}
}


void __init at91_add_device_serial(void)
void __init at91_add_device_serial(void)
@@ -1174,9 +1117,11 @@ void __init at91_add_device_serial(void)
		if (at91_uarts[i])
		if (at91_uarts[i])
			platform_device_register(at91_uarts[i]);
			platform_device_register(at91_uarts[i]);
	}
	}

	if (!atmel_default_console_device)
		printk(KERN_INFO "AT91: No default serial console defined.\n");
}
}
#else
#else
void __init __deprecated at91_init_serial(struct at91_uart_config *config) {}
void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins) {}
void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins) {}
void __init at91_set_serial_console(unsigned portnr) {}
void __init at91_set_serial_console(unsigned portnr) {}
void __init at91_add_device_serial(void) {}
void __init at91_add_device_serial(void) {}
+4 −44
Original line number Original line Diff line number Diff line
@@ -987,49 +987,9 @@ static inline void configure_usart2_pins(unsigned pins)
		at91_set_B_periph(AT91_PIN_PA16, 0);	/* CTS2 */
		at91_set_B_periph(AT91_PIN_PA16, 0);	/* CTS2 */
}
}


static struct platform_device *at91_uarts[ATMEL_MAX_UART];	/* the UARTs to use */
static struct platform_device *__initdata at91_uarts[ATMEL_MAX_UART];	/* the UARTs to use */
struct platform_device *atmel_default_console_device;	/* the serial console device */
struct platform_device *atmel_default_console_device;	/* the serial console device */


void __init __deprecated at91_init_serial(struct at91_uart_config *config)
{
	int i;

	/* Fill in list of supported UARTs */
	for (i = 0; i < config->nr_tty; i++) {
		switch (config->tty_map[i]) {
			case 0:
				configure_usart0_pins(ATMEL_UART_CTS | ATMEL_UART_RTS);
				at91_uarts[i] = &at91sam9261_uart0_device;
				at91_clock_associate("usart0_clk", &at91sam9261_uart0_device.dev, "usart");
				break;
			case 1:
				configure_usart1_pins(0);
				at91_uarts[i] = &at91sam9261_uart1_device;
				at91_clock_associate("usart1_clk", &at91sam9261_uart1_device.dev, "usart");
				break;
			case 2:
				configure_usart2_pins(0);
				at91_uarts[i] = &at91sam9261_uart2_device;
				at91_clock_associate("usart2_clk", &at91sam9261_uart2_device.dev, "usart");
				break;
			case 3:
				configure_dbgu_pins();
				at91_uarts[i] = &at91sam9261_dbgu_device;
				at91_clock_associate("mck", &at91sam9261_dbgu_device.dev, "usart");
				break;
			default:
				continue;
		}
		at91_uarts[i]->id = i;		/* update ID number to mapped ID */
	}

	/* Set serial console device */
	if (config->console_tty < ATMEL_MAX_UART)
		atmel_default_console_device = at91_uarts[config->console_tty];
	if (!atmel_default_console_device)
		printk(KERN_INFO "AT91: No default serial console defined.\n");
}

void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins)
void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins)
{
{
	struct platform_device *pdev;
	struct platform_device *pdev;
@@ -1068,8 +1028,6 @@ void __init at91_set_serial_console(unsigned portnr)
{
{
	if (portnr < ATMEL_MAX_UART)
	if (portnr < ATMEL_MAX_UART)
		atmel_default_console_device = at91_uarts[portnr];
		atmel_default_console_device = at91_uarts[portnr];
	if (!atmel_default_console_device)
		printk(KERN_INFO "AT91: No default serial console defined.\n");
}
}


void __init at91_add_device_serial(void)
void __init at91_add_device_serial(void)
@@ -1080,9 +1038,11 @@ void __init at91_add_device_serial(void)
		if (at91_uarts[i])
		if (at91_uarts[i])
			platform_device_register(at91_uarts[i]);
			platform_device_register(at91_uarts[i]);
	}
	}

	if (!atmel_default_console_device)
		printk(KERN_INFO "AT91: No default serial console defined.\n");
}
}
#else
#else
void __init __deprecated at91_init_serial(struct at91_uart_config *config) {}
void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins) {}
void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins) {}
void __init at91_set_serial_console(unsigned portnr) {}
void __init at91_set_serial_console(unsigned portnr) {}
void __init at91_add_device_serial(void) {}
void __init at91_add_device_serial(void) {}
+4 −47
Original line number Original line Diff line number Diff line
@@ -975,9 +975,6 @@ static inline void configure_ssc1_pins(unsigned pins)
}
}


/*
/*
 * Return the device node so that board init code can use it as the
 * parent for the device node reflecting how it's used on this board.
 *
 * SSC controllers are accessed through library code, instead of any
 * SSC controllers are accessed through library code, instead of any
 * kind of all-singing/all-dancing driver.  For example one could be
 * kind of all-singing/all-dancing driver.  For example one could be
 * used by a particular I2S audio codec's driver, while another one
 * used by a particular I2S audio codec's driver, while another one
@@ -1188,49 +1185,9 @@ static inline void configure_usart2_pins(unsigned pins)
		at91_set_B_periph(AT91_PIN_PD6, 0);	/* CTS2 */
		at91_set_B_periph(AT91_PIN_PD6, 0);	/* CTS2 */
}
}


static struct platform_device *at91_uarts[ATMEL_MAX_UART];	/* the UARTs to use */
static struct platform_device *__initdata at91_uarts[ATMEL_MAX_UART];	/* the UARTs to use */
struct platform_device *atmel_default_console_device;	/* the serial console device */
struct platform_device *atmel_default_console_device;	/* the serial console device */


void __init __deprecated at91_init_serial(struct at91_uart_config *config)
{
	int i;

	/* Fill in list of supported UARTs */
	for (i = 0; i < config->nr_tty; i++) {
		switch (config->tty_map[i]) {
			case 0:
				configure_usart0_pins(ATMEL_UART_CTS | ATMEL_UART_RTS);
				at91_uarts[i] = &at91sam9263_uart0_device;
				at91_clock_associate("usart0_clk", &at91sam9263_uart0_device.dev, "usart");
				break;
			case 1:
				configure_usart1_pins(ATMEL_UART_CTS | ATMEL_UART_RTS);
				at91_uarts[i] = &at91sam9263_uart1_device;
				at91_clock_associate("usart1_clk", &at91sam9263_uart1_device.dev, "usart");
				break;
			case 2:
				configure_usart2_pins(ATMEL_UART_CTS | ATMEL_UART_RTS);
				at91_uarts[i] = &at91sam9263_uart2_device;
				at91_clock_associate("usart2_clk", &at91sam9263_uart2_device.dev, "usart");
				break;
			case 3:
				configure_dbgu_pins();
				at91_uarts[i] = &at91sam9263_dbgu_device;
				at91_clock_associate("mck", &at91sam9263_dbgu_device.dev, "usart");
				break;
			default:
				continue;
		}
		at91_uarts[i]->id = i;		/* update ID number to mapped ID */
	}

	/* Set serial console device */
	if (config->console_tty < ATMEL_MAX_UART)
		atmel_default_console_device = at91_uarts[config->console_tty];
	if (!atmel_default_console_device)
		printk(KERN_INFO "AT91: No default serial console defined.\n");
}

void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins)
void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins)
{
{
	struct platform_device *pdev;
	struct platform_device *pdev;
@@ -1269,8 +1226,6 @@ void __init at91_set_serial_console(unsigned portnr)
{
{
	if (portnr < ATMEL_MAX_UART)
	if (portnr < ATMEL_MAX_UART)
		atmel_default_console_device = at91_uarts[portnr];
		atmel_default_console_device = at91_uarts[portnr];
	if (!atmel_default_console_device)
		printk(KERN_INFO "AT91: No default serial console defined.\n");
}
}


void __init at91_add_device_serial(void)
void __init at91_add_device_serial(void)
@@ -1281,9 +1236,11 @@ void __init at91_add_device_serial(void)
		if (at91_uarts[i])
		if (at91_uarts[i])
			platform_device_register(at91_uarts[i]);
			platform_device_register(at91_uarts[i]);
	}
	}

	if (!atmel_default_console_device)
		printk(KERN_INFO "AT91: No default serial console defined.\n");
}
}
#else
#else
void __init at91_init_serial(struct at91_uart_config *config) {}
void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins) {}
void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins) {}
void __init at91_set_serial_console(unsigned portnr) {}
void __init at91_set_serial_console(unsigned portnr) {}
void __init at91_add_device_serial(void) {}
void __init at91_add_device_serial(void) {}
Loading