&& (i == 4 || i == 5))) 
&& (i == 5 || i == 6))) 
static struct w83627hf_data *w83627hf_update_device(struct device *dev){	struct i2c_client *client = to_i2c_client(dev);	struct w83627hf_data *data = i2c_get_clientdata(client);	int i;	down(&data->update_lock);	if (time_after(jiffies, data->last_updated + HZ + HZ / 2)	    || !data->valid) {		for (i = 0; i <= 8; i++) {			/* skip missing sensors */			if (((data->type == w83697hf) && (i == 1)) ||			    ((data->type == w83627thf || data->type == w83637hf)			    && (i == 4 || i == 5)))				continue;			data->in[i] =			    w83627hf_read_value(client, W83781D_REG_IN(i));			data->in_min[i] =			    w83627hf_read_value(client,					       W83781D_REG_IN_MIN(i));			data->in_max[i] =			    w83627hf_read_value(client,					       W83781D_REG_IN_MAX(i));		}		for (i = 1; i <= 3; i++) {			data->fan[i - 1] =			    w83627hf_read_value(client, W83781D_REG_FAN(i));			data->fan_min[i - 1] =			    w83627hf_read_value(client,					       W83781D_REG_FAN_MIN(i));		}		for (i = 1; i <= 3; i++) {			u8 tmp = w83627hf_read_value(client,				W836X7HF_REG_PWM(data->type, i)); 			/* bits 0-3 are reserved  in 627THF */ 			if (data->type == w83627thf)				tmp &= 0xf0;			data->pwm[i - 1] = tmp;			if(i == 2 &&			   (data->type == w83627hf || data->type == w83697hf))				break;		}		data->temp = w83627hf_read_value(client, W83781D_REG_TEMP(1));		data->temp_max =		    w83627hf_read_value(client, W83781D_REG_TEMP_OVER(1));		data->temp_max_hyst =		    w83627hf_read_value(client, W83781D_REG_TEMP_HYST(1));		data->temp_add[0] =		    w83627hf_read_value(client, W83781D_REG_TEMP(2));		data->temp_max_add[0] =		    w83627hf_read_value(client, W83781D_REG_TEMP_OVER(2));		data->temp_max_hyst_add[0] =		    w83627hf_read_value(client, W83781D_REG_TEMP_HYST(2));		if (data->type != w83697hf) {			data->temp_add[1] =			  w83627hf_read_value(client, W83781D_REG_TEMP(3));			data->temp_max_add[1] =			  w83627hf_read_value(client, W83781D_REG_TEMP_OVER(3));			data->temp_max_hyst_add[1] =			  w83627hf_read_value(client, W83781D_REG_TEMP_HYST(3));		}		i = w83627hf_read_value(client, W83781D_REG_VID_FANDIV);		data->fan_div[0] = (i >> 4) & 0x03;		data->fan_div[1] = (i >> 6) & 0x03;		if (data->type != w83697hf) {			data->fan_div[2] = (w83627hf_read_value(client,					       W83781D_REG_PIN) >> 6) & 0x03;		}		i = w83627hf_read_value(client, W83781D_REG_VBAT);		data->fan_div[0] |= (i >> 3) & 0x04;		data->fan_div[1] |= (i >> 4) & 0x04;		if (data->type != w83697hf)			data->fan_div[2] |= (i >> 5) & 0x04;		data->alarms =		    w83627hf_read_value(client, W83781D_REG_ALARM1) |		    (w83627hf_read_value(client, W83781D_REG_ALARM2) << 8) |		    (w83627hf_read_value(client, W83781D_REG_ALARM3) << 16);		i = w83627hf_read_value(client, W83781D_REG_BEEP_INTS2);		data->beep_enable = i >> 7;		data->beep_mask = ((i & 0x7f) << 8) |		    w83627hf_read_value(client, W83781D_REG_BEEP_INTS1) |		    w83627hf_read_value(client, W83781D_REG_BEEP_INTS3) << 16;		data->last_updated = jiffies;		data->valid = 1;	}	up(&data->update_lock);	return data;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/4a1c4447e523003019a2bf9b972ed6fe411e84d2/w83627hf.c/buggy/drivers/hwmon/w83627hf.c