linux/drivers/iio/light/iqs621-als.c

// SPDX-License-Identifier: GPL-2.0+
/*
 * Azoteq IQS621/622 Ambient Light Sensors
 *
 * Copyright (C) 2019 Jeff LaBundy <[email protected]>
 */

#include <linux/device.h>
#include <linux/iio/events.h>
#include <linux/iio/iio.h>
#include <linux/kernel.h>
#include <linux/mfd/iqs62x.h>
#include <linux/module.h>
#include <linux/mutex.h>
#include <linux/notifier.h>
#include <linux/platform_device.h>
#include <linux/regmap.h>

#define IQS621_ALS_FLAGS_LIGHT
#define IQS621_ALS_FLAGS_RANGE

#define IQS621_ALS_UI_OUT

#define IQS621_ALS_THRESH_DARK
#define IQS621_ALS_THRESH_LIGHT

#define IQS622_IR_RANGE
#define IQS622_IR_FLAGS
#define IQS622_IR_FLAGS_TOUCH
#define IQS622_IR_FLAGS_PROX

#define IQS622_IR_UI_OUT

#define IQS622_IR_THRESH_PROX
#define IQS622_IR_THRESH_TOUCH

struct iqs621_als_private {};

static int iqs621_als_init(struct iqs621_als_private *iqs621_als)
{}

static int iqs621_als_notifier(struct notifier_block *notifier,
			       unsigned long event_flags, void *context)
{}

static void iqs621_als_notifier_unregister(void *context)
{}

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

static int iqs621_als_read_event_config(struct iio_dev *indio_dev,
					const struct iio_chan_spec *chan,
					enum iio_event_type type,
					enum iio_event_direction dir)
{}

static int iqs621_als_write_event_config(struct iio_dev *indio_dev,
					 const struct iio_chan_spec *chan,
					 enum iio_event_type type,
					 enum iio_event_direction dir,
					 int state)
{}

static int iqs621_als_read_event_value(struct iio_dev *indio_dev,
				       const struct iio_chan_spec *chan,
				       enum iio_event_type type,
				       enum iio_event_direction dir,
				       enum iio_event_info info,
				       int *val, int *val2)
{}

static int iqs621_als_write_event_value(struct iio_dev *indio_dev,
					const struct iio_chan_spec *chan,
					enum iio_event_type type,
					enum iio_event_direction dir,
					enum iio_event_info info,
					int val, int val2)
{}

static const struct iio_info iqs621_als_info =;

static const struct iio_event_spec iqs621_als_range_events[] =;

static const struct iio_event_spec iqs621_als_light_events[] =;

static const struct iio_chan_spec iqs621_als_channels[] =;

static const struct iio_event_spec iqs622_als_prox_events[] =;

static const struct iio_chan_spec iqs622_als_channels[] =;

static int iqs621_als_probe(struct platform_device *pdev)
{}

static struct platform_driver iqs621_als_platform_driver =;
module_platform_driver();

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