linux/drivers/iio/adc/rcar-gyroadc.c

// SPDX-License-Identifier: GPL-2.0+
/*
 * Renesas R-Car GyroADC driver
 *
 * Copyright 2016 Marek Vasut <[email protected]>
 */

#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/delay.h>
#include <linux/kernel.h>
#include <linux/slab.h>
#include <linux/io.h>
#include <linux/clk.h>
#include <linux/of.h>
#include <linux/of_irq.h>
#include <linux/regulator/consumer.h>
#include <linux/of_platform.h>
#include <linux/err.h>
#include <linux/pm_runtime.h>

#include <linux/iio/iio.h>
#include <linux/iio/sysfs.h>
#include <linux/iio/trigger.h>

#define DRIVER_NAME

/* GyroADC registers. */
#define RCAR_GYROADC_MODE_SELECT
#define RCAR_GYROADC_MODE_SELECT_1_MB88101A
#define RCAR_GYROADC_MODE_SELECT_2_ADCS7476
#define RCAR_GYROADC_MODE_SELECT_3_MAX1162

#define RCAR_GYROADC_START_STOP
#define RCAR_GYROADC_START_STOP_START

#define RCAR_GYROADC_CLOCK_LENGTH
#define RCAR_GYROADC_1_25MS_LENGTH

#define RCAR_GYROADC_REALTIME_DATA(ch)
#define RCAR_GYROADC_100MS_ADDED_DATA(ch)
#define RCAR_GYROADC_10MS_AVG_DATA(ch)

#define RCAR_GYROADC_FIFO_STATUS
#define RCAR_GYROADC_FIFO_STATUS_EMPTY(ch)
#define RCAR_GYROADC_FIFO_STATUS_FULL(ch)
#define RCAR_GYROADC_FIFO_STATUS_ERROR(ch)

#define RCAR_GYROADC_INTR
#define RCAR_GYROADC_INTR_INT

#define RCAR_GYROADC_INTENR
#define RCAR_GYROADC_INTENR_INTEN

#define RCAR_GYROADC_SAMPLE_RATE

#define RCAR_GYROADC_RUNTIME_PM_DELAY_MS

enum rcar_gyroadc_model {};

struct rcar_gyroadc {};

static void rcar_gyroadc_hw_init(struct rcar_gyroadc *priv)
{}

static void rcar_gyroadc_hw_start(struct rcar_gyroadc *priv)
{}

static void rcar_gyroadc_hw_stop(struct rcar_gyroadc *priv)
{}

#define RCAR_GYROADC_CHAN(_idx)

static const struct iio_chan_spec rcar_gyroadc_iio_channels_1[] =;

static const struct iio_chan_spec rcar_gyroadc_iio_channels_2[] =;

static const struct iio_chan_spec rcar_gyroadc_iio_channels_3[] =;

static int rcar_gyroadc_set_power(struct rcar_gyroadc *priv, bool on)
{}

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

static int rcar_gyroadc_reg_access(struct iio_dev *indio_dev,
				   unsigned int reg, unsigned int writeval,
				   unsigned int *readval)
{}

static const struct iio_info rcar_gyroadc_iio_info =;

static const struct of_device_id rcar_gyroadc_match[] =;

MODULE_DEVICE_TABLE(of, rcar_gyroadc_match);

static const struct of_device_id rcar_gyroadc_child_match[] __maybe_unused =;

static int rcar_gyroadc_parse_subdevs(struct iio_dev *indio_dev)
{}

static void rcar_gyroadc_deinit_supplies(struct iio_dev *indio_dev)
{}

static int rcar_gyroadc_init_supplies(struct iio_dev *indio_dev)
{}

static int rcar_gyroadc_probe(struct platform_device *pdev)
{}

static void rcar_gyroadc_remove(struct platform_device *pdev)
{}

static int rcar_gyroadc_suspend(struct device *dev)
{}

static int rcar_gyroadc_resume(struct device *dev)
{}

static const struct dev_pm_ops rcar_gyroadc_pm_ops =;

static struct platform_driver rcar_gyroadc_driver =;

module_platform_driver();

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