Files
kernel_google_b4s4/include/linux/input/ft5x06_ts.h
Amy Maloche bad53a95fb input: touchscreen: Propagating fixes for ft5x06 from msm-3.18
This is squash of the below gerrits from msm-3.18.

feb6ad0 ft5x06: Set input property bit to indicate a direct input device
83310a9 input: ft5x06_ts: Add DT support
86797e8 input: ft5x06_ts: Add support for FB notifications
d898291 input: ft5x06: Add support for firmware upgrade
0804395 input: ft5x06_ts: Add debugfs support
836a474 input: ft5x06_ts: Add support for protocol B
71e8bfd input: ft5x06_ts: Add debugfs entry for dump info
8a123ff input: touchpanel: Release all touches during suspend
77ab545 input: ft5x06_ts: Handle error if i2c read fails
550c106 input: ft5x06_ts: Disable regulators in suspend
4c142d1 input: touchpanel: fix the number of touch events detection
88dd4c2 input: ft5x06_ts: Add firmware upgrade support for ft6x06
473f8cd input: ft5x06_ts: Parse board specific parameters from pdata
88d102e input: ft5x06_ts: Upgrade firmware based on version
75184ddc input: touchscreen: remove PRESSURE event from ft5x06 driver
d6e831b input: touchscreen: add option to ignore Focaltech family-id check
15725c2 input: touchscreen: ft5x06: remove unbalanced touch event
740d7b1 input: touchscreen: ft5x06: add FT5336 firmware update support
a857895 input: touchscreen: ft5x06: fix firmware force update issue
4e8b58e input: touchscreen: request threaded-only IRQs with IRQF_ONESHOT
a144428 input: ft5x06: add support when CONFIG_PM is not defined
20482b2 input: ft5x06_ts: remove deprecated apis in 3.18 kernel
6146c68 input: ft5x06_ts: add support for firmware update for CTP FT6X36
8399308 input: touchscreen: change the focaltech firmware upgrade method
dba19fc input: ft5x06_ts: check vendor id before upgrade FT firmware
266d1fe input: ft5x06_ts: add support for pinctrl framework
7e2ea02 input: ft5x06_ts: fix the Focaltech CTP current leakage issue
f09a056 input: focaltech: release pinctrl resources on probe failure
494eae3 input: ft5x06_ts: pinctrl and gpio config in suspend/resume path
5c6aa1b input: ft5x06_ts: add NULL pointer check
d397de6 input: ft5x06_ts: add proximity feature support
8726963 ARM: dts: msm: correct Focaltech CTP irq flag configuration
5cc0bff input: ft5x06_ts: add gesture feature support
f26889b4 input: ft5x06_ts: do not free input_dev after unregister it
a409edae input: ft5x06_ts: fix compiling error in FT CTP driver
0796794 input: ft5x06_ts: correct the status of the pocket mode
fb9da6c input: change sensors classdev device's parent to input devices
e781db6 input: ft5x06_ts: add sysfs to access touch module info
6c5f9d2 input: ft5x06_ts: remove proximity sensor support
28783b9 input: ft5x06: defer touch resume to workqueue
4a64f8c input: ft5x06: add secure touch support for Focaltech on 8937 QRD
2a45585 input: ft5x06: creation of secure touch sysfs files
cee9cca input: ft5x06: Add support for clocks for secure touch on 8937 QRD
6d6c08e input: ft5x06: check return value of kobject_create_and_add
3176095 input: ft5x06_ts: fix uninitialized references in ft5x06_ts

Fix merge conflicts, checkpatch errors.

Change-Id: I67976638d376f15f9fd649854dee3e5bf530399b
Signed-off-by: Venkata Prahlad Valluru <vvalluru@codeaurora.org>
2018-04-18 23:03:22 -07:00

78 lines
1.8 KiB
C

/*
*
* FocalTech ft5x06 TouchScreen driver header file.
*
* Copyright (c) 2010 Focal tech Ltd.
* Copyright (c) 2012-2015, 2018 The Linux Foundation. All rights reserved.
*
* This software is licensed under the terms of the GNU General Public
* License version 2, as published by the Free Software Foundation, and
* may be copied, distributed, and modified under those terms.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
*/
#ifndef __LINUX_FT5X06_TS_H__
#define __LINUX_FT5X06_TS_H__
#define FT5X06_ID 0x55
#define FT5X16_ID 0x0A
#define FT5X36_ID 0x14
#define FT6X06_ID 0x06
#define FT6X36_ID 0x36
struct fw_upgrade_info {
bool auto_cal;
u16 delay_aa;
u16 delay_55;
u8 upgrade_id_1;
u8 upgrade_id_2;
u16 delay_readid;
u16 delay_erase_flash;
};
struct ft5x06_gesture_platform_data {
int gesture_enable_to_set; /* enable/disable gesture */
int in_pocket; /* whether in pocket mode or not */
struct device *dev;
struct class *gesture_class;
struct ft5x06_ts_data *data;
};
struct ft5x06_ts_platform_data {
struct fw_upgrade_info info;
const char *name;
const char *fw_name;
u32 irqflags;
u32 irq_gpio;
u32 irq_gpio_flags;
u32 reset_gpio;
u32 reset_gpio_flags;
u32 family_id;
u32 x_max;
u32 y_max;
u32 x_min;
u32 y_min;
u32 panel_minx;
u32 panel_miny;
u32 panel_maxx;
u32 panel_maxy;
u32 group_id;
u32 hard_rst_dly;
u32 soft_rst_dly;
u32 num_max_touches;
bool fw_vkey_support;
bool no_force_update;
bool i2c_pull_up;
bool ignore_id_check;
bool gesture_support;
bool resume_in_workqueue;
int (*power_init)(bool);
int (*power_on)(bool);
};
#endif