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

Commit 664fb230 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull input updates from Dmitry Torokhov:
 - big update to Wacom driver by Benjamin Tissoires, converting it to
   HID infrastructure and unifying USB and Bluetooth models
 - large update to ALPS driver by Hans de Goede, which adds support for
   newer touchpad models as well as cleans up and restructures the code
 - more changes to Atmel MXT driver, including device tree support
 - new driver for iPaq x3xxx touchscreen
 - driver for serial Wacom tablets
 - driver for Microchip's CAP1106
 - assorted cleanups and improvements to existing drover and input core

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (93 commits)
  Input: wacom - update the ABI doc according to latest changes
  Input: wacom - only register once the MODULE_* macros
  Input: HID - remove hid-wacom Bluetooth driver
  Input: wacom - add copyright note and bump version to 2.0
  Input: wacom - remove passing id for wacom_set_report
  Input: wacom - check for bluetooth protocol while setting OLEDs
  Input: wacom - handle Intuos 4 BT in wacom.ko
  Input: wacom - handle Graphire BT tablets in wacom.ko
  Input: wacom - prepare the driver to include BT devices
  Input: hyperv-keyboard - register as a wakeup source
  Input: imx_keypad - remove ifdef round PM methods
  Input: jornada720_ts - get rid of space indentation and use tab
  Input: jornada720_ts - switch to using managed resources
  Input: alps - Rushmore and v7 resolution support
  Input: mcs5000_ts - remove ifdef around power management methods
  Input: mcs5000_ts - protect PM functions with CONFIG_PM_SLEEP
  Input: ads7846 - release resources on failure for clean exit
  Input: wacom - add support for 0x12C ISDv4 sensor
  Input: atmel_mxt_ts - use deep sleep mode when stopped
  ARM: dts: am437x-gp-evm: Update binding for touchscreen size
  ...
parents 8065be8d c704b4ef
Loading
Loading
Loading
Loading
+27 −43
Original line number Diff line number Diff line
WWhat:		/sys/class/hidraw/hidraw*/device/oled*_img
Date:		June 2012
Contact:	linux-bluetooth@vger.kernel.org
Description:
		The /sys/class/hidraw/hidraw*/device/oled*_img files control
		OLED mocro displays on Intuos4 Wireless tablet. Accepted image
		has to contain 256 bytes (64x32 px 1 bit colour). The format
		is the same as PBM image 62x32px without header (64 bits per
		horizontal line, 32 lines). An example of setting OLED No. 0:
		dd bs=256 count=1 if=img_file of=[path to oled0_img]/oled0_img
		The attribute is read only and no local copy of the image is
		stored.

What:		/sys/class/hidraw/hidraw*/device/speed
What:		/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/speed
Date:		April 2010
Kernel Version:	2.6.35
Contact:	linux-bluetooth@vger.kernel.org
Description:
		The /sys/class/hidraw/hidraw*/device/speed file controls
		reporting speed of Wacom bluetooth tablet. Reading from
		this file returns 1 if tablet reports in high speed mode
		The /sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/speed file
		controls reporting speed of Wacom bluetooth tablet. Reading
		from this file returns 1 if tablet reports in high speed mode
		or 0 otherwise. Writing to this file one of these values
		switches reporting speed.

What:		/sys/class/leds/0005\:056A\:00BD.0001\:selector\:*/
Date:		May 2012
Kernel Version:	3.5
Contact:	linux-bluetooth@vger.kernel.org
Description:
		LED selector for Intuos4 WL. There are 4 leds, but only one LED
		can be lit at a time. Max brightness is 127.

What:		/sys/bus/usb/devices/<busnum>-<devnum>:<cfg>.<intf>/wacom_led/led
Date:		August 2011
What:		/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/led
Date:		August 2014
Contact:	linux-input@vger.kernel.org
Description:
		Attribute group for control of the status LEDs and the OLEDs.
		This attribute group is only available for Intuos 4 M, L,
		and XL (with LEDs and OLEDs), Intuos 5 (LEDs only), and Cintiq
		21UX2 and Cintiq 24HD (LEDs only). Therefore its presence
		implicitly signifies the presence of said LEDs and OLEDs on the
		tablet device.
		and XL (with LEDs and OLEDs), Intuos 4 WL, Intuos 5 (LEDs only),
		Intuos Pro (LEDs only) and Cintiq 21UX2 and Cintiq 24HD
		(LEDs only). Therefore its presence implicitly signifies the
		presence of said LEDs and OLEDs on the tablet device.

What:		/sys/bus/usb/devices/<busnum>-<devnum>:<cfg>.<intf>/wacom_led/status0_luminance
Date:		August 2011
What:		/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/status0_luminance
Date:		August 2014
Contact:	linux-input@vger.kernel.org
Description:
		Writing to this file sets the status LED luminance (1..127)
@@ -50,16 +29,16 @@ Description:
		button is pressed on the stylus. This luminance level is
		normally lower than the level when a button is pressed.

What:		/sys/bus/usb/devices/<busnum>-<devnum>:<cfg>.<intf>/wacom_led/status1_luminance
Date:		August 2011
What:		/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/status1_luminance
Date:		August 2014
Contact:	linux-input@vger.kernel.org
Description:
		Writing to this file sets the status LED luminance (1..127)
		when the stylus touches the tablet surface, or any button is
		pressed on the stylus.

What:		/sys/bus/usb/devices/<busnum>-<devnum>:<cfg>.<intf>/wacom_led/status_led0_select
Date:		August 2011
What:		/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/status_led0_select
Date:		August 2014
Contact:	linux-input@vger.kernel.org
Description:
		Writing to this file sets which one of the four (for Intuos 4
@@ -67,23 +46,23 @@ Description:
		24HD) status LEDs is active (0..3). The other three LEDs on the
		same side are always inactive.

What:		/sys/bus/usb/devices/<busnum>-<devnum>:<cfg>.<intf>/wacom_led/status_led1_select
Date:		September 2011
What:		/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/status_led1_select
Date:		August 2014
Contact:	linux-input@vger.kernel.org
Description:
		Writing to this file sets which one of the left four (for Cintiq 21UX2
		and Cintiq 24HD) status LEDs is active (0..3). The other three LEDs on
		the left are always inactive.

What:		/sys/bus/usb/devices/<busnum>-<devnum>:<cfg>.<intf>/wacom_led/buttons_luminance
Date:		August 2011
What:		/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/buttons_luminance
Date:		August 2014
Contact:	linux-input@vger.kernel.org
Description:
		Writing to this file sets the overall luminance level (0..15)
		of all eight button OLED displays.

What:		/sys/bus/usb/devices/<busnum>-<devnum>:<cfg>.<intf>/wacom_led/button<n>_rawimg
Date:		August 2011
What:		/sys/bus/hid/devices/<bus>:<vid>:<pid>.<n>/wacom_led/button<n>_rawimg
Date:		August 2014
Contact:	linux-input@vger.kernel.org
Description:
		When writing a 1024 byte raw image in Wacom Intuos 4
@@ -93,3 +72,8 @@ Description:
		byte chunk encodes the image data for two consecutive lines on
		the display. The low nibble of each byte contains the first
		line, and the high nibble contains the second line.
		When the Wacom Intuos 4 is connected over Bluetooth, the
		image has to contain 256 bytes (64x32 px 1 bit colour).
		The format is also scrambled, like in the USB mode, and it can
		be summarized by converting 76543210 into GECA6420.
					    HGFEDCBA      HFDB7531
+25 −0
Original line number Diff line number Diff line
Atmel maXTouch touchscreen/touchpad

Required properties:
- compatible:
    atmel,maxtouch

- reg: The I2C address of the device

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

Optional properties for main touchpad device:

- linux,gpio-keymap: An array of up to 4 entries indicating the Linux
    keycode generated by each GPIO. Linux keycodes are defined in
    <dt-bindings/input/input.h>.

Example:

	touch@4b {
		compatible = "atmel,maxtouch";
		reg = <0x4b>;
		interrupt-parent = <&gpio>;
		interrupts = <TEGRA_GPIO(W, 3) IRQ_TYPE_LEVEL_LOW>;
	};
+53 −0
Original line number Diff line number Diff line
Device tree bindings for Microchip CAP1106, 6 channel capacitive touch sensor

The node for this driver must be a child of a I2C controller node, as the
device communication via I2C only.

Required properties:

	compatible:		Must be "microchip,cap1106"

	reg:			The I2C slave address of the device.
				Only 0x28 is valid.

	interrupts:		Property describing the interrupt line the
				device's ALERT#/CM_IRQ# pin is connected to.
				The device only has one interrupt source.

Optional properties:

	autorepeat:		Enables the Linux input system's autorepeat
				feature on the input device.

	microchip,sensor-gain:	Defines the gain of the sensor circuitry. This
				effectively controls the sensitivity, as a
				smaller delta capacitance is required to
				generate the same delta count values.
				Valid values are 1, 2, 4, and 8.
				By default, a gain of 1 is set.

	linux,keycodes:		Specifies an array of numeric keycode values to
				be used for the channels. If this property is
				omitted, KEY_A, KEY_B, etc are used as
				defaults. The array must have exactly six
				entries.

Example:

i2c_controller {
	cap1106@28 {
		compatible = "microchip,cap1106";
		interrupt-parent = <&gpio1>;
		interrupts = <0 0>;
		reg = <0x28>;
		autorepeat;
		microchip,sensor-gain = <2>;

		linux,keycodes = <103		/* KEY_UP */
				  106		/* KEY_RIGHT */
				  108		/* KEY_DOWN */
				  105		/* KEY_LEFT */
				  109		/* KEY_PAGEDOWN */
				  104>;		/* KEY_PAGEUP */
	};
}
+26 −0
Original line number Diff line number Diff line
* Pixcir I2C touchscreen controllers

Required properties:
- compatible: must be "pixcir,pixcir_ts" or "pixcir,pixcir_tangoc"
- reg: I2C address of the chip
- interrupts: interrupt to which the chip is connected
- attb-gpio: GPIO connected to the ATTB line of the chip
- touchscreen-size-x: horizontal resolution of touchscreen (in pixels)
- touchscreen-size-y: vertical resolution of touchscreen (in pixels)

Example:

	i2c@00000000 {
		/* ... */

		pixcir_ts@5c {
			compatible = "pixcir,pixcir_ts";
			reg = <0x5c>;
			interrupts = <2 0>;
			attb-gpio = <&gpf 2 0 2>;
			touchscreen-size-x = <800>;
			touchscreen-size-y = <600>;
		};

		/* ... */
	};
+4 −0
Original line number Diff line number Diff line
@@ -9,6 +9,9 @@ Required properties:
- x-size: horizontal resolution of touchscreen
- y-size: vertical resolution of touchscreen

Optional properties:
- vdd-supply: Regulator controlling the controller supply

Example:

	i2c@00000000 {
@@ -18,6 +21,7 @@ Example:
			compatible = "neonode,zforce";
			reg = <0x50>;
			interrupts = <2 0>;
			vdd-supply = <&reg_zforce_vdd>;

			gpios = <&gpio5 6 0>, /* INT */
				<&gpio5 9 0>; /* RST */
Loading