diff options
author | Vikas Manocha <vikas.manocha@st.com> | 2014-11-21 10:34:23 -0800 |
---|---|---|
committer | Tom Rini <trini@ti.com> | 2014-12-08 09:35:45 -0500 |
commit | eb8a4fe0dc5db5f586ae26d04aa132c76535b27c (patch) | |
tree | 885554c23fccaa71a6e808e5f4d33988498b6977 /drivers | |
parent | f7e517b4ebc199ec90bb56ae4336dbd534ecade5 (diff) | |
download | u-boot-imx-eb8a4fe0dc5db5f586ae26d04aa132c76535b27c.zip u-boot-imx-eb8a4fe0dc5db5f586ae26d04aa132c76535b27c.tar.gz u-boot-imx-eb8a4fe0dc5db5f586ae26d04aa132c76535b27c.tar.bz2 |
serial: pl01x: avoid pl01x type check two times
Signed-off-by: Vikas Manocha <vikas.manocha@st.com>
Acked-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/serial/serial_pl01x.c | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/drivers/serial/serial_pl01x.c b/drivers/serial/serial_pl01x.c index 2a6b61d..e1bf496 100644 --- a/drivers/serial/serial_pl01x.c +++ b/drivers/serial/serial_pl01x.c @@ -72,22 +72,19 @@ static int pl01x_tstc(struct pl01x_regs *regs) static int pl01x_generic_serial_init(struct pl01x_regs *regs, enum pl01x_type type) { + switch (type) { + case TYPE_PL010: + /* disable everything */ + writel(0, ®s->pl010_cr); + break; + case TYPE_PL011: #ifdef CONFIG_PL011_SERIAL_FLUSH_ON_INIT - if (type == TYPE_PL011) { /* Empty RX fifo if necessary */ if (readl(®s->pl011_cr) & UART_PL011_CR_UARTEN) { while (!(readl(®s->fr) & UART_PL01x_FR_RXFE)) readl(®s->dr); } - } #endif - - switch (type) { - case TYPE_PL010: - /* disable everything */ - writel(0, ®s->pl010_cr); - break; - case TYPE_PL011: /* disable everything */ writel(0, ®s->pl011_cr); break; |