summaryrefslogtreecommitdiffstats
path: root/drivers/spi
diff options
context:
space:
mode:
authorGeert Uytterhoeven2013-12-23 19:34:23 +0100
committerMark Brown2013-12-24 14:12:04 +0100
commitefd85acb4f2118348fc3a7c831872d5e70c7bec0 (patch)
treea720b0ba0755f99cccefede249f034b04763b2fa /drivers/spi
parentLinux 3.13-rc1 (diff)
downloadkernel-qcow2-linux-efd85acb4f2118348fc3a7c831872d5e70c7bec0.tar.gz
kernel-qcow2-linux-efd85acb4f2118348fc3a7c831872d5e70c7bec0.tar.xz
kernel-qcow2-linux-efd85acb4f2118348fc3a7c831872d5e70c7bec0.zip
spi: rspi: Fix NULL pointer dereference on SH7757
SH7757 doesn't pass platform data, in which case spi-rspi uses default parameters. However, commit 5ce0ba88650f2606244a761d92e2b725f4ab3583 ("spi: rcar: add Renesas QSPI support on RSPI") added a new user of the platform data, but forgot to check for its validity first, causing a NULL pointer dereference on SH7757. Add the missing check to fix this. Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org> Acked-by: Simon Horman <horms+renesas@verge.net.au> Signed-off-by: Mark Brown <broonie@linaro.org>
Diffstat (limited to 'drivers/spi')
-rw-r--r--drivers/spi/spi-rspi.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/spi/spi-rspi.c b/drivers/spi/spi-rspi.c
index 58449ad4ad0d..b60862f58534 100644
--- a/drivers/spi/spi-rspi.c
+++ b/drivers/spi/spi-rspi.c
@@ -958,8 +958,9 @@ static int rspi_probe(struct platform_device *pdev)
INIT_WORK(&rspi->ws, rspi_work);
init_waitqueue_head(&rspi->wait);
- master->num_chipselect = rspi_pd->num_chipselect;
- if (!master->num_chipselect)
+ if (rspi_pd && rspi_pd->num_chipselect)
+ master->num_chipselect = rspi_pd->num_chipselect;
+ else
master->num_chipselect = 2; /* default */
master->bus_num = pdev->id;