1*fda8d26eSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 28ec4cf53SLars-Peter Clausen /* 38ec4cf53SLars-Peter Clausen * AD7266/65 SPI ADC driver 48ec4cf53SLars-Peter Clausen * 58ec4cf53SLars-Peter Clausen * Copyright 2012 Analog Devices Inc. 68ec4cf53SLars-Peter Clausen */ 78ec4cf53SLars-Peter Clausen 88ec4cf53SLars-Peter Clausen #ifndef __IIO_ADC_AD7266_H__ 98ec4cf53SLars-Peter Clausen #define __IIO_ADC_AD7266_H__ 108ec4cf53SLars-Peter Clausen 118ec4cf53SLars-Peter Clausen /** 128ec4cf53SLars-Peter Clausen * enum ad7266_range - AD7266 reference voltage range 138ec4cf53SLars-Peter Clausen * @AD7266_RANGE_VREF: Device is configured for input range 0V - VREF 148ec4cf53SLars-Peter Clausen * (RANGE pin set to low) 158ec4cf53SLars-Peter Clausen * @AD7266_RANGE_2VREF: Device is configured for input range 0V - 2VREF 168ec4cf53SLars-Peter Clausen * (RANGE pin set to high) 178ec4cf53SLars-Peter Clausen */ 188ec4cf53SLars-Peter Clausen enum ad7266_range { 198ec4cf53SLars-Peter Clausen AD7266_RANGE_VREF, 208ec4cf53SLars-Peter Clausen AD7266_RANGE_2VREF, 218ec4cf53SLars-Peter Clausen }; 228ec4cf53SLars-Peter Clausen 238ec4cf53SLars-Peter Clausen /** 248ec4cf53SLars-Peter Clausen * enum ad7266_mode - AD7266 sample mode 258ec4cf53SLars-Peter Clausen * @AD7266_MODE_DIFF: Device is configured for full differential mode 268ec4cf53SLars-Peter Clausen * (SGL/DIFF pin set to low, AD0 pin set to low) 278ec4cf53SLars-Peter Clausen * @AD7266_MODE_PSEUDO_DIFF: Device is configured for pseudo differential mode 288ec4cf53SLars-Peter Clausen * (SGL/DIFF pin set to low, AD0 pin set to high) 298ec4cf53SLars-Peter Clausen * @AD7266_MODE_SINGLE_ENDED: Device is configured for single-ended mode 308ec4cf53SLars-Peter Clausen * (SGL/DIFF pin set to high) 318ec4cf53SLars-Peter Clausen */ 328ec4cf53SLars-Peter Clausen enum ad7266_mode { 338ec4cf53SLars-Peter Clausen AD7266_MODE_DIFF, 348ec4cf53SLars-Peter Clausen AD7266_MODE_PSEUDO_DIFF, 358ec4cf53SLars-Peter Clausen AD7266_MODE_SINGLE_ENDED, 368ec4cf53SLars-Peter Clausen }; 378ec4cf53SLars-Peter Clausen 388ec4cf53SLars-Peter Clausen /** 398ec4cf53SLars-Peter Clausen * struct ad7266_platform_data - Platform data for the AD7266 driver 408ec4cf53SLars-Peter Clausen * @range: Reference voltage range the device is configured for 418ec4cf53SLars-Peter Clausen * @mode: Sample mode the device is configured for 428ec4cf53SLars-Peter Clausen * @fixed_addr: Whether the address pins are hard-wired 438ec4cf53SLars-Peter Clausen */ 448ec4cf53SLars-Peter Clausen struct ad7266_platform_data { 458ec4cf53SLars-Peter Clausen enum ad7266_range range; 468ec4cf53SLars-Peter Clausen enum ad7266_mode mode; 478ec4cf53SLars-Peter Clausen bool fixed_addr; 488ec4cf53SLars-Peter Clausen }; 498ec4cf53SLars-Peter Clausen 508ec4cf53SLars-Peter Clausen #endif 51