Konbanwa Hideki, > @@ -979,7 +979,7 @@ > break; > case I2C_SMBUS_BYTE_DATA: > buf[2] = data->byte; > - data->word = buf[2] || > + data->word = buf[2] | > (i2c_smbus_pec(3, buf, NULL) << 8); > size = I2C_SMBUS_WORD_DATA; > break; Eek, this one was weird :( Looks like nobody ever used this code. Thanks a lot for reporting all these errors in our code. I've committed your fix to i2c CVS already and will port it to Linux 2.6 as well. Arigato, -- Jean Delvare