xref: /linux/include/linux/platform_data/lm8323.h (revision e2be04c7f9958dde770eeb8b30e829ca969b37bb)
1 /*
2  * lm8323.h - Configuration for LM8323 keypad driver.
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation (version 2 of the License only).
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  * GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program; if not, write to the Free Software
15  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16  */
17 
18 #ifndef __LINUX_LM8323_H
19 #define __LINUX_LM8323_H
20 
21 #include <linux/types.h>
22 
23 /*
24  * Largest keycode that the chip can send, plus one,
25  * so keys can be mapped directly at the index of the
26  * LM8323 keycode instead of subtracting one.
27  */
28 #define LM8323_KEYMAP_SIZE	(0x7f + 1)
29 
30 #define LM8323_NUM_PWMS		3
31 
32 struct lm8323_platform_data {
33 	int debounce_time; /* Time to watch for key bouncing, in ms. */
34 	int active_time; /* Idle time until sleep, in ms. */
35 
36 	int size_x;
37 	int size_y;
38 	bool repeat;
39 	const unsigned short *keymap;
40 
41 	const char *pwm_names[LM8323_NUM_PWMS];
42 
43 	const char *name; /* Device name. */
44 };
45 
46 #endif /* __LINUX_LM8323_H */
47