This allows to share most of this driver for the ltc2496 driver added in the next commit that is an SPI variant of the ltc2497. Initially I named the generic part ltc249x, but wild card names are frowned upon, so the generic part is called ltc2497-core even though it's not obvious that this is then to be reused for the ltc2496 driver. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
		
			
				
	
	
		
			19 lines
		
	
	
		
			504 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			19 lines
		
	
	
		
			504 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0-only */
 | |
| 
 | |
| #define LTC2497_ENABLE			0xA0
 | |
| #define LTC2497_CONFIG_DEFAULT		LTC2497_ENABLE
 | |
| #define LTC2497_CONVERSION_TIME_MS	150ULL
 | |
| 
 | |
| struct ltc2497core_driverdata {
 | |
| 	struct regulator *ref;
 | |
| 	ktime_t	time_prev;
 | |
| 	u8 addr_prev;
 | |
| 	int (*result_and_measure)(struct ltc2497core_driverdata *ddata,
 | |
| 				  u8 address, int *val);
 | |
| };
 | |
| 
 | |
| int ltc2497core_probe(struct device *dev, struct iio_dev *indio_dev);
 | |
| void ltc2497core_remove(struct iio_dev *indio_dev);
 | |
| 
 | |
| MODULE_IMPORT_NS(LTC2497);
 |