summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnilKumar Ch <anilkumar@ti.com>2012-09-26 13:58:24 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-09-26 14:18:12 -0700
commit79df8d27d9f4382647c31ef17f7402833d682b73 (patch)
treef12284988fe4161e610cb8cb1b9855bd1b201f80
parent0c83adba6b117264eb1972d2787dd17874214e9b (diff)
downloadop-kernel-dev-79df8d27d9f4382647c31ef17f7402833d682b73.zip
op-kernel-dev-79df8d27d9f4382647c31ef17f7402833d682b73.tar.gz
drivers/misc/lis3lv02d/lis3lv02d_spi.c: add lis3lv02d device tree init
Add lis3lv02d device tree initialization code/API to take pdata from device node. Also remove CONFIG_OF ifdef from the driver, if CONFIG_OF is not defined then OF APIs returns 0. [akpm@linux-foundation.org: fix CONFIG_OF=n build[ Signed-off-by: AnilKumar Ch <anilkumar@ti.com> Cc: Eric Piel <eric.piel@tremplin-utc.net> Reviewed-by: Arnd Bergmann <arnd@arndb.de> Cc: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: Tony Lindgren <tony@atomide.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/misc/lis3lv02d/lis3lv02d_spi.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/misc/lis3lv02d/lis3lv02d_spi.c b/drivers/misc/lis3lv02d/lis3lv02d_spi.c
index 4b8ccf2..ccb6475f 100644
--- a/drivers/misc/lis3lv02d/lis3lv02d_spi.c
+++ b/drivers/misc/lis3lv02d/lis3lv02d_spi.c
@@ -19,6 +19,7 @@
#include <linux/pm.h>
#include <linux/of.h>
#include <linux/of_platform.h>
+#include <linux/of_device.h>
#include "lis3lv02d.h"
@@ -87,10 +88,13 @@ static int __devinit lis302dl_spi_probe(struct spi_device *spi)
lis3_dev.pdata = spi->dev.platform_data;
#ifdef CONFIG_OF
- if (of_match_device(lis302dl_spi_dt_ids, &spi->dev))
+ if (of_match_device(lis302dl_spi_dt_ids, &spi->dev)) {
lis3_dev.of_node = spi->dev.of_node;
+ ret = lis3lv02d_init_dt(&lis3_dev);
+ if (ret)
+ return ret;
+ }
#endif
-
spi_set_drvdata(spi, &lis3_dev);
return lis3lv02d_init_device(&lis3_dev);
OpenPOWER on IntegriCloud