linux/drivers/input/touchscreen/wm831x-ts.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Touchscreen driver for WM831x PMICs
 *
 * Copyright 2011 Wolfson Microelectronics plc.
 * Author: Mark Brown <[email protected]>
 */

#include <linux/module.h>
#include <linux/moduleparam.h>
#include <linux/kernel.h>
#include <linux/string.h>
#include <linux/pm.h>
#include <linux/input.h>
#include <linux/interrupt.h>
#include <linux/io.h>
#include <linux/mfd/wm831x/core.h>
#include <linux/mfd/wm831x/irq.h>
#include <linux/mfd/wm831x/pdata.h>
#include <linux/platform_device.h>
#include <linux/slab.h>
#include <linux/types.h>

/*
 * R16424 (0x4028) - Touch Control 1
 */
#define WM831X_TCH_ENA
#define WM831X_TCH_CVT_ENA
#define WM831X_TCH_SLPENA
#define WM831X_TCH_Z_ENA
#define WM831X_TCH_Y_ENA
#define WM831X_TCH_X_ENA
#define WM831X_TCH_DELAY_MASK
#define WM831X_TCH_DELAY_SHIFT
#define WM831X_TCH_DELAY_WIDTH
#define WM831X_TCH_RATE_MASK
#define WM831X_TCH_RATE_SHIFT
#define WM831X_TCH_RATE_WIDTH

/*
 * R16425 (0x4029) - Touch Control 2
 */
#define WM831X_TCH_PD_WK
#define WM831X_TCH_5WIRE
#define WM831X_TCH_PDONLY
#define WM831X_TCH_ISEL
#define WM831X_TCH_RPU_MASK
#define WM831X_TCH_RPU_SHIFT
#define WM831X_TCH_RPU_WIDTH

/*
 * R16426-8 (0x402A-C) - Touch Data X/Y/X
 */
#define WM831X_TCH_PD
#define WM831X_TCH_DATA_MASK
#define WM831X_TCH_DATA_SHIFT
#define WM831X_TCH_DATA_WIDTH

struct wm831x_ts {};

static void wm831x_pd_data_work(struct work_struct *work)
{}

static irqreturn_t wm831x_ts_data_irq(int irq, void *irq_data)
{}

static irqreturn_t wm831x_ts_pen_down_irq(int irq, void *irq_data)
{}

static int wm831x_ts_input_open(struct input_dev *idev)
{}

static void wm831x_ts_input_close(struct input_dev *idev)
{}

static int wm831x_ts_probe(struct platform_device *pdev)
{}

static void wm831x_ts_remove(struct platform_device *pdev)
{}

static struct platform_driver wm831x_ts_driver =;
module_platform_driver();

/* Module information */
MODULE_AUTHOR();
MODULE_DESCRIPTION();
MODULE_LICENSE();
MODULE_ALIAS();