From: Peter Hurley <peter@hurleysoftware.com>
To: Joerg Roedel <joro@8bytes.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Jiri Slaby <jslaby@suse.cz>,
Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
Tony Lindgren <tony@atomide.com>, Alan Cox <alan@linux.intel.com>,
linux-serial@vger.kernel.org, linux-kernel@vger.kernel.org,
Joerg Roedel <jroedel@suse.de>,
Michael Welling <mwelling@ieee.org>,
Joe Schultz <jschultz@xes-inc.com>
Subject: Re: [PATCH] serial: 8250: Do XR17V35X specific wakeup in serial8250_do_startup
Date: Fri, 17 Jul 2015 09:34:31 -0400 [thread overview]
Message-ID: <55A90467.9000804@hurleysoftware.com> (raw)
In-Reply-To: <1437035353-13708-1-git-send-email-joro@8bytes.org>
On 07/16/2015 04:29 AM, Joerg Roedel wrote:
> From: Joerg Roedel <jroedel@suse.de>
>
> The XR17V35X UART needs the ECB bit set in its XR_EFR
> register to enable access to IER [7:5], ISR [5:4], FCR[5:4],
> MCR[7:5], and MSR [7:0].
>
> Also reset the IER register to mask interrupts after access
> to all bits of this register has been enabled.
>
> This makes my 8-port XR17V35X working with the in-kernel
> serial driver.
Reviewed-by: Peter Hurley <peter@hurleysoftware.com>
Also, would you please find out what bits are set in the IER
that this fixes and let me know? I don't have this hardware.
Regards,
Peter Hurley
> Cc: Peter Hurley <peter@hurleysoftware.com>
> Cc: Michael Welling <mwelling@ieee.org>
> Cc: Joe Schultz <jschultz@xes-inc.com>
> Signed-off-by: Joerg Roedel <jroedel@suse.de>
> ---
> drivers/tty/serial/8250/8250_core.c | 15 +++++++++++++++
> 1 file changed, 15 insertions(+)
>
> diff --git a/drivers/tty/serial/8250/8250_core.c b/drivers/tty/serial/8250/8250_core.c
> index 37fff12..4124a91 100644
> --- a/drivers/tty/serial/8250/8250_core.c
> +++ b/drivers/tty/serial/8250/8250_core.c
> @@ -2164,6 +2164,21 @@ int serial8250_do_startup(struct uart_port *port)
> */
> enable_rsa(up);
> #endif
> +
> + if (port->type == PORT_XR17V35X) {
> + /*
> + * First enable access to IER [7:5], ISR [5:4], FCR [5:4],
> + * MCR [7:5] and MSR [7:0]
> + */
> + serial_port_out(port, UART_XR_EFR, UART_EFR_ECB);
> +
> + /*
> + * Make sure all interrups are masked until initialization is
> + * complete and the FIFOs are cleared
> + */
> + serial_port_out(port, UART_IER, 0);
> + }
> +
> /*
> * Clear the FIFO buffers and disable them.
> * (they will be reenabled in set_termios())
>
next prev parent reply other threads:[~2015-07-17 13:34 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-16 8:29 [PATCH] serial: 8250: Do XR17V35X specific wakeup in serial8250_do_startup Joerg Roedel
2015-07-16 8:55 ` Michael Welling
2015-07-17 13:34 ` Peter Hurley [this message]
2015-07-28 7:20 ` Joerg Roedel
-- strict thread matches above, loose matches on Subject: below --
2015-06-19 15:12 Joerg Roedel
2015-06-19 15:12 ` Joerg Roedel
2015-06-19 17:09 ` Michael Welling
2015-06-19 17:09 ` Michael Welling
2015-06-29 15:26 ` Joerg Roedel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=55A90467.9000804@hurleysoftware.com \
--to=peter@hurleysoftware.com \
--cc=alan@linux.intel.com \
--cc=bigeasy@linutronix.de \
--cc=gregkh@linuxfoundation.org \
--cc=joro@8bytes.org \
--cc=jroedel@suse.de \
--cc=jschultz@xes-inc.com \
--cc=jslaby@suse.cz \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-serial@vger.kernel.org \
--cc=mwelling@ieee.org \
--cc=tony@atomide.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.