Lines Matching +full:2 +full:- +full:channel
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 The Azoteq IQS626A is a 14-channel capacitive touch controller that features
14 additional Hall-effect and inductive sensing capabilities.
19 - $ref: touchscreen/touchscreen.yaml#
31 "#address-cells":
34 "#size-cells":
37 azoteq,suspend-mode:
39 enum: [0, 1, 2, 3]
45 2: Ultra-low power (ULP channel proximity sensing)
48 azoteq,clk-div:
52 azoteq,ulp-enable:
55 Permits the device to automatically enter ultra-low-power mode from low-
58 azoteq,ulp-update:
60 enum: [0, 1, 2, 3, 4, 5, 6, 7]
64 updated during ultra-low-power mode as follows:
67 2: 28
74 azoteq,ati-band-disable:
78 azoteq,ati-lp-only:
80 description: Limits automatic ATI to low-power mode.
82 azoteq,gpio3-select:
84 enum: [0, 1, 2, 3, 4, 5, 6, 7]
87 Selects the channel or group of channels for which the GPIO3 pin
90 1: ULP channel
91 2: Trackpad
93 4: Generic channel 0
94 5: Generic channel 1
95 6: Generic channel 2
96 7: Hall channel
98 azoteq,reseed-select:
100 enum: [0, 1, 2, 3]
104 long-term average) of an associated channel as follows:
107 2: Proximity or touch
110 azoteq,thresh-extend:
112 description: Multiplies all touch and deep-touch thresholds by 4.
114 azoteq,tracking-enable:
120 azoteq,reseed-offset:
123 Applies an 8-count offset to all long-term averages upon either ATI or
126 azoteq,rate-np-ms:
130 description: Specifies the report rate (in ms) during normal-power mode.
132 azoteq,rate-lp-ms:
136 description: Specifies the report rate (in ms) during low-power mode.
138 azoteq,rate-ulp-ms:
143 description: Specifies the report rate (in ms) during ultra-low-power mode.
145 azoteq,timeout-pwr-ms:
152 from normal-power mode to low-power mode, or (if 'azoteq,ulp-enable' is
153 present) from low-power mode to ultra-low-power mode.
155 azoteq,timeout-lta-ms:
161 Specifies the length of time (in ms) to wait before resetting the long-
165 touchscreen-inverted-x: true
166 touchscreen-inverted-y: true
167 touchscreen-swapped-x-y: true
170 "^ulp-0|generic-[0-2]|hall$":
173 Represents a single sensing channel. A channel is active if defined and
177 azoteq,ati-exclude:
180 Prevents the channel from participating in an ATI event that is
183 azoteq,reseed-disable:
186 Prevents the channel from being reseeded if the long-term average
187 timeout (defined in 'azoteq,timeout-lta') expires.
189 azoteq,meas-cap-decrease:
194 azoteq,rx-inactive:
196 enum: [0, 1, 2]
202 2: VREG (generic channels only)
207 Enables linearization of the channel's counts (generic and Hall
208 channels) or inverts the polarity of the channel's proximity or
209 touch states (ULP channel).
211 azoteq,dual-direction:
214 Specifies that the channel's long-term average is to freeze in the
215 presence of either increasing or decreasing counts, thereby permit-
218 azoteq,filt-disable:
220 description: Disables raw count filtering for the channel.
222 azoteq,ati-mode:
224 enum: [0, 1, 2, 3]
226 Specifies the channel's ATI mode as follows:
228 1: Semi-partial
229 2: Partial
232 The default value is a function of the channel and the device's reset
236 azoteq,ati-base:
240 Specifies the channel's ATI base. The default value is a function
241 of the channel and the device's RUI.
243 azoteq,ati-target:
249 Specifies the channel's ATI target. The default value is a function
250 of the channel and the device's RUI.
252 azoteq,cct-increase:
258 Specifies the degree to which the channel's charge cycle time is to
260 limited to 4 in the case of the ULP channel, and the property is un-
261 available entirely in the case of the Hall channel.
263 azoteq,proj-bias:
265 enum: [0, 1, 2, 3]
268 Specifies the bias current applied during projected-capacitance
272 2: 10 uA
275 This property is unavailable in the case of the Hall channel.
277 azoteq,sense-freq:
279 enum: [0, 1, 2, 3]
281 Specifies the channel's sensing frequency as follows (parenthesized
282 numbers represent the frequency if 'azoteq,clk-div' is present):
284 1: 2 MHz (500 kHz)
285 2: 1 MHz (250 kHz)
288 This property is unavailable in the case of the Hall channel. The
289 default value is a function of the channel and the device's RUI.
291 azoteq,ati-band-tighten:
297 azoteq,proj-enable:
299 description: Enables projected-capacitance sensing (ULP channel only).
301 azoteq,filt-str-np-cnt:
303 enum: [0, 1, 2, 3]
306 Specifies the raw count filter strength during normal-power mode (ULP
309 azoteq,filt-str-lp-cnt:
311 enum: [0, 1, 2, 3]
314 Specifies the raw count filter strength during low-power mode (ULP and
317 azoteq,filt-str-np-lta:
319 enum: [0, 1, 2, 3]
322 Specifies the long-term average filter strength during normal-power
325 azoteq,filt-str-lp-lta:
327 enum: [0, 1, 2, 3]
330 Specifies the long-term average filter strength during low-power mode
333 azoteq,rx-enable:
334 $ref: /schemas/types.yaml#/definitions/uint32-array
341 Specifies the CRX pin(s) associated with the channel.
343 This property is unavailable in the case of the Hall channel. The
344 default value is a function of the channel and the device's RUI.
346 azoteq,tx-enable:
347 $ref: /schemas/types.yaml#/definitions/uint32-array
354 Specifies the TX pin(s) associated with the channel.
356 This property is unavailable in the case of the Hall channel. The
357 default value is a function of the channel and the device's RUI.
359 azoteq,local-cap-size:
361 enum: [0, 1, 2, 3, 4]
364 Specifies the capacitance to be added to the channel as follows:
367 2: 1.0 pF
373 azoteq,sense-mode:
377 Specifies the channel's sensing mode as follows:
387 The default value is a function of the channel and the device's RUI.
389 azoteq,tx-freq:
391 enum: [0, 1, 2, 3]
395 (parenthesized numbers represent the frequency if 'azoteq,clk-div'
398 1: 8 MHz (2 MHz)
399 2: 4 MHz (1 MHz)
400 3: 2 MHz (500 kHz)
404 azoteq,invert-enable:
408 deep-touch events relative to their respective thresholds (generic
411 azoteq,comp-disable:
414 Disables compensation for the channel (generic channels only).
416 azoteq,static-enable:
419 Enables the static front-end for the channel (generic channels only).
421 azoteq,assoc-select:
422 $ref: /schemas/types.yaml#/definitions/string-array
427 - ulp-0
428 - trackpad-3x2
429 - trackpad-3x3
430 - generic-0
431 - generic-1
432 - generic-2
433 - hall
435 Specifies the associated channels for which the channel serves as a
436 reference channel. By default, no channels are selected. This prop-
439 azoteq,assoc-weight:
445 Specifies the channel's impact weight if it acts as an associated
446 channel (0 = 0% impact, 255 = 200% impact). This property is only
450 "^event-(prox|touch|deep)(-alt)?$":
454 Represents a proximity, touch or deep-touch event reported by the
455 channel in response to a decrease in counts. Node names suffixed with
456 '-alt' instead correspond to an increase in counts.
458 By default, the long-term average tracks an increase in counts such
462 Specify 'azoteq,dual-direction' to freeze the long-term average when
464 can be reported. Alternatively, specify 'azoteq,invert-enable' to in-
465 vert the polarity of the states reported by the channel.
467 Complementary events (e.g. event-touch and event-touch-alt) can both
468 be present and specify different key or switch codes, but not differ-
471 Proximity events are unavailable in the case of the Hall channel, and
472 deep-touch events are only available for the generic channels. Unless
473 otherwise specified, default values are a function of the channel and
488 Specifies the hysteresis for the event (touch and deep-touch
493 linux,input-type:
497 a switch (5). By default, Hall-channel events are interpreted as
503 azoteq,assoc-weight: ["azoteq,assoc-select"]
507 "^trackpad-3x[2-3]$":
515 azoteq,ati-exclude:
521 azoteq,reseed-disable:
524 Prevents the trackpad channels from being reseeded if the long-term
525 average timeout (defined in 'azoteq,timeout-lta') expires.
527 azoteq,meas-cap-decrease:
532 azoteq,rx-inactive:
545 azoteq,dual-direction:
548 Specifies that the trackpad's long-term averages are to freeze in
552 azoteq,filt-disable:
556 azoteq,ati-mode:
558 enum: [0, 1, 2, 3]
563 1: Semi-partial
564 2: Partial
567 azoteq,ati-target:
575 azoteq,cct-increase:
584 azoteq,proj-bias:
586 enum: [0, 1, 2, 3]
589 Specifies the bias current applied during projected-capacitance
593 2: 10 uA
596 azoteq,sense-freq:
598 enum: [0, 1, 2, 3]
602 numbers represent the frequency if 'azoteq,clk-div' is present):
604 1: 2 MHz (500 kHz)
605 2: 1 MHz (250 kHz)
608 azoteq,ati-band-tighten:
620 azoteq,lta-update:
622 enum: [0, 1, 2, 3, 4, 5, 6, 7]
625 Specifies the update rate of the trackpad's long-term average during
626 ultra-low-power mode as follows:
627 0: 2
629 2: 8
636 azoteq,filt-str-trackpad:
638 enum: [0, 1, 2, 3]
642 azoteq,filt-str-np-cnt:
644 enum: [0, 1, 2, 3]
647 Specifies the raw count filter strength during normal-power mode.
649 azoteq,filt-str-lp-cnt:
651 enum: [0, 1, 2, 3]
654 Specifies the raw count filter strength during low-power mode.
664 2: Positive flick or swipe in Y direction
669 azoteq,gesture-swipe:
675 azoteq,timeout-tap-ms:
684 azoteq,timeout-swipe-ms:
693 azoteq,thresh-swipe:
703 "^channel-[0-8]$":
705 description: Represents a single trackpad channel.
713 description: Specifies the threshold for the channel.
715 azoteq,ati-base:
720 description: Specifies the channel's ATI base.
725 azoteq,gesture-swipe: ["linux,keycodes"]
726 azoteq,timeout-tap-ms: ["linux,keycodes"]
727 azoteq,timeout-swipe-ms: ["linux,keycodes"]
728 azoteq,thresh-swipe: ["linux,keycodes"]
733 - compatible
734 - reg
735 - interrupts
736 - "#address-cells"
737 - "#size-cells"
742 - |
743 #include <dt-bindings/input/input.h>
744 #include <dt-bindings/interrupt-controller/irq.h>
747 #address-cells = <1>;
748 #size-cells = <0>;
751 #address-cells = <1>;
752 #size-cells = <0>;
756 interrupt-parent = <&gpio>;
759 azoteq,rate-np-ms = <16>;
760 azoteq,rate-lp-ms = <160>;
762 azoteq,timeout-pwr-ms = <2560>;
763 azoteq,timeout-lta-ms = <32768>;
765 ulp-0 {
766 azoteq,meas-cap-decrease;
768 azoteq,ati-base = <75>;
769 azoteq,ati-target = <1024>;
771 azoteq,rx-enable = <2>, <3>, <4>,
774 event-prox {
779 trackpad-3x3 {
780 azoteq,filt-str-np-cnt = <1>;
781 azoteq,filt-str-lp-cnt = <1>;
785 azoteq,ati-mode = <3>;
786 azoteq,ati-target = <512>;
788 azoteq,proj-bias = <1>;
789 azoteq,sense-freq = <2>;
798 azoteq,gesture-swipe;
799 azoteq,timeout-swipe-ms = <800>;
800 azoteq,timeout-tap-ms = <400>;
801 azoteq,thresh-swipe = <40>;
803 channel-0 {
805 azoteq,ati-base = <195>;
808 channel-1 {
810 azoteq,ati-base = <195>;
813 channel-2 {
815 azoteq,ati-base = <195>;
818 channel-3 {
820 azoteq,ati-base = <195>;
823 channel-4 {
825 azoteq,ati-base = <195>;
828 channel-5 {
830 azoteq,ati-base = <195>;
833 channel-6 {
835 azoteq,ati-base = <195>;
838 channel-7 {
840 azoteq,ati-base = <195>;
843 channel-8 {
845 azoteq,ati-base = <195>;
851 * the temperature-tracking channel leveraged
859 generic-2 {
860 azoteq,reseed-disable;
861 azoteq,meas-cap-decrease;
862 azoteq,dual-direction;
863 azoteq,comp-disable;
864 azoteq,static-enable;
868 azoteq,reseed-disable;
869 azoteq,meas-cap-decrease;
871 event-touch {