linux/drivers/input/keyboard/lpc32xx-keys.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * NXP LPC32xx SoC Key Scan Interface
 *
 * Authors:
 *    Kevin Wells <[email protected]>
 *    Roland Stigge <[email protected]>
 *
 * Copyright (C) 2010 NXP Semiconductors
 * Copyright (C) 2012 Roland Stigge
 *
 * This controller supports square key matrices from 1x1 up to 8x8
 */

#include <linux/module.h>
#include <linux/interrupt.h>
#include <linux/slab.h>
#include <linux/irq.h>
#include <linux/pm.h>
#include <linux/platform_device.h>
#include <linux/input.h>
#include <linux/clk.h>
#include <linux/io.h>
#include <linux/of.h>
#include <linux/input/matrix_keypad.h>

#define DRV_NAME

/*
 * Key scanner register offsets
 */
#define LPC32XX_KS_DEB(x)
#define LPC32XX_KS_STATE_COND(x)
#define LPC32XX_KS_IRQ(x)
#define LPC32XX_KS_SCAN_CTL(x)
#define LPC32XX_KS_FAST_TST(x)
#define LPC32XX_KS_MATRIX_DIM(x)
#define LPC32XX_KS_DATA(x, y)

#define LPC32XX_KSCAN_DEB_NUM_DEB_PASS(n)

#define LPC32XX_KSCAN_SCOND_IN_IDLE
#define LPC32XX_KSCAN_SCOND_IN_SCANONCE
#define LPC32XX_KSCAN_SCOND_IN_IRQGEN
#define LPC32XX_KSCAN_SCOND_IN_SCAN_MATRIX

#define LPC32XX_KSCAN_IRQ_PENDING_CLR

#define LPC32XX_KSCAN_SCTRL_SCAN_DELAY(n)

#define LPC32XX_KSCAN_FTST_FORCESCANONCE
#define LPC32XX_KSCAN_FTST_USE32K_CLK

#define LPC32XX_KSCAN_MSEL_SELECT(n)

struct lpc32xx_kscan_drv {};

static void lpc32xx_mod_states(struct lpc32xx_kscan_drv *kscandat, int col)
{}

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

static int lpc32xx_kscan_open(struct input_dev *dev)
{}

static void lpc32xx_kscan_close(struct input_dev *dev)
{}

static int lpc32xx_parse_dt(struct device *dev,
				      struct lpc32xx_kscan_drv *kscandat)
{}

static int lpc32xx_kscan_probe(struct platform_device *pdev)
{}

static int lpc32xx_kscan_suspend(struct device *dev)
{}

static int lpc32xx_kscan_resume(struct device *dev)
{}

static DEFINE_SIMPLE_DEV_PM_OPS(lpc32xx_kscan_pm_ops, lpc32xx_kscan_suspend,
				lpc32xx_kscan_resume);

static const struct of_device_id lpc32xx_kscan_match[] =;
MODULE_DEVICE_TABLE(of, lpc32xx_kscan_match);

static struct platform_driver lpc32xx_kscan_driver =;

module_platform_driver();

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