Skip to content

Commit e2a2501

Browse files
committed
Merge branch 'next' into for-linus
Prepare input updates for 6.8 merge window.
2 parents ea37159 + 52c4e59 commit e2a2501

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+1626
-545
lines changed
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/input/adafruit,seesaw-gamepad.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Adafruit Mini I2C Gamepad with seesaw
8+
9+
maintainers:
10+
- Anshul Dalal <anshulusr@gmail.com>
11+
12+
description: |
13+
Adafruit Mini I2C Gamepad
14+
15+
+-----------------------------+
16+
| ___ |
17+
| / \ (X) |
18+
| | S | __ __ (Y) (A) |
19+
| \___/ |ST| |SE| (B) |
20+
| |
21+
+-----------------------------+
22+
23+
S -> 10-bit precision bidirectional analog joystick
24+
ST -> Start
25+
SE -> Select
26+
X, A, B, Y -> Digital action buttons
27+
28+
Datasheet: https://cdn-learn.adafruit.com/downloads/pdf/gamepad-qt.pdf
29+
Product page: https://www.adafruit.com/product/5743
30+
Arduino Driver: https://github.com/adafruit/Adafruit_Seesaw
31+
32+
properties:
33+
compatible:
34+
const: adafruit,seesaw-gamepad
35+
36+
reg:
37+
maxItems: 1
38+
39+
interrupts:
40+
maxItems: 1
41+
description:
42+
The gamepad's IRQ pin triggers a rising edge if interrupts are enabled.
43+
44+
required:
45+
- compatible
46+
- reg
47+
48+
additionalProperties: false
49+
50+
examples:
51+
- |
52+
#include <dt-bindings/interrupt-controller/irq.h>
53+
54+
i2c {
55+
#address-cells = <1>;
56+
#size-cells = <0>;
57+
58+
joystick@50 {
59+
compatible = "adafruit,seesaw-gamepad";
60+
interrupts = <18 IRQ_TYPE_EDGE_RISING>;
61+
reg = <0x50>;
62+
};
63+
};

Documentation/devicetree/bindings/input/gpio-keys.yaml

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,23 @@ patternProperties:
3131
maxItems: 1
3232

3333
interrupts:
34-
maxItems: 1
34+
oneOf:
35+
- items:
36+
- description: Optional key interrupt or wakeup interrupt
37+
- items:
38+
- description: Key interrupt
39+
- description: Wakeup interrupt
40+
41+
interrupt-names:
42+
description:
43+
Optional interrupt names, can be used to specify a separate dedicated
44+
wake-up interrupt in addition to the gpio irq
45+
oneOf:
46+
- items:
47+
- enum: [ irq, wakeup ]
48+
- items:
49+
- const: irq
50+
- const: wakeup
3551

3652
label:
3753
description: Descriptive name of the key.
@@ -97,6 +113,20 @@ patternProperties:
97113
- required:
98114
- gpios
99115

116+
allOf:
117+
- if:
118+
properties:
119+
interrupts:
120+
minItems: 2
121+
required:
122+
- interrupts
123+
then:
124+
properties:
125+
interrupt-names:
126+
minItems: 2
127+
required:
128+
- interrupt-names
129+
100130
dependencies:
101131
wakeup-event-action: [ wakeup-source ]
102132
linux,input-value: [ gpios ]
@@ -137,6 +167,15 @@ examples:
137167
linux,code = <108>;
138168
interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
139169
};
170+
171+
key-wakeup {
172+
label = "GPIO Key WAKEUP";
173+
linux,code = <143>;
174+
interrupts-extended = <&intc 2 IRQ_TYPE_EDGE_FALLING>,
175+
<&intc_wakeup 0 IRQ_TYPE_LEVEL_HIGH>;
176+
interrupt-names = "irq", "wakeup";
177+
wakeup-source;
178+
};
140179
};
141180
142181
...

Documentation/devicetree/bindings/input/gpio-mouse.txt

Lines changed: 0 additions & 32 deletions
This file was deleted.
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/input/gpio-mouse.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: GPIO attached mouse
8+
9+
description: |
10+
This simply uses standard GPIO handles to define a simple mouse connected
11+
to 5-7 GPIO lines.
12+
13+
maintainers:
14+
- Anshul Dalal <anshulusr@gmail.com>
15+
16+
properties:
17+
compatible:
18+
const: gpio-mouse
19+
20+
scan-interval-ms:
21+
maxItems: 1
22+
23+
up-gpios:
24+
maxItems: 1
25+
26+
down-gpios:
27+
maxItems: 1
28+
29+
left-gpios:
30+
maxItems: 1
31+
32+
right-gpios:
33+
maxItems: 1
34+
35+
button-left-gpios:
36+
maxItems: 1
37+
38+
button-middle-gpios:
39+
maxItems: 1
40+
41+
button-right-gpios:
42+
maxItems: 1
43+
44+
required:
45+
- compatible
46+
- scan-interval-ms
47+
- up-gpios
48+
- down-gpios
49+
- left-gpios
50+
- right-gpios
51+
52+
additionalProperties: false
53+
54+
examples:
55+
- |
56+
#include <dt-bindings/gpio/gpio.h>
57+
58+
gpio-mouse {
59+
compatible = "gpio-mouse";
60+
scan-interval-ms = <50>;
61+
up-gpios = <&gpio0 0 GPIO_ACTIVE_LOW>;
62+
down-gpios = <&gpio0 1 GPIO_ACTIVE_LOW>;
63+
left-gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
64+
right-gpios = <&gpio0 3 GPIO_ACTIVE_LOW>;
65+
button-left-gpios = <&gpio0 4 GPIO_ACTIVE_LOW>;
66+
button-middle-gpios = <&gpio0 5 GPIO_ACTIVE_LOW>;
67+
button-right-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
68+
};

Documentation/devicetree/bindings/input/iqs269a.yaml

Lines changed: 97 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,9 @@ title: Azoteq IQS269A Capacitive Touch Controller
99
maintainers:
1010
- Jeff LaBundy <jeff@labundy.com>
1111

12+
allOf:
13+
- $ref: input.yaml#
14+
1215
description: |
1316
The Azoteq IQS269A is an 8-channel capacitive touch controller that features
1417
additional Hall-effect and inductive sensing capabilities.
@@ -17,7 +20,10 @@ description: |
1720
1821
properties:
1922
compatible:
20-
const: azoteq,iqs269a
23+
enum:
24+
- azoteq,iqs269a
25+
- azoteq,iqs269a-00
26+
- azoteq,iqs269a-d0
2127

2228
reg:
2329
maxItems: 1
@@ -204,6 +210,73 @@ properties:
204210
default: 1
205211
description: Specifies the slider coordinate filter strength.
206212

213+
azoteq,touch-hold-ms:
214+
multipleOf: 256
215+
minimum: 256
216+
maximum: 65280
217+
default: 5120
218+
description:
219+
Specifies the length of time (in ms) for which the channel selected by
220+
'azoteq,gpio3-select' must be held in a state of touch in order for an
221+
approximately 60-ms pulse to be asserted on the GPIO4 pin.
222+
223+
linux,keycodes:
224+
minItems: 1
225+
maxItems: 8
226+
description: |
227+
Specifies the numeric keycodes associated with each available gesture in
228+
the following order (enter 0 for unused gestures):
229+
0: Slider 0 tap
230+
1: Slider 0 hold
231+
2: Slider 0 positive flick or swipe
232+
3: Slider 0 negative flick or swipe
233+
4: Slider 1 tap
234+
5: Slider 1 hold
235+
6: Slider 1 positive flick or swipe
236+
7: Slider 1 negative flick or swipe
237+
238+
azoteq,gesture-swipe:
239+
type: boolean
240+
description:
241+
Directs the device to interpret axial gestures as a swipe (finger remains
242+
on slider) instead of a flick (finger leaves slider).
243+
244+
azoteq,timeout-tap-ms:
245+
multipleOf: 16
246+
minimum: 0
247+
maximum: 4080
248+
default: 400
249+
description:
250+
Specifies the length of time (in ms) within which a slider touch must be
251+
released in order to be interpreted as a tap. Default and maximum values
252+
as well as step size are reduced by a factor of 4 with device version 2.
253+
254+
azoteq,timeout-swipe-ms:
255+
multipleOf: 16
256+
minimum: 0
257+
maximum: 4080
258+
default: 2000
259+
description:
260+
Specifies the length of time (in ms) within which an axial gesture must be
261+
completed in order to be interpreted as a flick or swipe. Default and max-
262+
imum values as well as step size are reduced by a factor of 4 with device
263+
version 2.
264+
265+
azoteq,thresh-swipe:
266+
$ref: /schemas/types.yaml#/definitions/uint32
267+
minimum: 0
268+
maximum: 255
269+
default: 128
270+
description:
271+
Specifies the number of points across which an axial gesture must travel
272+
in order to be interpreted as a flick or swipe.
273+
274+
dependencies:
275+
azoteq,gesture-swipe: ["linux,keycodes"]
276+
azoteq,timeout-tap-ms: ["linux,keycodes"]
277+
azoteq,timeout-swipe-ms: ["linux,keycodes"]
278+
azoteq,thresh-swipe: ["linux,keycodes"]
279+
207280
patternProperties:
208281
"^channel@[0-7]$":
209282
type: object
@@ -454,6 +527,21 @@ patternProperties:
454527

455528
additionalProperties: false
456529

530+
if:
531+
properties:
532+
compatible:
533+
contains:
534+
enum:
535+
- azoteq,iqs269a-d0
536+
then:
537+
patternProperties:
538+
"^channel@[0-7]$":
539+
properties:
540+
azoteq,slider1-select: false
541+
else:
542+
properties:
543+
azoteq,touch-hold-ms: false
544+
457545
required:
458546
- compatible
459547
- reg
@@ -484,6 +572,14 @@ examples:
484572
azoteq,hall-enable;
485573
azoteq,suspend-mode = <2>;
486574
575+
linux,keycodes = <KEY_PLAYPAUSE>,
576+
<KEY_STOPCD>,
577+
<KEY_NEXTSONG>,
578+
<KEY_PREVIOUSSONG>;
579+
580+
azoteq,timeout-tap-ms = <400>;
581+
azoteq,timeout-swipe-ms = <800>;
582+
487583
channel@0 {
488584
reg = <0x0>;
489585

Documentation/devicetree/bindings/input/mediatek,pmic-keys.yaml

Lines changed: 1 addition & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -90,26 +90,4 @@ required:
9090

9191
unevaluatedProperties: false
9292

93-
examples:
94-
- |
95-
#include <dt-bindings/input/input.h>
96-
#include <dt-bindings/interrupt-controller/arm-gic.h>
97-
98-
pmic {
99-
compatible = "mediatek,mt6397";
100-
101-
keys {
102-
compatible = "mediatek,mt6397-keys";
103-
mediatek,long-press-mode = <1>;
104-
power-off-time-sec = <0>;
105-
106-
key-power {
107-
linux,keycodes = <KEY_POWER>;
108-
wakeup-source;
109-
};
110-
111-
key-home {
112-
linux,keycodes = <KEY_VOLUMEDOWN>;
113-
};
114-
};
115-
};
93+
...

0 commit comments

Comments
 (0)