diff options
Diffstat (limited to 'include/asm-arm')
-rw-r--r-- | include/asm-arm/arch-pxa/pxa27x_keypad.h | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/include/asm-arm/arch-pxa/pxa27x_keypad.h b/include/asm-arm/arch-pxa/pxa27x_keypad.h index ef17db6d791e..1b1bf9fe6d81 100644 --- a/include/asm-arm/arch-pxa/pxa27x_keypad.h +++ b/include/asm-arm/arch-pxa/pxa27x_keypad.h | |||
@@ -1,12 +1,25 @@ | |||
1 | #define PXAKBD_MAXROW 8 | 1 | #ifndef __ASM_ARCH_PXA27x_KEYPAD_H |
2 | #define PXAKBD_MAXCOL 8 | 2 | #define __ASM_ARCH_PXA27x_KEYPAD_H |
3 | |||
4 | #include <linux/input.h> | ||
5 | |||
6 | #define MAX_MATRIX_KEY_ROWS (8) | ||
7 | #define MAX_MATRIX_KEY_COLS (8) | ||
3 | 8 | ||
4 | struct pxa27x_keypad_platform_data { | 9 | struct pxa27x_keypad_platform_data { |
5 | int nr_rows, nr_cols; | 10 | |
6 | int keycodes[PXAKBD_MAXROW][PXAKBD_MAXCOL]; | 11 | /* code map for the matrix keys */ |
12 | unsigned int matrix_key_rows; | ||
13 | unsigned int matrix_key_cols; | ||
14 | unsigned int *matrix_key_map; | ||
15 | int matrix_key_map_size; | ||
7 | 16 | ||
8 | #ifdef CONFIG_PM | 17 | #ifdef CONFIG_PM |
9 | u32 reg_kpc; | 18 | u32 reg_kpc; |
10 | u32 reg_kprec; | 19 | u32 reg_kprec; |
11 | #endif | 20 | #endif |
12 | }; | 21 | }; |
22 | |||
23 | #define KEY(row, col, val) (((row) << 28) | ((col) << 24) | (val)) | ||
24 | |||
25 | #endif /* __ASM_ARCH_PXA27x_KEYPAD_H */ | ||