Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 #ifndef __KEYPAD_EP93XX_H
0003 #define __KEYPAD_EP93XX_H
0004 
0005 struct matrix_keymap_data;
0006 
0007 /* flags for the ep93xx_keypad driver */
0008 #define EP93XX_KEYPAD_DISABLE_3_KEY (1<<0)  /* disable 3-key reset */
0009 #define EP93XX_KEYPAD_DIAG_MODE     (1<<1)  /* diagnostic mode */
0010 #define EP93XX_KEYPAD_BACK_DRIVE    (1<<2)  /* back driving mode */
0011 #define EP93XX_KEYPAD_TEST_MODE     (1<<3)  /* scan only column 0 */
0012 #define EP93XX_KEYPAD_AUTOREPEAT    (1<<4)  /* enable key autorepeat */
0013 
0014 /**
0015  * struct ep93xx_keypad_platform_data - platform specific device structure
0016  * @keymap_data:    pointer to &matrix_keymap_data
0017  * @debounce:       debounce start count; terminal count is 0xff
0018  * @prescale:       row/column counter pre-scaler load value
0019  * @flags:      see above
0020  */
0021 struct ep93xx_keypad_platform_data {
0022     struct matrix_keymap_data *keymap_data;
0023     unsigned int    debounce;
0024     unsigned int    prescale;
0025     unsigned int    flags;
0026     unsigned int    clk_rate;
0027 };
0028 
0029 #define EP93XX_MATRIX_ROWS      (8)
0030 #define EP93XX_MATRIX_COLS      (8)
0031 
0032 #endif  /* __KEYPAD_EP93XX_H */