Lines Matching +full:slider +full:- +full:0
1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Jeff LaBundy <jeff@labundy.com>
13 - $ref: input.yaml#
16 The Azoteq IQS269A is an 8-channel capacitive touch controller that features
17 additional Hall-effect and inductive sensing capabilities.
24 - azoteq,iqs269a
25 - azoteq,iqs269a-00
26 - azoteq,iqs269a-d0
34 "#address-cells":
37 "#size-cells":
38 const: 0
40 azoteq,hall-enable:
43 Enables Hall-effect sensing on channels 6 and 7. In this case, keycodes
45 interpreted as switch codes. Refer to the datasheet for requirements im-
46 posed on channels 6 and 7 by Hall-effect sensing.
48 azoteq,suspend-mode:
50 enum: [0, 1, 2, 3]
51 default: 0
54 0: Automatic (same as normal runtime, i.e. suspend/resume disabled)
56 2: Ultra-low power (channel 0 proximity sensing)
59 azoteq,clk-div:
63 azoteq,ulp-update:
65 minimum: 0
68 description: Specifies the ultra-low-power mode update rate.
70 azoteq,reseed-offset:
73 Applies an 8-count offset to all long-term averages upon either ATI or
76 azoteq,filt-str-lp-lta:
78 enum: [0, 1, 2, 3]
79 default: 0
81 Specifies the long-term average filter strength during low-power mode.
83 azoteq,filt-str-lp-cnt:
85 enum: [0, 1, 2, 3]
86 default: 0
88 Specifies the raw count filter strength during low-power mode.
90 azoteq,filt-str-np-lta:
92 enum: [0, 1, 2, 3]
93 default: 0
95 Specifies the long-term average filter strength during normal-power mode.
97 azoteq,filt-str-np-cnt:
99 enum: [0, 1, 2, 3]
100 default: 0
102 Specifies the raw count filter strength during normal-power mode.
104 azoteq,rate-np-ms:
105 minimum: 0
108 description: Specifies the report rate (in ms) during normal-power mode.
110 azoteq,rate-lp-ms:
111 minimum: 0
114 description: Specifies the report rate (in ms) during low-power mode.
116 azoteq,rate-ulp-ms:
118 minimum: 0
121 description: Specifies the report rate (in ms) during ultra-low-power mode.
123 azoteq,timeout-pwr-ms:
125 minimum: 0
129 Specifies the length of time (in ms) to wait for an event during normal-
130 power mode before transitioning to low-power mode.
132 azoteq,timeout-lta-ms:
134 minimum: 0
138 Specifies the length of time (in ms) to wait before resetting the long-
142 azoteq,ati-band-disable:
146 azoteq,ati-lp-only:
148 description: Limits automatic ATI to low-power mode.
150 azoteq,ati-band-tighten:
154 azoteq,filt-disable:
158 azoteq,gpio3-select:
160 minimum: 0
162 default: 0
166 azoteq,dual-direction:
169 Specifies that long-term averages are to freeze in the presence of either
173 azoteq,tx-freq:
175 enum: [0, 1, 2, 3]
176 default: 0
178 Specifies the inductive sensing excitation frequency as follows (paren-
179 thesized numbers represent the frequency if 'azoteq,clk-div' is present):
180 0: 16 MHz (4 MHz)
185 azoteq,global-cap-increase:
189 azoteq,reseed-select:
191 enum: [0, 1, 2, 3]
192 default: 0
195 long-term average) of an associated channel as follows:
196 0: None
201 azoteq,tracking-enable:
207 azoteq,filt-str-slider:
209 enum: [0, 1, 2, 3]
211 description: Specifies the slider coordinate filter strength.
213 azoteq,touch-hold-ms:
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.
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
238 azoteq,gesture-swipe:
242 on slider) instead of a flick (finger leaves slider).
244 azoteq,timeout-tap-ms:
246 minimum: 0
250 Specifies the length of time (in ms) within which a slider touch must be
254 azoteq,timeout-swipe-ms:
256 minimum: 0
261 completed in order to be interpreted as a flick or swipe. Default and max-
265 azoteq,thresh-swipe:
267 minimum: 0
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"]
281 "^channel@[0-7]$":
289 minimum: 0
293 azoteq,reseed-disable:
296 Prevents the channel from being reseeded if the long-term average
297 timeout (defined in 'azoteq,timeout-lta') expires.
299 azoteq,blocking-enable:
303 azoteq,slider0-select:
305 description: Specifies that the channel participates in slider 0.
307 azoteq,slider1-select:
309 description: Specifies that the channel participates in slider 1.
311 azoteq,rx-enable:
312 $ref: /schemas/types.yaml#/definitions/uint32-array
316 minimum: 0
321 for channel 0).
323 azoteq,tx-enable:
324 $ref: /schemas/types.yaml#/definitions/uint32-array
328 minimum: 0
330 default: [0, 1, 2, 3, 4, 5, 6, 7]
333 azoteq,meas-cap-decrease:
338 azoteq,rx-float-inactive:
342 azoteq,local-cap-size:
344 enum: [0, 1, 2]
345 default: 0
348 0: None
349 1: Global adder (based on 'azoteq,global-cap-increase')
352 azoteq,invert-enable:
356 deep-touch events relative to their respective thresholds.
358 azoteq,proj-bias:
360 enum: [0, 1, 2, 3]
363 Specifies the bias current applied during projected-capacitance
365 0: 2.5 uA
370 azoteq,sense-mode:
372 enum: [0, 1, 9, 14, 15]
373 default: 0
376 0: Self capacitance
382 azoteq,sense-freq:
384 enum: [0, 1, 2, 3]
388 numbers represent the frequency if 'azoteq,clk-div' is present):
389 0: 4 MHz (1 MHz)
394 azoteq,static-enable:
396 description: Enables the static front-end for the channel.
398 azoteq,ati-mode:
400 enum: [0, 1, 2, 3]
404 0: Disabled
405 1: Semi-partial
409 azoteq,ati-base:
415 azoteq,ati-target:
418 minimum: 0
423 azoteq,assoc-select:
424 $ref: /schemas/types.yaml#/definitions/uint32-array
428 minimum: 0
434 azoteq,assoc-weight:
436 minimum: 0
438 default: 0
441 channel (0 = 0% impact, 255 = 200% impact).
444 "^event-prox(-alt)?$":
449 a decrease in counts. Node names suffixed with '-alt' instead corre-
452 By default, the long-term average tracks an increase in counts such
456 Specify 'azoteq,dual-direction' to freeze the long-term average when
458 can be reported. Alternatively, specify 'azoteq,invert-enable' to in-
461 Complementary events (e.g. event-touch and event-touch-alt) can both
462 be present and specify different key or switch codes, but not differ-
468 minimum: 0
477 "^event-touch(-alt)?$":
485 minimum: 0
492 minimum: 0
501 "^event-deep(-alt)?$":
504 description: Represents a deep-touch event reported by the channel.
509 minimum: 0
516 minimum: 0
518 default: 0
526 - reg
535 - azoteq,iqs269a-d0
538 "^channel@[0-7]$":
540 azoteq,slider1-select: false
543 azoteq,touch-hold-ms: false
546 - compatible
547 - reg
548 - interrupts
549 - "#address-cells"
550 - "#size-cells"
555 - |
556 #include <dt-bindings/input/input.h>
557 #include <dt-bindings/interrupt-controller/irq.h>
560 #address-cells = <1>;
561 #size-cells = <0>;
564 #address-cells = <1>;
565 #size-cells = <0>;
568 reg = <0x44>;
569 interrupt-parent = <&gpio>;
572 azoteq,hall-enable;
573 azoteq,suspend-mode = <2>;
580 azoteq,timeout-tap-ms = <400>;
581 azoteq,timeout-swipe-ms = <800>;
583 channel@0 {
584 reg = <0x0>;
586 event-prox {
592 reg = <0x1>;
593 azoteq,slider0-select;
597 reg = <0x2>;
598 azoteq,slider0-select;
602 reg = <0x3>;
603 azoteq,slider0-select;
607 reg = <0x4>;
608 azoteq,slider0-select;
612 reg = <0x5>;
613 azoteq,slider0-select;
617 reg = <0x6>;
618 azoteq,invert-enable;
619 azoteq,static-enable;
620 azoteq,reseed-disable;
621 azoteq,rx-enable = <0>;
622 azoteq,sense-freq = <0x0>;
623 azoteq,sense-mode = <0xE>;
624 azoteq,ati-mode = <0x0>;
625 azoteq,ati-base = <200>;
626 azoteq,ati-target = <320>;
630 reg = <0x7>;
631 azoteq,invert-enable;
632 azoteq,static-enable;
633 azoteq,reseed-disable;
634 azoteq,rx-enable = <0>, <6>;
635 azoteq,sense-freq = <0x0>;
636 azoteq,sense-mode = <0xE>;
637 azoteq,ati-mode = <0x3>;
638 azoteq,ati-base = <200>;
639 azoteq,ati-target = <320>;
641 event-touch {