This changes negative values of error rate to be checked, because these
values are valid as error rate. And this changes in the process of adopting
a value close to 0.
Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
                        err = DIV_ROUND_CLOSEST(freq, ((br + 1) * bps * sr *
                                               (1 << (2 * c + 1)) / 1000)) -
                                               1000;
-                       if (err < 0)
-                               continue;
-
                        /* Calc recv margin
                         * M: Receive margin (%)
                         * N: Ratio of bit rate to clock (N = sampling rate)
                         */
                        recv_margin = abs((500 -
                                        DIV_ROUND_CLOSEST(1000, sr << 1)) / 10);
-                       if (min_err > err) {
+                       if (abs(min_err) > abs(err)) {
                                min_err = err;
                                recv_max_margin = recv_margin;
                        } else if ((min_err == err) &&