Skip to contentSkip to conversation

i2c device does not support repeated start

DISCUSSION Darius 3 participants 3 messages May 14, 2008 1 message not in the archive I2C subsystem host drivers

lore
Share & tools
lore
#1 lore raw

Hi Darius,

Quoted 2 lines · Darius

If device does not support that, maybe there is some special flag, which device driver can pass to i2c_master_xfer?

No, there isn't. If a given I2C device doesn't support repeated start, then its driver should simply run only single-message transactions. That is, only use i2c_master_send() and i2c_master_recv(), or for SMBus compatibility, i2c_smbus_read_byte() and i2c_smbus_write_*().

Signature · 6 lines
Jean Delvare

_______________________________________________
i2c mailing list
[email protected]
http://lists.lm-sensors.org/mailman/listinfo/i2c

A message that is not in the archive (sent off-list or not yet received): [email protected]

#3 lore raw
Quoted 10 lines · Jean Delvare

Hi Darius,

Quoted 2 lines · Darius

If device does not support that, maybe there is some special flag, which device driver can pass to i2c_master_xfer?

No, there isn't. If a given I2C device doesn't support repeated start, then its driver should simply run only single-message transactions. That is, only use i2c_master_send() and i2c_master_recv(), or for SMBus compatibility, i2c_smbus_read_byte() and i2c_smbus_write_*().

There is also a flag, I2C_M_NOSTART, that can keep the repeated start from being sent. Though this is probably not what you want, as you probably want to insert a stop instead of remove the start.

_______________________________________________
i2c mailing list
[email protected]
http://lists.lm-sensors.org/mailman/listinfo/i2c