Lines Matching defs:data

134 static int hdc100x_update_config(struct hdc100x_data *data, int mask, int val)
136 int tmp = (~mask & data->config) | val;
139 ret = i2c_smbus_write_word_swapped(data->client,
142 data->config = tmp;
147 static int hdc100x_set_it_time(struct hdc100x_data *data, int chan, int val2)
155 ret = hdc100x_update_config(data,
159 data->adc_int_us[chan] = val2;
167 static int hdc100x_get_measurement(struct hdc100x_data *data,
170 struct i2c_client *client = data->client;
171 int delay = data->adc_int_us[chan->address] + 1*USEC_PER_MSEC;
186 ret = i2c_master_recv(data->client, (char *)&val, sizeof(val));
188 dev_err(&client->dev, "cannot read sensor data\n");
194 static int hdc100x_get_heater_status(struct hdc100x_data *data)
196 return !!(data->config & HDC100X_REG_CONFIG_HEATER_EN);
203 struct hdc100x_data *data = iio_priv(indio_dev);
209 mutex_lock(&data->lock);
211 *val = hdc100x_get_heater_status(data);
216 mutex_unlock(&data->lock);
220 ret = hdc100x_get_measurement(data, chan);
227 mutex_unlock(&data->lock);
232 *val2 = data->adc_int_us[chan->address];
258 struct hdc100x_data *data = iio_priv(indio_dev);
266 mutex_lock(&data->lock);
267 ret = hdc100x_set_it_time(data, chan->address, val2);
268 mutex_unlock(&data->lock);
274 mutex_lock(&data->lock);
275 ret = hdc100x_update_config(data, HDC100X_REG_CONFIG_HEATER_EN,
277 mutex_unlock(&data->lock);
286 struct hdc100x_data *data = iio_priv(indio_dev);
290 mutex_lock(&data->lock);
291 ret = hdc100x_update_config(data, HDC100X_REG_CONFIG_ACQ_MODE,
293 mutex_unlock(&data->lock);
300 struct hdc100x_data *data = iio_priv(indio_dev);
303 mutex_lock(&data->lock);
304 ret = hdc100x_update_config(data, HDC100X_REG_CONFIG_ACQ_MODE, 0);
305 mutex_unlock(&data->lock);
319 struct hdc100x_data *data = iio_priv(indio_dev);
320 struct i2c_client *client = data->client;
321 int delay = data->adc_int_us[0] + data->adc_int_us[1] + 2*USEC_PER_MSEC;
325 mutex_lock(&data->lock);
333 ret = i2c_master_recv(client, (u8 *)data->scan.channels, 4);
335 dev_err(&client->dev, "cannot read sensor data\n");
339 iio_push_to_buffers_with_timestamp(indio_dev, &data->scan,
342 mutex_unlock(&data->lock);
358 struct hdc100x_data *data;
365 indio_dev = devm_iio_device_alloc(&client->dev, sizeof(*data));
369 data = iio_priv(indio_dev);
371 data->client = client;
372 mutex_init(&data->lock);
383 hdc100x_set_it_time(data, 0, hdc100x_int_time[0][0]);
384 hdc100x_set_it_time(data, 1, hdc100x_int_time[1][0]);
385 hdc100x_update_config(data, HDC100X_REG_CONFIG_ACQ_MODE, 0);