RE: [PATCH v3 2/3] serial: sh-sci: Drop check for zero baud rate from uart_get_baud_rate()

From: Biju Das

Date: Wed Apr 22 2026 - 03:32:45 EST


Hi Geert,

Thanks for the feedback.

> -----Original Message-----
> From: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
> Sent: 22 April 2026 08:05
> Subject: Re: [PATCH v3 2/3] serial: sh-sci: Drop check for zero baud rate from uart_get_baud_rate()
>
> Hi Biju,
>
> On Mon, 20 Apr 2026 at 16:04, Biju <biju.das.au@xxxxxxxxx> wrote:
> > From: Biju Das <biju.das.jz@xxxxxxxxxxxxxx>
> >
> > On DT systems, a zero baud rate from uart_get_baud_rate() is not
> > possible even earlycon derives its bit rate from chosen/stdout-path.
> > The zero baud guard and its associated done label are therefore dead code. So remove it.
> >
> > Also drop the unused done label from rsci_set_termios().
> >
> > Signed-off-by: Biju Das <biju.das.jz@xxxxxxxxxxxxxx>
>
> Thanks for your patch!
>
> > --- a/drivers/tty/serial/sh-sci.c
> > +++ b/drivers/tty/serial/sh-sci.c
> > @@ -2719,8 +2719,6 @@ static void sci_set_termios(struct uart_port *port, struct ktermios *termios,
> > max_freq = max(max_freq, s->clk_rates[i]);
> >
> > baud = uart_get_baud_rate(port, termios, old, 0, max_freq / min_sr(s));
> > - if (!baud)
> > - goto done;
> >
> > /*
> > * There can be multiple sources for the sampling clock. Find
> > the one
>
> I am afraid you are missing that sh-sci is also used on SH, without DT?

Ok, please share your thoughts to handle divide_by_zero fault for
SH platforms on the code path after done label??

Eg:
1) uart_update_timeout(port, termios->c_cflag, baud);
2) s->rx_frame = (10000 * bits) / (baud / 100);

Cheers,
Biju