Skip to content

Commit 4e292cb

Browse files
prabhakarladbroonie
authored andcommitted
spi: rzv2h-rspi: Fix max_speed_hz advertising prohibited bit rate
On RZ/V2H(P), RZ/G3E and RZ/G3L, RSPI_n_TCLK is fixed at 200MHz. The max_speed_hz was computed using clk_round_rate(tclk, ULONG_MAX) with SPR=0 and BRDV=0, resulting in 100Mbps - the exact combination prohibited on these SoCs. This could cause the SPI framework to request a speed that rzv2h_rspi_find_rate_fixed() would skip, potentially leading to a clock selection failure. On RZ/T2H and RZ/N2H the max_speed_hz was correctly calculated as 50Mbps for both the variable PCLKSPIn and fixed PCLK clock sources. Since the maximum supported bit rate is 50Mbps across all supported SoC variants, replace the clk_round_rate() based calculation with a define RSPI_MAX_SPEED_HZ set to 50MHz and use it directly for max_speed_hz. Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Link: https://patch.msgid.link/20260410080517.2405700-2-prabhakar.mahadev-lad.rj@bp.renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
1 parent 591cd65 commit 4e292cb

1 file changed

Lines changed: 3 additions & 7 deletions

File tree

drivers/spi/spi-rzv2h-rspi.c

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,8 @@
7777

7878
#define RSPI_RESET_NUM 2
7979

80+
#define RSPI_MAX_SPEED_HZ 50000000
81+
8082
struct rzv2h_rspi_best_clock {
8183
struct clk *clk;
8284
unsigned long clk_rate;
@@ -771,13 +773,7 @@ static int rzv2h_rspi_probe(struct platform_device *pdev)
771773
RSPI_SPBR_SPR_MAX,
772774
RSPI_SPCMD_BRDV_MAX);
773775

774-
tclk_rate = clk_round_rate(rspi->tclk, ULONG_MAX);
775-
if (tclk_rate < 0)
776-
return tclk_rate;
777-
778-
controller->max_speed_hz = rzv2h_rspi_calc_bitrate(tclk_rate,
779-
RSPI_SPBR_SPR_MIN,
780-
RSPI_SPCMD_BRDV_MIN);
776+
controller->max_speed_hz = RSPI_MAX_SPEED_HZ;
781777

782778
controller->dma_tx = devm_dma_request_chan(dev, "tx");
783779
if (IS_ERR(controller->dma_tx)) {

0 commit comments

Comments
 (0)