#include <linux/iio/common/ssp_sensors.h>
#include <linux/iio/iio.h>
#include <linux/iio/buffer.h>
#include <linux/iio/kfifo_buf.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/slab.h>
#include "../common/ssp_sensors/ssp_iio_sensor.h"
#define SSP_CHANNEL_COUNT …
#define SSP_GYROSCOPE_NAME …
static const char ssp_gyro_name[] = …;
enum ssp_gyro_3d_channel { … };
static int ssp_gyro_read_raw(struct iio_dev *indio_dev,
struct iio_chan_spec const *chan, int *val,
int *val2, long mask)
{ … }
static int ssp_gyro_write_raw(struct iio_dev *indio_dev,
struct iio_chan_spec const *chan, int val,
int val2, long mask)
{ … }
static const struct iio_info ssp_gyro_iio_info = …;
static const unsigned long ssp_gyro_scan_mask[] = …;
static const struct iio_chan_spec ssp_gyro_channels[] = …;
static int ssp_process_gyro_data(struct iio_dev *indio_dev, void *buf,
int64_t timestamp)
{ … }
static const struct iio_buffer_setup_ops ssp_gyro_buffer_ops = …;
static int ssp_gyro_probe(struct platform_device *pdev)
{ … }
static struct platform_driver ssp_gyro_driver = …;
module_platform_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;
MODULE_IMPORT_NS(…);