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

Commit b48dc711 authored by Sonic Zhang's avatar Sonic Zhang Committed by Greg Kroah-Hartman
Browse files

serial: bfin-uart: Enable hardware automatic CTS only when CTS pin is available.

parent 5c2f37dd
Loading
Loading
Loading
Loading
+10 −9
Original line number Original line Diff line number Diff line
@@ -726,16 +726,17 @@ static int bfin_serial_startup(struct uart_port *port)
	}
	}
#endif
#endif
#ifdef CONFIG_SERIAL_BFIN_HARD_CTSRTS
#ifdef CONFIG_SERIAL_BFIN_HARD_CTSRTS
	if (uart->cts_pin >= 0 && request_irq(uart->status_irq,
	if (uart->cts_pin >= 0) {
		bfin_serial_mctrl_cts_int,
		if (request_irq(uart->status_irq, bfin_serial_mctrl_cts_int,
		0, "BFIN_UART_MODEM_STATUS", uart)) {
			IRQF_DISABLED, "BFIN_UART_MODEM_STATUS", uart)) {
			uart->cts_pin = -1;
			uart->cts_pin = -1;
		pr_info("Unable to attach BlackFin UART Modem Status interrupt.\n");
			dev_info(port->dev, "Unable to attach BlackFin UART Modem Status interrupt.\n");
		}
		}


		/* CTS RTS PINs are negative assertive. */
		/* CTS RTS PINs are negative assertive. */
		UART_PUT_MCR(uart, ACTS);
		UART_PUT_MCR(uart, ACTS);
		UART_SET_IER(uart, EDSSI);
		UART_SET_IER(uart, EDSSI);
	}
#endif
#endif


	UART_SET_IER(uart, ERBFI);
	UART_SET_IER(uart, ERBFI);