Hi Masahiro,

On 15 December 2014 at 21:39, Masahiro Yamada <yamad...@jp.panasonic.com> wrote:
> Hi Simon,
>
>
> On Mon, 15 Dec 2014 07:19:53 -0700
> Simon Glass <s...@chromium.org> wrote:
>
>> +#ifdef CONFIG_DEBUG_UART_NS16550
>> +void debug_uart_init(void)
>> +{
>> +     struct NS16550 *com_port = (struct NS16550 *)CONFIG_DEBUG_UART_BASE;
>> +     int baud_divisor;
>> +
>> +     baud_divisor = calc_divisor(com_port, CONFIG_DEBUG_UART_CLOCK,
>> +                                 CONFIG_BAUDRATE);
>> +
>> +     writeb(CONFIG_SYS_NS16550_IER, &com_port->ier);
>> +     writeb(UART_MCRVAL, &com_port->mcr);
>> +     writeb(UART_FCRVAL, &com_port->fcr);
>> +
>> +     writeb(UART_LCR_BKSE | UART_LCRVAL, &com_port->lcr);
>> +     writeb(baud_divisor & 0xff, &com_port->dll);
>> +     writeb((baud_divisor >> 8) & 0xff, &com_port->dlm);
>> +     writeb(UART_LCRVAL, &com_port->lcr);
>> +}
>
> This function is duplicating NS16550_init() and NS16550_setbrg().

Yes I should fix that.

>
>
>
>> +static inline void _debug_uart_putc(int ch)
>> +{
>> +     struct NS16550 *com_port = (struct NS16550 *)CONFIG_DEBUG_UART_BASE;
>> +
>> +     while (!(readb(&com_port->lsr) & UART_LSR_THRE))
>> +             ;
>> +     writeb(ch, &com_port->thr);
>> +}
>
> This is duplicating ns16550_serial_putc().

Ditto.

>
>
>
> What does this patch save?
>
> It looks like the driver code is just getting dirtier.

See my other patch for an explanation. We could add this feature to
any serial driver.

Regards,
Simon
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to