linux/drivers/input/touchscreen/wacom_i2c.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Wacom Penabled Driver for I2C
 *
 * Copyright (c) 2011 - 2013 Tatsunosuke Tobita, Wacom.
 * <[email protected]>
 */

#include <linux/bits.h>
#include <linux/module.h>
#include <linux/input.h>
#include <linux/i2c.h>
#include <linux/slab.h>
#include <linux/irq.h>
#include <linux/interrupt.h>
#include <asm/unaligned.h>

/* Bitmasks (for data[3]) */
#define WACOM_TIP_SWITCH
#define WACOM_BARREL_SWITCH
#define WACOM_ERASER
#define WACOM_INVERT
#define WACOM_BARREL_SWITCH_2
#define WACOM_IN_PROXIMITY

/* Registers */
#define WACOM_COMMAND_LSB
#define WACOM_COMMAND_MSB

#define WACOM_DATA_LSB
#define WACOM_DATA_MSB

/* Report types */
#define REPORT_FEATURE

/* Requests / operations */
#define OPCODE_GET_REPORT

#define WACOM_QUERY_REPORT
#define WACOM_QUERY_SIZE

struct wacom_features {};

struct wacom_i2c {};

static int wacom_query_device(struct i2c_client *client,
			      struct wacom_features *features)
{}

static irqreturn_t wacom_i2c_irq(int irq, void *dev_id)
{}

static int wacom_i2c_open(struct input_dev *dev)
{}

static void wacom_i2c_close(struct input_dev *dev)
{}

static int wacom_i2c_probe(struct i2c_client *client)
{}

static int wacom_i2c_suspend(struct device *dev)
{}

static int wacom_i2c_resume(struct device *dev)
{}

static DEFINE_SIMPLE_DEV_PM_OPS(wacom_i2c_pm, wacom_i2c_suspend, wacom_i2c_resume);

static const struct i2c_device_id wacom_i2c_id[] =;
MODULE_DEVICE_TABLE(i2c, wacom_i2c_id);

static struct i2c_driver wacom_i2c_driver =;
module_i2c_driver();

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