H Hartley Sweeten | e06003a | 2009-04-18 23:43:57 -0700 | [diff] [blame] | 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 | |
H Hartley Sweeten | a5abd95 | 2010-01-13 00:34:12 -0800 | [diff] [blame^] | 8 | struct matrix_keymap_data; |
| 9 | |
H Hartley Sweeten | e06003a | 2009-04-18 23:43:57 -0700 | [diff] [blame] | 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 |
H Hartley Sweeten | a5abd95 | 2010-01-13 00:34:12 -0800 | [diff] [blame^] | 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 |
H Hartley Sweeten | e06003a | 2009-04-18 23:43:57 -0700 | [diff] [blame] | 24 | */ |
| 25 | struct ep93xx_keypad_platform_data { |
H Hartley Sweeten | a5abd95 | 2010-01-13 00:34:12 -0800 | [diff] [blame^] | 26 | struct matrix_keymap_data *keymap_data; |
H Hartley Sweeten | e06003a | 2009-04-18 23:43:57 -0700 | [diff] [blame] | 27 | unsigned int debounce; |
| 28 | unsigned int prescale; |
| 29 | unsigned int flags; |
| 30 | }; |
| 31 | |
H Hartley Sweeten | 60214f0 | 2009-12-15 08:39:51 -0800 | [diff] [blame] | 32 | #define EP93XX_MATRIX_ROWS (8) |
| 33 | #define EP93XX_MATRIX_COLS (8) |
H Hartley Sweeten | e06003a | 2009-04-18 23:43:57 -0700 | [diff] [blame] | 34 | |
| 35 | #endif /* __ASM_ARCH_EP93XX_KEYPAD_H */ |