summaryrefslogtreecommitdiffstats
path: root/drivers/misc
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2013-10-02 13:46:47 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-10-04 01:02:35 +0200
commitbc3426897652c05825f8fd5fc1727aac83a2d8bd (patch)
treeb1db0ce131fa9d477b57534a382b5baa2dde8b9b /drivers/misc
parentmisc: mic: Fix build issues in sample daemon. (diff)
downloadlinux-bc3426897652c05825f8fd5fc1727aac83a2d8bd.tar.xz
linux-bc3426897652c05825f8fd5fc1727aac83a2d8bd.zip
misc: bh1780: probe from compatible string
Currently the BH1780GLI I2C driver relies on the device tree node having the right name, but this is fragile. Use the compatible string to probe the driver instead. Acked-by: Wolfram Sang <wsa@the-dreams.de> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/misc')
-rw-r--r--drivers/misc/bh1780gli.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/misc/bh1780gli.c b/drivers/misc/bh1780gli.c
index 057580e026c0..48ea33d15a79 100644
--- a/drivers/misc/bh1780gli.c
+++ b/drivers/misc/bh1780gli.c
@@ -23,6 +23,7 @@
#include <linux/platform_device.h>
#include <linux/delay.h>
#include <linux/module.h>
+#include <linux/of.h>
#define BH1780_REG_CONTROL 0x80
#define BH1780_REG_PARTID 0x8A
@@ -244,6 +245,15 @@ static const struct i2c_device_id bh1780_id[] = {
{ },
};
+#ifdef CONFIG_OF
+static const struct of_device_id of_bh1780_match[] = {
+ { .compatible = "rohm,bh1780gli", },
+ {},
+};
+
+MODULE_DEVICE_TABLE(of, of_bh1780_match);
+#endif
+
static struct i2c_driver bh1780_driver = {
.probe = bh1780_probe,
.remove = bh1780_remove,
@@ -251,6 +261,7 @@ static struct i2c_driver bh1780_driver = {
.driver = {
.name = "bh1780",
.pm = &bh1780_pm,
+ .of_match_table = of_match_ptr(of_bh1780_match),
},
};