#ifndef _LINUX_FTS_I2C_H_ #define _LINUX_FTS_I2C_H_ #define FTS_SUPPORT_NOISE_PARAM #undef FTS_SUPPORT_TOUCH_KEY #undef FTS_SUPPORT_SEC_SWIPE #undef FTS_SUPPORT_SIDE_GESTURE #define FTS_SUPPORT_WATER_MODE /*#define FTS_SUPPORT_2NDSCREEN*/ /*#define FTS_SUPPORT_SIDE_SCROLL*/ /*#define FTS_SUPPORT_STRINGLIB */ extern struct fts_callbacks *fts_charger_callbacks; struct fts_callbacks { void (*inform_charger) (struct fts_callbacks *, int); }; #ifdef FTS_SUPPORT_NOISE_PARAM #define MAX_NOISE_PARAM 5 struct fts_noise_param { unsigned short pAddr[MAX_NOISE_PARAM]; unsigned short pData[MAX_NOISE_PARAM]; }; #endif #ifdef FTS_SUPPORT_TOUCH_KEY /* TSP Key Feature*/ #define KEY_PRESS 1 #define KEY_RELEASE 0 #define TOUCH_KEY_NULL 0 /* support 2 touch keys */ #define TOUCH_KEY_RECENT 0x01 #define TOUCH_KEY_BACK 0x02 struct fts_touchkey { unsigned int value; unsigned int keycode; char *name; }; #endif struct fts_i2c_platform_data { bool factory_flatform; bool recovery_mode; bool support_hover; bool support_mshover; int max_x; int max_y; int max_width; int grip_area; int SenseChannelLength; int ForceChannelLength; unsigned char panel_revision; /* to identify panel info */ const char *firmware_name; const char *project_name; const char *model_name; const char *regulator_dvdd; const char *regulator_avdd; struct pinctrl *pinctrl; struct pinctrl_state *pins_default; struct pinctrl_state *pins_sleep; int (*power)(void *data, bool on); void (*register_cb)(void *); void (*enable_sync)(bool on); unsigned char (*get_ddi_type)(void); /* to indentify ddi type */ unsigned tspid; unsigned tspid2; unsigned gpio; int irq_type; #ifdef FTS_SUPPORT_TOUCH_KEY bool support_mskey; unsigned int num_touchkey; struct fts_touchkey *touchkey; const char *regulator_tk_led; int (*led_power) (void *, bool); #endif #ifdef FTS_SUPPORT_SIDE_GESTURE bool support_sidegesture; #endif #ifdef FTS_SUPPORT_2NDSCREEN bool support_2ndscreen; #endif #ifdef FTS_SUPPORT_SIDE_SCROLL bool support_sidescroll; #endif unsigned gpio_scl; unsigned gpio_sda; }; #undef SEC_TSP_FACTORY_TEST // #define FTS_SUPPORT_TA_MODE // DE version don't need. #ifdef SEC_TSP_FACTORY_TEST extern struct class *sec_class; #endif extern unsigned int lcdtype; void fts_charger_infom(bool en); #endif