#include <linux/device.h>
#include <linux/platform_device.h>
#include <linux/module.h>
#include <linux/delay.h>
#include <linux/hid-sensor-hub.h>
#include <linux/workqueue.h>
#include <linux/iio/iio.h>
#include <linux/iio/trigger.h>
#include <linux/iio/triggered_buffer.h>
#include <linux/iio/trigger_consumer.h>
#include <linux/iio/sysfs.h>
#include "hid-sensor-trigger.h"
static ssize_t _hid_sensor_set_report_latency(struct device *dev,
struct device_attribute *attr,
const char *buf, size_t len)
{ … }
static ssize_t _hid_sensor_get_report_latency(struct device *dev,
struct device_attribute *attr,
char *buf)
{ … }
static ssize_t _hid_sensor_get_fifo_state(struct device *dev,
struct device_attribute *attr,
char *buf)
{ … }
static IIO_DEVICE_ATTR(hwfifo_timeout, 0644,
_hid_sensor_get_report_latency,
_hid_sensor_set_report_latency, 0);
static IIO_DEVICE_ATTR(hwfifo_enabled, 0444,
_hid_sensor_get_fifo_state, NULL, 0);
static const struct iio_dev_attr *hid_sensor_fifo_attributes[] = …;
static int _hid_sensor_power_state(struct hid_sensor_common *st, bool state)
{ … }
EXPORT_SYMBOL_NS(…);
int hid_sensor_power_state(struct hid_sensor_common *st, bool state)
{ … }
static void hid_sensor_set_power_work(struct work_struct *work)
{ … }
static int hid_sensor_data_rdy_trigger_set_state(struct iio_trigger *trig,
bool state)
{ … }
void hid_sensor_remove_trigger(struct iio_dev *indio_dev,
struct hid_sensor_common *attrb)
{ … }
EXPORT_SYMBOL_NS(…);
static const struct iio_trigger_ops hid_sensor_trigger_ops = …;
int hid_sensor_setup_trigger(struct iio_dev *indio_dev, const char *name,
struct hid_sensor_common *attrb)
{ … }
EXPORT_SYMBOL_NS(…);
static int __maybe_unused hid_sensor_suspend(struct device *dev)
{ … }
static int __maybe_unused hid_sensor_resume(struct device *dev)
{ … }
static int __maybe_unused hid_sensor_runtime_resume(struct device *dev)
{ … }
const struct dev_pm_ops hid_sensor_pm_ops = …;
EXPORT_SYMBOL_NS(…);
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;
MODULE_IMPORT_NS(…);