if ((jiffies - data->last_updated > 2 * HZ) || (jiffies < data->last_updated) || !data->valid) { 
if (time_after(jiffies, data->last_updated + 2 * HZ) || !data->valid) { 
static struct gl520_data *gl520_update_device(struct device *dev){	struct i2c_client *client = to_i2c_client(dev);	struct gl520_data *data = i2c_get_clientdata(client);	int val;	down(&data->update_lock);	if ((jiffies - data->last_updated > 2 * HZ) ||	    (jiffies < data->last_updated) || !data->valid) {		dev_dbg(&client->dev, "Starting gl520sm update\n");		data->alarms = gl520_read_value(client, GL520_REG_ALARMS);		data->beep_mask = gl520_read_value(client, GL520_REG_BEEP_MASK);		data->vid = gl520_read_value(client, GL520_REG_VID_INPUT) & 0x1f;		val = gl520_read_value(client, GL520_REG_IN0_LIMIT);		data->in_min[0] = val & 0xff;		data->in_max[0] = (val >> 8) & 0xff;		val = gl520_read_value(client, GL520_REG_IN1_LIMIT);		data->in_min[1] = val & 0xff;		data->in_max[1] = (val >> 8) & 0xff;		val = gl520_read_value(client, GL520_REG_IN2_LIMIT);		data->in_min[2] = val & 0xff;		data->in_max[2] = (val >> 8) & 0xff;		val = gl520_read_value(client, GL520_REG_IN3_LIMIT);		data->in_min[3] = val & 0xff;		data->in_max[3] = (val >> 8) & 0xff;		val = gl520_read_value(client, GL520_REG_FAN_INPUT);		data->fan_input[0] = (val >> 8) & 0xff;		data->fan_input[1] = val & 0xff;		val = gl520_read_value(client, GL520_REG_FAN_MIN);		data->fan_min[0] = (val >> 8) & 0xff;		data->fan_min[1] = val & 0xff;		data->temp_input[0] = gl520_read_value(client, GL520_REG_TEMP1_INPUT);		data->temp_max[0] = gl520_read_value(client, GL520_REG_TEMP1_MAX);		data->temp_max_hyst[0] = gl520_read_value(client, GL520_REG_TEMP1_MAX_HYST);		val = gl520_read_value(client, GL520_REG_FAN_DIV);		data->fan_div[0] = (val >> 6) & 0x03;		data->fan_div[1] = (val >> 4) & 0x03;		data->fan_off = (val >> 2) & 0x01;		data->alarms &= data->alarm_mask;		val = gl520_read_value(client, GL520_REG_CONF);		data->beep_enable = !((val >> 2) & 1);		data->in_input[0] = gl520_read_value(client, GL520_REG_IN0_INPUT);		data->in_input[1] = gl520_read_value(client, GL520_REG_IN1_INPUT);		data->in_input[2] = gl520_read_value(client, GL520_REG_IN2_INPUT);		data->in_input[3] = gl520_read_value(client, GL520_REG_IN3_INPUT);		/* Temp1 and Vin4 are the same input */		if (data->two_temps) {			data->temp_input[1] = gl520_read_value(client, GL520_REG_TEMP2_INPUT);			data->temp_max[1] = gl520_read_value(client, GL520_REG_TEMP2_MAX);			data->temp_max_hyst[1] = gl520_read_value(client, GL520_REG_TEMP2_MAX_HYST);		} else {			data->in_input[4] = gl520_read_value(client, GL520_REG_IN4_INPUT);			data->in_min[4] = gl520_read_value(client, GL520_REG_IN4_MIN);			data->in_max[4] = gl520_read_value(client, GL520_REG_IN4_MAX);		}		data->last_updated = jiffies;		data->valid = 1;	}	up(&data->update_lock);	return data;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/0cacdf298211ec9e87354cf102f20d070e76e075/gl520sm.c/clean/drivers/hwmon/gl520sm.c