Input: atmel_mxt_ts - improve T19 GPIO keys handling

* The mapping of the GPIO numbers into the T19 status byte varies between
   different maXTouch chips. Some have up to 7 GPIOs. Allowing a keycode array
   of up to 8 items is simpler and more generic. So replace #define with
   configurable number of keys which also allows the removal of is_tp.
 * Rename platform data parameters to include "t19" to prevent confusion with
   T15 key array.
 * Probe aborts early on when pdata is NULL, so no need to check.
 * Move "int i" to beginning of function (mixed declarations and code)
 * Use API calls rather than __set_bit()
 * Remove unused dev variable.

Signed-off-by: Nick Dyer <nick.dyer@itdev.co.uk>
Acked-by: Yufeng Shen <miletus@chromium.org>
Reviewed-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
This commit is contained in:
Nick Dyer 2014-05-18 23:00:15 -07:00 committed by Dmitry Torokhov
parent 2cefdb1f0a
commit fb5e4c3ee1
3 changed files with 30 additions and 38 deletions

View file

@ -15,9 +15,6 @@
#include <linux/types.h>
/* For key_map array */
#define MXT_NUM_GPIO 4
/* Orient */
#define MXT_NORMAL 0x0
#define MXT_DIAGONAL 0x1
@ -38,8 +35,8 @@ struct mxt_platform_data {
unsigned char orient;
unsigned long irqflags;
bool is_tp;
const unsigned int key_map[MXT_NUM_GPIO];
u8 t19_num_keys;
const unsigned int *t19_keymap;
};
#endif /* __LINUX_ATMEL_MXT_TS_H */