Mstar touch controller The mstar 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 "mstar,msg21xx" - reg : i2c slave address of the device - interrupt-parent : parent of interrupt - interrupts : touch sample interrupt to indicate presense or release of fingers on the panel. - vdd-supply : Power supply needed to power up the device - vcc_i2c-supply : Power source required to power up i2c bus - mstar,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. - mstar,reset-gpio : reset gpio to control the reset of chip - mstar,display-coords : display coords in pixels. It is a four tuple consisting of min x, min y, max x and max y values - 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. - mstar,num-max-touches: It defines the maximum number of touch supported by the controller. - mstar,hard-reset-delay-ms : hard reset delay in ms - mstar,post-hard-reset-delay-ms : post hard reset delay in ms Optional properties: - mstar,button-map : button map of key codes. It is a three tuple consisting of key codes. - mstar,panel-coords : panel coords for the chip in pixels. It is a four tuple consisting of min x, min y, max x and max y values - mstar,ic-type : It defines the ic-type of the controller. Values are as folows: 1 -> msg2133. 2 -> msg21xxA. 3 -> msg26xxM. Example: i2c@78b9000 { /* BLSP1 QUP5 */ mstar@26 { compatible = "mstar,msg21xx"; reg = <0x26>; interrupt-parent = <&msm_gpio>; interrupts = <13 0x2008>; mstar,irq-gpio = <&msm_gpio 13 0x00000001>; mstar,reset-gpio = <&msm_gpio 12 0x0>; vdd-supply = <&pm8916_l17>; vcc_i2c-supply = <&pm8916_l6>; mstar,display-coords = <0 0 480 854>; pinctrl-names = "pmx_ts_active","pmx_ts_suspend"; pinctrl-0 = <&ts_int_active &ts_reset_active>; pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>; mstar,button-map = <172 139 158>; mstar,ic-type = <2>; mstar,num_max_touches = <2>; mstar,hard-reset-delay-ms = <100>; mstar,post-hard-reset-delay-ms = <100>; }; };