static ssize_t set_pwm_enable(struct device *dev, const char *buf, 
static ssize_t set_pwm_enable(struct device *dev, struct device_attribute *attr, const char *buf, 
static ssize_t set_pwm_enable(struct device *dev, const char *buf,		size_t count){	struct i2c_client *client = to_i2c_client(dev);	struct adm1026_data *data = i2c_get_clientdata(client);	int val = simple_strtol(buf, NULL, 10);	int     old_enable;	if ((val >= 0) && (val < 3)) {		down(&data->update_lock);		old_enable = data->pwm1.enable;		data->pwm1.enable = val;		data->config1 = (data->config1 & ~CFG1_PWM_AFC)				| ((val == 2) ? CFG1_PWM_AFC : 0);		adm1026_write_value(client, ADM1026_REG_CONFIG1,			data->config1);		if (val == 2) {  /* apply pwm1_auto_pwm_min to pwm1 */			data->pwm1.pwm = PWM_TO_REG((data->pwm1.pwm & 0x0f) |				PWM_MIN_TO_REG(data->pwm1.auto_pwm_min)); 			adm1026_write_value(client, ADM1026_REG_PWM, 				data->pwm1.pwm);		} else if (!((old_enable == 1) && (val == 1))) {			/* set pwm to safe value */			data->pwm1.pwm = 255;			adm1026_write_value(client, ADM1026_REG_PWM, 				data->pwm1.pwm);		}		up(&data->update_lock);	}	return count;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/74880c063b06efd103c924abfe19d9d8fa4864c4/adm1026.c/buggy/drivers/i2c/chips/adm1026.c