linux/include/linux/platform_data/keypad-ep93xx.h
<<
>>
Prefs
   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