Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
Pull input updates from Dmitry Torokhov: "A few new drivers: - driver for Azoteq IQS550/572/525 touch controllers - driver for Microchip AT42QT1050 keys - driver for GPIO controllable vibrators - support for GT5663 in Goodix driver ... along with miscellaneous driver fixes" * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Input: libps2 - mark expected switch fall-through Input: qt1050 - add Microchip AT42QT1050 support Input: add support for Azoteq IQS550/572/525 Input: add a driver for GPIO controllable vibrators Input: synaptics-rmi4 - fix enum_fmt Input: synaptics-rmi4 - fill initial format HID: input: add mapping for KEY_KBD_LAYOUT_NEXT Input: add KEY_KBD_LAYOUT_NEXT Input: hyperv-keyboard - add module description Input: olpc_apsp - depend on ARCH_MMP Input: sun4i-a10-lradc-keys - add support for A83T Input: snvs_pwrkey - use dev_pm_set_wake_irq() to simplify code Input: lpc32xx-key - add clocks property and fix DT binding example Input: i8042 - signal wakeup from atkbd/psmouse Input: goodix - add GT5663 CTP support Input: goodix - add regulators suppot Input: evdev - use struct_size() in kzalloc() and vzalloc() Input: edt-ft5x06 - convert to use SPDX identifier Input: edt-ft5x06 - enable ACPI enumeration
This commit is contained in:
37
Documentation/devicetree/bindings/input/gpio-vibrator.yaml
Normal file
37
Documentation/devicetree/bindings/input/gpio-vibrator.yaml
Normal file
@@ -0,0 +1,37 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/bindings/input/gpio-vibrator.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: GPIO vibrator
|
||||
|
||||
maintainers:
|
||||
- Luca Weiss <luca@z3ntu.xyz>
|
||||
|
||||
description: |+
|
||||
Registers a GPIO device as vibrator, where the on/off capability is controlled by a GPIO.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: gpio-vibrator
|
||||
|
||||
enable-gpios:
|
||||
maxItems: 1
|
||||
|
||||
vcc-supply:
|
||||
description: Regulator that provides power
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- enable-gpios
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
vibrator {
|
||||
compatible = "gpio-vibrator";
|
||||
enable-gpios = <&msmgpio 86 GPIO_ACTIVE_HIGH>;
|
||||
vcc-supply = <&pm8941_l18>;
|
||||
};
|
@@ -8,6 +8,7 @@ Required Properties:
|
||||
- reg: Physical base address of the controller and length of memory mapped
|
||||
region.
|
||||
- interrupts: The interrupt number to the cpu.
|
||||
- clocks: phandle to clock controller plus clock-specifier pair
|
||||
- nxp,debounce-delay-ms: Debounce delay in ms
|
||||
- nxp,scan-delay-ms: Repeated scan period in ms
|
||||
- linux,keymap: the key-code to be reported when the key is pressed
|
||||
@@ -22,7 +23,9 @@ Example:
|
||||
key@40050000 {
|
||||
compatible = "nxp,lpc3220-key";
|
||||
reg = <0x40050000 0x1000>;
|
||||
interrupts = <54 0>;
|
||||
clocks = <&clk LPC32XX_CLK_KEY>;
|
||||
interrupt-parent = <&sic1>;
|
||||
interrupts = <22 IRQ_TYPE_LEVEL_HIGH>;
|
||||
keypad,num-rows = <1>;
|
||||
keypad,num-columns = <1>;
|
||||
nxp,debounce-delay-ms = <3>;
|
||||
|
78
Documentation/devicetree/bindings/input/microchip,qt1050.txt
Normal file
78
Documentation/devicetree/bindings/input/microchip,qt1050.txt
Normal file
@@ -0,0 +1,78 @@
|
||||
Microchip AT42QT1050 Five-channel Touch Sensor IC
|
||||
|
||||
The AT42QT1050 (QT1050) is a QTouchADC sensor device. The device can sense from
|
||||
one to five keys, dependent on mode. The QT1050 includes all signal processing
|
||||
functions necessary to provide stable sensing under a wide variety of changing
|
||||
conditions, and the outputs are fully debounced.
|
||||
|
||||
The touchkey device node should be placed inside an I2C bus node.
|
||||
|
||||
Required properties:
|
||||
- compatible: Must be "microchip,qt1050"
|
||||
- reg: The I2C address of the device
|
||||
- interrupts: The sink for the touchpad's IRQ output,
|
||||
see ../interrupt-controller/interrupts.txt
|
||||
|
||||
Optional properties:
|
||||
- wakeup-source: touch keys can be used as a wakeup source
|
||||
|
||||
Each button (key) is represented as a sub-node:
|
||||
|
||||
Each not specified key or key with linux,code set to KEY_RESERVED gets disabled
|
||||
in HW.
|
||||
|
||||
Subnode properties:
|
||||
- linux,code: Keycode to emit.
|
||||
- reg: The key number. Valid values: 0, 1, 2, 3, 4.
|
||||
|
||||
Optional subnode-properties:
|
||||
|
||||
If a optional property is missing or has a invalid value the default value is
|
||||
taken.
|
||||
|
||||
- microchip,pre-charge-time-ns:
|
||||
Each touchpad need some time to precharge. The value depends on the mechanical
|
||||
layout.
|
||||
Valid value range: 0 - 637500; values must be a multiple of 2500;
|
||||
default is 0.
|
||||
- microchip,average-samples:
|
||||
Number of data samples which are averaged for each read.
|
||||
Valid values: 1, 4, 16, 64, 256, 1024, 4096, 16384; default is 1.
|
||||
- microchip,average-scaling:
|
||||
The scaling factor which is used to scale the average-samples.
|
||||
Valid values: 1, 2, 4, 8, 16, 32, 64, 128; default is 1.
|
||||
- microchip,threshold:
|
||||
Number of counts to register a touch detection.
|
||||
Valid value range: 0 - 255; default is 20.
|
||||
|
||||
Example:
|
||||
QT1050 with 3 non continuous keys, key2 and key4 are disabled.
|
||||
|
||||
touchkeys@41 {
|
||||
compatible = "microchip,qt1050";
|
||||
reg = <0x41>;
|
||||
interrupt-parent = <&gpio0>;
|
||||
interrupts = <17 IRQ_TYPE_EDGE_FALLING>;
|
||||
|
||||
up@0 {
|
||||
reg = <0>;
|
||||
linux,code = <KEY_UP>;
|
||||
microchip,average-samples = <64>;
|
||||
microchip,average-scaling = <16>;
|
||||
microchip,pre-charge-time-ns = <10000>;
|
||||
};
|
||||
|
||||
right@1 {
|
||||
reg = <1>;
|
||||
linux,code = <KEY_RIGHT>;
|
||||
microchip,average-samples = <64>;
|
||||
microchip,average-scaling = <8>;
|
||||
};
|
||||
|
||||
down@3 {
|
||||
reg = <3>;
|
||||
linux,code = <KEY_DOWN>;
|
||||
microchip,average-samples = <256>;
|
||||
microchip,average-scaling = <16>;
|
||||
};
|
||||
};
|
@@ -2,12 +2,14 @@ Allwinner sun4i low res adc attached tablet keys
|
||||
------------------------------------------------
|
||||
|
||||
Required properties:
|
||||
- compatible: "allwinner,sun4i-a10-lradc-keys"
|
||||
- compatible: should be one of the following string:
|
||||
"allwinner,sun4i-a10-lradc-keys"
|
||||
"allwinner,sun8i-a83t-r-lradc"
|
||||
- reg: mmio address range of the chip
|
||||
- interrupts: interrupt to which the chip is connected
|
||||
- vref-supply: powersupply for the lradc reference voltage
|
||||
|
||||
Each key is represented as a sub-node of "allwinner,sun4i-a10-lradc-keys":
|
||||
Each key is represented as a sub-node of the compatible mentioned above:
|
||||
|
||||
Required subnode-properties:
|
||||
- label: Descriptive name of the key.
|
||||
|
@@ -3,6 +3,7 @@ Device tree bindings for Goodix GT9xx series touchscreen controller
|
||||
Required properties:
|
||||
|
||||
- compatible : Should be "goodix,gt1151"
|
||||
or "goodix,gt5663"
|
||||
or "goodix,gt5688"
|
||||
or "goodix,gt911"
|
||||
or "goodix,gt9110"
|
||||
@@ -19,6 +20,8 @@ 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
|
||||
- AVDD28-supply : Analog power supply regulator on AVDD28 pin
|
||||
- VDDIO-supply : GPIO power supply regulator on VDDIO pin
|
||||
- touchscreen-inverted-x
|
||||
- touchscreen-inverted-y
|
||||
- touchscreen-size-x
|
||||
|
@@ -0,0 +1,80 @@
|
||||
Azoteq IQS550/572/525 Trackpad/Touchscreen Controller
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible : Must be equal to one of the following:
|
||||
"azoteq,iqs550"
|
||||
"azoteq,iqs572"
|
||||
"azoteq,iqs525"
|
||||
|
||||
- reg : I2C slave address for the device.
|
||||
|
||||
- interrupts : GPIO to which the device's active-high RDY
|
||||
output is connected (see [0]).
|
||||
|
||||
- reset-gpios : GPIO to which the device's active-low NRST
|
||||
input is connected (see [1]).
|
||||
|
||||
Optional properties:
|
||||
|
||||
- touchscreen-min-x : See [2].
|
||||
|
||||
- touchscreen-min-y : See [2].
|
||||
|
||||
- touchscreen-size-x : See [2]. If this property is omitted, the
|
||||
maximum x-coordinate is specified by the
|
||||
device's "X Resolution" register.
|
||||
|
||||
- touchscreen-size-y : See [2]. If this property is omitted, the
|
||||
maximum y-coordinate is specified by the
|
||||
device's "Y Resolution" register.
|
||||
|
||||
- touchscreen-max-pressure : See [2]. Pressure is expressed as the sum of
|
||||
the deltas across all channels impacted by a
|
||||
touch event. A channel's delta is calculated
|
||||
as its count value minus a reference, where
|
||||
the count value is inversely proportional to
|
||||
the channel's capacitance.
|
||||
|
||||
- touchscreen-fuzz-x : See [2].
|
||||
|
||||
- touchscreen-fuzz-y : See [2].
|
||||
|
||||
- touchscreen-fuzz-pressure : See [2].
|
||||
|
||||
- touchscreen-inverted-x : See [2]. Inversion is applied relative to that
|
||||
which may already be specified by the device's
|
||||
FLIP_X and FLIP_Y register fields.
|
||||
|
||||
- touchscreen-inverted-y : See [2]. Inversion is applied relative to that
|
||||
which may already be specified by the device's
|
||||
FLIP_X and FLIP_Y register fields.
|
||||
|
||||
- touchscreen-swapped-x-y : See [2]. Swapping is applied relative to that
|
||||
which may already be specified by the device's
|
||||
SWITCH_XY_AXIS register field.
|
||||
|
||||
[0]: Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
|
||||
[1]: Documentation/devicetree/bindings/gpio/gpio.txt
|
||||
[2]: Documentation/devicetree/bindings/input/touchscreen/touchscreen.txt
|
||||
|
||||
Example:
|
||||
|
||||
&i2c1 {
|
||||
/* ... */
|
||||
|
||||
touchscreen@74 {
|
||||
compatible = "azoteq,iqs550";
|
||||
reg = <0x74>;
|
||||
interrupt-parent = <&gpio>;
|
||||
interrupts = <17 4>;
|
||||
reset-gpios = <&gpio 27 1>;
|
||||
|
||||
touchscreen-size-x = <640>;
|
||||
touchscreen-size-y = <480>;
|
||||
|
||||
touchscreen-max-pressure = <16000>;
|
||||
};
|
||||
|
||||
/* ... */
|
||||
};
|
@@ -55,6 +55,7 @@ avic Shanghai AVIC Optoelectronics Co., Ltd.
|
||||
avnet Avnet, Inc.
|
||||
axentia Axentia Technologies AB
|
||||
axis Axis Communications AB
|
||||
azoteq Azoteq (Pty) Ltd
|
||||
bananapi BIPAI KEJI LIMITED
|
||||
bhf Beckhoff Automation GmbH & Co. KG
|
||||
bitmain Bitmain Technologies
|
||||
|
Reference in New Issue
Block a user