Hi all, In the context of bug #207771, I got to look into the adt7470 driver. I'm slowing understanding the logic of the background temperature registers update thread, still there are 2 things I do not understand: 1* Function adt7470_read_temperatures() sets data->num_temp_sensors, however this value seems to be only used to limit the wait time of future calls to the same function. In the general update function we still read ALL temperature sensors regardless of its value: for (i = 0; i < ADT7470_TEMP_COUNT; i++) data->temp[i] = i2c_smbus_read_byte_data(client, ADT7470_TEMP_REG(i)); Shouldn't this loop be bounded with data->num_temp_sensors instead of ADT7470_TEMP_COUNT? 2* Function adt7470_read_temperatures() also sets data->temperatures_probed to 1, and this boolean is then used to skip further calls to that function. But do we really need a separate variable for this, given that num_temp_sensors >= 0 matches the same condition as far as I can see? Thanks, -- Jean Delvare SUSE L3 Support