linux/drivers/iio/afe/iio-rescale.c

// SPDX-License-Identifier: GPL-2.0
/*
 * IIO rescale driver
 *
 * Copyright (C) 2018 Axentia Technologies AB
 * Copyright (C) 2022 Liam Beguin <[email protected]>
 *
 * Author: Peter Rosin <[email protected]>
 */

#include <linux/err.h>
#include <linux/gcd.h>
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/property.h>

#include <linux/iio/afe/rescale.h>
#include <linux/iio/consumer.h>
#include <linux/iio/iio.h>

int rescale_process_scale(struct rescale *rescale, int scale_type,
			  int *val, int *val2)
{}
EXPORT_SYMBOL_NS_GPL();

int rescale_process_offset(struct rescale *rescale, int scale_type,
			   int scale, int scale2, int schan_off,
			   int *val, int *val2)
{}
EXPORT_SYMBOL_NS_GPL();

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

static int rescale_read_avail(struct iio_dev *indio_dev,
			      struct iio_chan_spec const *chan,
			      const int **vals, int *type, int *length,
			      long mask)
{}

static const struct iio_info rescale_info =;

static ssize_t rescale_read_ext_info(struct iio_dev *indio_dev,
				     uintptr_t private,
				     struct iio_chan_spec const *chan,
				     char *buf)
{}

static ssize_t rescale_write_ext_info(struct iio_dev *indio_dev,
				      uintptr_t private,
				      struct iio_chan_spec const *chan,
				      const char *buf, size_t len)
{}

static int rescale_configure_channel(struct device *dev,
				     struct rescale *rescale)
{}

static int rescale_current_sense_amplifier_props(struct device *dev,
						 struct rescale *rescale)
{}

static int rescale_current_sense_shunt_props(struct device *dev,
					     struct rescale *rescale)
{}

static int rescale_voltage_divider_props(struct device *dev,
					 struct rescale *rescale)
{}

static int rescale_temp_sense_rtd_props(struct device *dev,
					struct rescale *rescale)
{}

static int rescale_temp_transducer_props(struct device *dev,
					 struct rescale *rescale)
{}

enum rescale_variant {};

static const struct rescale_cfg rescale_cfg[] =;

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

static int rescale_probe(struct platform_device *pdev)
{}

static struct platform_driver rescale_driver =;
module_platform_driver();

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