37 lines
1.1 KiB
C
37 lines
1.1 KiB
C
|
/*
|
||
|
* include/linux/keycombo.h - platform data structure for keycombo driver
|
||
|
*
|
||
|
* Copyright (C) 2014 Google, Inc.
|
||
|
*
|
||
|
* This software is licensed under the terms of the GNU General Public
|
||
|
* License version 2, as published by the Free Software Foundation, and
|
||
|
* may be copied, distributed, and modified under those terms.
|
||
|
*
|
||
|
* This program is distributed in the hope that it will be useful,
|
||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
|
* GNU General Public License for more details.
|
||
|
*
|
||
|
*/
|
||
|
|
||
|
#ifndef _LINUX_KEYCOMBO_H
|
||
|
#define _LINUX_KEYCOMBO_H
|
||
|
|
||
|
#define KEYCOMBO_NAME "keycombo"
|
||
|
|
||
|
/*
|
||
|
* if key_down_fn and key_up_fn are both present, you are guaranteed that
|
||
|
* key_down_fn will return before key_up_fn is called, and that key_up_fn
|
||
|
* is called iff key_down_fn is called.
|
||
|
*/
|
||
|
struct keycombo_platform_data {
|
||
|
void (*key_down_fn)(void *);
|
||
|
void (*key_up_fn)(void *);
|
||
|
void *priv;
|
||
|
int key_down_delay; /* Time in ms */
|
||
|
int *keys_up;
|
||
|
int keys_down[]; /* 0 terminated */
|
||
|
};
|
||
|
|
||
|
#endif /* _LINUX_KEYCOMBO_H */
|