1*90832ef1SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 2f81126b0SWolfram Sang /* 3f81126b0SWolfram Sang * lm8323.h - Configuration for LM8323 keypad driver. 4f81126b0SWolfram Sang */ 5f81126b0SWolfram Sang 6f81126b0SWolfram Sang #ifndef __LINUX_LM8323_H 7f81126b0SWolfram Sang #define __LINUX_LM8323_H 8f81126b0SWolfram Sang 9f81126b0SWolfram Sang #include <linux/types.h> 10f81126b0SWolfram Sang 11f81126b0SWolfram Sang /* 12f81126b0SWolfram Sang * Largest keycode that the chip can send, plus one, 13f81126b0SWolfram Sang * so keys can be mapped directly at the index of the 14f81126b0SWolfram Sang * LM8323 keycode instead of subtracting one. 15f81126b0SWolfram Sang */ 16f81126b0SWolfram Sang #define LM8323_KEYMAP_SIZE (0x7f + 1) 17f81126b0SWolfram Sang 18f81126b0SWolfram Sang #define LM8323_NUM_PWMS 3 19f81126b0SWolfram Sang 20f81126b0SWolfram Sang struct lm8323_platform_data { 21f81126b0SWolfram Sang int debounce_time; /* Time to watch for key bouncing, in ms. */ 22f81126b0SWolfram Sang int active_time; /* Idle time until sleep, in ms. */ 23f81126b0SWolfram Sang 24f81126b0SWolfram Sang int size_x; 25f81126b0SWolfram Sang int size_y; 26f81126b0SWolfram Sang bool repeat; 27f81126b0SWolfram Sang const unsigned short *keymap; 28f81126b0SWolfram Sang 29f81126b0SWolfram Sang const char *pwm_names[LM8323_NUM_PWMS]; 30f81126b0SWolfram Sang 31f81126b0SWolfram Sang const char *name; /* Device name. */ 32f81126b0SWolfram Sang }; 33f81126b0SWolfram Sang 34f81126b0SWolfram Sang #endif /* __LINUX_LM8323_H */ 35