--- zzzz-none-000/linux-2.4.17/include/linux/i2c-dev.h 2001-10-11 15:05:47.000000000 +0000 +++ sangam-fb-322/linux-2.4.17/include/linux/i2c-dev.h 2004-11-24 13:21:40.000000000 +0000 @@ -19,7 +19,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ -/* $Id: i2c-dev.h,v 1.9 2001/08/15 03:04:58 mds Exp $ */ +/* $Id: i2c-dev.h,v 1.1.1.1 2003/06/23 22:18:42 jharrell Exp $ */ #ifndef I2C_DEV_H #define I2C_DEV_H @@ -162,6 +162,22 @@ I2C_SMBUS_BLOCK_DATA, &data); } +/* Returns the number of read bytes */ +static inline __s32 i2c_smbus_read_i2c_block_data(int file, __u8 command, + __u8 *values) +{ + union i2c_smbus_data data; + int i; + if (i2c_smbus_access(file,I2C_SMBUS_READ,command, + I2C_SMBUS_I2C_BLOCK_DATA,&data)) + return -1; + else { + for (i = 1; i <= data.block[0]; i++) + values[i-1] = data.block[i]; + return data.block[0]; + } +} + static inline __s32 i2c_smbus_write_i2c_block_data(int file, __u8 command, __u8 length, __u8 *values) {