blob: 1b1bf9fe6d81334f2b9229a2ef48d1d4f9d6fe74 [file] [log] [blame]
Eric Miao1814db62008-01-31 00:58:37 -05001#ifndef __ASM_ARCH_PXA27x_KEYPAD_H
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)
Rodolfo Giometti5a90e5b2007-03-16 00:58:52 -04008
Eric Miao0e5f11a2008-01-31 00:56:46 -05009struct pxa27x_keypad_platform_data {
Eric Miao1814db62008-01-31 00:58:37 -050010
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;
Rodolfo Giometti5a90e5b2007-03-16 00:58:52 -040016
17#ifdef CONFIG_PM
18 u32 reg_kpc;
19 u32 reg_kprec;
20#endif
21};
Eric Miao1814db62008-01-31 00:58:37 -050022
23#define KEY(row, col, val) (((row) << 28) | ((col) << 24) | (val))
24
25#endif /* __ASM_ARCH_PXA27x_KEYPAD_H */