diff options
-rw-r--r-- | drivers/input/keyboard/pxa27x_keypad.c | 1 | ||||
-rw-r--r-- | include/asm-arm/arch-pxa/pxa27x_keypad.h | 6 |
2 files changed, 7 insertions, 0 deletions
diff --git a/drivers/input/keyboard/pxa27x_keypad.c b/drivers/input/keyboard/pxa27x_keypad.c index ceaf1e0ab540..6224c2fb3b65 100644 --- a/drivers/input/keyboard/pxa27x_keypad.c +++ b/drivers/input/keyboard/pxa27x_keypad.c | |||
@@ -357,6 +357,7 @@ static void pxa27x_keypad_config(struct pxa27x_keypad *keypad) | |||
357 | 357 | ||
358 | keypad_writel(KPC, kpc | KPC_RE_ZERO_DEB); | 358 | keypad_writel(KPC, kpc | KPC_RE_ZERO_DEB); |
359 | keypad_writel(KPREC, DEFAULT_KPREC); | 359 | keypad_writel(KPREC, DEFAULT_KPREC); |
360 | keypad_writel(KPKDI, pdata->debounce_interval); | ||
360 | } | 361 | } |
361 | 362 | ||
362 | static int pxa27x_keypad_open(struct input_dev *dev) | 363 | static int pxa27x_keypad_open(struct input_dev *dev) |
diff --git a/include/asm-arm/arch-pxa/pxa27x_keypad.h b/include/asm-arm/arch-pxa/pxa27x_keypad.h index 6b832329ebc2..644f7609b523 100644 --- a/include/asm-arm/arch-pxa/pxa27x_keypad.h +++ b/include/asm-arm/arch-pxa/pxa27x_keypad.h | |||
@@ -19,6 +19,9 @@ | |||
19 | * | 19 | * |
20 | * 3. rotary can be either interpreted as a relative input event (e.g. | 20 | * 3. rotary can be either interpreted as a relative input event (e.g. |
21 | * REL_WHEEL/REL_HWHEEL) or specific keys (e.g. UP/DOWN/LEFT/RIGHT) | 21 | * REL_WHEEL/REL_HWHEEL) or specific keys (e.g. UP/DOWN/LEFT/RIGHT) |
22 | * | ||
23 | * 4. matrix key and direct key will use the same debounce_interval by | ||
24 | * default, which should be sufficient in most cases | ||
22 | */ | 25 | */ |
23 | struct pxa27x_keypad_platform_data { | 26 | struct pxa27x_keypad_platform_data { |
24 | 27 | ||
@@ -43,6 +46,9 @@ struct pxa27x_keypad_platform_data { | |||
43 | int rotary1_rel_code; | 46 | int rotary1_rel_code; |
44 | int rotary1_up_key; | 47 | int rotary1_up_key; |
45 | int rotary1_down_key; | 48 | int rotary1_down_key; |
49 | |||
50 | /* key debounce interval */ | ||
51 | unsigned int debounce_interval; | ||
46 | }; | 52 | }; |
47 | 53 | ||
48 | #define KEY(row, col, val) (((row) << 28) | ((col) << 24) | (val)) | 54 | #define KEY(row, col, val) (((row) << 28) | ((col) << 24) | (val)) |