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