Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[cascardo/linux.git] / drivers / i2c / busses / i2c-ixp2000.c
index cef024a..6352121 100644 (file)
@@ -36,8 +36,6 @@
 #include <asm/hardware.h>      /* Pick up IXP2000-specific bits */
 #include <asm/arch/gpio.h>
 
-static struct device_driver ixp2000_i2c_driver;
-
 static inline int ixp2000_scl_pin(void *data)
 {
        return ((struct ixp2000_i2c_pins*)data)->scl_pin;
@@ -92,7 +90,7 @@ static int ixp2000_i2c_remove(struct platform_device *plat_dev)
 
        platform_set_drvdata(plat_dev, NULL);
 
-       i2c_bit_del_bus(&drv_data->adapter);
+       i2c_del_adapter(&drv_data->adapter);
 
        kfree(drv_data);
 
@@ -116,12 +114,11 @@ static int ixp2000_i2c_probe(struct platform_device *plat_dev)
        drv_data->algo_data.getsda = ixp2000_bit_getsda;
        drv_data->algo_data.getscl = ixp2000_bit_getscl;
        drv_data->algo_data.udelay = 6;
-       drv_data->algo_data.mdelay = 6;
        drv_data->algo_data.timeout = 100;
 
        drv_data->adapter.id = I2C_HW_B_IXP2000,
-       strlcpy(drv_data->adapter.name, ixp2000_i2c_driver.name,
-               I2C_NAME_SIZE);
+       strlcpy(drv_data->adapter.name, plat_dev->dev.driver->name,
+               sizeof(drv_data->adapter.name));
        drv_data->adapter.algo_data = &drv_data->algo_data,
 
        drv_data->adapter.dev.parent = &plat_dev->dev;
@@ -132,7 +129,7 @@ static int ixp2000_i2c_probe(struct platform_device *plat_dev)
        gpio_line_set(gpio->sda_pin, 0);
 
        if ((err = i2c_bit_add_bus(&drv_data->adapter)) != 0) {
-               dev_err(dev, "Could not install, error %d\n", err);
+               dev_err(&plat_dev->dev, "Could not install, error %d\n", err);
                kfree(drv_data);
                return err;
        }