27 lines · c
1/* SPDX-License-Identifier: GPL-2.0-only */2 3#define LTC2497_ENABLE 0xA04#define LTC2497_CONFIG_DEFAULT LTC2497_ENABLE5#define LTC2497_CONVERSION_TIME_MS 150ULL6 7struct ltc2497_chip_info {8 u32 resolution;9 const char *name;10};11 12struct ltc2497core_driverdata {13 struct regulator *ref;14 ktime_t time_prev;15 /* lock to protect against multiple access to the device */16 struct mutex lock;17 const struct ltc2497_chip_info *chip_info;18 u8 addr_prev;19 int (*result_and_measure)(struct ltc2497core_driverdata *ddata,20 u8 address, int *val);21};22 23int ltc2497core_probe(struct device *dev, struct iio_dev *indio_dev);24void ltc2497core_remove(struct iio_dev *indio_dev);25 26MODULE_IMPORT_NS(LTC2497);27