i2c-gpio: Add support for new-style clients
authorAtsushi Nemoto <anemo@mba.ocn.ne.jp>
Thu, 12 Jul 2007 12:12:30 +0000 (14:12 +0200)
committerJean Delvare <khali@hyperion.delvare>
Thu, 12 Jul 2007 12:12:30 +0000 (14:12 +0200)
Use i2c_bit_add_numbered_bus() so that the i2c-gpio adapter works well
with new-style pre-declared devices.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
drivers/i2c/busses/i2c-gpio.c

index a7dd54654a9a18d8ecec076668feadc4d3405022..d6dbd6ace21d2fe590e29fd617f17ab9346ea133 100644 (file)
@@ -142,7 +142,13 @@ static int __init i2c_gpio_probe(struct platform_device *pdev)
        adap->algo_data = bit_data;
        adap->dev.parent = &pdev->dev;
 
-       ret = i2c_bit_add_bus(adap);
+       /*
+        * If "dev->id" is negative we consider it as zero.
+        * The reason to do so is to avoid sysfs names that only make
+        * sense when there are multiple adapters.
+        */
+       adap->nr = pdev->id >= 0 ? pdev->id : 0;
+       ret = i2c_bit_add_numbered_bus(adap);
        if (ret)
                goto err_add_bus;