Lines Matching refs:i2c_adap

50 static inline int i2c_slave_did_ack(struct i2c_adapter *i2c_adap)  in i2c_slave_did_ack()  argument
52 struct cx25821_i2c *bus = i2c_adap->algo_data; in i2c_slave_did_ack()
57 static inline int i2c_is_busy(struct i2c_adapter *i2c_adap) in i2c_is_busy() argument
59 struct cx25821_i2c *bus = i2c_adap->algo_data; in i2c_is_busy()
64 static int i2c_wait_done(struct i2c_adapter *i2c_adap) in i2c_wait_done() argument
69 if (!i2c_is_busy(i2c_adap)) in i2c_wait_done()
80 static int i2c_sendbytes(struct i2c_adapter *i2c_adap, in i2c_sendbytes() argument
83 struct cx25821_i2c *bus = i2c_adap->algo_data; in i2c_sendbytes()
99 if (!i2c_wait_done(i2c_adap)) in i2c_sendbytes()
102 if (!i2c_slave_did_ack(i2c_adap)) in i2c_sendbytes()
124 retval = i2c_wait_done(i2c_adap); in i2c_sendbytes()
150 retval = i2c_wait_done(i2c_adap); in i2c_sendbytes()
174 static int i2c_readbytes(struct i2c_adapter *i2c_adap, in i2c_readbytes() argument
177 struct cx25821_i2c *bus = i2c_adap->algo_data; in i2c_readbytes()
189 if (!i2c_wait_done(i2c_adap)) in i2c_readbytes()
191 if (!i2c_slave_did_ack(i2c_adap)) in i2c_readbytes()
215 retval = i2c_wait_done(i2c_adap); in i2c_readbytes()
238 static int i2c_xfer(struct i2c_adapter *i2c_adap, struct i2c_msg *msgs, int num) in i2c_xfer() argument
240 struct cx25821_i2c *bus = i2c_adap->algo_data; in i2c_xfer()
252 retval = i2c_readbytes(i2c_adap, &msgs[i], 0); in i2c_xfer()
256 retval = i2c_sendbytes(i2c_adap, &msgs[i], in i2c_xfer()
262 retval = i2c_readbytes(i2c_adap, &msgs[i], 1); in i2c_xfer()
265 retval = i2c_sendbytes(i2c_adap, &msgs[i], 0); in i2c_xfer()
309 bus->i2c_adap = cx25821_i2c_adap_template; in cx25821_i2c_register()
311 bus->i2c_adap.dev.parent = &dev->pci->dev; in cx25821_i2c_register()
313 strlcpy(bus->i2c_adap.name, bus->dev->name, sizeof(bus->i2c_adap.name)); in cx25821_i2c_register()
315 bus->i2c_adap.algo_data = bus; in cx25821_i2c_register()
316 i2c_set_adapdata(&bus->i2c_adap, &dev->v4l2_dev); in cx25821_i2c_register()
317 i2c_add_adapter(&bus->i2c_adap); in cx25821_i2c_register()
319 bus->i2c_client.adapter = &bus->i2c_adap; in cx25821_i2c_register()
329 i2c_del_adapter(&bus->i2c_adap); in cx25821_i2c_unregister()
354 i2c_xfer(&dev->i2c_bus[0].i2c_adap, &msg, 1);