linux/drivers/iio/adc/ad7766.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * AD7766/AD7767 SPI ADC driver
 *
 * Copyright 2016 Analog Devices Inc.
 */

#include <linux/clk.h>
#include <linux/delay.h>
#include <linux/device.h>
#include <linux/err.h>
#include <linux/gpio/consumer.h>
#include <linux/module.h>
#include <linux/regulator/consumer.h>
#include <linux/slab.h>
#include <linux/spi/spi.h>

#include <linux/iio/iio.h>
#include <linux/iio/buffer.h>
#include <linux/iio/trigger.h>
#include <linux/iio/trigger_consumer.h>
#include <linux/iio/triggered_buffer.h>

struct ad7766_chip_info {};

enum {};

struct ad7766 {};

/*
 * AD7766 and AD7767 variations are interface compatible, the main difference is
 * analog performance. Both parts will use the same ID.
 */
enum ad7766_device_ids {};

static irqreturn_t ad7766_trigger_handler(int irq, void *p)
{}

static int ad7766_preenable(struct iio_dev *indio_dev)
{}

static int ad7766_postdisable(struct iio_dev *indio_dev)
{}

static int ad7766_read_raw(struct iio_dev *indio_dev,
	const struct iio_chan_spec *chan, int *val, int *val2, long info)
{}

static const struct iio_chan_spec ad7766_channels[] =;

static const struct ad7766_chip_info ad7766_chip_info[] =;

static const struct iio_buffer_setup_ops ad7766_buffer_setup_ops =;

static const struct iio_info ad7766_info =;

static irqreturn_t ad7766_irq(int irq, void *private)
{}

static int ad7766_set_trigger_state(struct iio_trigger *trig, bool enable)
{}

static const struct iio_trigger_ops ad7766_trigger_ops =;

static int ad7766_probe(struct spi_device *spi)
{}

static const struct spi_device_id ad7766_id[] =;
MODULE_DEVICE_TABLE(spi, ad7766_id);

static struct spi_driver ad7766_driver =;
module_spi_driver();

MODULE_AUTHOR();
MODULE_DESCRIPTION();
MODULE_LICENSE();