2 * include/linux/keycombo.h - platform data structure for keycombo driver
4 * Copyright (C) 2014 Google, Inc.
6 * This software is licensed under the terms of the GNU General Public
7 * License version 2, as published by the Free Software Foundation, and
8 * may be copied, distributed, and modified under those terms.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
17 #ifndef _LINUX_KEYCOMBO_H
18 #define _LINUX_KEYCOMBO_H
20 #define KEYCOMBO_NAME "keycombo"
23 * if key_down_fn and key_up_fn are both present, you are guaranteed that
24 * key_down_fn will return before key_up_fn is called, and that key_up_fn
25 * is called iff key_down_fn is called.
27 struct keycombo_platform_data {
28 void (*key_down_fn)(void *);
29 void (*key_up_fn)(void *);
31 int key_down_delay; /* Time in ms */
33 int keys_down[]; /* 0 terminated */
36 #endif /* _LINUX_KEYCOMBO_H */