linux/drivers/input/touchscreen/cy8ctmg110_ts.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Driver for cypress touch screen controller
 *
 * Copyright (c) 2009 Aava Mobile
 *
 * Some cleanups by Alan Cox <[email protected]>
 */

#include <linux/i2c.h>
#include <linux/input.h>
#include <linux/interrupt.h>
#include <linux/gpio/consumer.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/slab.h>
#include <asm/byteorder.h>

#define CY8CTMG110_DRIVER_NAME

/* Touch coordinates */
#define CY8CTMG110_X_MIN
#define CY8CTMG110_Y_MIN
#define CY8CTMG110_X_MAX
#define CY8CTMG110_Y_MAX


/* cy8ctmg110 register definitions */
#define CY8CTMG110_TOUCH_WAKEUP_TIME
#define CY8CTMG110_TOUCH_SLEEP_TIME
#define CY8CTMG110_TOUCH_X1
#define CY8CTMG110_TOUCH_Y1
#define CY8CTMG110_TOUCH_X2
#define CY8CTMG110_TOUCH_Y2
#define CY8CTMG110_FINGERS
#define CY8CTMG110_GESTURE
#define CY8CTMG110_REG_MAX


/*
 * The touch driver structure.
 */
struct cy8ctmg110 {};

/*
 * cy8ctmg110_power is the routine that is called when touch hardware
 * is being powered off or on. When powering on this routine de-asserts
 * the RESET line, when powering off reset line is asserted.
 */
static void cy8ctmg110_power(struct cy8ctmg110 *ts, bool poweron)
{}

static int cy8ctmg110_write_regs(struct cy8ctmg110 *tsc, unsigned char reg,
		unsigned char len, unsigned char *value)
{}

static int cy8ctmg110_read_regs(struct cy8ctmg110 *tsc,
		unsigned char *data, unsigned char len, unsigned char cmd)
{}

static int cy8ctmg110_touch_pos(struct cy8ctmg110 *tsc)
{}

static int cy8ctmg110_set_sleepmode(struct cy8ctmg110 *ts, bool sleep)
{}

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

static void cy8ctmg110_shut_off(void *_ts)
{}

static int cy8ctmg110_probe(struct i2c_client *client)
{}

static int cy8ctmg110_suspend(struct device *dev)
{}

static int cy8ctmg110_resume(struct device *dev)
{}

static DEFINE_SIMPLE_DEV_PM_OPS(cy8ctmg110_pm,
				cy8ctmg110_suspend, cy8ctmg110_resume);

static const struct i2c_device_id cy8ctmg110_idtable[] =;

MODULE_DEVICE_TABLE(i2c, cy8ctmg110_idtable);

static struct i2c_driver cy8ctmg110_driver =;

module_i2c_driver();

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