/* * arch/arm/mach-ep93xx/include/mach/ep93xx_keypad.h */ #ifndef __ASM_ARCH_EP93XX_KEYPAD_H #define __ASM_ARCH_EP93XX_KEYPAD_H /* 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 * @matrix_key_map: array of keycodes defining the keypad matrix * @matrix_key_map_size: ARRAY_SIZE(matrix_key_map) * @debounce: debounce start count; terminal count is 0xff * @prescale: row/column counter pre-scaler load value * @flags: see above */ struct ep93xx_keypad_platform_data { unsigned int *matrix_key_map; int matrix_key_map_size; unsigned int debounce; unsigned int prescale; unsigned int flags; }; #define EP93XX_MATRIX_ROWS (8) #define EP93XX_MATRIX_COLS (8) #endif /* __ASM_ARCH_EP93XX_KEYPAD_H */