this will be use by at24 driver

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <[email protected]>
---
 drivers/i2c/i2c.c |   17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/drivers/i2c/i2c.c b/drivers/i2c/i2c.c
index 92d9442..94f23dd 100644
--- a/drivers/i2c/i2c.c
+++ b/drivers/i2c/i2c.c
@@ -420,7 +420,22 @@ EXPORT_SYMBOL(i2c_add_numbered_adapter);
 
 static int i2c_match(struct device_d *dev, struct driver_d *drv)
 {
-       return strcmp(dev->name, drv->name) ? -1 : 0;
+       if (!strcmp(dev->name, drv->name))
+               return 0;
+
+       if (drv->id_table) {
+               struct platform_device_id *id = drv->id_table;
+
+               while (id->name) {
+                       if (!strcmp(id->name, dev->name)) {
+                               dev->id_entry = id;
+                               return 0;
+                       }
+                       id++;
+               }
+       }
+
+       return -1;
 }
 
 static int i2c_probe(struct device_d *dev)
-- 
1.7.10.4


_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox

Reply via email to