diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-12-17 13:06:02 -0500 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-12-17 13:06:02 -0500 |
| commit | d797da41b2aceed5daa8cd2eee92cd74b2a0c652 (patch) | |
| tree | f4de7daf5a81f425c057dd5a65a0e1b8056de5a9 /Documentation/devicetree | |
| parent | d6666be6f0c43efb9475d1d35fbef9f8be61b7b1 (diff) | |
| parent | f20c86cd75f1c8c728dafd0218645ff3c5e8545d (diff) | |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
Pull input subsystem updates from Dmitry Torokhov:
"Two new drivers for Elan hardware (for I2C touchpad and touchscreen
found in several Chromebooks and other devices), a driver for Goodix
touch panel, and small fixes to Cypress I2C trackpad and other input
drivers.
Also we switched to use __maybe_unused instead of gating suspend/
resume code with #ifdef guards to get better compile coverage"
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (27 commits)
Input: gpio_keys - fix warning regarding uninitialized 'button' variable
Input: add support for Elan eKTH I2C touchscreens
Input: gpio_keys - fix warning regarding uninitialized 'irq' variable
Input: cyapa - use 'error' for error codes
Input: cyapa - fix resuming the device
Input: gpio_keys - add device tree support for interrupt only keys
Input: amikbd - allocate temporary keymap buffer on the stack
Input: amikbd - fix build if !CONFIG_HW_CONSOLE
Input: lm8323 - missing error check in lm8323_set_disable()
Input: initialize device counter variables with -1
Input: initialize input_no to -1 to avoid subtraction
Input: i8042 - do not try to load on Intel NUC D54250WYK
Input: atkbd - correct MSC_SCAN events for force_release keys
Input: cyapa - switch to using managed resources
Input: lifebook - use "static inline" instead of "inline" in lifebook.h
Input: touchscreen - use __maybe_unused instead of ifdef around suspend/resume
Input: mouse - use __maybe_unused instead of ifdef around suspend/resume
Input: misc - use __maybe_unused instead of ifdef around suspend/resume
Input: cap11xx - support for irq-active-high option
Input: cap11xx - add support for various cap11xx devices
...
Diffstat (limited to 'Documentation/devicetree')
| -rw-r--r-- | Documentation/devicetree/bindings/input/cap11xx.txt (renamed from Documentation/devicetree/bindings/input/cap1106.txt) | 26 | ||||
| -rw-r--r-- | Documentation/devicetree/bindings/input/elan_i2c.txt | 34 | ||||
| -rw-r--r-- | Documentation/devicetree/bindings/input/elants_i2c.txt | 33 | ||||
| -rw-r--r-- | Documentation/devicetree/bindings/input/gpio-keys.txt | 10 | ||||
| -rw-r--r-- | Documentation/devicetree/bindings/vendor-prefixes.txt | 1 |
5 files changed, 93 insertions, 11 deletions
diff --git a/Documentation/devicetree/bindings/input/cap1106.txt b/Documentation/devicetree/bindings/input/cap11xx.txt index 4b463904cba0..7d0a3009771b 100644 --- a/Documentation/devicetree/bindings/input/cap1106.txt +++ b/Documentation/devicetree/bindings/input/cap11xx.txt | |||
| @@ -1,14 +1,16 @@ | |||
| 1 | Device tree bindings for Microchip CAP1106, 6 channel capacitive touch sensor | 1 | Device tree bindings for Microchip CAP11xx based capacitive touch sensors |
| 2 | 2 | ||
| 3 | The node for this driver must be a child of a I2C controller node, as the | 3 | The node for this device must be a child of a I2C controller node, as the |
| 4 | device communication via I2C only. | 4 | device communication via I2C only. |
| 5 | 5 | ||
| 6 | Required properties: | 6 | Required properties: |
| 7 | 7 | ||
| 8 | compatible: Must be "microchip,cap1106" | 8 | compatible: Must contain one of: |
| 9 | "microchip,cap1106" | ||
| 10 | "microchip,cap1126" | ||
| 11 | "microchip,cap1188" | ||
| 9 | 12 | ||
| 10 | reg: The I2C slave address of the device. | 13 | reg: The I2C slave address of the device. |
| 11 | Only 0x28 is valid. | ||
| 12 | 14 | ||
| 13 | interrupts: Property describing the interrupt line the | 15 | interrupts: Property describing the interrupt line the |
| 14 | device's ALERT#/CM_IRQ# pin is connected to. | 16 | device's ALERT#/CM_IRQ# pin is connected to. |
| @@ -26,6 +28,10 @@ Optional properties: | |||
| 26 | Valid values are 1, 2, 4, and 8. | 28 | Valid values are 1, 2, 4, and 8. |
| 27 | By default, a gain of 1 is set. | 29 | By default, a gain of 1 is set. |
| 28 | 30 | ||
| 31 | microchip,irq-active-high: By default the interrupt pin is active low | ||
| 32 | open drain. This property allows using the active | ||
| 33 | high push-pull output. | ||
| 34 | |||
| 29 | linux,keycodes: Specifies an array of numeric keycode values to | 35 | linux,keycodes: Specifies an array of numeric keycode values to |
| 30 | be used for the channels. If this property is | 36 | be used for the channels. If this property is |
| 31 | omitted, KEY_A, KEY_B, etc are used as | 37 | omitted, KEY_A, KEY_B, etc are used as |
| @@ -43,11 +49,11 @@ i2c_controller { | |||
| 43 | autorepeat; | 49 | autorepeat; |
| 44 | microchip,sensor-gain = <2>; | 50 | microchip,sensor-gain = <2>; |
| 45 | 51 | ||
| 46 | linux,keycodes = <103 /* KEY_UP */ | 52 | linux,keycodes = <103>, /* KEY_UP */ |
| 47 | 106 /* KEY_RIGHT */ | 53 | <106>, /* KEY_RIGHT */ |
| 48 | 108 /* KEY_DOWN */ | 54 | <108>, /* KEY_DOWN */ |
| 49 | 105 /* KEY_LEFT */ | 55 | <105>, /* KEY_LEFT */ |
| 50 | 109 /* KEY_PAGEDOWN */ | 56 | <109>, /* KEY_PAGEDOWN */ |
| 51 | 104>; /* KEY_PAGEUP */ | 57 | <104>; /* KEY_PAGEUP */ |
| 52 | }; | 58 | }; |
| 53 | } | 59 | } |
diff --git a/Documentation/devicetree/bindings/input/elan_i2c.txt b/Documentation/devicetree/bindings/input/elan_i2c.txt new file mode 100644 index 000000000000..ee3242c4ba67 --- /dev/null +++ b/Documentation/devicetree/bindings/input/elan_i2c.txt | |||
| @@ -0,0 +1,34 @@ | |||
| 1 | Elantech I2C Touchpad | ||
| 2 | |||
| 3 | Required properties: | ||
| 4 | - compatible: must be "elan,ekth3000". | ||
| 5 | - reg: I2C address of the chip. | ||
| 6 | - interrupt-parent: a phandle for the interrupt controller (see interrupt | ||
| 7 | binding[0]). | ||
| 8 | - interrupts: interrupt to which the chip is connected (see interrupt | ||
| 9 | binding[0]). | ||
| 10 | |||
| 11 | Optional properties: | ||
| 12 | - wakeup-source: touchpad can be used as a wakeup source. | ||
| 13 | - pinctrl-names: should be "default" (see pinctrl binding [1]). | ||
| 14 | - pinctrl-0: a phandle pointing to the pin settings for the device (see | ||
| 15 | pinctrl binding [1]). | ||
| 16 | - vcc-supply: a phandle for the regulator supplying 3.3V power. | ||
| 17 | |||
| 18 | [0]: Documentation/devicetree/bindings/interrupt-controller/interrupts.txt | ||
| 19 | [1]: Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt | ||
| 20 | |||
| 21 | Example: | ||
| 22 | &i2c1 { | ||
| 23 | /* ... */ | ||
| 24 | |||
| 25 | touchpad@15 { | ||
| 26 | compatible = "elan,ekth3000"; | ||
| 27 | reg = <0x15>; | ||
| 28 | interrupt-parent = <&gpio4>; | ||
| 29 | interrupts = <0x0 IRQ_TYPE_EDGE_FALLING>; | ||
| 30 | wakeup-source; | ||
| 31 | }; | ||
| 32 | |||
| 33 | /* ... */ | ||
| 34 | }; | ||
diff --git a/Documentation/devicetree/bindings/input/elants_i2c.txt b/Documentation/devicetree/bindings/input/elants_i2c.txt new file mode 100644 index 000000000000..a765232e6446 --- /dev/null +++ b/Documentation/devicetree/bindings/input/elants_i2c.txt | |||
| @@ -0,0 +1,33 @@ | |||
| 1 | Elantech I2C Touchscreen | ||
| 2 | |||
| 3 | Required properties: | ||
| 4 | - compatible: must be "elan,ekth3500". | ||
| 5 | - reg: I2C address of the chip. | ||
| 6 | - interrupt-parent: a phandle for the interrupt controller (see interrupt | ||
| 7 | binding[0]). | ||
| 8 | - interrupts: interrupt to which the chip is connected (see interrupt | ||
| 9 | binding[0]). | ||
| 10 | |||
| 11 | Optional properties: | ||
| 12 | - wakeup-source: touchscreen can be used as a wakeup source. | ||
| 13 | - pinctrl-names: should be "default" (see pinctrl binding [1]). | ||
| 14 | - pinctrl-0: a phandle pointing to the pin settings for the device (see | ||
| 15 | pinctrl binding [1]). | ||
| 16 | |||
| 17 | [0]: Documentation/devicetree/bindings/interrupt-controller/interrupts.txt | ||
| 18 | [1]: Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt | ||
| 19 | |||
| 20 | Example: | ||
| 21 | &i2c1 { | ||
| 22 | /* ... */ | ||
| 23 | |||
| 24 | touchscreen@10 { | ||
| 25 | compatible = "elan,ekth3500"; | ||
| 26 | reg = <0x10>; | ||
| 27 | interrupt-parent = <&gpio4>; | ||
| 28 | interrupts = <0x0 IRQ_TYPE_EDGE_FALLING>; | ||
| 29 | wakeup-source; | ||
| 30 | }; | ||
| 31 | |||
| 32 | /* ... */ | ||
| 33 | }; | ||
diff --git a/Documentation/devicetree/bindings/input/gpio-keys.txt b/Documentation/devicetree/bindings/input/gpio-keys.txt index 5c2c02140a62..a4a38fcf2ed6 100644 --- a/Documentation/devicetree/bindings/input/gpio-keys.txt +++ b/Documentation/devicetree/bindings/input/gpio-keys.txt | |||
| @@ -10,10 +10,13 @@ Optional properties: | |||
| 10 | Each button (key) is represented as a sub-node of "gpio-keys": | 10 | Each button (key) is represented as a sub-node of "gpio-keys": |
| 11 | Subnode properties: | 11 | Subnode properties: |
| 12 | 12 | ||
| 13 | - gpios: OF device-tree gpio specification. | ||
| 14 | - label: Descriptive name of the key. | 13 | - label: Descriptive name of the key. |
| 15 | - linux,code: Keycode to emit. | 14 | - linux,code: Keycode to emit. |
| 16 | 15 | ||
| 16 | Required mutual exclusive subnode-properties: | ||
| 17 | - gpios: OF device-tree gpio specification. | ||
| 18 | - interrupts: the interrupt line for that input | ||
| 19 | |||
| 17 | Optional subnode-properties: | 20 | Optional subnode-properties: |
| 18 | - linux,input-type: Specify event type this button/key generates. | 21 | - linux,input-type: Specify event type this button/key generates. |
| 19 | If not specified defaults to <1> == EV_KEY. | 22 | If not specified defaults to <1> == EV_KEY. |
| @@ -33,4 +36,9 @@ Example nodes: | |||
| 33 | linux,code = <103>; | 36 | linux,code = <103>; |
| 34 | gpios = <&gpio1 0 1>; | 37 | gpios = <&gpio1 0 1>; |
| 35 | }; | 38 | }; |
| 39 | button@22 { | ||
| 40 | label = "GPIO Key DOWN"; | ||
| 41 | linux,code = <108>; | ||
| 42 | interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; | ||
| 43 | }; | ||
| 36 | ... | 44 | ... |
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt index 423d47418e72..b1df0ad1306c 100644 --- a/Documentation/devicetree/bindings/vendor-prefixes.txt +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt | |||
| @@ -47,6 +47,7 @@ dlink D-Link Corporation | |||
| 47 | dmo Data Modul AG | 47 | dmo Data Modul AG |
| 48 | ebv EBV Elektronik | 48 | ebv EBV Elektronik |
| 49 | edt Emerging Display Technologies | 49 | edt Emerging Display Technologies |
| 50 | elan Elan Microelectronic Corp. | ||
| 50 | emmicro EM Microelectronic | 51 | emmicro EM Microelectronic |
| 51 | energymicro Silicon Laboratories (formerly Energy Micro AS) | 52 | energymicro Silicon Laboratories (formerly Energy Micro AS) |
| 52 | epcos EPCOS AG | 53 | epcos EPCOS AG |
