|
@@ -17,6 +17,8 @@
|
|
|
#include <linux/slab.h>
|
|
|
#include <linux/module.h>
|
|
|
#include <linux/err.h>
|
|
|
+#include <linux/of.h>
|
|
|
+#include <linux/of_device.h>
|
|
|
|
|
|
#define DRV_VERSION "0.1"
|
|
|
|
|
@@ -271,6 +273,13 @@ static int isl12022_probe(struct i2c_client *client,
|
|
|
return PTR_ERR_OR_ZERO(isl12022->rtc);
|
|
|
}
|
|
|
|
|
|
+#ifdef CONFIG_OF
|
|
|
+static struct of_device_id isl12022_dt_match[] = {
|
|
|
+ { .compatible = "isl,isl12022" },
|
|
|
+ { },
|
|
|
+};
|
|
|
+#endif
|
|
|
+
|
|
|
static const struct i2c_device_id isl12022_id[] = {
|
|
|
{ "isl12022", 0 },
|
|
|
{ }
|
|
@@ -280,6 +289,9 @@ MODULE_DEVICE_TABLE(i2c, isl12022_id);
|
|
|
static struct i2c_driver isl12022_driver = {
|
|
|
.driver = {
|
|
|
.name = "rtc-isl12022",
|
|
|
+#ifdef CONFIG_OF
|
|
|
+ .of_match_table = of_match_ptr(isl12022_dt_match),
|
|
|
+#endif
|
|
|
},
|
|
|
.probe = isl12022_probe,
|
|
|
.id_table = isl12022_id,
|