diff options
Diffstat (limited to 'drivers/tty/serial/cpm_uart')
| -rw-r--r-- | drivers/tty/serial/cpm_uart/cpm_uart_core.c | 12 | ||||
| -rw-r--r-- | drivers/tty/serial/cpm_uart/cpm_uart_cpm1.c | 2 | ||||
| -rw-r--r-- | drivers/tty/serial/cpm_uart/cpm_uart_cpm2.c | 1 | 
3 files changed, 8 insertions, 7 deletions
diff --git a/drivers/tty/serial/cpm_uart/cpm_uart_core.c b/drivers/tty/serial/cpm_uart/cpm_uart_core.c index 1a535f70dc4..aa60e6d13ec 100644 --- a/drivers/tty/serial/cpm_uart/cpm_uart_core.c +++ b/drivers/tty/serial/cpm_uart/cpm_uart_core.c @@ -41,6 +41,8 @@  #include <linux/bootmem.h>  #include <linux/dma-mapping.h>  #include <linux/fs_uart_pd.h> +#include <linux/of_address.h> +#include <linux/of_irq.h>  #include <linux/of_platform.h>  #include <linux/gpio.h>  #include <linux/of_gpio.h> @@ -969,7 +971,7 @@ static void cpm_uart_config_port(struct uart_port *port, int flags)   * Note that this is called with interrupts already disabled   */  static void cpm_uart_early_write(struct uart_cpm_port *pinfo, -		const char *string, u_int count) +		const char *string, u_int count, bool handle_linefeed)  {  	unsigned int i;  	cbd_t __iomem *bdp, *bdbase; @@ -1011,7 +1013,7 @@ static void cpm_uart_early_write(struct uart_cpm_port *pinfo,  			bdp++;  		/* if a LF, also do CR... */ -		if (*string == 10) { +		if (handle_linefeed && *string == 10) {  			while ((in_be16(&bdp->cbd_sc) & BD_SC_READY) != 0)  				; @@ -1109,7 +1111,7 @@ static void cpm_put_poll_char(struct uart_port *port,  	static char ch[2];  	ch[0] = (char)c; -	cpm_uart_early_write(pinfo, ch, 1); +	cpm_uart_early_write(pinfo, ch, 1, false);  }  #endif /* CONFIG_CONSOLE_POLL */ @@ -1207,7 +1209,7 @@ static int cpm_uart_init_port(struct device_node *np,  	pinfo->port.fifosize = pinfo->tx_nrfifos * pinfo->tx_fifosize;  	spin_lock_init(&pinfo->port.lock); -	pinfo->port.irq = of_irq_to_resource(np, 0, NULL); +	pinfo->port.irq = irq_of_parse_and_map(np, 0);  	if (pinfo->port.irq == NO_IRQ) {  		ret = -EINVAL;  		goto out_pram; @@ -1273,7 +1275,7 @@ static void cpm_uart_console_write(struct console *co, const char *s,  		spin_lock_irqsave(&pinfo->port.lock, flags);  	} -	cpm_uart_early_write(pinfo, s, count); +	cpm_uart_early_write(pinfo, s, count, true);  	if (unlikely(nolock)) {  		local_irq_restore(flags); diff --git a/drivers/tty/serial/cpm_uart/cpm_uart_cpm1.c b/drivers/tty/serial/cpm_uart/cpm_uart_cpm1.c index 18f79575894..6d3b22e9324 100644 --- a/drivers/tty/serial/cpm_uart/cpm_uart_cpm1.c +++ b/drivers/tty/serial/cpm_uart/cpm_uart_cpm1.c @@ -29,7 +29,6 @@  #include <linux/tty.h>  #include <linux/gfp.h>  #include <linux/ioport.h> -#include <linux/init.h>  #include <linux/serial.h>  #include <linux/console.h>  #include <linux/sysrq.h> @@ -45,6 +44,7 @@  #include <linux/kernel.h>  #include <linux/of.h> +#include <linux/of_address.h>  #include "cpm_uart.h" diff --git a/drivers/tty/serial/cpm_uart/cpm_uart_cpm2.c b/drivers/tty/serial/cpm_uart/cpm_uart_cpm2.c index a4927e66e74..f46d2ca8720 100644 --- a/drivers/tty/serial/cpm_uart/cpm_uart_cpm2.c +++ b/drivers/tty/serial/cpm_uart/cpm_uart_cpm2.c @@ -29,7 +29,6 @@  #include <linux/tty.h>  #include <linux/ioport.h>  #include <linux/slab.h> -#include <linux/init.h>  #include <linux/serial.h>  #include <linux/console.h>  #include <linux/sysrq.h>  | 
