|I2C_SMBUS_READ_I2C_B(9)||I2C and SMBus Subsystem||I2C_SMBUS_READ_I2C_B(9)|
i2c_smbus_read_i2c_block_data_or_emulated - read block or emulate
s32 i2c_smbus_read_i2c_block_data_or_emulated(const struct i2c_client * client, u8 command, u8 length, u8 * values);
This executes the SMBus “block read” protocol if supported by the adapter. If block read is not supported, it emulates it using either word or byte read protocols depending on availability.
The addresses of the I2C slave device that are accessed with this function must be mapped to a linear region, so that a block read will have the same effect as a byte read. Before using this function you must double-check if the I2C slave does support exchanging a block transfer with a byte transfer.
|January 2017||Kernel Hackers Manual 4.8.|