Lines Matching defs:i2c_adap

39 static inline int i2c_slave_did_write_ack(struct i2c_adapter *i2c_adap)
41 struct au0828_dev *dev = i2c_adap->algo_data;
46 static inline int i2c_slave_did_read_ack(struct i2c_adapter *i2c_adap)
48 struct au0828_dev *dev = i2c_adap->algo_data;
53 static int i2c_wait_read_ack(struct i2c_adapter *i2c_adap)
58 if (!i2c_slave_did_read_ack(i2c_adap))
69 static inline int i2c_is_read_busy(struct i2c_adapter *i2c_adap)
71 struct au0828_dev *dev = i2c_adap->algo_data;
76 static int i2c_wait_read_done(struct i2c_adapter *i2c_adap)
81 if (!i2c_is_read_busy(i2c_adap))
92 static inline int i2c_is_write_done(struct i2c_adapter *i2c_adap)
94 struct au0828_dev *dev = i2c_adap->algo_data;
99 static int i2c_wait_write_done(struct i2c_adapter *i2c_adap)
104 if (i2c_is_write_done(i2c_adap))
115 static inline int i2c_is_busy(struct i2c_adapter *i2c_adap)
117 struct au0828_dev *dev = i2c_adap->algo_data;
122 static int i2c_wait_done(struct i2c_adapter *i2c_adap)
127 if (!i2c_is_busy(i2c_adap))
139 static int i2c_sendbytes(struct i2c_adapter *i2c_adap,
143 struct au0828_dev *dev = i2c_adap->algo_data;
169 if (!i2c_wait_done(i2c_adap))
172 if (i2c_wait_read_ack(i2c_adap))
201 if (!i2c_wait_write_done(i2c_adap))
207 if (!i2c_wait_done(i2c_adap))
216 static int i2c_readbytes(struct i2c_adapter *i2c_adap,
219 struct au0828_dev *dev = i2c_adap->algo_data;
240 if (i2c_wait_read_ack(i2c_adap))
257 if (!i2c_wait_read_done(i2c_adap))
265 if (!i2c_wait_done(i2c_adap))
273 static int i2c_xfer(struct i2c_adapter *i2c_adap,
285 retval = i2c_readbytes(i2c_adap, &msgs[i], 0);
289 retval = i2c_sendbytes(i2c_adap, &msgs[i],
294 retval = i2c_readbytes(i2c_adap, &msgs[i], 1);
297 retval = i2c_sendbytes(i2c_adap, &msgs[i], 0);
356 memcpy(&dev->i2c_adap, &au0828_i2c_adap_template,
357 sizeof(dev->i2c_adap));
363 dev->i2c_adap.dev.parent = &dev->usbdev->dev;
365 strlcpy(dev->i2c_adap.name, DRIVER_NAME,
366 sizeof(dev->i2c_adap.name));
368 dev->i2c_adap.algo = &dev->i2c_algo;
369 dev->i2c_adap.algo_data = dev;
370 i2c_set_adapdata(&dev->i2c_adap, &dev->v4l2_dev);
371 i2c_add_adapter(&dev->i2c_adap);
373 dev->i2c_client.adapter = &dev->i2c_adap;
387 i2c_del_adapter(&dev->i2c_adap);