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