Lines Matching +full:num +full:- +full:addresses

1 // SPDX-License-Identifier: GPL-2.0
8 * Possible I2C slave addresses:
34 ret = regmap_bulk_read(sen0322->regmap, SEN0322_REG_DATA, data, in sen0322_read_data()
42 * but it is multiplied by 100 here to avoid floating-point math in sen0322_read_data()
48 static int sen0322_read_scale(struct sen0322 *sen0322, int *num, int *den) in sen0322_read_scale() argument
53 ret = regmap_read(sen0322->regmap, SEN0322_REG_COEFF, &val); in sen0322_read_scale()
58 *num = val; in sen0322_read_scale()
60 } else { /* The device is not calibrated, using the factory-defaults. */ in sen0322_read_scale()
61 *num = 209; /* Oxygen content in the atmosphere is 20.9%. */ in sen0322_read_scale()
65 dev_dbg(regmap_get_device(sen0322->regmap), "scale: %d/%d\n", in sen0322_read_scale()
66 *num, *den); in sen0322_read_scale()
78 if (chan->type != IIO_CONCENTRATION) in sen0322_read_raw()
79 return -EINVAL; in sen0322_read_raw()
98 return -EINVAL; in sen0322_read_raw()
122 if (!i2c_check_functionality(client->adapter, I2C_FUNC_I2C)) in sen0322_probe()
123 return -ENODEV; in sen0322_probe()
125 iio_dev = devm_iio_device_alloc(&client->dev, sizeof(*sen0322)); in sen0322_probe()
127 return -ENOMEM; in sen0322_probe()
131 sen0322->regmap = devm_regmap_init_i2c(client, &sen0322_regmap_conf); in sen0322_probe()
132 if (IS_ERR(sen0322->regmap)) in sen0322_probe()
133 return PTR_ERR(sen0322->regmap); in sen0322_probe()
135 iio_dev->info = &sen0322_info; in sen0322_probe()
136 iio_dev->name = "sen0322"; in sen0322_probe()
137 iio_dev->channels = &sen0322_channel; in sen0322_probe()
138 iio_dev->num_channels = 1; in sen0322_probe()
139 iio_dev->modes = INDIO_DIRECT_MODE; in sen0322_probe()
141 return devm_iio_device_register(&client->dev, iio_dev); in sen0322_probe()