mirror of
https://github.com/u-boot/u-boot.git
synced 2024-11-26 13:44:29 +08:00
serial: pl01x: avoid pl01x type check two times
Signed-off-by: Vikas Manocha <vikas.manocha@st.com> Acked-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
f7e517b4eb
commit
eb8a4fe0dc
@ -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)
|
||||
{
|
||||
#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:
|
||||
#ifdef CONFIG_PL011_SERIAL_FLUSH_ON_INIT
|
||||
/* 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
|
||||
/* disable everything */
|
||||
writel(0, ®s->pl011_cr);
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user