1/* 2 * arch/arm/mach-ep93xx/include/mach/ep93xx_keypad.h 3 */ 4 5#ifndef __ASM_ARCH_EP93XX_KEYPAD_H 6#define __ASM_ARCH_EP93XX_KEYPAD_H 7 8struct matrix_keymap_data; 9 10/* flags for the ep93xx_keypad driver */ 11#define EP93XX_KEYPAD_DISABLE_3_KEY (1<<0) /* disable 3-key reset */ 12#define EP93XX_KEYPAD_DIAG_MODE (1<<1) /* diagnostic mode */ 13#define EP93XX_KEYPAD_BACK_DRIVE (1<<2) /* back driving mode */ 14#define EP93XX_KEYPAD_TEST_MODE (1<<3) /* scan only column 0 */ 15#define EP93XX_KEYPAD_KDIV (1<<4) /* 1/4 clock or 1/16 clock */ 16#define EP93XX_KEYPAD_AUTOREPEAT (1<<5) /* enable key autorepeat */ 17 18/** 19 * struct ep93xx_keypad_platform_data - platform specific device structure 20 * @keymap_data: pointer to &matrix_keymap_data 21 * @debounce: debounce start count; terminal count is 0xff 22 * @prescale: row/column counter pre-scaler load value 23 * @flags: see above 24 */ 25struct ep93xx_keypad_platform_data { 26 struct matrix_keymap_data *keymap_data; 27 unsigned int debounce; 28 unsigned int prescale; 29 unsigned int flags; 30}; 31 32#define EP93XX_MATRIX_ROWS (8) 33#define EP93XX_MATRIX_COLS (8) 34 35#endif /* __ASM_ARCH_EP93XX_KEYPAD_H */ 36