2013-12-27 17:13:17 -08:00
|
|
|
#ifndef __KEYPAD_EP93XX_H
|
|
|
|
#define __KEYPAD_EP93XX_H
|
2009-04-18 23:43:57 -07:00
|
|
|
|
2010-01-13 00:34:12 -08:00
|
|
|
struct matrix_keymap_data;
|
|
|
|
|
2009-04-18 23:43:57 -07:00
|
|
|
/* flags for the ep93xx_keypad driver */
|
|
|
|
#define EP93XX_KEYPAD_DISABLE_3_KEY (1<<0) /* disable 3-key reset */
|
|
|
|
#define EP93XX_KEYPAD_DIAG_MODE (1<<1) /* diagnostic mode */
|
|
|
|
#define EP93XX_KEYPAD_BACK_DRIVE (1<<2) /* back driving mode */
|
|
|
|
#define EP93XX_KEYPAD_TEST_MODE (1<<3) /* scan only column 0 */
|
|
|
|
#define EP93XX_KEYPAD_KDIV (1<<4) /* 1/4 clock or 1/16 clock */
|
|
|
|
#define EP93XX_KEYPAD_AUTOREPEAT (1<<5) /* enable key autorepeat */
|
|
|
|
|
|
|
|
/**
|
|
|
|
* struct ep93xx_keypad_platform_data - platform specific device structure
|
2010-01-13 00:34:12 -08:00
|
|
|
* @keymap_data: pointer to &matrix_keymap_data
|
|
|
|
* @debounce: debounce start count; terminal count is 0xff
|
|
|
|
* @prescale: row/column counter pre-scaler load value
|
|
|
|
* @flags: see above
|
2009-04-18 23:43:57 -07:00
|
|
|
*/
|
|
|
|
struct ep93xx_keypad_platform_data {
|
2010-01-13 00:34:12 -08:00
|
|
|
struct matrix_keymap_data *keymap_data;
|
2009-04-18 23:43:57 -07:00
|
|
|
unsigned int debounce;
|
|
|
|
unsigned int prescale;
|
|
|
|
unsigned int flags;
|
|
|
|
};
|
|
|
|
|
2009-12-15 08:39:51 -08:00
|
|
|
#define EP93XX_MATRIX_ROWS (8)
|
|
|
|
#define EP93XX_MATRIX_COLS (8)
|
2009-04-18 23:43:57 -07:00
|
|
|
|
2013-12-27 17:13:17 -08:00
|
|
|
#endif /* __KEYPAD_EP93XX_H */
|