Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm...
[linux-2.6.git] / include / linux / platform_data / keypad-nomadik-ske.h
blob31382fbc07dc69ebc2bcc471944e536a0b673f0e
1 /*
2 * Copyright (C) ST-Ericsson SA 2010
4 * License Terms: GNU General Public License v2
5 * Author: Naveen Kumar Gaddipati <naveen.gaddipati@stericsson.com>
7 * ux500 Scroll key and Keypad Encoder (SKE) header
8 */
10 #ifndef __SKE_H
11 #define __SKE_H
13 #include <linux/input/matrix_keypad.h>
15 /* register definitions for SKE peripheral */
16 #define SKE_CR 0x00
17 #define SKE_VAL0 0x04
18 #define SKE_VAL1 0x08
19 #define SKE_DBCR 0x0C
20 #define SKE_IMSC 0x10
21 #define SKE_RIS 0x14
22 #define SKE_MIS 0x18
23 #define SKE_ICR 0x1C
26 * Keypad module
29 /**
30 * struct keypad_platform_data - structure for platform specific data
31 * @init: pointer to keypad init function
32 * @exit: pointer to keypad deinitialisation function
33 * @keymap_data: matrix scan code table for keycodes
34 * @krow: maximum number of rows
35 * @kcol: maximum number of columns
36 * @debounce_ms: platform specific debounce time
37 * @no_autorepeat: flag for auto repetition
38 * @wakeup_enable: allow waking up the system
40 struct ske_keypad_platform_data {
41 int (*init)(void);
42 int (*exit)(void);
43 const struct matrix_keymap_data *keymap_data;
44 u8 krow;
45 u8 kcol;
46 u8 debounce_ms;
47 bool no_autorepeat;
48 bool wakeup_enable;
50 #endif /*__SKE_KPD_H*/