Lines Matching refs:data
53 * Client data (each client gets its own)
72 struct max31790_data *data = dev_get_drvdata(dev);
73 struct i2c_client *client = data->client;
74 struct max31790_data *ret = data;
78 mutex_lock(&data->update_lock);
80 if (time_after(jiffies, data->last_updated + HZ) || !data->valid) {
85 data->fault_status |= rv & 0x3F;
91 data->fault_status |= (rv & 0x3F) << 6;
98 data->tach[i] = rv;
100 if (data->fan_config[i]
107 data->tach[NR_CHANNEL + i] = rv;
113 data->pwm[i] = rv;
119 data->target_count[i] = rv;
123 data->last_updated = jiffies;
124 data->valid = true;
129 data->valid = false;
133 mutex_unlock(&data->update_lock);
168 struct max31790_data *data = max31790_update_device(dev);
171 if (IS_ERR(data))
172 return PTR_ERR(data);
176 sr = get_tach_period(data->fan_dynamics[channel % NR_CHANNEL]);
177 if (data->tach[channel] == FAN_COUNT_REG_MAX)
180 rpm = RPM_FROM_REG(data->tach[channel], sr);
184 sr = get_tach_period(data->fan_dynamics[channel]);
185 rpm = RPM_FROM_REG(data->target_count[channel], sr);
189 mutex_lock(&data->update_lock);
190 *val = !!(data->fault_status & (1 << channel));
191 data->fault_status &= ~(1 << channel);
200 i2c_smbus_write_byte_data(data->client, reg,
201 data->target_count[channel % NR_CHANNEL] >> 8);
203 mutex_unlock(&data->update_lock);
206 *val = !!(data->fan_config[channel] & MAX31790_FAN_CFG_TACH_INPUT_EN);
216 struct max31790_data *data = dev_get_drvdata(dev);
217 struct i2c_client *client = data->client;
223 mutex_lock(&data->update_lock);
229 data->fan_dynamics[channel] =
230 ((data->fan_dynamics[channel] &
235 data->fan_dynamics[channel]);
239 sr = get_tach_period(data->fan_dynamics[channel]);
243 data->target_count[channel] = target_count << 5;
247 data->target_count[channel]);
250 fan_config = data->fan_config[channel];
259 if (fan_config != data->fan_config[channel]) {
263 data->fan_config[channel] = fan_config;
271 mutex_unlock(&data->update_lock);
278 const struct max31790_data *data = _data;
279 u8 fan_config = data->fan_config[channel % NR_CHANNEL];
305 struct max31790_data *data = max31790_update_device(dev);
308 if (IS_ERR(data))
309 return PTR_ERR(data);
311 fan_config = data->fan_config[channel];
315 *val = data->pwm[channel] >> 8;
333 struct max31790_data *data = dev_get_drvdata(dev);
334 struct i2c_client *client = data->client;
338 mutex_lock(&data->update_lock);
346 data->valid = false;
352 fan_config = data->fan_config[channel];
375 if (fan_config != data->fan_config[channel]) {
379 data->fan_config[channel] = fan_config;
387 mutex_unlock(&data->update_lock);
394 const struct max31790_data *data = _data;
395 u8 fan_config = data->fan_config[channel];
434 static umode_t max31790_is_visible(const void *data,
440 return max31790_fan_is_visible(data, attr, channel);
442 return max31790_pwm_is_visible(data, attr, channel);
484 struct max31790_data *data)
493 data->fan_config[i] = rv;
499 data->fan_dynamics[i] = rv;
509 struct max31790_data *data;
517 data = devm_kzalloc(dev, sizeof(struct max31790_data), GFP_KERNEL);
518 if (!data)
521 data->client = client;
522 mutex_init(&data->update_lock);
527 err = max31790_init_client(client, data);
532 data,