#include <linux/acpi.h>
#include <linux/iio/iio.h>
#include <linux/iio/buffer.h>
#include <linux/iio/types.h>
#include <linux/iio/triggered_buffer.h>
#include <linux/iio/trigger_consumer.h>
#include <linux/interrupt.h>
#include <linux/module.h>
#include <linux/mod_devicetable.h>
#include <linux/property.h>
#include <linux/regulator/consumer.h>
#include <linux/spi/spi.h>
#define ADC108S102_VA_MV_ACPI_DEFAULT …
#define ADC108S102_BITS …
#define ADC108S102_MAX_CHANNELS …
#define ADC108S102_CMD(ch) …
#define ADC108S102_RES_DATA(res) …
struct adc108s102_state { … };
#define ADC108S102_V_CHAN(index) …
static const struct iio_chan_spec adc108s102_channels[] = …;
static int adc108s102_update_scan_mode(struct iio_dev *indio_dev,
unsigned long const *active_scan_mask)
{ … }
static irqreturn_t adc108s102_trigger_handler(int irq, void *p)
{ … }
static int adc108s102_scan_direct(struct adc108s102_state *st, unsigned int ch)
{ … }
static int adc108s102_read_raw(struct iio_dev *indio_dev,
struct iio_chan_spec const *chan,
int *val, int *val2, long m)
{ … }
static const struct iio_info adc108s102_info = …;
static int adc108s102_probe(struct spi_device *spi)
{ … }
static const struct of_device_id adc108s102_of_match[] = …;
MODULE_DEVICE_TABLE(of, adc108s102_of_match);
static const struct acpi_device_id adc108s102_acpi_ids[] = …;
MODULE_DEVICE_TABLE(acpi, adc108s102_acpi_ids);
static const struct spi_device_id adc108s102_id[] = …;
MODULE_DEVICE_TABLE(spi, adc108s102_id);
static struct spi_driver adc108s102_driver = …;
module_spi_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;