Loading Documentation/devicetree/bindings/input/touchscreen/ft5x06-ts.txt +30 −0 Original line number Diff line number Diff line Loading @@ -27,6 +27,24 @@ Required properties: - focaltech,group-id : group id of this device - focaltech,hard-reset-delay-ms : hard reset delay in ms - focaltech,soft-reset-delay-ms : soft reset delay in ms - focaltech,fw-delay-aa-ms : specify the delay in ms after programming 0xaa register for firmware upgrade - focaltech,fw-delay-55-ms : specify the delay in ms after programming 0x55 register for firmware upgrade - focaltech,fw-upgrade-id1 : specify the upgrade id1 for firmware upgrade - focaltech,fw-upgrade-id2 : specify the upgrade id2 for firmware upgrade - focaltech,fw-delay-readid-ms : specify the read id delay in ms for firmware upgrade - focaltech,fw-delay-era-flsh-ms : specify the erase flash delay in ms for firmware upgrade - pinctrl-names : This should be defined if a target uses pinctrl framework. See "pinctrl" in Documentation/devicetree/bindings/pinctrl/msm-pinctrl.txt. Specify the names of the configs that pinctrl can install in driver. Following are the pinctrl configs that can be installed: "pmx_ts_active" : Active configuration of pins, this should specify active config defined in pin groups of interrupt and reset gpio. "pmx_ts_suspend" : Disabled configuration of pins, this should specify sleep config defined in pin groups of interrupt and reset gpio. "pmx_ts_release" : Release configuration of pins, this should specify release config defined in pin groups of interrupt and reset gpio. Optional properties: Loading @@ -47,6 +65,12 @@ Optional properties: - focaltech,fw-auto-cal : specify whether calibration is needed after firmware upgrade - focaltech,fw-vkey-support : specify if virtual keys are supported through firmware - focaltech,ignore-id-check : specify ignore family-id check - focaltech,panel-coords : panel coordinates for the chip in pixels. It is a four tuple consisting of min x, min y, max x and max y values - focaltech,fw-name : specify the firmware file name - focaltech,psensor-support : specify whether support the proximity sensor - focaltech,gesture-support : specify whether support gesture feature Example: i2c@f9923000{ Loading @@ -57,6 +81,10 @@ Example: interrupts = <1 0x2>; vdd-supply = <&pm8110_l19>; vcc_i2c-supply = <&pm8110_l14>; pinctrl-names = "pmx_ts_active","pmx_ts_suspend","pmx_ts_release"; pinctrl-0 = <&ts_int_active &ts_reset_active>; pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>; pinctrl-2 = <&ts_release>; focaltech,name = "ft6x06"; focaltech,family-id = <0x06>; focaltech,reset-gpio = <&msmgpio 0 0x00>; Loading @@ -78,5 +106,7 @@ Example: focaltech,fw-delay-readid-ms = <10>; focaltech,fw-delay-era-flsh-ms = <2000>; focaltech,fw-auto-cal; focaltech,psensor-support; focaltech,gesture-support; }; }; drivers/input/touchscreen/Kconfig +18 −0 Original line number Diff line number Diff line Loading @@ -976,6 +976,24 @@ config TOUCHSCREEN_ZFORCE To compile this driver as a module, choose M here: the module will be called zforce_ts. config TOUCHSCREEN_FT5X06_PSENSOR tristate "FocalTech proximity feature support" depends on TOUCHSCREEN_FT5X06 && SENSORS help Say Y here if you want to support ft5x06's proximity feature. If unsure, say N. config TOUCHSCREEN_FT5X06_GESTURE tristate "FocalTech gesture feature support" depends on TOUCHSCREEN_FT5X06 help Say Y here if you want to support ft5x06's gesture feature. If unsure, say N. config TOUCHSCREEN_MSTAR21XX tristate "mstar touchscreens" depends on I2C Loading drivers/input/touchscreen/ft5x06_ts.c +963 −94 File changed.Preview size limit exceeded, changes collapsed. Show changes include/linux/input/ft5x06_ts.h +19 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ #define FT5X16_ID 0x0A #define FT5X36_ID 0x14 #define FT6X06_ID 0x06 #define FT6X36_ID 0x36 struct fw_upgrade_info { bool auto_cal; Loading @@ -33,6 +34,22 @@ struct fw_upgrade_info { u16 delay_erase_flash; }; struct ft5x06_psensor_platform_data { struct input_dev *input_psensor_dev; struct sensors_classdev ps_cdev; int tp_psensor_opened; char tp_psensor_data; /* 0 near, 1 far */ struct ft5x06_ts_data *data; }; 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; Loading @@ -59,6 +76,8 @@ struct ft5x06_ts_platform_data { bool no_force_update; bool i2c_pull_up; bool ignore_id_check; bool psensor_support; bool gesture_support; int (*power_init)(bool); int (*power_on)(bool); }; Loading Loading
Documentation/devicetree/bindings/input/touchscreen/ft5x06-ts.txt +30 −0 Original line number Diff line number Diff line Loading @@ -27,6 +27,24 @@ Required properties: - focaltech,group-id : group id of this device - focaltech,hard-reset-delay-ms : hard reset delay in ms - focaltech,soft-reset-delay-ms : soft reset delay in ms - focaltech,fw-delay-aa-ms : specify the delay in ms after programming 0xaa register for firmware upgrade - focaltech,fw-delay-55-ms : specify the delay in ms after programming 0x55 register for firmware upgrade - focaltech,fw-upgrade-id1 : specify the upgrade id1 for firmware upgrade - focaltech,fw-upgrade-id2 : specify the upgrade id2 for firmware upgrade - focaltech,fw-delay-readid-ms : specify the read id delay in ms for firmware upgrade - focaltech,fw-delay-era-flsh-ms : specify the erase flash delay in ms for firmware upgrade - pinctrl-names : This should be defined if a target uses pinctrl framework. See "pinctrl" in Documentation/devicetree/bindings/pinctrl/msm-pinctrl.txt. Specify the names of the configs that pinctrl can install in driver. Following are the pinctrl configs that can be installed: "pmx_ts_active" : Active configuration of pins, this should specify active config defined in pin groups of interrupt and reset gpio. "pmx_ts_suspend" : Disabled configuration of pins, this should specify sleep config defined in pin groups of interrupt and reset gpio. "pmx_ts_release" : Release configuration of pins, this should specify release config defined in pin groups of interrupt and reset gpio. Optional properties: Loading @@ -47,6 +65,12 @@ Optional properties: - focaltech,fw-auto-cal : specify whether calibration is needed after firmware upgrade - focaltech,fw-vkey-support : specify if virtual keys are supported through firmware - focaltech,ignore-id-check : specify ignore family-id check - focaltech,panel-coords : panel coordinates for the chip in pixels. It is a four tuple consisting of min x, min y, max x and max y values - focaltech,fw-name : specify the firmware file name - focaltech,psensor-support : specify whether support the proximity sensor - focaltech,gesture-support : specify whether support gesture feature Example: i2c@f9923000{ Loading @@ -57,6 +81,10 @@ Example: interrupts = <1 0x2>; vdd-supply = <&pm8110_l19>; vcc_i2c-supply = <&pm8110_l14>; pinctrl-names = "pmx_ts_active","pmx_ts_suspend","pmx_ts_release"; pinctrl-0 = <&ts_int_active &ts_reset_active>; pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>; pinctrl-2 = <&ts_release>; focaltech,name = "ft6x06"; focaltech,family-id = <0x06>; focaltech,reset-gpio = <&msmgpio 0 0x00>; Loading @@ -78,5 +106,7 @@ Example: focaltech,fw-delay-readid-ms = <10>; focaltech,fw-delay-era-flsh-ms = <2000>; focaltech,fw-auto-cal; focaltech,psensor-support; focaltech,gesture-support; }; };
drivers/input/touchscreen/Kconfig +18 −0 Original line number Diff line number Diff line Loading @@ -976,6 +976,24 @@ config TOUCHSCREEN_ZFORCE To compile this driver as a module, choose M here: the module will be called zforce_ts. config TOUCHSCREEN_FT5X06_PSENSOR tristate "FocalTech proximity feature support" depends on TOUCHSCREEN_FT5X06 && SENSORS help Say Y here if you want to support ft5x06's proximity feature. If unsure, say N. config TOUCHSCREEN_FT5X06_GESTURE tristate "FocalTech gesture feature support" depends on TOUCHSCREEN_FT5X06 help Say Y here if you want to support ft5x06's gesture feature. If unsure, say N. config TOUCHSCREEN_MSTAR21XX tristate "mstar touchscreens" depends on I2C Loading
drivers/input/touchscreen/ft5x06_ts.c +963 −94 File changed.Preview size limit exceeded, changes collapsed. Show changes
include/linux/input/ft5x06_ts.h +19 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ #define FT5X16_ID 0x0A #define FT5X36_ID 0x14 #define FT6X06_ID 0x06 #define FT6X36_ID 0x36 struct fw_upgrade_info { bool auto_cal; Loading @@ -33,6 +34,22 @@ struct fw_upgrade_info { u16 delay_erase_flash; }; struct ft5x06_psensor_platform_data { struct input_dev *input_psensor_dev; struct sensors_classdev ps_cdev; int tp_psensor_opened; char tp_psensor_data; /* 0 near, 1 far */ struct ft5x06_ts_data *data; }; 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; Loading @@ -59,6 +76,8 @@ struct ft5x06_ts_platform_data { bool no_force_update; bool i2c_pull_up; bool ignore_id_check; bool psensor_support; bool gesture_support; int (*power_init)(bool); int (*power_on)(bool); }; Loading