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

Commit 81db0772 authored by Matt Schulte's avatar Matt Schulte Committed by Greg Kroah-Hartman
Browse files

tty/8250: Add sleep capability to XR17D15X ports



Add sleep capability to XR17D15X ports

Signed-off-by: default avatarMatt Schulte <matts@commtech-fastcom.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent f965b9c4
Loading
Loading
Loading
Loading
+9 −3
Original line number Diff line number Diff line
@@ -280,7 +280,8 @@ static const struct serial8250_config uart_config[] = {
		.fifo_size	= 64,
		.tx_loadsz	= 64,
		.fcr		= UART_FCR_ENABLE_FIFO | UART_FCR_R_TRIG_10,
		.flags		= UART_CAP_FIFO | UART_CAP_AFE | UART_CAP_EFR,
		.flags		= UART_CAP_FIFO | UART_CAP_AFE | UART_CAP_EFR |
				  UART_CAP_SLEEP,
	},
	[PORT_XR17V35X] = {
		.name		= "XR17V35X",
@@ -591,7 +592,8 @@ static void serial8250_set_sleep(struct uart_8250_port *p, int sleep)
	 * offset but the UART channel may only write to the corresponding
	 * bit.
	 */
	if (p->port.type == PORT_XR17V35X) {
	if ((p->port.type == PORT_XR17V35X) ||
	   (p->port.type == PORT_XR17D15X)) {
		serial_out(p, UART_EXAR_SLEEP, 0xff);
		return;
	}
@@ -1056,8 +1058,12 @@ static void autoconfig_16550a(struct uart_8250_port *up)
	 * Exar uarts have EFR in a weird location
	 */
	if (up->port.flags & UPF_EXAR_EFR) {
		DEBUG_AUTOCONF("Exar XR17D15x ");
		up->port.type = PORT_XR17D15X;
		up->capabilities |= UART_CAP_AFE | UART_CAP_EFR;
		up->capabilities |= UART_CAP_AFE | UART_CAP_EFR |
				    UART_CAP_SLEEP;

		return;
	}

	/*