--- i2c-core.c	2008-02-25 19:20:20.000000000 -0500
+++ ./../../../buildroot/build_i686/linux-2.6.24.3/drivers/i2c/i2c-core.c	2008-10-01 19:48:25.771245369 -0400
@@ -1274,6 +1274,18 @@
 }
 EXPORT_SYMBOL(i2c_smbus_read_word_data);
 
+s32 i2c_smbus_process_call(struct i2c_client *client, u8 command, u16 value)
+{
+	union i2c_smbus_data data;
+	data.word = value;
+	if (i2c_smbus_xfer(client->adapter,client->addr,client->flags,I2C_SMBUS_WRITE,command, I2C_SMBUS_PROC_CALL, &data))
+		return -1;
+	else
+		return data.word;
+}
+EXPORT_SYMBOL(i2c_smbus_process_call);
+
+
 s32 i2c_smbus_write_word_data(struct i2c_client *client, u8 command, u16 value)
 {
 	union i2c_smbus_data data;
