linux/drivers/iio/potentiostat/lmp91000.c

// SPDX-License-Identifier: GPL-2.0+
/*
 * lmp91000.c - Support for Texas Instruments digital potentiostats
 *
 * Copyright (C) 2016, 2018
 * Author: Matt Ranostay <[email protected]>
 *
 * TODO: bias voltage + polarity control, and multiple chip support
 */

#include <linux/module.h>
#include <linux/i2c.h>
#include <linux/delay.h>
#include <linux/mod_devicetable.h>
#include <linux/regmap.h>
#include <linux/iio/iio.h>
#include <linux/iio/buffer.h>
#include <linux/iio/consumer.h>
#include <linux/iio/trigger.h>
#include <linux/iio/trigger_consumer.h>
#include <linux/iio/triggered_buffer.h>

#define LMP91000_REG_LOCK
#define LMP91000_REG_TIACN
#define LMP91000_REG_TIACN_GAIN_SHIFT

#define LMP91000_REG_REFCN
#define LMP91000_REG_REFCN_EXT_REF
#define LMP91000_REG_REFCN_50_ZERO

#define LMP91000_REG_MODECN
#define LMP91000_REG_MODECN_3LEAD
#define LMP91000_REG_MODECN_TEMP

#define LMP91000_DRV_NAME

static const int lmp91000_tia_gain[] =;

static const int lmp91000_rload[] =;

#define LMP91000_TEMP_BASE

static const u16 lmp91000_temp_lut[] =;

static const struct regmap_config lmp91000_regmap_config =;

struct lmp91000_data {};

static const struct iio_chan_spec lmp91000_channels[] =;

static int lmp91000_read(struct lmp91000_data *data, int channel, int *val)
{}

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

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

static const struct iio_info lmp91000_info =;

static int lmp91000_read_config(struct lmp91000_data *data)
{}

static int lmp91000_buffer_cb(const void *val, void *private)
{}

static int lmp91000_buffer_postenable(struct iio_dev *indio_dev)
{}

static int lmp91000_buffer_predisable(struct iio_dev *indio_dev)
{}

static const struct iio_buffer_setup_ops lmp91000_buffer_setup_ops =;

static int lmp91000_probe(struct i2c_client *client)
{}

static void lmp91000_remove(struct i2c_client *client)
{}

static const struct of_device_id lmp91000_of_match[] =;
MODULE_DEVICE_TABLE(of, lmp91000_of_match);

static const struct i2c_device_id lmp91000_id[] =;
MODULE_DEVICE_TABLE(i2c, lmp91000_id);

static struct i2c_driver lmp91000_driver =;
module_i2c_driver();

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