aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-arm
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-arm')
-rw-r--r--include/asm-arm/arch-pxa/pxa27x_keypad.h21
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
4struct pxa27x_keypad_platform_data { 9struct 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 */