|
@@ -23,6 +23,7 @@
|
|
|
#include <linux/init.h>
|
|
|
#include <linux/cache.h>
|
|
|
#include <linux/mutex.h>
|
|
|
+#include <linux/of_device.h>
|
|
|
#include <linux/slab.h>
|
|
|
#include <linux/mod_devicetable.h>
|
|
|
#include <linux/spi/spi.h>
|
|
@@ -86,6 +87,10 @@ static int spi_match_device(struct device *dev, struct device_driver *drv)
|
|
|
const struct spi_device *spi = to_spi_device(dev);
|
|
|
const struct spi_driver *sdrv = to_spi_driver(drv);
|
|
|
|
|
|
+ /* Attempt an OF style match */
|
|
|
+ if (of_driver_match_device(dev, drv))
|
|
|
+ return 1;
|
|
|
+
|
|
|
if (sdrv->id_table)
|
|
|
return !!spi_match_id(sdrv->id_table, spi);
|
|
|
|