diff options
author | Sriramakrishnan Govindarajan <srk@ti.com> | 2010-05-03 23:47:12 -0700 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2010-05-03 23:50:42 -0700 |
commit | 30ba3ead05763b172acaa65ae1be71af2a878940 (patch) | |
tree | cbbcfb494df9f73705b66324ba419118ca3b792e /include/linux/tca6416_keypad.h | |
parent | 16b32e0c9eec1bb8d53deedcd9f4704a114d84bb (diff) | |
download | linux-30ba3ead05763b172acaa65ae1be71af2a878940.tar.gz linux-30ba3ead05763b172acaa65ae1be71af2a878940.tar.bz2 linux-30ba3ead05763b172acaa65ae1be71af2a878940.zip |
Input: add keypad driver for keys interfaced to TCA6416
This patch implements a simple Keypad driver that functions
as an I2C client. It handles key press events for keys
connected to TCA6416 I2C based IO expander.
Signed-off-by: Sriramakrishnan <srk@ti.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'include/linux/tca6416_keypad.h')
-rw-r--r-- | include/linux/tca6416_keypad.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/include/linux/tca6416_keypad.h b/include/linux/tca6416_keypad.h new file mode 100644 index 000000000000..7bd266f3525c --- /dev/null +++ b/include/linux/tca6416_keypad.h @@ -0,0 +1,34 @@ +/* + * tca6416 keypad platform support + * + * Copyright (C) 2010 Texas Instruments + * + * Author: Sriramakrishnan <srk@ti.com> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +#ifndef _TCA6416_KEYS_H +#define _TCA6416_KEYS_H + +#include <linux/types.h> + +struct tca6416_button { + /* Configuration parameters */ + int code; /* input event code (KEY_*, SW_*) */ + int active_low; + int type; /* input event type (EV_KEY, EV_SW) */ +}; + +struct tca6416_keys_platform_data { + struct tca6416_button *buttons; + int nbuttons; + unsigned int rep:1; /* enable input subsystem auto repeat */ + uint16_t pinmask; + uint16_t invert; + int irq_is_gpio; + int use_polling; /* use polling if Interrupt is not connected*/ +}; +#endif |