Hi Rob, On Sun, Nov 22, 2020 at 04:39:07PM -0600, Jeff LaBundy wrote: > This patch adds device tree bindings for the Azoteq IQS626A > capacitive touch controller. > > Signed-off-by: Jeff LaBundy <jeff@xxxxxxxxxxx> > --- Just wanted to check in and see if you were OK with this binding. > .../devicetree/bindings/input/iqs626a.yaml | 840 +++++++++++++++++++++ > 1 file changed, 840 insertions(+) > create mode 100644 Documentation/devicetree/bindings/input/iqs626a.yaml > > diff --git a/Documentation/devicetree/bindings/input/iqs626a.yaml b/Documentation/devicetree/bindings/input/iqs626a.yaml > new file mode 100644 > index 0000000..af2f88b > --- /dev/null > +++ b/Documentation/devicetree/bindings/input/iqs626a.yaml > @@ -0,0 +1,840 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/input/iqs626a.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Azoteq IQS626A Capacitive Touch Controller > + > +maintainers: > + - Jeff LaBundy <jeff@xxxxxxxxxxx> > + > +description: | > + The Azoteq IQS626A is a 14-channel capacitive touch controller that features > + additional Hall-effect and inductive sensing capabilities. > + > + Link to datasheet: https://www.azoteq.com/ > + > +properties: > + compatible: > + const: azoteq,iqs626a > + > + reg: > + maxItems: 1 > + > + interrupts: > + maxItems: 1 > + > + "#address-cells": > + const: 1 > + > + "#size-cells": > + const: 0 > + > + azoteq,suspend-mode: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3] > + default: 0 > + description: | > + Specifies the power mode during suspend as follows: > + 0: Automatic (same as normal runtime, i.e. suspend/resume disabled) > + 1: Low power (all sensing at a reduced reporting rate) > + 2: Ultra-low power (ULP channel proximity sensing) > + 3: Halt (no sensing) > + > + azoteq,clk-div: > + type: boolean > + description: Divides the device's core clock by a factor of 4. > + > + azoteq,ulp-enable: > + type: boolean > + description: > + Permits the device to automatically enter ultra-low-power mode from low- > + power mode. > + > + azoteq,ulp-update: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3, 4, 5, 6, 7] > + default: 3 > + description: | > + Specifies the rate at which the trackpad, generic and Hall channels are > + updated during ultra-low-power mode as follows: > + 0: 8 > + 1: 13 > + 2: 28 > + 3: 54 > + 4: 89 > + 5: 135 > + 6: 190 > + 7: 256 > + > + azoteq,ati-band-disable: > + type: boolean > + description: Disables the ATI band check. > + > + azoteq,ati-lp-only: > + type: boolean > + description: Limits automatic ATI to low-power mode. > + > + azoteq,gpio3-select: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3, 4, 5, 6, 7] > + default: 1 > + description: | > + Selects the channel or group of channels for which the GPIO3 pin > + represents touch state as follows: > + 0: None > + 1: ULP channel > + 2: Trackpad > + 3: Trackpad > + 4: Generic channel 0 > + 5: Generic channel 1 > + 6: Generic channel 2 > + 7: Hall channel > + > + azoteq,reseed-select: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3] > + default: 0 > + description: | > + Specifies the event(s) that prompt the device to reseed (i.e. reset the > + long-term average) of an associated channel as follows: > + 0: None > + 1: Proximity > + 2: Proximity or touch > + 3: Proximity, touch or deep touch > + > + azoteq,thresh-extend: > + type: boolean > + description: Multiplies all touch and deep-touch thresholds by 4. > + > + azoteq,tracking-enable: > + type: boolean > + description: > + Enables all associated channels to track their respective reference > + channels. > + > + azoteq,reseed-offset: > + type: boolean > + description: > + Applies an 8-count offset to all long-term averages upon either ATI or > + reseed events. > + > + azoteq,rate-np-ms: > + minimum: 0 > + maximum: 255 > + default: 150 > + description: Specifies the report rate (in ms) during normal-power mode. > + > + azoteq,rate-lp-ms: > + minimum: 0 > + maximum: 255 > + default: 150 > + description: Specifies the report rate (in ms) during low-power mode. > + > + azoteq,rate-ulp-ms: > + multipleOf: 16 > + minimum: 0 > + maximum: 4080 > + default: 0 > + description: Specifies the report rate (in ms) during ultra-low-power mode. > + > + azoteq,timeout-pwr-ms: > + multipleOf: 512 > + minimum: 0 > + maximum: 130560 > + default: 2560 > + description: > + Specifies the length of time (in ms) to wait for an event before moving > + from normal-power mode to low-power mode, or (if 'azoteq,ulp-enable' is > + present) from low-power mode to ultra-low-power mode. > + > + azoteq,timeout-lta-ms: > + multipleOf: 512 > + minimum: 0 > + maximum: 130560 > + default: 40960 > + description: > + Specifies the length of time (in ms) to wait before resetting the long- > + term average of all channels. Specify the maximum timeout to disable it > + altogether. > + > + touchscreen-inverted-x: true > + touchscreen-inverted-y: true > + touchscreen-swapped-x-y: true > + > +patternProperties: > + "^ulp-0|generic-[0-2]|hall$": > + type: object > + description: > + Represents a single sensing channel. A channel is active if defined and > + inactive otherwise. > + > + properties: > + azoteq,ati-exclude: > + type: boolean > + description: > + Prevents the channel from participating in an ATI event that is > + manually triggered during initialization. > + > + azoteq,reseed-disable: > + type: boolean > + description: > + Prevents the channel from being reseeded if the long-term average > + timeout (defined in 'azoteq,timeout-lta') expires. > + > + azoteq,meas-cap-decrease: > + type: boolean > + description: > + Decreases the internal measurement capacitance from 60 pF to 15 pF. > + > + azoteq,rx-inactive: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2] > + default: 0 > + description: | > + Specifies how inactive CRX pins are to be terminated as follows: > + 0: VSS > + 1: Floating > + 2: VREG (generic channels only) > + > + azoteq,linearize: > + type: boolean > + description: > + Enables linearization of the channel's counts (generic and Hall > + channels) or inverts the polarity of the channel's proximity or > + touch states (ULP channel). > + > + azoteq,dual-direction: > + type: boolean > + description: > + Specifies that the channel's long-term average is to freeze in the > + presence of either increasing or decreasing counts, thereby permit- > + ting events to be reported in either direction. > + > + azoteq,filt-disable: > + type: boolean > + description: Disables raw count filtering for the channel. > + > + azoteq,ati-mode: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3] > + description: | > + Specifies the channel's ATI mode as follows: > + 0: Disabled > + 1: Semi-partial > + 2: Partial > + 3: Full > + > + The default value is a function of the channel and the device's reset > + user interface (RUI); reference the datasheet for further information > + about the available RUI options. > + > + azoteq,ati-base: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [75, 100, 150, 200] > + description: > + Specifies the channel's ATI base. The default value is a function > + of the channel and the device's RUI. > + > + azoteq,ati-target: > + $ref: /schemas/types.yaml#/definitions/uint32 > + multipleOf: 32 > + minimum: 0 > + maximum: 2016 > + description: > + Specifies the channel's ATI target. The default value is a function > + of the channel and the device's RUI. > + > + azoteq,cct-increase: > + $ref: /schemas/types.yaml#/definitions/uint32 > + minimum: 0 > + maximum: 16 > + default: 0 > + description: > + Specifies the degree to which the channel's charge cycle time is to > + be increased, with 0 representing no increase. The maximum value is > + limited to 4 in the case of the ULP channel, and the property is un- > + available entirely in the case of the Hall channel. > + > + azoteq,proj-bias: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3] > + default: 0 > + description: | > + Specifies the bias current applied during projected-capacitance > + sensing as follows: > + 0: 2.5 uA > + 1: 5 uA > + 2: 10 uA > + 3: 20 uA > + > + This property is unavailable in the case of the Hall channel. > + > + azoteq,sense-freq: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3] > + description: | > + Specifies the channel's sensing frequency as follows (parenthesized > + numbers represent the frequency if 'azoteq,clk-div' is present): > + 0: 4 MHz (1 MHz) > + 1: 2 MHz (500 kHz) > + 2: 1 MHz (250 kHz) > + 3: 500 kHz (125 kHz) > + > + This property is unavailable in the case of the Hall channel. The > + default value is a function of the channel and the device's RUI. > + > + azoteq,ati-band-tighten: > + type: boolean > + description: > + Tightens the ATI band from 1/8 to 1/16 of the desired target (ULP and > + generic channels only). > + > + azoteq,proj-enable: > + type: boolean > + description: Enables projected-capacitance sensing (ULP channel only). > + > + azoteq,filt-str-np-cnt: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3] > + default: 0 > + description: > + Specifies the raw count filter strength during normal-power mode (ULP > + and generic channels only). > + > + azoteq,filt-str-lp-cnt: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3] > + default: 0 > + description: > + Specifies the raw count filter strength during low-power mode (ULP and > + generic channels only). > + > + azoteq,filt-str-np-lta: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3] > + default: 0 > + description: > + Specifies the long-term average filter strength during normal-power > + mode (ULP and generic channels only). > + > + azoteq,filt-str-lp-lta: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3] > + default: 0 > + description: > + Specifies the long-term average filter strength during low-power mode > + (ULP and generic channels only). > + > + azoteq,rx-enable: > + $ref: /schemas/types.yaml#/definitions/uint32-array > + minItems: 1 > + maxItems: 8 > + items: > + minimum: 0 > + maximum: 7 > + description: > + Specifies the CRX pin(s) associated with the channel. > + > + This property is unavailable in the case of the Hall channel. The > + default value is a function of the channel and the device's RUI. > + > + azoteq,tx-enable: > + $ref: /schemas/types.yaml#/definitions/uint32-array > + minItems: 1 > + maxItems: 8 > + items: > + minimum: 0 > + maximum: 7 > + description: > + Specifies the TX pin(s) associated with the channel. > + > + This property is unavailable in the case of the Hall channel. The > + default value is a function of the channel and the device's RUI. > + > + azoteq,local-cap-size: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3, 4] > + default: 0 > + description: | > + Specifies the capacitance to be added to the channel as follows: > + 0: 0 pF > + 1: 0.5 pF > + 2: 1.0 pF > + 3: 1.5 pF > + 4: 2.0 pF > + > + This property is unavailable in the case of the ULP or Hall channels. > + > + azoteq,sense-mode: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 8, 9, 12, 14, 15] > + description: | > + Specifies the channel's sensing mode as follows: > + 0: Self capacitance > + 1: Projected capacitance > + 8: Self inductance > + 9: Mutual inductance > + 12: External > + 14: Hall effect > + 15: Temperature > + > + This property is unavailable in the case of the ULP or Hall channels. > + The default value is a function of the channel and the device's RUI. > + > + azoteq,tx-freq: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3] > + default: 0 > + description: | > + Specifies the inductive sensing excitation frequency as follows > + (parenthesized numbers represent the frequency if 'azoteq,clk-div' > + is present): > + 0: 16 MHz (4 MHz) > + 1: 8 MHz (2 MHz) > + 2: 4 MHz (1 MHz) > + 3: 2 MHz (500 kHz) > + > + This property is unavailable in the case of the ULP or Hall channels. > + > + azoteq,invert-enable: > + type: boolean > + description: > + Inverts the polarity of the states reported for proximity, touch and > + deep-touch events relative to their respective thresholds (generic > + channels only). > + > + azoteq,comp-disable: > + type: boolean > + description: > + Disables compensation for the channel (generic channels only). > + > + azoteq,static-enable: > + type: boolean > + description: > + Enables the static front-end for the channel (generic channels only). > + > + azoteq,assoc-select: > + $ref: /schemas/types.yaml#/definitions/string-array > + minItems: 1 > + maxItems: 6 > + items: > + enum: > + - ulp-0 > + - trackpad-3x2 > + - trackpad-3x3 > + - generic-0 > + - generic-1 > + - generic-2 > + - hall > + description: > + Specifies the associated channels for which the channel serves as a > + reference channel. By default, no channels are selected. This prop- > + erty is only available for the generic channels. > + > + azoteq,assoc-weight: > + $ref: /schemas/types.yaml#/definitions/uint32 > + minimum: 0 > + maximum: 255 > + default: 0 > + description: > + Specifies the channel's impact weight if it acts as an associated > + channel (0 = 0% impact, 255 = 200% impact). This property is only > + available for the generic channels. > + > + patternProperties: > + "^event-(prox|touch|deep)(-alt)?$": > + type: object > + description: > + Represents a proximity, touch or deep-touch event reported by the > + channel in response to a decrease in counts. Node names suffixed with > + '-alt' instead correspond to an increase in counts. > + > + By default, the long-term average tracks an increase in counts such > + that only events corresponding to a decrease in counts are reported > + (refer to the datasheet for more information). > + > + Specify 'azoteq,dual-direction' to freeze the long-term average when > + the counts increase or decrease such that events of either direction > + can be reported. Alternatively, specify 'azoteq,invert-enable' to in- > + vert the polarity of the states reported by the channel. > + > + Complementary events (e.g. event-touch and event-touch-alt) can both > + be present and specify different key or switch codes, but not differ- > + ent thresholds or hysteresis (if applicable). > + > + Proximity events are unavailable in the case of the Hall channel, and > + deep-touch events are only available for the generic channels. Unless > + otherwise specified, default values are a function of the channel and > + the device's RUI. > + > + properties: > + azoteq,thresh: > + $ref: /schemas/types.yaml#/definitions/uint32 > + minimum: 0 > + maximum: 255 > + description: Specifies the threshold for the event. > + > + azoteq,hyst: > + $ref: /schemas/types.yaml#/definitions/uint32 > + minimum: 0 > + maximum: 15 > + description: > + Specifies the hysteresis for the event (touch and deep-touch > + events only). > + > + linux,code: > + $ref: /schemas/types.yaml#/definitions/uint32 > + description: Numeric key or switch code associated with the event. > + > + linux,input-type: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [1, 5] > + description: > + Specifies whether the event is to be interpreted as a key (1) or > + a switch (5). By default, Hall-channel events are interpreted as > + switches and all others are interpreted as keys. > + > + dependencies: > + linux,input-type: ["linux,code"] > + > + additionalProperties: false > + > + dependencies: > + azoteq,assoc-weight: ["azoteq,assoc-select"] > + > + additionalProperties: false > + > + "^trackpad-3x[2-3]$": > + type: object > + description: > + Represents all channels associated with the trackpad. The channels are > + collectively active if the trackpad is defined and inactive otherwise. > + > + properties: > + azoteq,ati-exclude: > + type: boolean > + description: > + Prevents the trackpad channels from participating in an ATI event > + that is manually triggered during initialization. > + > + azoteq,reseed-disable: > + type: boolean > + description: > + Prevents the trackpad channels from being reseeded if the long-term > + average timeout (defined in 'azoteq,timeout-lta') expires. > + > + azoteq,meas-cap-decrease: > + type: boolean > + description: > + Decreases the internal measurement capacitance from 60 pF to 15 pF. > + > + azoteq,rx-inactive: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1] > + default: 0 > + description: | > + Specifies how inactive CRX pins are to be terminated as follows: > + 0: VSS > + 1: Floating > + > + azoteq,linearize: > + type: boolean > + description: Inverts the polarity of the trackpad's touch state. > + > + azoteq,dual-direction: > + type: boolean > + description: > + Specifies that the trackpad's long-term averages are to freeze in > + the presence of either increasing or decreasing counts, thereby > + permitting events to be reported in either direction. > + > + azoteq,filt-disable: > + type: boolean > + description: Disables raw count filtering for the trackpad channels. > + > + azoteq,ati-mode: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3] > + default: 0 > + description: | > + Specifies the trackpad's ATI mode as follows: > + 0: Disabled > + 1: Semi-partial > + 2: Partial > + 3: Full > + > + azoteq,ati-base: > + $ref: /schemas/types.yaml#/definitions/uint32-array > + minItems: 6 > + maxItems: 9 > + items: > + minimum: 45 > + maximum: 300 > + default: [45, 45, 45, 45, 45, 45, 45, 45, 45] > + description: Specifies each individual trackpad channel's ATI base. > + > + azoteq,ati-target: > + $ref: /schemas/types.yaml#/definitions/uint32 > + multipleOf: 32 > + minimum: 0 > + maximum: 2016 > + default: 0 > + description: Specifies the trackpad's ATI target. > + > + azoteq,cct-increase: > + $ref: /schemas/types.yaml#/definitions/uint32 > + minimum: 0 > + maximum: 4 > + default: 0 > + description: > + Specifies the degree to which the trackpad's charge cycle time is to > + be increased, with 0 representing no increase. > + > + azoteq,proj-bias: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3] > + default: 0 > + description: | > + Specifies the bias current applied during projected-capacitance > + sensing as follows: > + 0: 2.5 uA > + 1: 5 uA > + 2: 10 uA > + 3: 20 uA > + > + azoteq,sense-freq: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3] > + default: 0 > + description: | > + Specifies the trackpad's sensing frequency as follows (parenthesized > + numbers represent the frequency if 'azoteq,clk-div' is present): > + 0: 4 MHz (1 MHz) > + 1: 2 MHz (500 kHz) > + 2: 1 MHz (250 kHz) > + 3: 500 kHz (125 kHz) > + > + azoteq,ati-band-tighten: > + type: boolean > + description: > + Tightens the ATI band from 1/8 to 1/16 of the desired target. > + > + azoteq,thresh: > + $ref: /schemas/types.yaml#/definitions/uint32-array > + minItems: 6 > + maxItems: 9 > + items: > + minimum: 0 > + maximum: 255 > + default: [0, 0, 0, 0, 0, 0, 0, 0, 0] > + description: > + Specifies each individual trackpad channel's touch threshold. > + > + azoteq,hyst: > + $ref: /schemas/types.yaml#/definitions/uint32 > + minimum: 0 > + maximum: 15 > + default: 0 > + description: Specifies the trackpad's touch hysteresis. > + > + azoteq,lta-update: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3, 4, 5, 6, 7] > + default: 0 > + description: | > + Specifies the update rate of the trackpad's long-term average during > + ultra-low-power mode as follows: > + 0: 2 > + 1: 4 > + 2: 8 > + 3: 16 > + 4: 32 > + 5: 64 > + 6: 128 > + 7: 255 > + > + azoteq,filt-str-trackpad: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3] > + default: 0 > + description: Specifies the trackpad coordinate filter strength. > + > + azoteq,filt-str-np-cnt: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3] > + default: 0 > + description: > + Specifies the raw count filter strength during normal-power mode. > + > + azoteq,filt-str-lp-cnt: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3] > + default: 0 > + description: > + Specifies the raw count filter strength during low-power mode. > + > + linux,keycodes: > + $ref: /schemas/types.yaml#/definitions/uint32-array > + minItems: 1 > + maxItems: 6 > + description: | > + Specifies the numeric keycodes associated with each available gesture > + in the following order (enter 0 for unused gestures): > + 0: Positive flick or swipe in X direction > + 1: Negative flick or swipe in X direction > + 2: Positive flick or swipe in Y direction > + 3: Negative flick or swipe in Y direction > + 4: Tap > + 5: Hold > + > + azoteq,gesture-swipe: > + type: boolean > + description: > + Directs the device to interpret axial gestures as a swipe (finger > + remains on trackpad) instead of a flick (finger leaves trackpad). > + > + azoteq,timeout-tap-ms: > + multipleOf: 16 > + minimum: 0 > + maximum: 4080 > + default: 0 > + description: > + Specifies the length of time (in ms) within which a trackpad touch > + must be released in order to be interpreted as a tap. > + > + azoteq,timeout-swipe-ms: > + multipleOf: 16 > + minimum: 0 > + maximum: 4080 > + default: 0 > + description: > + Specifies the length of time (in ms) within which an axial gesture > + must be completed in order to be interpreted as a flick or swipe. > + > + azoteq,thresh-swipe: > + $ref: /schemas/types.yaml#/definitions/uint32 > + minimum: 0 > + maximum: 255 > + default: 0 > + description: > + Specifies the number of points across which an axial gesture must > + travel in order to be interpreted as a flick or swipe. > + > + dependencies: > + azoteq,gesture-swipe: ["linux,keycodes"] > + azoteq,timeout-tap-ms: ["linux,keycodes"] > + azoteq,timeout-swipe-ms: ["linux,keycodes"] > + azoteq,thresh-swipe: ["linux,keycodes"] > + > + additionalProperties: false > + > +required: > + - compatible > + - reg > + - interrupts > + - "#address-cells" > + - "#size-cells" > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/input/input.h> > + #include <dt-bindings/interrupt-controller/irq.h> > + > + i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + > + iqs626a@44 { > + #address-cells = <1>; > + #size-cells = <0>; > + > + compatible = "azoteq,iqs626a"; > + reg = <0x44>; > + interrupt-parent = <&gpio>; > + interrupts = <17 IRQ_TYPE_LEVEL_LOW>; > + > + azoteq,rate-np-ms = <16>; > + azoteq,rate-lp-ms = <160>; > + > + azoteq,timeout-pwr-ms = <2560>; > + azoteq,timeout-lta-ms = <32768>; > + > + ulp-0 { > + azoteq,meas-cap-decrease; > + > + azoteq,ati-base = <75>; > + azoteq,ati-target = <1024>; > + > + azoteq,rx-enable = <2>, <3>, <4>, > + <5>, <6>, <7>; > + > + event-prox { > + linux,code = <KEY_POWER>; > + }; > + }; > + > + trackpad-3x3 { > + azoteq,filt-str-np-cnt = <1>; > + azoteq,filt-str-lp-cnt = <1>; > + > + azoteq,hyst = <4>; > + azoteq,thresh = <35>, <40>, <40>, > + <38>, <33>, <38>, > + <35>, <35>, <35>; > + > + azoteq,ati-mode = <3>; > + azoteq,ati-base = <195>, <195>, <195>, > + <195>, <195>, <195>, > + <195>, <195>, <195>; > + azoteq,ati-target = <512>; > + > + azoteq,proj-bias = <1>; > + azoteq,sense-freq = <2>; > + > + linux,keycodes = <KEY_VOLUMEUP>, > + <KEY_VOLUMEDOWN>, > + <KEY_NEXTSONG>, > + <KEY_PREVIOUSSONG>, > + <KEY_PLAYPAUSE>, > + <KEY_STOPCD>; > + > + azoteq,gesture-swipe; > + azoteq,timeout-swipe-ms = <800>; > + azoteq,timeout-tap-ms = <400>; > + azoteq,thresh-swipe = <40>; > + }; > + > + /* > + * Preserve the default register settings for > + * the temperature-tracking channel leveraged > + * by reset user interface (RUI) 1. > + * > + * Scalar properties (e.g. ATI mode) are left > + * untouched by simply omitting them; boolean > + * properties must be specified explicitly as > + * needed. > + */ > + generic-2 { > + azoteq,reseed-disable; > + azoteq,meas-cap-decrease; > + azoteq,dual-direction; > + azoteq,comp-disable; > + azoteq,static-enable; > + }; > + > + hall { > + azoteq,reseed-disable; > + azoteq,meas-cap-decrease; > + > + event-touch { > + linux,code = <SW_LID>; > + }; > + }; > + }; > + }; > + > +... > -- > 2.7.4 > Kind regards, Jeff LaBundy