1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef __KEYPAD_EP93XX_H
3#define __KEYPAD_EP93XX_H
4
5struct matrix_keymap_data;
6
7/* flags for the ep93xx_keypad driver */
8#define EP93XX_KEYPAD_DISABLE_3_KEY (1<<0) /* disable 3-key reset */
9#define EP93XX_KEYPAD_DIAG_MODE (1<<1) /* diagnostic mode */
10#define EP93XX_KEYPAD_BACK_DRIVE (1<<2) /* back driving mode */
11#define EP93XX_KEYPAD_TEST_MODE (1<<3) /* scan only column 0 */
12#define EP93XX_KEYPAD_AUTOREPEAT (1<<4) /* enable key autorepeat */
13
14/**
15 * struct ep93xx_keypad_platform_data - platform specific device structure
16 * @keymap_data: pointer to &matrix_keymap_data
17 * @debounce: debounce start count; terminal count is 0xff
18 * @prescale: row/column counter pre-scaler load value
19 * @flags: see above
20 */
21struct ep93xx_keypad_platform_data {
22 struct matrix_keymap_data *keymap_data;
23 unsigned int debounce;
24 unsigned int prescale;
25 unsigned int flags;
26 unsigned int clk_rate;
27};
28
29#define EP93XX_MATRIX_ROWS (8)
30#define EP93XX_MATRIX_COLS (8)
31
32#endif /* __KEYPAD_EP93XX_H */
33

source code of linux/include/linux/platform_data/keypad-ep93xx.h