fedora core 6 1.2949 + vserver 2.2.0
[linux-2.6.git] / drivers / acorn / char / i2c.c
index e01e4fd..9e584a7 100644 (file)
@@ -12,6 +12,7 @@
  *  On Acorn machines, the following i2c devices are on the bus:
  *     - PCF8583 real time clock & static RAM
  */
+#include <linux/capability.h>
 #include <linux/init.h>
 #include <linux/sched.h>
 #include <linux/time.h>
@@ -307,13 +308,12 @@ static struct i2c_algo_bit_data ioc_data = {
        .getsda         = ioc_getsda,
        .getscl         = ioc_getscl,
        .udelay         = 80,
-       .mdelay         = 80,
        .timeout        = 100
 };
 
 static int ioc_client_reg(struct i2c_client *client)
 {
-       if (client->id == I2C_DRIVERID_PCF8583 &&
+       if (client->driver->id == I2C_DRIVERID_PCF8583 &&
            client->addr == 0x50) {
                struct rtc_tm rtctm;
                unsigned int year;
@@ -360,7 +360,7 @@ static int __init i2c_ioc_init(void)
        if (ret >= 0){
                ret = misc_register(&rtc_dev);
                if(ret < 0)
-                       i2c_bit_del_bus(&ioc_ops);
+                       i2c_del_adapter(&ioc_ops);
        }
 
        return ret;