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