]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/i2c/busses/i2c-gpio.c
Merge commit 'jwb/jwb-next'
[linux-2.6-omap-h63xx.git] / drivers / i2c / busses / i2c-gpio.c
index 3ca19fc234fb45122be765f517288aa419b3d516..32104eac8d3db3d61e12907558262f1fe4ecffed 100644 (file)
@@ -77,7 +77,7 @@ static int i2c_gpio_getscl(void *data)
        return gpio_get_value(pdata->scl_pin);
 }
 
-static int __init i2c_gpio_probe(struct platform_device *pdev)
+static int __devinit i2c_gpio_probe(struct platform_device *pdev)
 {
        struct i2c_gpio_platform_data *pdata;
        struct i2c_algo_bit_data *bit_data;
@@ -140,7 +140,7 @@ static int __init i2c_gpio_probe(struct platform_device *pdev)
        adap->owner = THIS_MODULE;
        snprintf(adap->name, sizeof(adap->name), "i2c-gpio%d", pdev->id);
        adap->algo_data = bit_data;
-       adap->class = I2C_CLASS_HWMON;
+       adap->class = I2C_CLASS_HWMON | I2C_CLASS_SPD;
        adap->dev.parent = &pdev->dev;
 
        /*
@@ -174,7 +174,7 @@ err_alloc_adap:
        return ret;
 }
 
-static int __exit i2c_gpio_remove(struct platform_device *pdev)
+static int __devexit i2c_gpio_remove(struct platform_device *pdev)
 {
        struct i2c_gpio_platform_data *pdata;
        struct i2c_adapter *adap;
@@ -196,14 +196,15 @@ static struct platform_driver i2c_gpio_driver = {
                .name   = "i2c-gpio",
                .owner  = THIS_MODULE,
        },
-       .remove         = __exit_p(i2c_gpio_remove),
+       .probe          = i2c_gpio_probe,
+       .remove         = __devexit_p(i2c_gpio_remove),
 };
 
 static int __init i2c_gpio_init(void)
 {
        int ret;
 
-       ret = platform_driver_probe(&i2c_gpio_driver, i2c_gpio_probe);
+       ret = platform_driver_register(&i2c_gpio_driver);
        if (ret)
                printk(KERN_ERR "i2c-gpio: probe failed: %d\n", ret);
 
@@ -220,3 +221,4 @@ module_exit(i2c_gpio_exit);
 MODULE_AUTHOR("Haavard Skinnemoen <hskinnemoen@atmel.com>");
 MODULE_DESCRIPTION("Platform-independent bitbanging I2C driver");
 MODULE_LICENSE("GPL");
+MODULE_ALIAS("platform:i2c-gpio");