Lines Matching refs:data
45 /* Each client has this additional data */
61 static int max31730_write_config(struct max31730_data *data, u8 set_mask,
67 value = data->current_conf & ~clr_mask;
70 if (data->current_conf != value) {
73 err = i2c_smbus_write_byte_data(data->client, MAX31730_REG_CONF,
77 data->current_conf = value;
102 static int max31730_set_offset_enable(struct max31730_data *data, int channel,
105 return max31730_set_enable(data->client, MAX31730_REG_OFFSET_ENABLE,
106 &data->offset_enable, channel, enable);
109 static int max31730_set_channel_enable(struct max31730_data *data, int channel,
112 return max31730_set_enable(data->client, MAX31730_REG_CHANNEL_ENABLE,
113 &data->channel_enable, channel, enable);
119 struct max31730_data *data = dev_get_drvdata(dev);
127 if (!(data->channel_enable & BIT(channel)))
138 *val = !!(data->channel_enable & BIT(channel));
143 if (!(data->offset_enable & BIT(channel))) {
147 offset = i2c_smbus_read_byte_data(data->client,
154 regval = i2c_smbus_read_byte_data(data->client,
161 regval = i2c_smbus_read_byte_data(data->client,
168 regval = i2c_smbus_read_byte_data(data->client,
177 regval = i2c_smbus_read_word_swapped(data->client, reg);
189 struct max31730_data *data = dev_get_drvdata(dev);
205 return max31730_set_channel_enable(data, channel, val);
209 err = max31730_set_offset_enable(data, channel,
213 return i2c_smbus_write_byte_data(data->client,
222 return i2c_smbus_write_word_swapped(data->client, reg, (u16)val);
225 static umode_t max31730_is_visible(const void *data,
285 static void max31730_remove(void *data)
287 struct max31730_data *max31730 = data;
299 struct max31730_data *data;
306 data = devm_kzalloc(dev, sizeof(struct max31730_data), GFP_KERNEL);
307 if (!data)
310 data->client = client;
316 data->channel_enable = status;
321 data->offset_enable = status;
326 data->orig_conf = status;
327 data->current_conf = status;
329 err = max31730_write_config(data,
330 data->channel_enable ? 0 : MAX31730_STOP,
331 data->channel_enable ? MAX31730_STOP : 0);
335 dev_set_drvdata(dev, data);
337 err = devm_add_action_or_reset(dev, max31730_remove, data);
342 data,
409 struct max31730_data *data = dev_get_drvdata(dev);
411 return max31730_write_config(data, MAX31730_STOP, 0);
416 struct max31730_data *data = dev_get_drvdata(dev);
418 return max31730_write_config(data, 0, MAX31730_STOP);