ep93xx_keypad.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. /*
  2. * arch/arm/mach-ep93xx/include/mach/ep93xx_keypad.h
  3. */
  4. #ifndef __ASM_ARCH_EP93XX_KEYPAD_H
  5. #define __ASM_ARCH_EP93XX_KEYPAD_H
  6. struct matrix_keymap_data;
  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_KDIV (1<<4) /* 1/4 clock or 1/16 clock */
  13. #define EP93XX_KEYPAD_AUTOREPEAT (1<<5) /* enable key autorepeat */
  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. */
  21. struct ep93xx_keypad_platform_data {
  22. struct matrix_keymap_data *keymap_data;
  23. unsigned int debounce;
  24. unsigned int prescale;
  25. unsigned int flags;
  26. };
  27. #define EP93XX_MATRIX_ROWS (8)
  28. #define EP93XX_MATRIX_COLS (8)
  29. #endif /* __ASM_ARCH_EP93XX_KEYPAD_H */