root/include/linux/platform_data/keypad-nomadik-ske.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0-only */
   2 /*
   3  * Copyright (C) ST-Ericsson SA 2010
   4  *
   5  * Author: Naveen Kumar Gaddipati <naveen.gaddipati@stericsson.com>
   6  *
   7  * ux500 Scroll key and Keypad Encoder (SKE) header
   8  */
   9 
  10 #ifndef __SKE_H
  11 #define __SKE_H
  12 
  13 #include <linux/input/matrix_keypad.h>
  14 
  15 /* register definitions for SKE peripheral */
  16 #define SKE_CR          0x00
  17 #define SKE_VAL0        0x04
  18 #define SKE_VAL1        0x08
  19 #define SKE_DBCR        0x0C
  20 #define SKE_IMSC        0x10
  21 #define SKE_RIS         0x14
  22 #define SKE_MIS         0x18
  23 #define SKE_ICR         0x1C
  24 
  25 /*
  26  * Keypad module
  27  */
  28 
  29 /**
  30  * struct keypad_platform_data - structure for platform specific data
  31  * @init:       pointer to keypad init function
  32  * @exit:       pointer to keypad deinitialisation function
  33  * @keymap_data: matrix scan code table for keycodes
  34  * @krow:       maximum number of rows
  35  * @kcol:       maximum number of columns
  36  * @debounce_ms: platform specific debounce time
  37  * @no_autorepeat: flag for auto repetition
  38  * @wakeup_enable: allow waking up the system
  39  */
  40 struct ske_keypad_platform_data {
  41         int (*init)(void);
  42         int (*exit)(void);
  43         const struct matrix_keymap_data *keymap_data;
  44         u8 krow;
  45         u8 kcol;
  46         u8 debounce_ms;
  47         bool no_autorepeat;
  48         bool wakeup_enable;
  49 };
  50 #endif  /*__SKE_KPD_H*/

/* [<][>][^][v][top][bottom][index][help] */