
Make sure DRDRENR register is configured before performing external address space read. This register might have been configured by a prior stage bootloader and leaving it unconfigured would interfere with U-Boot operation. Since U-Boot RPC SPI driver does not support DDR data transfer mode yet, set this register unconditionally to 0.
Signed-off-by: Marek Vasut marek.vasut+renesas@mailbox.org --- Cc: "Cédric Le Goater" clg@kaod.org Cc: Hai Pham hai.pham.ud@renesas.com Cc: Jagan Teki jagan@amarulasolutions.com Cc: Nobuhiro Iwamatsu iwamatsu@nigauri.org Cc: Paul Barker paul.barker.ct@bp.renesas.com Cc: Tom Rini trini@konsulko.com Cc: William Zhang william.zhang@broadcom.com Cc: u-boot@lists.denx.de --- drivers/spi/renesas_rpc_spi.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/drivers/spi/renesas_rpc_spi.c b/drivers/spi/renesas_rpc_spi.c index a2ac5525b90..50890981149 100644 --- a/drivers/spi/renesas_rpc_spi.c +++ b/drivers/spi/renesas_rpc_spi.c @@ -294,6 +294,7 @@ static int rpc_spi_mem_exec_op(struct spi_slave *spi,
writel(8 * op->dummy.nbytes - 1, priv->regs + RPC_DRDMCR); writel(0, priv->regs + RPC_DROPR); + writel(0, priv->regs + RPC_DRDRENR); writel(smenr, priv->regs + RPC_DRENR);
memcpy_fromio(din, (void *)(priv->extr + offset), op->data.nbytes);