Home
last modified time | relevance | path

Searched hist:c474c775716edd46a51bf8161142bbd1545f8733 (Results 1 – 1 of 1) sorted by relevance

/linux/drivers/tty/serial/
H A Dqcom_geni_serial.cdiff c474c775716edd46a51bf8161142bbd1545f8733 Fri Jul 15 20:55:43 CEST 2022 Vijaya Krishna Nivarthi <quic_vnivarth@quicinc.com> tty: serial: qcom-geni-serial: Fix get_clk_div_rate() which otherwise could return a sub-optimal clock rate.

In the logic around call to clk_round_rate(), for some corner conditions,
get_clk_div_rate() could return an sub-optimal clock rate. Also, if an
exact clock rate was not found lowest clock was being returned.

Search for suitable clock rate in 2 steps
a) exact match or within 2% tolerance
b) within 5% tolerance
This also takes care of corner conditions.

Fixes: c2194bc999d4 ("tty: serial: qcom-geni-serial: Remove uart frequency table. Instead, find suitable frequency with call to clk_round_rate")
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Vijaya Krishna Nivarthi <quic_vnivarth@quicinc.com>
Link: https://lore.kernel.org/r/1657911343-1909-1-git-send-email-quic_vnivarth@quicinc.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>