linux/drivers/input/touchscreen/hampshire.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Hampshire serial touchscreen driver
 *
 * Copyright (c) 2010 Adam Bennett
 * Based on the dynapro driver (c) Tias Guns
 */


/*
 * 2010/04/08 Adam Bennett <[email protected]>
 *   Copied dynapro.c and edited for Hampshire 4-byte protocol
 */

#include <linux/errno.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/slab.h>
#include <linux/input.h>
#include <linux/serio.h>

#define DRIVER_DESC

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

/*
 * Definitions & global arrays.
 */

#define HAMPSHIRE_FORMAT_TOUCH_BIT
#define HAMPSHIRE_FORMAT_LENGTH
#define HAMPSHIRE_RESPONSE_BEGIN_BYTE

#define HAMPSHIRE_MIN_XC
#define HAMPSHIRE_MAX_XC
#define HAMPSHIRE_MIN_YC
#define HAMPSHIRE_MAX_YC

#define HAMPSHIRE_GET_XC(data)
#define HAMPSHIRE_GET_YC(data)
#define HAMPSHIRE_GET_TOUCHED(data)

/*
 * Per-touchscreen data.
 */

struct hampshire {};

static void hampshire_process_data(struct hampshire *phampshire)
{}

static irqreturn_t hampshire_interrupt(struct serio *serio,
		unsigned char data, unsigned int flags)
{}

static void hampshire_disconnect(struct serio *serio)
{}

/*
 * hampshire_connect() is the routine that is called when someone adds a
 * new serio device that supports hampshire protocol and registers it as
 * an input device. This is usually accomplished using inputattach.
 */

static int hampshire_connect(struct serio *serio, struct serio_driver *drv)
{}

/*
 * The serio driver structure.
 */

static const struct serio_device_id hampshire_serio_ids[] =;

MODULE_DEVICE_TABLE(serio, hampshire_serio_ids);

static struct serio_driver hampshire_drv =;

module_serio_driver();