From: Stefan Mavrodiev <stefan@olimex.com>
Date: Wed, 5 Dec 2018 12:27:57 +0000 (+0200)
Subject: spi: sun4i: Add rx_buf NULL pointer check
X-Git-Tag: v2025.01-rc5-pxa1908~3195^2~3
X-Git-Url: http://git.dujemihanovic.xyz/img/static/login.html?a=commitdiff_plain;h=5c1a87de58092b5a17c20b6debfccaa6cf677fde;p=u-boot.git

spi: sun4i: Add rx_buf NULL pointer check

Current driver doesn't check if the destination pointer is NULL.
This cause the data from the FIFO to be stored inside the internal
SDRAM ( address 0 ).

The patch add simple check if the destination pointer is NULL.

Signed-off-by: Stefan Mavrodiev <stefan@olimex.com>
Acked-by: Jagan Teki <jagan@openedev.com>
[jagan: fix commit message]
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
---

diff --git a/drivers/spi/sun4i_spi.c b/drivers/spi/sun4i_spi.c
index b86b5a00ad..38cc743c61 100644
--- a/drivers/spi/sun4i_spi.c
+++ b/drivers/spi/sun4i_spi.c
@@ -129,7 +129,8 @@ static inline void sun4i_spi_drain_fifo(struct sun4i_spi_priv *priv, int len)
 
 	while (len--) {
 		byte = readb(&priv->regs->rxdata);
-		*priv->rx_buf++ = byte;
+		if (priv->rx_buf)
+			*priv->rx_buf++ = byte;
 	}
 }