i2c-algo-pcf: Pass adapter data into ->waitforpin() method
authorDavid Miller <davem@davemloft.net>
Wed, 22 Oct 2008 18:21:29 +0000 (20:21 +0200)
committerJean Delvare <khali@linux-fr.org>
Wed, 22 Oct 2008 18:21:29 +0000 (20:21 +0200)
Pass adapter data into ->waitforpin() method.

Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
drivers/i2c/algos/i2c-algo-pcf.c
drivers/i2c/busses/i2c-elektor.c
include/linux/i2c-algo-pcf.h

index 1e328d19cd6dd9aaf79573a7521f96579ff7cf0b..a8a5b6d1dd88685193ba297985c978fdb1490a8b 100644 (file)
@@ -135,7 +135,7 @@ static int wait_for_pin(struct i2c_algo_pcf_data *adap, int *status) {
        *status = get_pcf(adap, 1);
 #ifndef STUB_I2C
        while (timeout-- && (*status & I2C_PCF_PIN)) {
-               adap->waitforpin();
+               adap->waitforpin(adap->data);
                *status = get_pcf(adap, 1);
        }
        if (*status & I2C_PCF_LAB) {
index 7f38c01fb3a06ce83753f4d411cde7f907f91086..0ed3ccb81b63f74f04a24589a5c3c26ad5fa1ed8 100644 (file)
@@ -104,7 +104,8 @@ static int pcf_isa_getclock(void *data)
        return (clock);
 }
 
-static void pcf_isa_waitforpin(void) {
+static void pcf_isa_waitforpin(void *data)
+{
        DEFINE_WAIT(wait);
        int timeout = 2;
        unsigned long flags;
index 0177d280f733df0837f7635b6413b2ff0a23202a..5de8a319bf146f1cdef80761fde187b41a3fea5f 100644 (file)
@@ -31,7 +31,7 @@ struct i2c_algo_pcf_data {
        int  (*getpcf) (void *data, int ctl);
        int  (*getown) (void *data);
        int  (*getclock) (void *data);
-       void (*waitforpin) (void);
+       void (*waitforpin) (void *data);
 
        /* Multi-master lost arbitration back-off delay (msecs)
         * This should be set by the bus adapter or knowledgable client