Hi Simon,
On 12/04/2018 04:55 AM, Simon Goldschmidt wrote: > This reverts commit 6f57c34473d37b8da5e6a3764d0d377d748aeef1 since it > does not seem to work at least on rk3399. > > The Rockchip Technical Reference Manual (TRM) for the rk3399 says the baud > rate prescaler register is readable only when USR[0] is zero. Since this > bit is defined as "reserved" in the socfpga cylcone5 TRM, let's rather > drop this than making the ns16550 debug uart more platform specific. > > Reported-by: Roosen Henri <henri.roo...@ginzinger.com> > Signed-off-by: Simon Goldschmidt <simon.k.r.goldschm...@gmail.com> Reviewed-by: Kever Yang <kever.y...@rock-chips.com> Thanks, - Kever > --- > > drivers/serial/ns16550.c | 18 ++---------------- > 1 file changed, 2 insertions(+), 16 deletions(-) > > diff --git a/drivers/serial/ns16550.c b/drivers/serial/ns16550.c > index f21c240e64..25b9d17243 100644 > --- a/drivers/serial/ns16550.c > +++ b/drivers/serial/ns16550.c > @@ -272,26 +272,12 @@ static inline void _debug_uart_init(void) > serial_dout(&com_port->lcr, UART_LCRVAL); > } > > -static inline int NS16550_read_baud_divisor(struct NS16550 *com_port) > -{ > - int ret; > - > - serial_dout(&com_port->lcr, UART_LCR_BKSE | UART_LCRVAL); > - ret = serial_din(&com_port->dll) & 0xff; > - ret |= (serial_din(&com_port->dlm) & 0xff) << 8; > - serial_dout(&com_port->lcr, UART_LCRVAL); > - > - return ret; > -} > - > static inline void _debug_uart_putc(int ch) > { > struct NS16550 *com_port = (struct NS16550 *)CONFIG_DEBUG_UART_BASE; > > - while (!(serial_din(&com_port->lsr) & UART_LSR_THRE)) { > - if (!NS16550_read_baud_divisor(com_port)) > - return; > - } > + while (!(serial_din(&com_port->lsr) & UART_LSR_THRE)) > + ; > serial_dout(&com_port->thr, ch); > } > _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot