#include <linux/bitops.h>
#include <linux/delay.h>
#include <linux/iio/iio.h>
#include <linux/module.h>
#include <linux/mutex.h>
#include <linux/regulator/consumer.h>
#include <linux/gpio/consumer.h>
#include <linux/gpio/driver.h>
#include <linux/property.h>
#include <dt-bindings/iio/adi,ad5592r.h>
#include "ad5592r-base.h"
static int ad5592r_gpio_get(struct gpio_chip *chip, unsigned offset)
{ … }
static void ad5592r_gpio_set(struct gpio_chip *chip, unsigned offset, int value)
{ … }
static int ad5592r_gpio_direction_input(struct gpio_chip *chip, unsigned offset)
{ … }
static int ad5592r_gpio_direction_output(struct gpio_chip *chip,
unsigned offset, int value)
{ … }
static int ad5592r_gpio_request(struct gpio_chip *chip, unsigned offset)
{ … }
static const char * const ad5592r_gpio_names[] = …;
static int ad5592r_gpio_init(struct ad5592r_state *st)
{ … }
static void ad5592r_gpio_cleanup(struct ad5592r_state *st)
{ … }
static int ad5592r_reset(struct ad5592r_state *st)
{ … }
static int ad5592r_get_vref(struct ad5592r_state *st)
{ … }
static int ad5592r_set_channel_modes(struct ad5592r_state *st)
{ … }
static int ad5592r_reset_channel_modes(struct ad5592r_state *st)
{ … }
static int ad5592r_write_raw(struct iio_dev *iio_dev,
struct iio_chan_spec const *chan, int val, int val2, long mask)
{ … }
static int ad5592r_read_raw(struct iio_dev *iio_dev,
struct iio_chan_spec const *chan,
int *val, int *val2, long m)
{ … }
static int ad5592r_write_raw_get_fmt(struct iio_dev *indio_dev,
struct iio_chan_spec const *chan, long mask)
{ … }
static const struct iio_info ad5592r_info = …;
static ssize_t ad5592r_show_scale_available(struct iio_dev *iio_dev,
uintptr_t private,
const struct iio_chan_spec *chan,
char *buf)
{ … }
static const struct iio_chan_spec_ext_info ad5592r_ext_info[] = …;
static void ad5592r_setup_channel(struct iio_dev *iio_dev,
struct iio_chan_spec *chan, bool output, unsigned id)
{ … }
static int ad5592r_alloc_channels(struct iio_dev *iio_dev)
{ … }
static void ad5592r_init_scales(struct ad5592r_state *st, int vref_mV)
{ … }
int ad5592r_probe(struct device *dev, const char *name,
const struct ad5592r_rw_ops *ops)
{ … }
EXPORT_SYMBOL_NS_GPL(…);
void ad5592r_remove(struct device *dev)
{ … }
EXPORT_SYMBOL_NS_GPL(…);
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;