Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f4f9b8fc authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull input updates from Dmitry Torokhov:
 "A big update to the Atmel touchscreen driver, devm support for polled
  input devices, several drivers have been converted to using managed
  resources, and assorted driver fixes"

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (87 commits)
  Input: synaptics - fix resolution for manually provided min/max
  Input: atmel_mxt_ts - fix invalid return from mxt_get_bootloader_version
  Input: max8997_haptic - add error handling for regulator and pwm
  Input: elantech - don't set bit 1 of reg_10 when the no_hw_res quirk is set
  Input: elantech - deal with clickpads reporting right button events
  Input: edt-ft5x06 - fix an i2c write for M09 support
  Input: omap-keypad - remove platform data support
  ARM: OMAP2+: remove unused omap4-keypad file and code
  Input: ab8500-ponkey - switch to using managed resources
  Input: max8925_onkey - switch to using managed resources
  Input: 88pm860x-ts - switch to using managed resources
  Input: 88pm860x_onkey - switch to using managed resources
  Input: intel-mid-touch - switch to using managed resources
  Input: wacom - process outbound for newer Cintiqs
  Input: wacom - set stylus_in_proximity when pen is in range
  DTS: ARM: OMAP3-N900: Add tsc2005 support
  Input: tsc2005 - add DT support
  Input: add common DT binding for touchscreens
  Input: jornada680_kbd - switch top using managed resources
  Input: adp5520-keys - switch to using managed resources
  ...
parents 9894e6d9 a292241c
Loading
Loading
Loading
Loading
+60 −0
Original line number Diff line number Diff line
* ST Keyscan controller Device Tree bindings

The ST keyscan controller Device Tree binding is based on the
matrix-keymap.

Required properties:
- compatible: "st,sti-keyscan"

- reg: Register base address and size of st-keyscan controller.

- interrupts: Interrupt number for the st-keyscan controller.

- clocks: Must contain one entry, for the module clock.
  See ../clocks/clock-bindings.txt for details.

- pinctrl: Should specify pin control groups used for this controller.
  See ../pinctrl/pinctrl-bindings.txt for details.

- linux,keymap: The keymap for keys as described in the binding document
  devicetree/bindings/input/matrix-keymap.txt.

- keypad,num-rows: Number of row lines connected to the keypad controller.

- keypad,num-columns: Number of column lines connected to the keypad
  controller.

Optional property:
- st,debounce_us: Debouncing interval time in microseconds

Example:

keyscan: keyscan@fe4b0000 {
	compatible = "st,sti-keyscan";
	reg = <0xfe4b0000 0x2000>;
	interrupts = <GIC_SPI 212 IRQ_TYPE_NONE>;
	clocks	= <&CLK_SYSIN>;
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_keyscan>;

	keypad,num-rows = <4>;
	keypad,num-columns = <4>;
	st,debounce_us = <5000>;

	linux,keymap = < MATRIX_KEY(0x00, 0x00, KEY_F13)
			 MATRIX_KEY(0x00, 0x01, KEY_F9)
			 MATRIX_KEY(0x00, 0x02, KEY_F5)
			 MATRIX_KEY(0x00, 0x03, KEY_F1)
			 MATRIX_KEY(0x01, 0x00, KEY_F14)
			 MATRIX_KEY(0x01, 0x01, KEY_F10)
			 MATRIX_KEY(0x01, 0x02, KEY_F6)
			 MATRIX_KEY(0x01, 0x03, KEY_F2)
			 MATRIX_KEY(0x02, 0x00, KEY_F15)
			 MATRIX_KEY(0x02, 0x01, KEY_F11)
			 MATRIX_KEY(0x02, 0x02, KEY_F7)
			 MATRIX_KEY(0x02, 0x03, KEY_F3)
			 MATRIX_KEY(0x03, 0x00, KEY_F16)
			 MATRIX_KEY(0x03, 0x01, KEY_F12)
			 MATRIX_KEY(0x03, 0x02, KEY_F8)
			 MATRIX_KEY(0x03, 0x03, KEY_F4) >;
	};
+20 −0
Original line number Diff line number Diff line
sun4i resistive touchscreen controller
--------------------------------------

Required properties:
 - compatible: "allwinner,sun4i-a10-ts"
 - reg: mmio address range of the chip
 - interrupts: interrupt to which the chip is connected

Optional properties:
 - allwinner,ts-attached: boolean indicating that an actual touchscreen is
			  attached to the controller

Example:

	rtp: rtp@01c25000 {
		compatible = "allwinner,sun4i-a10-ts";
		reg = <0x01c25000 0x100>;
		interrupts = <29>;
		allwinner,ts-attached;
	};
+27 −0
Original line number Diff line number Diff line
General Touchscreen Properties:

Optional properties for Touchscreens:
 - touchscreen-size-x		: horizontal resolution of touchscreen
				  (in pixels)
 - touchscreen-size-y		: vertical resolution of touchscreen
				  (in pixels)
 - touchscreen-max-pressure	: maximum reported pressure (arbitrary range
				  dependent on the controller)
 - touchscreen-fuzz-x		: horizontal noise value of the absolute input
				  device (in pixels)
 - touchscreen-fuzz-y		: vertical noise value of the absolute input
				  device (in pixels)
 - touchscreen-fuzz-pressure	: pressure noise value of the absolute input
				  device (arbitrary range dependent on the
				  controller)
 - touchscreen-inverted-x	: X axis is inverted (boolean)
 - touchscreen-inverted-y	: Y axis is inverted (boolean)

Deprecated properties for Touchscreens:
 - x-size			: deprecated name for touchscreen-size-x
 - y-size			: deprecated name for touchscreen-size-y
 - moving-threshold		: deprecated name for a combination of
				  touchscreen-fuzz-x and touchscreen-fuzz-y
 - contact-threshold		: deprecated name for touchscreen-fuzz-pressure
 - x-invert			: deprecated name for touchscreen-inverted-x
 - y-invert			: deprecated name for touchscreen-inverted-y
+42 −0
Original line number Diff line number Diff line
* Texas Instruments tsc2005 touchscreen controller

Required properties:
 - compatible		      : "ti,tsc2005"
 - reg			      : SPI device address
 - spi-max-frequency	      : Maximal SPI speed
 - interrupts		      : IRQ specifier
 - reset-gpios		      : GPIO specifier
 - vio-supply                 : Regulator specifier

Optional properties:
 - ti,x-plate-ohms	      : integer, resistance of the touchscreen's X plates
				in ohm (defaults to 280)
 - ti,esd-recovery-timeout-ms : integer, if the touchscreen does not respond after
				the configured time (in milli seconds), the driver
				will reset it. This is disabled by default.
 - properties defined in touchscreen.txt

Example:

&mcspi1 {
	tsc2005@0 {
		compatible = "ti,tsc2005";
		spi-max-frequency = <6000000>;
		reg = <0>;

		vio-supply = <&vio>;

		reset-gpios = <&gpio4 8 GPIO_ACTIVE_HIGH>; /* 104 */
		interrupts-extended = <&gpio4 4 IRQ_TYPE_EDGE_RISING>; /* 100 */

		touchscreen-fuzz-x = <4>;
		touchscreen-fuzz-y = <7>;
		touchscreen-fuzz-pressure = <2>;
		touchscreen-max-x = <4096>;
		touchscreen-max-y = <4096>;
		touchscreen-max-pressure = <2048>;

		ti,x-plate-ohms = <280>;
		ti,esd-recovery-timeout-ms = <8000>;
	};
}
Loading