Lines Matching defs:data

55 /* Register data is read (and cached) at most once per second. */
68 u8 rpm_output[2]; /* The fan RPM data for fans 1 and 2 is then
132 /* helper to grab and cache data, at most one time per second */
135 struct tc654_data *data = dev_get_drvdata(dev);
136 struct i2c_client *client = data->client;
139 mutex_lock(&data->update_lock);
140 if (time_before(jiffies, data->last_updated + TC654_UPDATE_INTERVAL) &&
141 likely(data->valid))
147 data->rpm_output[0] = ret;
152 data->rpm_output[1] = ret;
157 data->fan_fault[0] = ret;
162 data->fan_fault[1] = ret;
167 data->config = ret;
172 data->status = ret;
177 data->duty_cycle = ret & 0x0f;
179 data->last_updated = jiffies;
180 data->valid = true;
182 mutex_unlock(&data->update_lock);
185 data = ERR_PTR(ret);
187 return data;
198 struct tc654_data *data = tc654_update_client(dev);
201 if (IS_ERR(data))
202 return PTR_ERR(data);
204 if (data->config & TC654_REG_CONFIG_RES)
205 val = data->rpm_output[nr] * TC654_HIGH_RPM_RESOLUTION;
207 val = data->rpm_output[nr] * TC654_LOW_RPM_RESOLUTION;
216 struct tc654_data *data = tc654_update_client(dev);
218 if (IS_ERR(data))
219 return PTR_ERR(data);
222 TC654_FAN_FAULT_FROM_REG(data->fan_fault[nr]));
229 struct tc654_data *data = dev_get_drvdata(dev);
230 struct i2c_client *client = data->client;
239 mutex_lock(&data->update_lock);
241 data->fan_fault[nr] = TC654_FAN_FAULT_TO_REG(val);
243 data->fan_fault[nr]);
245 mutex_unlock(&data->update_lock);
253 struct tc654_data *data = tc654_update_client(dev);
256 if (IS_ERR(data))
257 return PTR_ERR(data);
260 val = !!(data->status & TC654_REG_STATUS_F1F);
262 val = !!(data->status & TC654_REG_STATUS_F2F);
273 struct tc654_data *data = tc654_update_client(dev);
276 if (IS_ERR(data))
277 return PTR_ERR(data);
279 val = BIT((data->config >> TC654_FAN_PULSE_SHIFT[nr]) & 0x03);
288 struct tc654_data *data = dev_get_drvdata(dev);
289 struct i2c_client *client = data->client;
314 mutex_lock(&data->update_lock);
316 data->config &= ~(0x03 << TC654_FAN_PULSE_SHIFT[nr]);
317 data->config |= (config << TC654_FAN_PULSE_SHIFT[nr]);
318 ret = i2c_smbus_write_byte_data(client, TC654_REG_CONFIG, data->config);
320 mutex_unlock(&data->update_lock);
327 struct tc654_data *data = tc654_update_client(dev);
329 if (IS_ERR(data))
330 return PTR_ERR(data);
332 return sprintf(buf, "%d\n", !!(data->config & TC654_REG_CONFIG_DUTYC));
338 struct tc654_data *data = dev_get_drvdata(dev);
339 struct i2c_client *client = data->client;
349 mutex_lock(&data->update_lock);
352 data->config |= TC654_REG_CONFIG_DUTYC;
354 data->config &= ~TC654_REG_CONFIG_DUTYC;
356 ret = i2c_smbus_write_byte_data(client, TC654_REG_CONFIG, data->config);
358 mutex_unlock(&data->update_lock);
368 struct tc654_data *data = tc654_update_client(dev);
371 if (IS_ERR(data))
372 return PTR_ERR(data);
374 if (data->config & TC654_REG_CONFIG_SDM)
377 pwm = tc654_pwm_map[data->duty_cycle];
385 struct tc654_data *data = dev_get_drvdata(dev);
386 struct i2c_client *client = data->client;
395 mutex_lock(&data->update_lock);
398 data->config |= TC654_REG_CONFIG_SDM;
400 data->config &= ~TC654_REG_CONFIG_SDM;
402 data->duty_cycle = find_closest(val, tc654_pwm_map,
405 ret = i2c_smbus_write_byte_data(client, TC654_REG_CONFIG, data->config);
410 data->duty_cycle);
413 mutex_unlock(&data->update_lock);
428 /* Driver data */
452 struct tc654_data *data;
459 data = devm_kzalloc(dev, sizeof(struct tc654_data), GFP_KERNEL);
460 if (!data)
463 data->client = client;
464 mutex_init(&data->update_lock);
470 data->config = ret;
473 devm_hwmon_device_register_with_groups(dev, client->name, data,