Commit 4f023706 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull input updates from Dmitry Torokhov:

 - update the ili210x touchscreen driver, refreshing the code and adding
   support for ILI251X line

 - add support for st1633 to the st1232 touchscreen driver

 - add support for sx8650 to the the sx8654 touchscreen driver

 - add support for Evervision FT5726 to the edt-ft5x06 touchscreen
   driver

 - add support for gt5688 to the Goodix touchscreen driver

 - new vibrator driver for MSM SOCs

 - miscellaneous fixes for the rest of input drivers

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (53 commits)
  Input: wacom_serial4 - add support for Wacom ArtPad II tablet
  Input: elan_i2c - add id for touchpad found in Lenovo s21e-20
  Input: raspberrypi-ts - select CONFIG_INPUT_POLLDEV
  Input: msm-vibrator - use correct gpio header
  Input: ti_am335x_tsc - remove set but not used variable 'tscadc_dev'
  Input: i8042 - rework DT node name comparisons
  Input: goodix - print values in case of inconsistencies
  Input: goodix - refer to touchscreen.txt in device tree bindings
  Input: goodix - support Goodix gt5688
  Input: synaptics_i2c - remove redundant spinlock
  Input: db9 - mark expected switch fall-through
  Input: qt2160 - remove redundant spinlock
  Input: st1232 - handle common DT bindings
  Input: ims-pcu - switch to using brightness_set_blocking()
  Input: st1232 - switch to gpiod API
  Input: ili210x - fetch touchscreen geometry from DT
  Input: msm-vibrator - tweak an error message
  Input: tm2-touchkey - acknowledge that setting brightness is a blocking call
  Input: stmfts - acknowledge that setting brightness is a blocking call
  Input: ili210x - switch to using devm_device_add_group()
  ...
parents 6bc3fe8e 44fc95e2
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
Samsung tm2-touchkey

Required properties:
- compatible: must be "cypress,tm2-touchkey"
- compatible:
    * "cypress,tm2-touchkey" - for the touchkey found on the tm2 board
    * "cypress,midas-touchkey" - for the touchkey found on midas boards
    * "cypress,aries-touchkey" - for the touchkey found on aries boards
- reg: I2C address of the chip.
- interrupts: interrupt to which the chip is connected (see interrupt
	binding[0]).
- vcc-supply : internal regulator output. 1.8V
- vdd-supply : power supply for IC 3.3V

Optional properties:
- linux,keycodes: array of keycodes (max 4), default KEY_PHONE and KEY_BACK

[0]: Documentation/devicetree/bindings/interrupt-controller/interrupts.txt

Example:
@@ -21,5 +27,6 @@ Example:
			interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
			vcc-supply=<&ldo32_reg>;
			vdd-supply=<&ldo33_reg>;
			linux,keycodes = <KEY_PHONE KEY_BACK>;
		};
	};
+25 −0
Original line number Diff line number Diff line
Ilitek ILI210x/ILI251x touchscreen controller

Required properties:
- compatible:
    ilitek,ili210x for ILI210x
    ilitek,ili251x for ILI251x

- reg: The I2C address of the device

- interrupts: The sink for the touchscreen's IRQ output
    See ../interrupt-controller/interrupts.txt

Optional properties for main touchpad device:

- reset-gpios: GPIO specifier for the touchscreen's reset pin (active low)

Example:

	touchscreen@41 {
		compatible = "ilitek,ili251x";
		reg = <0x41>;
		interrupt-parent = <&gpio4>;
		interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
		reset-gpios = <&gpio5 21 GPIO_ACTIVE_LOW>;
	};
+36 −0
Original line number Diff line number Diff line
* Device tree bindings for the Qualcomm MSM vibrator

Required properties:

  - compatible: Should be one of
		"qcom,msm8226-vibrator"
		"qcom,msm8974-vibrator"
  - reg: the base address and length of the IO memory for the registers.
  - pinctrl-names: set to default.
  - pinctrl-0: phandles pointing to pin configuration nodes. See
               Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt
  - clock-names: set to pwm
  - clocks: phandle of the clock. See
            Documentation/devicetree/bindings/clock/clock-bindings.txt
  - enable-gpios: GPIO that enables the vibrator.

Optional properties:

  - vcc-supply: phandle to the regulator that provides power to the sensor.

Example from a LG Nexus 5 (hammerhead) phone:

vibrator@fd8c3450 {
	reg = <0xfd8c3450 0x400>;
	compatible = "qcom,msm8974-vibrator";

	vcc-supply = <&pm8941_l19>;

	clocks = <&mmcc CAMSS_GP1_CLK>;
	clock-names = "pwm";

	enable-gpios = <&msmgpio 60 GPIO_ACTIVE_HIGH>;

	pinctrl-names = "default";
	pinctrl-0 = <&vibrator_pin>;
};
+12 −1
Original line number Diff line number Diff line
FocalTech EDT-FT5x06 Polytouch driver
=====================================

There are 3 variants of the chip for various touch panel sizes
There are 5 variants of the chip for various touch panel sizes
FT5206GE1  2.8" .. 3.8"
FT5306DE4  4.3" .. 7"
FT5406EE8  7"   .. 8.9"
FT5506EEG  7"   .. 8.9"
FT5726NEI  5.7” .. 11.6"

The software interface is identical for all those chips, so that
currently there is no need for the driver to distinguish between the
@@ -19,6 +20,7 @@ Required properties:
           or:  "edt,edt-ft5306"
           or:  "edt,edt-ft5406"
           or:  "edt,edt-ft5506"
           or:  "evervision,ev-ft5726"
           or:  "focaltech,ft6236"

 - reg:         I2C slave address of the chip (0x38)
@@ -42,6 +44,15 @@ Optional properties:

 - offset:      allows setting the edge compensation in the range from
                0 to 31.

 - offset-x:    Same as offset, but applies only to the horizontal position.
                Range from 0 to 80, only supported by evervision,ev-ft5726
                devices.

 - offset-y:    Same as offset, but applies only to the vertical position.
                Range from 0 to 80, only supported by evervision,ev-ft5726
                devices.

 - touchscreen-size-x	   : See touchscreen.txt
 - touchscreen-size-y	   : See touchscreen.txt
 - touchscreen-fuzz-x      : See touchscreen.txt
+9 −5
Original line number Diff line number Diff line
@@ -3,6 +3,7 @@ Device tree bindings for Goodix GT9xx series touchscreen controller
Required properties:

 - compatible		: Should be "goodix,gt1151"
				 or "goodix,gt5688"
				 or "goodix,gt911"
				 or "goodix,gt9110"
				 or "goodix,gt912"
@@ -18,11 +19,14 @@ Optional properties:
 - irq-gpios		: GPIO pin used for IRQ. The driver uses the
			  interrupt gpio pin as output to reset the device.
 - reset-gpios		: GPIO pin used for reset

 - touchscreen-inverted-x  : X axis is inverted (boolean)
 - touchscreen-inverted-y  : Y axis is inverted (boolean)
 - touchscreen-swapped-x-y : X and Y axis are swapped (boolean)
                             (swapping is done after inverting the axis)
 - touchscreen-inverted-x
 - touchscreen-inverted-y
 - touchscreen-size-x
 - touchscreen-size-y
 - touchscreen-swapped-x-y

The touchscreen-* properties are documented in touchscreen.txt in this
directory.

Example:

Loading