Эх сурвалжийг харах

spi: dw: round up result of calculation for clock divider

Avoid ending up with a higher frequency than requested

Signed-off-by: Matthias Seidel <kernel@mseidel.net>
Signed-off-by: Mark Brown <broonie@kernel.org>
Matthias Seidel 9 жил өмнө
parent
commit
3aef463222
1 өөрчлөгдсөн 1 нэмэгдсэн , 1 устгасан
  1. 1 1
      drivers/spi/spi-dw.c

+ 1 - 1
drivers/spi/spi-dw.c

@@ -300,7 +300,7 @@ static int dw_spi_transfer_one(struct spi_master *master,
 	if (transfer->speed_hz != dws->current_freq) {
 		if (transfer->speed_hz != chip->speed_hz) {
 			/* clk_div doesn't support odd number */
-			chip->clk_div = (dws->max_freq / transfer->speed_hz + 1) & 0xfffe;
+			chip->clk_div = (DIV_ROUND_UP(dws->max_freq, transfer->speed_hz) + 1) & 0xfffe;
 			chip->speed_hz = transfer->speed_hz;
 		}
 		dws->current_freq = transfer->speed_hz;