2 * Copyright (C) 2012, Samsung Electronics Co. Ltd. All Rights Reserved.
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; either version 2 of the License, or
7 * (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
19 #define MXT_DEV_NAME "Atmel MXT1664S"
21 #define MXT_1664S_SW_RESET_TIME 300 /* msec */
22 #define MXT_1664S_HW_RESET_TIME 300 /* msec */
23 #define MXT_1664S_FW_RESET_TIME 500 /* msec */
25 enum { RESERVED_T0 = 0,
30 GEN_MESSAGEPROCESSOR_T5,
31 GEN_COMMANDPROCESSOR_T6,
33 GEN_ACQUISITIONCONFIG_T8,
34 TOUCH_MULTITOUCHSCREEN_T9,
35 TOUCH_SINGLETOUCHSCREEN_T10,
41 PROCG_SIGNALFILTER_T16,
42 PROCI_LINEARIZATIONTABLE_T17,
45 PROCI_GRIPFACESUPPRESSION_T20,
47 PROCG_NOISESUPPRESSION_T22,
49 PROCI_ONETOUCHGESTUREPROCESSOR_T24,
52 PROCI_TWOTOUCHGESTUREPROCESSOR_T27,
65 PROCI_GRIPSUPPRESSION_T40,
67 PROCI_TOUCHSUPPRESSION_T42,
73 PROCG_NOISESUPPRESSION_T48,
77 TOUCH_PROXIMITY_KEY_T52,
82 PROCI_EXTRATOUCHSCREENDATA_T57,
87 PROCG_NOISESUPPRESSION_T62,
91 struct mxt_callbacks {
92 void (*inform_charger)(struct mxt_callbacks *, bool);
95 struct mxt_platform_data {
96 int max_finger_touches;
107 int (*power_on) (void);
108 int (*power_off) (void);
109 int (*power_reset) (void);
110 u8 *(*register_cb)(struct mxt_callbacks *);
112 const char *config_version;