linux/drivers/input/touchscreen/dynapro.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Dynapro serial touchscreen driver
 *
 * Copyright (c) 2009 Tias Guns
 * Based on the inexio driver (c) Vojtech Pavlik and Dan Streetman and
 * Richard Lemon
 */


/*
 * 2009/09/19 Tias Guns <[email protected]>
 *   Copied inexio.c and edited for Dynapro protocol (from retired Xorg module)
 */

#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 DYNAPRO_FORMAT_TOUCH_BIT
#define DYNAPRO_FORMAT_LENGTH
#define DYNAPRO_RESPONSE_BEGIN_BYTE

#define DYNAPRO_MIN_XC
#define DYNAPRO_MAX_XC
#define DYNAPRO_MIN_YC
#define DYNAPRO_MAX_YC

#define DYNAPRO_GET_XC(data)
#define DYNAPRO_GET_YC(data)
#define DYNAPRO_GET_TOUCHED(data)

/*
 * Per-touchscreen data.
 */

struct dynapro {};

static void dynapro_process_data(struct dynapro *pdynapro)
{}

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

static void dynapro_disconnect(struct serio *serio)
{}

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

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

/*
 * The serio driver structure.
 */

static const struct serio_device_id dynapro_serio_ids[] =;

MODULE_DEVICE_TABLE(serio, dynapro_serio_ids);

static struct serio_driver dynapro_drv =;

module_serio_driver();