summaryrefslogtreecommitdiff
path: root/drivers/spi/spi-orion.c
diff options
context:
space:
mode:
authorGreg Ungerer <gerg@uclinux.org>2014-10-21 05:57:48 (GMT)
committerMark Brown <broonie@kernel.org>2014-10-22 10:05:54 (GMT)
commit9a2d3635524fe80d9e23623b2fe4a2113045f8d8 (patch)
treebf32e9630ecff25d1f110fdcfe36f4ea63396f6c /drivers/spi/spi-orion.c
parentf114040e3ea6e07372334ade75d1ee0775c355e1 (diff)
downloadlinux-9a2d3635524fe80d9e23623b2fe4a2113045f8d8.tar.xz
spi: orion: fix potential NULL pointer de-reference
It's possible that the call to of_match_device() (introduced in commit df59fa7f ["spi: orion: support armada extended baud rates"]) may return a NULL if there is no match in the device tree (or perhaps no device tree at all). Check the return pointer and set the local device data to the lowest common denominator orion device data if it is NULL. Reported-by: Karl Beldan <karl.beldan@gmail.com> Signed-off-by: Greg Ungerer <gerg@uclinux.org> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/spi/spi-orion.c')
-rw-r--r--drivers/spi/spi-orion.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/spi/spi-orion.c b/drivers/spi/spi-orion.c
index 835cdda..c76b7d7 100644
--- a/drivers/spi/spi-orion.c
+++ b/drivers/spi/spi-orion.c
@@ -454,7 +454,7 @@ static int orion_spi_probe(struct platform_device *pdev)
spi->master = master;
of_id = of_match_device(orion_spi_of_match_table, &pdev->dev);
- devdata = of_id->data;
+ devdata = (of_id) ? of_id->data : &orion_spi_dev_data;
spi->devdata = devdata;
spi->clk = devm_clk_get(&pdev->dev, NULL);