M7350/kernel/Documentation/devicetree/bindings/input/touchscreen/it7258_ts_i2c.txt
2024-09-09 08:57:42 +00:00

83 lines
3.5 KiB
Plaintext

ITE Tech. touch controller
The ITE Tech. touch controller is connected to host processor
via i2c. The controller generates interrupts when the user
touches the panel. The host controller is expected to read
the touch coordinates over i2c and pass the coordinates to
the rest of the system.
Required properties:
- compatible : should be "ite,it7260_ts"
- reg : i2c slave address of the device
- interrupt-parent : parent of interrupt
- interrupts : touch sample interrupt to indicate presence or release
of fingers on the panel.
- ite,irq-gpio : irq gpio which is to provide interrupts to host,
same as "interrupts" node. It will also
contain active low or active high information.
- ite,reset-gpio : reset gpio to control the reset of chip
- ite,reset-delay : reset delay for controller (ms), default 20
Optional properties:
- avdd-supply : Analog power supply needed to power device
- vdd-supply : Power source required to pull up i2c bus
- ite,wakeup : boolean, use this to support touch-to-wake feature.
- ite,palm-detect-en : boolean, use this to send palm-detect-keycode when
palm is detected.
- ite,fw-name : Specify firmware file name in /etc/firmware
- ite,cfg-name : Specify config file name in /etc/firmware
- ite,panel-coords : touch panel min x, min y, max x and
max y resolution
- ite,display-coords : display min x, min y, max x and
max y resolution
- ite,num-fingers : number of fingers supported by the touch controller
- pinctrl-names : This should be defined if a target uses pinctrl framework.
See "pinctrl" in Documentation/devicetree/bindings/pinctrl/msm-pinctrl.txt.
It should 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.
- ite,low-reset : boolean, if the controller needs low-state of the reset gpio while
initializing, and reset gpio should be made as high-state to reset the
controller. It means the controller needs "active-high" reset gpio.
- ite,avdd-lpm-cur : avdd lpm current value(mA) in suspend state.
Required properties palm-detect-en feature:
- ite,palm-detect-keycode : The keycode that is required to be sent when
palm is detected by the ITE tech driver.
Example:
i2c@f9927000 {
it7260@46 {
compatible = "ite,it7260_ts";
reg = <0x46>;
interrupt-parent = <&msmgpio>;
/* pins used by touchscreen */
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>
interrupts = <17 0x2>;
avdd-supply = <&pm8226_l19>;
vdd-supply = <&pm8226_lvs1>;
ite,reset-gpio = <&msmgpio 16 0x00>;
ite,irq-gpio = <&msmgpio 17 0x2008>;
ite,wakeup;
ite,palm-detect-en;
ite,palm-detect-keycode = <142>;
ite,fw-name = "ite7260_fw.bin";
ite,cfg-name = "ite7260_cfg.bin";
ite,panel-coords = <0 0 320 320>;
ite,display-coords = <0 0 320 320>;
ite,num-fingers = <2>;
ite,reset-delay = <20>;
ite,low-reset;
ite,vdd-lpm-cur = <3000>;
};
};