1*2eb4d8dcSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2*2eb4d8dcSEmmanuel Vadot%YAML 1.2 3*2eb4d8dcSEmmanuel Vadot--- 4*2eb4d8dcSEmmanuel Vadot$id: http://devicetree.org/schemas/input/iqs626a.yaml# 5*2eb4d8dcSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*2eb4d8dcSEmmanuel Vadot 7*2eb4d8dcSEmmanuel Vadottitle: Azoteq IQS626A Capacitive Touch Controller 8*2eb4d8dcSEmmanuel Vadot 9*2eb4d8dcSEmmanuel Vadotmaintainers: 10*2eb4d8dcSEmmanuel Vadot - Jeff LaBundy <jeff@labundy.com> 11*2eb4d8dcSEmmanuel Vadot 12*2eb4d8dcSEmmanuel Vadotdescription: | 13*2eb4d8dcSEmmanuel Vadot The Azoteq IQS626A is a 14-channel capacitive touch controller that features 14*2eb4d8dcSEmmanuel Vadot additional Hall-effect and inductive sensing capabilities. 15*2eb4d8dcSEmmanuel Vadot 16*2eb4d8dcSEmmanuel Vadot Link to datasheet: https://www.azoteq.com/ 17*2eb4d8dcSEmmanuel Vadot 18*2eb4d8dcSEmmanuel VadotallOf: 19*2eb4d8dcSEmmanuel Vadot - $ref: touchscreen/touchscreen.yaml# 20*2eb4d8dcSEmmanuel Vadot 21*2eb4d8dcSEmmanuel Vadotproperties: 22*2eb4d8dcSEmmanuel Vadot compatible: 23*2eb4d8dcSEmmanuel Vadot const: azoteq,iqs626a 24*2eb4d8dcSEmmanuel Vadot 25*2eb4d8dcSEmmanuel Vadot reg: 26*2eb4d8dcSEmmanuel Vadot maxItems: 1 27*2eb4d8dcSEmmanuel Vadot 28*2eb4d8dcSEmmanuel Vadot interrupts: 29*2eb4d8dcSEmmanuel Vadot maxItems: 1 30*2eb4d8dcSEmmanuel Vadot 31*2eb4d8dcSEmmanuel Vadot "#address-cells": 32*2eb4d8dcSEmmanuel Vadot const: 1 33*2eb4d8dcSEmmanuel Vadot 34*2eb4d8dcSEmmanuel Vadot "#size-cells": 35*2eb4d8dcSEmmanuel Vadot const: 0 36*2eb4d8dcSEmmanuel Vadot 37*2eb4d8dcSEmmanuel Vadot azoteq,suspend-mode: 38*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 39*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3] 40*2eb4d8dcSEmmanuel Vadot default: 0 41*2eb4d8dcSEmmanuel Vadot description: | 42*2eb4d8dcSEmmanuel Vadot Specifies the power mode during suspend as follows: 43*2eb4d8dcSEmmanuel Vadot 0: Automatic (same as normal runtime, i.e. suspend/resume disabled) 44*2eb4d8dcSEmmanuel Vadot 1: Low power (all sensing at a reduced reporting rate) 45*2eb4d8dcSEmmanuel Vadot 2: Ultra-low power (ULP channel proximity sensing) 46*2eb4d8dcSEmmanuel Vadot 3: Halt (no sensing) 47*2eb4d8dcSEmmanuel Vadot 48*2eb4d8dcSEmmanuel Vadot azoteq,clk-div: 49*2eb4d8dcSEmmanuel Vadot type: boolean 50*2eb4d8dcSEmmanuel Vadot description: Divides the device's core clock by a factor of 4. 51*2eb4d8dcSEmmanuel Vadot 52*2eb4d8dcSEmmanuel Vadot azoteq,ulp-enable: 53*2eb4d8dcSEmmanuel Vadot type: boolean 54*2eb4d8dcSEmmanuel Vadot description: 55*2eb4d8dcSEmmanuel Vadot Permits the device to automatically enter ultra-low-power mode from low- 56*2eb4d8dcSEmmanuel Vadot power mode. 57*2eb4d8dcSEmmanuel Vadot 58*2eb4d8dcSEmmanuel Vadot azoteq,ulp-update: 59*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 60*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3, 4, 5, 6, 7] 61*2eb4d8dcSEmmanuel Vadot default: 3 62*2eb4d8dcSEmmanuel Vadot description: | 63*2eb4d8dcSEmmanuel Vadot Specifies the rate at which the trackpad, generic and Hall channels are 64*2eb4d8dcSEmmanuel Vadot updated during ultra-low-power mode as follows: 65*2eb4d8dcSEmmanuel Vadot 0: 8 66*2eb4d8dcSEmmanuel Vadot 1: 13 67*2eb4d8dcSEmmanuel Vadot 2: 28 68*2eb4d8dcSEmmanuel Vadot 3: 54 69*2eb4d8dcSEmmanuel Vadot 4: 89 70*2eb4d8dcSEmmanuel Vadot 5: 135 71*2eb4d8dcSEmmanuel Vadot 6: 190 72*2eb4d8dcSEmmanuel Vadot 7: 256 73*2eb4d8dcSEmmanuel Vadot 74*2eb4d8dcSEmmanuel Vadot azoteq,ati-band-disable: 75*2eb4d8dcSEmmanuel Vadot type: boolean 76*2eb4d8dcSEmmanuel Vadot description: Disables the ATI band check. 77*2eb4d8dcSEmmanuel Vadot 78*2eb4d8dcSEmmanuel Vadot azoteq,ati-lp-only: 79*2eb4d8dcSEmmanuel Vadot type: boolean 80*2eb4d8dcSEmmanuel Vadot description: Limits automatic ATI to low-power mode. 81*2eb4d8dcSEmmanuel Vadot 82*2eb4d8dcSEmmanuel Vadot azoteq,gpio3-select: 83*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 84*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3, 4, 5, 6, 7] 85*2eb4d8dcSEmmanuel Vadot default: 1 86*2eb4d8dcSEmmanuel Vadot description: | 87*2eb4d8dcSEmmanuel Vadot Selects the channel or group of channels for which the GPIO3 pin 88*2eb4d8dcSEmmanuel Vadot represents touch state as follows: 89*2eb4d8dcSEmmanuel Vadot 0: None 90*2eb4d8dcSEmmanuel Vadot 1: ULP channel 91*2eb4d8dcSEmmanuel Vadot 2: Trackpad 92*2eb4d8dcSEmmanuel Vadot 3: Trackpad 93*2eb4d8dcSEmmanuel Vadot 4: Generic channel 0 94*2eb4d8dcSEmmanuel Vadot 5: Generic channel 1 95*2eb4d8dcSEmmanuel Vadot 6: Generic channel 2 96*2eb4d8dcSEmmanuel Vadot 7: Hall channel 97*2eb4d8dcSEmmanuel Vadot 98*2eb4d8dcSEmmanuel Vadot azoteq,reseed-select: 99*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 100*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3] 101*2eb4d8dcSEmmanuel Vadot default: 0 102*2eb4d8dcSEmmanuel Vadot description: | 103*2eb4d8dcSEmmanuel Vadot Specifies the event(s) that prompt the device to reseed (i.e. reset the 104*2eb4d8dcSEmmanuel Vadot long-term average) of an associated channel as follows: 105*2eb4d8dcSEmmanuel Vadot 0: None 106*2eb4d8dcSEmmanuel Vadot 1: Proximity 107*2eb4d8dcSEmmanuel Vadot 2: Proximity or touch 108*2eb4d8dcSEmmanuel Vadot 3: Proximity, touch or deep touch 109*2eb4d8dcSEmmanuel Vadot 110*2eb4d8dcSEmmanuel Vadot azoteq,thresh-extend: 111*2eb4d8dcSEmmanuel Vadot type: boolean 112*2eb4d8dcSEmmanuel Vadot description: Multiplies all touch and deep-touch thresholds by 4. 113*2eb4d8dcSEmmanuel Vadot 114*2eb4d8dcSEmmanuel Vadot azoteq,tracking-enable: 115*2eb4d8dcSEmmanuel Vadot type: boolean 116*2eb4d8dcSEmmanuel Vadot description: 117*2eb4d8dcSEmmanuel Vadot Enables all associated channels to track their respective reference 118*2eb4d8dcSEmmanuel Vadot channels. 119*2eb4d8dcSEmmanuel Vadot 120*2eb4d8dcSEmmanuel Vadot azoteq,reseed-offset: 121*2eb4d8dcSEmmanuel Vadot type: boolean 122*2eb4d8dcSEmmanuel Vadot description: 123*2eb4d8dcSEmmanuel Vadot Applies an 8-count offset to all long-term averages upon either ATI or 124*2eb4d8dcSEmmanuel Vadot reseed events. 125*2eb4d8dcSEmmanuel Vadot 126*2eb4d8dcSEmmanuel Vadot azoteq,rate-np-ms: 127*2eb4d8dcSEmmanuel Vadot minimum: 0 128*2eb4d8dcSEmmanuel Vadot maximum: 255 129*2eb4d8dcSEmmanuel Vadot default: 150 130*2eb4d8dcSEmmanuel Vadot description: Specifies the report rate (in ms) during normal-power mode. 131*2eb4d8dcSEmmanuel Vadot 132*2eb4d8dcSEmmanuel Vadot azoteq,rate-lp-ms: 133*2eb4d8dcSEmmanuel Vadot minimum: 0 134*2eb4d8dcSEmmanuel Vadot maximum: 255 135*2eb4d8dcSEmmanuel Vadot default: 150 136*2eb4d8dcSEmmanuel Vadot description: Specifies the report rate (in ms) during low-power mode. 137*2eb4d8dcSEmmanuel Vadot 138*2eb4d8dcSEmmanuel Vadot azoteq,rate-ulp-ms: 139*2eb4d8dcSEmmanuel Vadot multipleOf: 16 140*2eb4d8dcSEmmanuel Vadot minimum: 0 141*2eb4d8dcSEmmanuel Vadot maximum: 4080 142*2eb4d8dcSEmmanuel Vadot default: 0 143*2eb4d8dcSEmmanuel Vadot description: Specifies the report rate (in ms) during ultra-low-power mode. 144*2eb4d8dcSEmmanuel Vadot 145*2eb4d8dcSEmmanuel Vadot azoteq,timeout-pwr-ms: 146*2eb4d8dcSEmmanuel Vadot multipleOf: 512 147*2eb4d8dcSEmmanuel Vadot minimum: 0 148*2eb4d8dcSEmmanuel Vadot maximum: 130560 149*2eb4d8dcSEmmanuel Vadot default: 2560 150*2eb4d8dcSEmmanuel Vadot description: 151*2eb4d8dcSEmmanuel Vadot Specifies the length of time (in ms) to wait for an event before moving 152*2eb4d8dcSEmmanuel Vadot from normal-power mode to low-power mode, or (if 'azoteq,ulp-enable' is 153*2eb4d8dcSEmmanuel Vadot present) from low-power mode to ultra-low-power mode. 154*2eb4d8dcSEmmanuel Vadot 155*2eb4d8dcSEmmanuel Vadot azoteq,timeout-lta-ms: 156*2eb4d8dcSEmmanuel Vadot multipleOf: 512 157*2eb4d8dcSEmmanuel Vadot minimum: 0 158*2eb4d8dcSEmmanuel Vadot maximum: 130560 159*2eb4d8dcSEmmanuel Vadot default: 40960 160*2eb4d8dcSEmmanuel Vadot description: 161*2eb4d8dcSEmmanuel Vadot Specifies the length of time (in ms) to wait before resetting the long- 162*2eb4d8dcSEmmanuel Vadot term average of all channels. Specify the maximum timeout to disable it 163*2eb4d8dcSEmmanuel Vadot altogether. 164*2eb4d8dcSEmmanuel Vadot 165*2eb4d8dcSEmmanuel Vadot touchscreen-inverted-x: true 166*2eb4d8dcSEmmanuel Vadot touchscreen-inverted-y: true 167*2eb4d8dcSEmmanuel Vadot touchscreen-swapped-x-y: true 168*2eb4d8dcSEmmanuel Vadot 169*2eb4d8dcSEmmanuel VadotpatternProperties: 170*2eb4d8dcSEmmanuel Vadot "^ulp-0|generic-[0-2]|hall$": 171*2eb4d8dcSEmmanuel Vadot type: object 172*2eb4d8dcSEmmanuel Vadot description: 173*2eb4d8dcSEmmanuel Vadot Represents a single sensing channel. A channel is active if defined and 174*2eb4d8dcSEmmanuel Vadot inactive otherwise. 175*2eb4d8dcSEmmanuel Vadot 176*2eb4d8dcSEmmanuel Vadot properties: 177*2eb4d8dcSEmmanuel Vadot azoteq,ati-exclude: 178*2eb4d8dcSEmmanuel Vadot type: boolean 179*2eb4d8dcSEmmanuel Vadot description: 180*2eb4d8dcSEmmanuel Vadot Prevents the channel from participating in an ATI event that is 181*2eb4d8dcSEmmanuel Vadot manually triggered during initialization. 182*2eb4d8dcSEmmanuel Vadot 183*2eb4d8dcSEmmanuel Vadot azoteq,reseed-disable: 184*2eb4d8dcSEmmanuel Vadot type: boolean 185*2eb4d8dcSEmmanuel Vadot description: 186*2eb4d8dcSEmmanuel Vadot Prevents the channel from being reseeded if the long-term average 187*2eb4d8dcSEmmanuel Vadot timeout (defined in 'azoteq,timeout-lta') expires. 188*2eb4d8dcSEmmanuel Vadot 189*2eb4d8dcSEmmanuel Vadot azoteq,meas-cap-decrease: 190*2eb4d8dcSEmmanuel Vadot type: boolean 191*2eb4d8dcSEmmanuel Vadot description: 192*2eb4d8dcSEmmanuel Vadot Decreases the internal measurement capacitance from 60 pF to 15 pF. 193*2eb4d8dcSEmmanuel Vadot 194*2eb4d8dcSEmmanuel Vadot azoteq,rx-inactive: 195*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 196*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2] 197*2eb4d8dcSEmmanuel Vadot default: 0 198*2eb4d8dcSEmmanuel Vadot description: | 199*2eb4d8dcSEmmanuel Vadot Specifies how inactive CRX pins are to be terminated as follows: 200*2eb4d8dcSEmmanuel Vadot 0: VSS 201*2eb4d8dcSEmmanuel Vadot 1: Floating 202*2eb4d8dcSEmmanuel Vadot 2: VREG (generic channels only) 203*2eb4d8dcSEmmanuel Vadot 204*2eb4d8dcSEmmanuel Vadot azoteq,linearize: 205*2eb4d8dcSEmmanuel Vadot type: boolean 206*2eb4d8dcSEmmanuel Vadot description: 207*2eb4d8dcSEmmanuel Vadot Enables linearization of the channel's counts (generic and Hall 208*2eb4d8dcSEmmanuel Vadot channels) or inverts the polarity of the channel's proximity or 209*2eb4d8dcSEmmanuel Vadot touch states (ULP channel). 210*2eb4d8dcSEmmanuel Vadot 211*2eb4d8dcSEmmanuel Vadot azoteq,dual-direction: 212*2eb4d8dcSEmmanuel Vadot type: boolean 213*2eb4d8dcSEmmanuel Vadot description: 214*2eb4d8dcSEmmanuel Vadot Specifies that the channel's long-term average is to freeze in the 215*2eb4d8dcSEmmanuel Vadot presence of either increasing or decreasing counts, thereby permit- 216*2eb4d8dcSEmmanuel Vadot ting events to be reported in either direction. 217*2eb4d8dcSEmmanuel Vadot 218*2eb4d8dcSEmmanuel Vadot azoteq,filt-disable: 219*2eb4d8dcSEmmanuel Vadot type: boolean 220*2eb4d8dcSEmmanuel Vadot description: Disables raw count filtering for the channel. 221*2eb4d8dcSEmmanuel Vadot 222*2eb4d8dcSEmmanuel Vadot azoteq,ati-mode: 223*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 224*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3] 225*2eb4d8dcSEmmanuel Vadot description: | 226*2eb4d8dcSEmmanuel Vadot Specifies the channel's ATI mode as follows: 227*2eb4d8dcSEmmanuel Vadot 0: Disabled 228*2eb4d8dcSEmmanuel Vadot 1: Semi-partial 229*2eb4d8dcSEmmanuel Vadot 2: Partial 230*2eb4d8dcSEmmanuel Vadot 3: Full 231*2eb4d8dcSEmmanuel Vadot 232*2eb4d8dcSEmmanuel Vadot The default value is a function of the channel and the device's reset 233*2eb4d8dcSEmmanuel Vadot user interface (RUI); reference the datasheet for further information 234*2eb4d8dcSEmmanuel Vadot about the available RUI options. 235*2eb4d8dcSEmmanuel Vadot 236*2eb4d8dcSEmmanuel Vadot azoteq,ati-base: 237*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 238*2eb4d8dcSEmmanuel Vadot enum: [75, 100, 150, 200] 239*2eb4d8dcSEmmanuel Vadot description: 240*2eb4d8dcSEmmanuel Vadot Specifies the channel's ATI base. The default value is a function 241*2eb4d8dcSEmmanuel Vadot of the channel and the device's RUI. 242*2eb4d8dcSEmmanuel Vadot 243*2eb4d8dcSEmmanuel Vadot azoteq,ati-target: 244*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 245*2eb4d8dcSEmmanuel Vadot multipleOf: 32 246*2eb4d8dcSEmmanuel Vadot minimum: 0 247*2eb4d8dcSEmmanuel Vadot maximum: 2016 248*2eb4d8dcSEmmanuel Vadot description: 249*2eb4d8dcSEmmanuel Vadot Specifies the channel's ATI target. The default value is a function 250*2eb4d8dcSEmmanuel Vadot of the channel and the device's RUI. 251*2eb4d8dcSEmmanuel Vadot 252*2eb4d8dcSEmmanuel Vadot azoteq,cct-increase: 253*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 254*2eb4d8dcSEmmanuel Vadot minimum: 0 255*2eb4d8dcSEmmanuel Vadot maximum: 16 256*2eb4d8dcSEmmanuel Vadot default: 0 257*2eb4d8dcSEmmanuel Vadot description: 258*2eb4d8dcSEmmanuel Vadot Specifies the degree to which the channel's charge cycle time is to 259*2eb4d8dcSEmmanuel Vadot be increased, with 0 representing no increase. The maximum value is 260*2eb4d8dcSEmmanuel Vadot limited to 4 in the case of the ULP channel, and the property is un- 261*2eb4d8dcSEmmanuel Vadot available entirely in the case of the Hall channel. 262*2eb4d8dcSEmmanuel Vadot 263*2eb4d8dcSEmmanuel Vadot azoteq,proj-bias: 264*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 265*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3] 266*2eb4d8dcSEmmanuel Vadot default: 0 267*2eb4d8dcSEmmanuel Vadot description: | 268*2eb4d8dcSEmmanuel Vadot Specifies the bias current applied during projected-capacitance 269*2eb4d8dcSEmmanuel Vadot sensing as follows: 270*2eb4d8dcSEmmanuel Vadot 0: 2.5 uA 271*2eb4d8dcSEmmanuel Vadot 1: 5 uA 272*2eb4d8dcSEmmanuel Vadot 2: 10 uA 273*2eb4d8dcSEmmanuel Vadot 3: 20 uA 274*2eb4d8dcSEmmanuel Vadot 275*2eb4d8dcSEmmanuel Vadot This property is unavailable in the case of the Hall channel. 276*2eb4d8dcSEmmanuel Vadot 277*2eb4d8dcSEmmanuel Vadot azoteq,sense-freq: 278*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 279*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3] 280*2eb4d8dcSEmmanuel Vadot description: | 281*2eb4d8dcSEmmanuel Vadot Specifies the channel's sensing frequency as follows (parenthesized 282*2eb4d8dcSEmmanuel Vadot numbers represent the frequency if 'azoteq,clk-div' is present): 283*2eb4d8dcSEmmanuel Vadot 0: 4 MHz (1 MHz) 284*2eb4d8dcSEmmanuel Vadot 1: 2 MHz (500 kHz) 285*2eb4d8dcSEmmanuel Vadot 2: 1 MHz (250 kHz) 286*2eb4d8dcSEmmanuel Vadot 3: 500 kHz (125 kHz) 287*2eb4d8dcSEmmanuel Vadot 288*2eb4d8dcSEmmanuel Vadot This property is unavailable in the case of the Hall channel. The 289*2eb4d8dcSEmmanuel Vadot default value is a function of the channel and the device's RUI. 290*2eb4d8dcSEmmanuel Vadot 291*2eb4d8dcSEmmanuel Vadot azoteq,ati-band-tighten: 292*2eb4d8dcSEmmanuel Vadot type: boolean 293*2eb4d8dcSEmmanuel Vadot description: 294*2eb4d8dcSEmmanuel Vadot Tightens the ATI band from 1/8 to 1/16 of the desired target (ULP and 295*2eb4d8dcSEmmanuel Vadot generic channels only). 296*2eb4d8dcSEmmanuel Vadot 297*2eb4d8dcSEmmanuel Vadot azoteq,proj-enable: 298*2eb4d8dcSEmmanuel Vadot type: boolean 299*2eb4d8dcSEmmanuel Vadot description: Enables projected-capacitance sensing (ULP channel only). 300*2eb4d8dcSEmmanuel Vadot 301*2eb4d8dcSEmmanuel Vadot azoteq,filt-str-np-cnt: 302*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 303*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3] 304*2eb4d8dcSEmmanuel Vadot default: 0 305*2eb4d8dcSEmmanuel Vadot description: 306*2eb4d8dcSEmmanuel Vadot Specifies the raw count filter strength during normal-power mode (ULP 307*2eb4d8dcSEmmanuel Vadot and generic channels only). 308*2eb4d8dcSEmmanuel Vadot 309*2eb4d8dcSEmmanuel Vadot azoteq,filt-str-lp-cnt: 310*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 311*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3] 312*2eb4d8dcSEmmanuel Vadot default: 0 313*2eb4d8dcSEmmanuel Vadot description: 314*2eb4d8dcSEmmanuel Vadot Specifies the raw count filter strength during low-power mode (ULP and 315*2eb4d8dcSEmmanuel Vadot generic channels only). 316*2eb4d8dcSEmmanuel Vadot 317*2eb4d8dcSEmmanuel Vadot azoteq,filt-str-np-lta: 318*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 319*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3] 320*2eb4d8dcSEmmanuel Vadot default: 0 321*2eb4d8dcSEmmanuel Vadot description: 322*2eb4d8dcSEmmanuel Vadot Specifies the long-term average filter strength during normal-power 323*2eb4d8dcSEmmanuel Vadot mode (ULP and generic channels only). 324*2eb4d8dcSEmmanuel Vadot 325*2eb4d8dcSEmmanuel Vadot azoteq,filt-str-lp-lta: 326*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 327*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3] 328*2eb4d8dcSEmmanuel Vadot default: 0 329*2eb4d8dcSEmmanuel Vadot description: 330*2eb4d8dcSEmmanuel Vadot Specifies the long-term average filter strength during low-power mode 331*2eb4d8dcSEmmanuel Vadot (ULP and generic channels only). 332*2eb4d8dcSEmmanuel Vadot 333*2eb4d8dcSEmmanuel Vadot azoteq,rx-enable: 334*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 335*2eb4d8dcSEmmanuel Vadot minItems: 1 336*2eb4d8dcSEmmanuel Vadot maxItems: 8 337*2eb4d8dcSEmmanuel Vadot items: 338*2eb4d8dcSEmmanuel Vadot minimum: 0 339*2eb4d8dcSEmmanuel Vadot maximum: 7 340*2eb4d8dcSEmmanuel Vadot description: 341*2eb4d8dcSEmmanuel Vadot Specifies the CRX pin(s) associated with the channel. 342*2eb4d8dcSEmmanuel Vadot 343*2eb4d8dcSEmmanuel Vadot This property is unavailable in the case of the Hall channel. The 344*2eb4d8dcSEmmanuel Vadot default value is a function of the channel and the device's RUI. 345*2eb4d8dcSEmmanuel Vadot 346*2eb4d8dcSEmmanuel Vadot azoteq,tx-enable: 347*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 348*2eb4d8dcSEmmanuel Vadot minItems: 1 349*2eb4d8dcSEmmanuel Vadot maxItems: 8 350*2eb4d8dcSEmmanuel Vadot items: 351*2eb4d8dcSEmmanuel Vadot minimum: 0 352*2eb4d8dcSEmmanuel Vadot maximum: 7 353*2eb4d8dcSEmmanuel Vadot description: 354*2eb4d8dcSEmmanuel Vadot Specifies the TX pin(s) associated with the channel. 355*2eb4d8dcSEmmanuel Vadot 356*2eb4d8dcSEmmanuel Vadot This property is unavailable in the case of the Hall channel. The 357*2eb4d8dcSEmmanuel Vadot default value is a function of the channel and the device's RUI. 358*2eb4d8dcSEmmanuel Vadot 359*2eb4d8dcSEmmanuel Vadot azoteq,local-cap-size: 360*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 361*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3, 4] 362*2eb4d8dcSEmmanuel Vadot default: 0 363*2eb4d8dcSEmmanuel Vadot description: | 364*2eb4d8dcSEmmanuel Vadot Specifies the capacitance to be added to the channel as follows: 365*2eb4d8dcSEmmanuel Vadot 0: 0 pF 366*2eb4d8dcSEmmanuel Vadot 1: 0.5 pF 367*2eb4d8dcSEmmanuel Vadot 2: 1.0 pF 368*2eb4d8dcSEmmanuel Vadot 3: 1.5 pF 369*2eb4d8dcSEmmanuel Vadot 4: 2.0 pF 370*2eb4d8dcSEmmanuel Vadot 371*2eb4d8dcSEmmanuel Vadot This property is unavailable in the case of the ULP or Hall channels. 372*2eb4d8dcSEmmanuel Vadot 373*2eb4d8dcSEmmanuel Vadot azoteq,sense-mode: 374*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 375*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 8, 9, 12, 14, 15] 376*2eb4d8dcSEmmanuel Vadot description: | 377*2eb4d8dcSEmmanuel Vadot Specifies the channel's sensing mode as follows: 378*2eb4d8dcSEmmanuel Vadot 0: Self capacitance 379*2eb4d8dcSEmmanuel Vadot 1: Projected capacitance 380*2eb4d8dcSEmmanuel Vadot 8: Self inductance 381*2eb4d8dcSEmmanuel Vadot 9: Mutual inductance 382*2eb4d8dcSEmmanuel Vadot 12: External 383*2eb4d8dcSEmmanuel Vadot 14: Hall effect 384*2eb4d8dcSEmmanuel Vadot 15: Temperature 385*2eb4d8dcSEmmanuel Vadot 386*2eb4d8dcSEmmanuel Vadot This property is unavailable in the case of the ULP or Hall channels. 387*2eb4d8dcSEmmanuel Vadot The default value is a function of the channel and the device's RUI. 388*2eb4d8dcSEmmanuel Vadot 389*2eb4d8dcSEmmanuel Vadot azoteq,tx-freq: 390*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 391*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3] 392*2eb4d8dcSEmmanuel Vadot default: 0 393*2eb4d8dcSEmmanuel Vadot description: | 394*2eb4d8dcSEmmanuel Vadot Specifies the inductive sensing excitation frequency as follows 395*2eb4d8dcSEmmanuel Vadot (parenthesized numbers represent the frequency if 'azoteq,clk-div' 396*2eb4d8dcSEmmanuel Vadot is present): 397*2eb4d8dcSEmmanuel Vadot 0: 16 MHz (4 MHz) 398*2eb4d8dcSEmmanuel Vadot 1: 8 MHz (2 MHz) 399*2eb4d8dcSEmmanuel Vadot 2: 4 MHz (1 MHz) 400*2eb4d8dcSEmmanuel Vadot 3: 2 MHz (500 kHz) 401*2eb4d8dcSEmmanuel Vadot 402*2eb4d8dcSEmmanuel Vadot This property is unavailable in the case of the ULP or Hall channels. 403*2eb4d8dcSEmmanuel Vadot 404*2eb4d8dcSEmmanuel Vadot azoteq,invert-enable: 405*2eb4d8dcSEmmanuel Vadot type: boolean 406*2eb4d8dcSEmmanuel Vadot description: 407*2eb4d8dcSEmmanuel Vadot Inverts the polarity of the states reported for proximity, touch and 408*2eb4d8dcSEmmanuel Vadot deep-touch events relative to their respective thresholds (generic 409*2eb4d8dcSEmmanuel Vadot channels only). 410*2eb4d8dcSEmmanuel Vadot 411*2eb4d8dcSEmmanuel Vadot azoteq,comp-disable: 412*2eb4d8dcSEmmanuel Vadot type: boolean 413*2eb4d8dcSEmmanuel Vadot description: 414*2eb4d8dcSEmmanuel Vadot Disables compensation for the channel (generic channels only). 415*2eb4d8dcSEmmanuel Vadot 416*2eb4d8dcSEmmanuel Vadot azoteq,static-enable: 417*2eb4d8dcSEmmanuel Vadot type: boolean 418*2eb4d8dcSEmmanuel Vadot description: 419*2eb4d8dcSEmmanuel Vadot Enables the static front-end for the channel (generic channels only). 420*2eb4d8dcSEmmanuel Vadot 421*2eb4d8dcSEmmanuel Vadot azoteq,assoc-select: 422*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/string-array 423*2eb4d8dcSEmmanuel Vadot minItems: 1 424*2eb4d8dcSEmmanuel Vadot maxItems: 6 425*2eb4d8dcSEmmanuel Vadot items: 426*2eb4d8dcSEmmanuel Vadot enum: 427*2eb4d8dcSEmmanuel Vadot - ulp-0 428*2eb4d8dcSEmmanuel Vadot - trackpad-3x2 429*2eb4d8dcSEmmanuel Vadot - trackpad-3x3 430*2eb4d8dcSEmmanuel Vadot - generic-0 431*2eb4d8dcSEmmanuel Vadot - generic-1 432*2eb4d8dcSEmmanuel Vadot - generic-2 433*2eb4d8dcSEmmanuel Vadot - hall 434*2eb4d8dcSEmmanuel Vadot description: 435*2eb4d8dcSEmmanuel Vadot Specifies the associated channels for which the channel serves as a 436*2eb4d8dcSEmmanuel Vadot reference channel. By default, no channels are selected. This prop- 437*2eb4d8dcSEmmanuel Vadot erty is only available for the generic channels. 438*2eb4d8dcSEmmanuel Vadot 439*2eb4d8dcSEmmanuel Vadot azoteq,assoc-weight: 440*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 441*2eb4d8dcSEmmanuel Vadot minimum: 0 442*2eb4d8dcSEmmanuel Vadot maximum: 255 443*2eb4d8dcSEmmanuel Vadot default: 0 444*2eb4d8dcSEmmanuel Vadot description: 445*2eb4d8dcSEmmanuel Vadot Specifies the channel's impact weight if it acts as an associated 446*2eb4d8dcSEmmanuel Vadot channel (0 = 0% impact, 255 = 200% impact). This property is only 447*2eb4d8dcSEmmanuel Vadot available for the generic channels. 448*2eb4d8dcSEmmanuel Vadot 449*2eb4d8dcSEmmanuel Vadot patternProperties: 450*2eb4d8dcSEmmanuel Vadot "^event-(prox|touch|deep)(-alt)?$": 451*2eb4d8dcSEmmanuel Vadot type: object 452*2eb4d8dcSEmmanuel Vadot description: 453*2eb4d8dcSEmmanuel Vadot Represents a proximity, touch or deep-touch event reported by the 454*2eb4d8dcSEmmanuel Vadot channel in response to a decrease in counts. Node names suffixed with 455*2eb4d8dcSEmmanuel Vadot '-alt' instead correspond to an increase in counts. 456*2eb4d8dcSEmmanuel Vadot 457*2eb4d8dcSEmmanuel Vadot By default, the long-term average tracks an increase in counts such 458*2eb4d8dcSEmmanuel Vadot that only events corresponding to a decrease in counts are reported 459*2eb4d8dcSEmmanuel Vadot (refer to the datasheet for more information). 460*2eb4d8dcSEmmanuel Vadot 461*2eb4d8dcSEmmanuel Vadot Specify 'azoteq,dual-direction' to freeze the long-term average when 462*2eb4d8dcSEmmanuel Vadot the counts increase or decrease such that events of either direction 463*2eb4d8dcSEmmanuel Vadot can be reported. Alternatively, specify 'azoteq,invert-enable' to in- 464*2eb4d8dcSEmmanuel Vadot vert the polarity of the states reported by the channel. 465*2eb4d8dcSEmmanuel Vadot 466*2eb4d8dcSEmmanuel Vadot Complementary events (e.g. event-touch and event-touch-alt) can both 467*2eb4d8dcSEmmanuel Vadot be present and specify different key or switch codes, but not differ- 468*2eb4d8dcSEmmanuel Vadot ent thresholds or hysteresis (if applicable). 469*2eb4d8dcSEmmanuel Vadot 470*2eb4d8dcSEmmanuel Vadot Proximity events are unavailable in the case of the Hall channel, and 471*2eb4d8dcSEmmanuel Vadot deep-touch events are only available for the generic channels. Unless 472*2eb4d8dcSEmmanuel Vadot otherwise specified, default values are a function of the channel and 473*2eb4d8dcSEmmanuel Vadot the device's RUI. 474*2eb4d8dcSEmmanuel Vadot 475*2eb4d8dcSEmmanuel Vadot properties: 476*2eb4d8dcSEmmanuel Vadot azoteq,thresh: 477*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 478*2eb4d8dcSEmmanuel Vadot minimum: 0 479*2eb4d8dcSEmmanuel Vadot maximum: 255 480*2eb4d8dcSEmmanuel Vadot description: Specifies the threshold for the event. 481*2eb4d8dcSEmmanuel Vadot 482*2eb4d8dcSEmmanuel Vadot azoteq,hyst: 483*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 484*2eb4d8dcSEmmanuel Vadot minimum: 0 485*2eb4d8dcSEmmanuel Vadot maximum: 15 486*2eb4d8dcSEmmanuel Vadot description: 487*2eb4d8dcSEmmanuel Vadot Specifies the hysteresis for the event (touch and deep-touch 488*2eb4d8dcSEmmanuel Vadot events only). 489*2eb4d8dcSEmmanuel Vadot 490*2eb4d8dcSEmmanuel Vadot linux,code: 491*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 492*2eb4d8dcSEmmanuel Vadot description: Numeric key or switch code associated with the event. 493*2eb4d8dcSEmmanuel Vadot 494*2eb4d8dcSEmmanuel Vadot linux,input-type: 495*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 496*2eb4d8dcSEmmanuel Vadot enum: [1, 5] 497*2eb4d8dcSEmmanuel Vadot description: 498*2eb4d8dcSEmmanuel Vadot Specifies whether the event is to be interpreted as a key (1) or 499*2eb4d8dcSEmmanuel Vadot a switch (5). By default, Hall-channel events are interpreted as 500*2eb4d8dcSEmmanuel Vadot switches and all others are interpreted as keys. 501*2eb4d8dcSEmmanuel Vadot 502*2eb4d8dcSEmmanuel Vadot dependencies: 503*2eb4d8dcSEmmanuel Vadot linux,input-type: ["linux,code"] 504*2eb4d8dcSEmmanuel Vadot 505*2eb4d8dcSEmmanuel Vadot additionalProperties: false 506*2eb4d8dcSEmmanuel Vadot 507*2eb4d8dcSEmmanuel Vadot dependencies: 508*2eb4d8dcSEmmanuel Vadot azoteq,assoc-weight: ["azoteq,assoc-select"] 509*2eb4d8dcSEmmanuel Vadot 510*2eb4d8dcSEmmanuel Vadot additionalProperties: false 511*2eb4d8dcSEmmanuel Vadot 512*2eb4d8dcSEmmanuel Vadot "^trackpad-3x[2-3]$": 513*2eb4d8dcSEmmanuel Vadot type: object 514*2eb4d8dcSEmmanuel Vadot description: 515*2eb4d8dcSEmmanuel Vadot Represents all channels associated with the trackpad. The channels are 516*2eb4d8dcSEmmanuel Vadot collectively active if the trackpad is defined and inactive otherwise. 517*2eb4d8dcSEmmanuel Vadot 518*2eb4d8dcSEmmanuel Vadot properties: 519*2eb4d8dcSEmmanuel Vadot azoteq,ati-exclude: 520*2eb4d8dcSEmmanuel Vadot type: boolean 521*2eb4d8dcSEmmanuel Vadot description: 522*2eb4d8dcSEmmanuel Vadot Prevents the trackpad channels from participating in an ATI event 523*2eb4d8dcSEmmanuel Vadot that is manually triggered during initialization. 524*2eb4d8dcSEmmanuel Vadot 525*2eb4d8dcSEmmanuel Vadot azoteq,reseed-disable: 526*2eb4d8dcSEmmanuel Vadot type: boolean 527*2eb4d8dcSEmmanuel Vadot description: 528*2eb4d8dcSEmmanuel Vadot Prevents the trackpad channels from being reseeded if the long-term 529*2eb4d8dcSEmmanuel Vadot average timeout (defined in 'azoteq,timeout-lta') expires. 530*2eb4d8dcSEmmanuel Vadot 531*2eb4d8dcSEmmanuel Vadot azoteq,meas-cap-decrease: 532*2eb4d8dcSEmmanuel Vadot type: boolean 533*2eb4d8dcSEmmanuel Vadot description: 534*2eb4d8dcSEmmanuel Vadot Decreases the internal measurement capacitance from 60 pF to 15 pF. 535*2eb4d8dcSEmmanuel Vadot 536*2eb4d8dcSEmmanuel Vadot azoteq,rx-inactive: 537*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 538*2eb4d8dcSEmmanuel Vadot enum: [0, 1] 539*2eb4d8dcSEmmanuel Vadot default: 0 540*2eb4d8dcSEmmanuel Vadot description: | 541*2eb4d8dcSEmmanuel Vadot Specifies how inactive CRX pins are to be terminated as follows: 542*2eb4d8dcSEmmanuel Vadot 0: VSS 543*2eb4d8dcSEmmanuel Vadot 1: Floating 544*2eb4d8dcSEmmanuel Vadot 545*2eb4d8dcSEmmanuel Vadot azoteq,linearize: 546*2eb4d8dcSEmmanuel Vadot type: boolean 547*2eb4d8dcSEmmanuel Vadot description: Inverts the polarity of the trackpad's touch state. 548*2eb4d8dcSEmmanuel Vadot 549*2eb4d8dcSEmmanuel Vadot azoteq,dual-direction: 550*2eb4d8dcSEmmanuel Vadot type: boolean 551*2eb4d8dcSEmmanuel Vadot description: 552*2eb4d8dcSEmmanuel Vadot Specifies that the trackpad's long-term averages are to freeze in 553*2eb4d8dcSEmmanuel Vadot the presence of either increasing or decreasing counts, thereby 554*2eb4d8dcSEmmanuel Vadot permitting events to be reported in either direction. 555*2eb4d8dcSEmmanuel Vadot 556*2eb4d8dcSEmmanuel Vadot azoteq,filt-disable: 557*2eb4d8dcSEmmanuel Vadot type: boolean 558*2eb4d8dcSEmmanuel Vadot description: Disables raw count filtering for the trackpad channels. 559*2eb4d8dcSEmmanuel Vadot 560*2eb4d8dcSEmmanuel Vadot azoteq,ati-mode: 561*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 562*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3] 563*2eb4d8dcSEmmanuel Vadot default: 0 564*2eb4d8dcSEmmanuel Vadot description: | 565*2eb4d8dcSEmmanuel Vadot Specifies the trackpad's ATI mode as follows: 566*2eb4d8dcSEmmanuel Vadot 0: Disabled 567*2eb4d8dcSEmmanuel Vadot 1: Semi-partial 568*2eb4d8dcSEmmanuel Vadot 2: Partial 569*2eb4d8dcSEmmanuel Vadot 3: Full 570*2eb4d8dcSEmmanuel Vadot 571*2eb4d8dcSEmmanuel Vadot azoteq,ati-base: 572*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 573*2eb4d8dcSEmmanuel Vadot minItems: 6 574*2eb4d8dcSEmmanuel Vadot maxItems: 9 575*2eb4d8dcSEmmanuel Vadot items: 576*2eb4d8dcSEmmanuel Vadot minimum: 45 577*2eb4d8dcSEmmanuel Vadot maximum: 300 578*2eb4d8dcSEmmanuel Vadot default: [45, 45, 45, 45, 45, 45, 45, 45, 45] 579*2eb4d8dcSEmmanuel Vadot description: Specifies each individual trackpad channel's ATI base. 580*2eb4d8dcSEmmanuel Vadot 581*2eb4d8dcSEmmanuel Vadot azoteq,ati-target: 582*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 583*2eb4d8dcSEmmanuel Vadot multipleOf: 32 584*2eb4d8dcSEmmanuel Vadot minimum: 0 585*2eb4d8dcSEmmanuel Vadot maximum: 2016 586*2eb4d8dcSEmmanuel Vadot default: 0 587*2eb4d8dcSEmmanuel Vadot description: Specifies the trackpad's ATI target. 588*2eb4d8dcSEmmanuel Vadot 589*2eb4d8dcSEmmanuel Vadot azoteq,cct-increase: 590*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 591*2eb4d8dcSEmmanuel Vadot minimum: 0 592*2eb4d8dcSEmmanuel Vadot maximum: 4 593*2eb4d8dcSEmmanuel Vadot default: 0 594*2eb4d8dcSEmmanuel Vadot description: 595*2eb4d8dcSEmmanuel Vadot Specifies the degree to which the trackpad's charge cycle time is to 596*2eb4d8dcSEmmanuel Vadot be increased, with 0 representing no increase. 597*2eb4d8dcSEmmanuel Vadot 598*2eb4d8dcSEmmanuel Vadot azoteq,proj-bias: 599*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 600*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3] 601*2eb4d8dcSEmmanuel Vadot default: 0 602*2eb4d8dcSEmmanuel Vadot description: | 603*2eb4d8dcSEmmanuel Vadot Specifies the bias current applied during projected-capacitance 604*2eb4d8dcSEmmanuel Vadot sensing as follows: 605*2eb4d8dcSEmmanuel Vadot 0: 2.5 uA 606*2eb4d8dcSEmmanuel Vadot 1: 5 uA 607*2eb4d8dcSEmmanuel Vadot 2: 10 uA 608*2eb4d8dcSEmmanuel Vadot 3: 20 uA 609*2eb4d8dcSEmmanuel Vadot 610*2eb4d8dcSEmmanuel Vadot azoteq,sense-freq: 611*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 612*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3] 613*2eb4d8dcSEmmanuel Vadot default: 0 614*2eb4d8dcSEmmanuel Vadot description: | 615*2eb4d8dcSEmmanuel Vadot Specifies the trackpad's sensing frequency as follows (parenthesized 616*2eb4d8dcSEmmanuel Vadot numbers represent the frequency if 'azoteq,clk-div' is present): 617*2eb4d8dcSEmmanuel Vadot 0: 4 MHz (1 MHz) 618*2eb4d8dcSEmmanuel Vadot 1: 2 MHz (500 kHz) 619*2eb4d8dcSEmmanuel Vadot 2: 1 MHz (250 kHz) 620*2eb4d8dcSEmmanuel Vadot 3: 500 kHz (125 kHz) 621*2eb4d8dcSEmmanuel Vadot 622*2eb4d8dcSEmmanuel Vadot azoteq,ati-band-tighten: 623*2eb4d8dcSEmmanuel Vadot type: boolean 624*2eb4d8dcSEmmanuel Vadot description: 625*2eb4d8dcSEmmanuel Vadot Tightens the ATI band from 1/8 to 1/16 of the desired target. 626*2eb4d8dcSEmmanuel Vadot 627*2eb4d8dcSEmmanuel Vadot azoteq,thresh: 628*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 629*2eb4d8dcSEmmanuel Vadot minItems: 6 630*2eb4d8dcSEmmanuel Vadot maxItems: 9 631*2eb4d8dcSEmmanuel Vadot items: 632*2eb4d8dcSEmmanuel Vadot minimum: 0 633*2eb4d8dcSEmmanuel Vadot maximum: 255 634*2eb4d8dcSEmmanuel Vadot default: [0, 0, 0, 0, 0, 0, 0, 0, 0] 635*2eb4d8dcSEmmanuel Vadot description: 636*2eb4d8dcSEmmanuel Vadot Specifies each individual trackpad channel's touch threshold. 637*2eb4d8dcSEmmanuel Vadot 638*2eb4d8dcSEmmanuel Vadot azoteq,hyst: 639*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 640*2eb4d8dcSEmmanuel Vadot minimum: 0 641*2eb4d8dcSEmmanuel Vadot maximum: 15 642*2eb4d8dcSEmmanuel Vadot default: 0 643*2eb4d8dcSEmmanuel Vadot description: Specifies the trackpad's touch hysteresis. 644*2eb4d8dcSEmmanuel Vadot 645*2eb4d8dcSEmmanuel Vadot azoteq,lta-update: 646*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 647*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3, 4, 5, 6, 7] 648*2eb4d8dcSEmmanuel Vadot default: 0 649*2eb4d8dcSEmmanuel Vadot description: | 650*2eb4d8dcSEmmanuel Vadot Specifies the update rate of the trackpad's long-term average during 651*2eb4d8dcSEmmanuel Vadot ultra-low-power mode as follows: 652*2eb4d8dcSEmmanuel Vadot 0: 2 653*2eb4d8dcSEmmanuel Vadot 1: 4 654*2eb4d8dcSEmmanuel Vadot 2: 8 655*2eb4d8dcSEmmanuel Vadot 3: 16 656*2eb4d8dcSEmmanuel Vadot 4: 32 657*2eb4d8dcSEmmanuel Vadot 5: 64 658*2eb4d8dcSEmmanuel Vadot 6: 128 659*2eb4d8dcSEmmanuel Vadot 7: 255 660*2eb4d8dcSEmmanuel Vadot 661*2eb4d8dcSEmmanuel Vadot azoteq,filt-str-trackpad: 662*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 663*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3] 664*2eb4d8dcSEmmanuel Vadot default: 0 665*2eb4d8dcSEmmanuel Vadot description: Specifies the trackpad coordinate filter strength. 666*2eb4d8dcSEmmanuel Vadot 667*2eb4d8dcSEmmanuel Vadot azoteq,filt-str-np-cnt: 668*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 669*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3] 670*2eb4d8dcSEmmanuel Vadot default: 0 671*2eb4d8dcSEmmanuel Vadot description: 672*2eb4d8dcSEmmanuel Vadot Specifies the raw count filter strength during normal-power mode. 673*2eb4d8dcSEmmanuel Vadot 674*2eb4d8dcSEmmanuel Vadot azoteq,filt-str-lp-cnt: 675*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 676*2eb4d8dcSEmmanuel Vadot enum: [0, 1, 2, 3] 677*2eb4d8dcSEmmanuel Vadot default: 0 678*2eb4d8dcSEmmanuel Vadot description: 679*2eb4d8dcSEmmanuel Vadot Specifies the raw count filter strength during low-power mode. 680*2eb4d8dcSEmmanuel Vadot 681*2eb4d8dcSEmmanuel Vadot linux,keycodes: 682*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 683*2eb4d8dcSEmmanuel Vadot minItems: 1 684*2eb4d8dcSEmmanuel Vadot maxItems: 6 685*2eb4d8dcSEmmanuel Vadot description: | 686*2eb4d8dcSEmmanuel Vadot Specifies the numeric keycodes associated with each available gesture 687*2eb4d8dcSEmmanuel Vadot in the following order (enter 0 for unused gestures): 688*2eb4d8dcSEmmanuel Vadot 0: Positive flick or swipe in X direction 689*2eb4d8dcSEmmanuel Vadot 1: Negative flick or swipe in X direction 690*2eb4d8dcSEmmanuel Vadot 2: Positive flick or swipe in Y direction 691*2eb4d8dcSEmmanuel Vadot 3: Negative flick or swipe in Y direction 692*2eb4d8dcSEmmanuel Vadot 4: Tap 693*2eb4d8dcSEmmanuel Vadot 5: Hold 694*2eb4d8dcSEmmanuel Vadot 695*2eb4d8dcSEmmanuel Vadot azoteq,gesture-swipe: 696*2eb4d8dcSEmmanuel Vadot type: boolean 697*2eb4d8dcSEmmanuel Vadot description: 698*2eb4d8dcSEmmanuel Vadot Directs the device to interpret axial gestures as a swipe (finger 699*2eb4d8dcSEmmanuel Vadot remains on trackpad) instead of a flick (finger leaves trackpad). 700*2eb4d8dcSEmmanuel Vadot 701*2eb4d8dcSEmmanuel Vadot azoteq,timeout-tap-ms: 702*2eb4d8dcSEmmanuel Vadot multipleOf: 16 703*2eb4d8dcSEmmanuel Vadot minimum: 0 704*2eb4d8dcSEmmanuel Vadot maximum: 4080 705*2eb4d8dcSEmmanuel Vadot default: 0 706*2eb4d8dcSEmmanuel Vadot description: 707*2eb4d8dcSEmmanuel Vadot Specifies the length of time (in ms) within which a trackpad touch 708*2eb4d8dcSEmmanuel Vadot must be released in order to be interpreted as a tap. 709*2eb4d8dcSEmmanuel Vadot 710*2eb4d8dcSEmmanuel Vadot azoteq,timeout-swipe-ms: 711*2eb4d8dcSEmmanuel Vadot multipleOf: 16 712*2eb4d8dcSEmmanuel Vadot minimum: 0 713*2eb4d8dcSEmmanuel Vadot maximum: 4080 714*2eb4d8dcSEmmanuel Vadot default: 0 715*2eb4d8dcSEmmanuel Vadot description: 716*2eb4d8dcSEmmanuel Vadot Specifies the length of time (in ms) within which an axial gesture 717*2eb4d8dcSEmmanuel Vadot must be completed in order to be interpreted as a flick or swipe. 718*2eb4d8dcSEmmanuel Vadot 719*2eb4d8dcSEmmanuel Vadot azoteq,thresh-swipe: 720*2eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 721*2eb4d8dcSEmmanuel Vadot minimum: 0 722*2eb4d8dcSEmmanuel Vadot maximum: 255 723*2eb4d8dcSEmmanuel Vadot default: 0 724*2eb4d8dcSEmmanuel Vadot description: 725*2eb4d8dcSEmmanuel Vadot Specifies the number of points across which an axial gesture must 726*2eb4d8dcSEmmanuel Vadot travel in order to be interpreted as a flick or swipe. 727*2eb4d8dcSEmmanuel Vadot 728*2eb4d8dcSEmmanuel Vadot dependencies: 729*2eb4d8dcSEmmanuel Vadot azoteq,gesture-swipe: ["linux,keycodes"] 730*2eb4d8dcSEmmanuel Vadot azoteq,timeout-tap-ms: ["linux,keycodes"] 731*2eb4d8dcSEmmanuel Vadot azoteq,timeout-swipe-ms: ["linux,keycodes"] 732*2eb4d8dcSEmmanuel Vadot azoteq,thresh-swipe: ["linux,keycodes"] 733*2eb4d8dcSEmmanuel Vadot 734*2eb4d8dcSEmmanuel Vadot additionalProperties: false 735*2eb4d8dcSEmmanuel Vadot 736*2eb4d8dcSEmmanuel Vadotrequired: 737*2eb4d8dcSEmmanuel Vadot - compatible 738*2eb4d8dcSEmmanuel Vadot - reg 739*2eb4d8dcSEmmanuel Vadot - interrupts 740*2eb4d8dcSEmmanuel Vadot - "#address-cells" 741*2eb4d8dcSEmmanuel Vadot - "#size-cells" 742*2eb4d8dcSEmmanuel Vadot 743*2eb4d8dcSEmmanuel VadotadditionalProperties: false 744*2eb4d8dcSEmmanuel Vadot 745*2eb4d8dcSEmmanuel Vadotexamples: 746*2eb4d8dcSEmmanuel Vadot - | 747*2eb4d8dcSEmmanuel Vadot #include <dt-bindings/input/input.h> 748*2eb4d8dcSEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 749*2eb4d8dcSEmmanuel Vadot 750*2eb4d8dcSEmmanuel Vadot i2c { 751*2eb4d8dcSEmmanuel Vadot #address-cells = <1>; 752*2eb4d8dcSEmmanuel Vadot #size-cells = <0>; 753*2eb4d8dcSEmmanuel Vadot 754*2eb4d8dcSEmmanuel Vadot iqs626a@44 { 755*2eb4d8dcSEmmanuel Vadot #address-cells = <1>; 756*2eb4d8dcSEmmanuel Vadot #size-cells = <0>; 757*2eb4d8dcSEmmanuel Vadot 758*2eb4d8dcSEmmanuel Vadot compatible = "azoteq,iqs626a"; 759*2eb4d8dcSEmmanuel Vadot reg = <0x44>; 760*2eb4d8dcSEmmanuel Vadot interrupt-parent = <&gpio>; 761*2eb4d8dcSEmmanuel Vadot interrupts = <17 IRQ_TYPE_LEVEL_LOW>; 762*2eb4d8dcSEmmanuel Vadot 763*2eb4d8dcSEmmanuel Vadot azoteq,rate-np-ms = <16>; 764*2eb4d8dcSEmmanuel Vadot azoteq,rate-lp-ms = <160>; 765*2eb4d8dcSEmmanuel Vadot 766*2eb4d8dcSEmmanuel Vadot azoteq,timeout-pwr-ms = <2560>; 767*2eb4d8dcSEmmanuel Vadot azoteq,timeout-lta-ms = <32768>; 768*2eb4d8dcSEmmanuel Vadot 769*2eb4d8dcSEmmanuel Vadot ulp-0 { 770*2eb4d8dcSEmmanuel Vadot azoteq,meas-cap-decrease; 771*2eb4d8dcSEmmanuel Vadot 772*2eb4d8dcSEmmanuel Vadot azoteq,ati-base = <75>; 773*2eb4d8dcSEmmanuel Vadot azoteq,ati-target = <1024>; 774*2eb4d8dcSEmmanuel Vadot 775*2eb4d8dcSEmmanuel Vadot azoteq,rx-enable = <2>, <3>, <4>, 776*2eb4d8dcSEmmanuel Vadot <5>, <6>, <7>; 777*2eb4d8dcSEmmanuel Vadot 778*2eb4d8dcSEmmanuel Vadot event-prox { 779*2eb4d8dcSEmmanuel Vadot linux,code = <KEY_POWER>; 780*2eb4d8dcSEmmanuel Vadot }; 781*2eb4d8dcSEmmanuel Vadot }; 782*2eb4d8dcSEmmanuel Vadot 783*2eb4d8dcSEmmanuel Vadot trackpad-3x3 { 784*2eb4d8dcSEmmanuel Vadot azoteq,filt-str-np-cnt = <1>; 785*2eb4d8dcSEmmanuel Vadot azoteq,filt-str-lp-cnt = <1>; 786*2eb4d8dcSEmmanuel Vadot 787*2eb4d8dcSEmmanuel Vadot azoteq,hyst = <4>; 788*2eb4d8dcSEmmanuel Vadot azoteq,thresh = <35>, <40>, <40>, 789*2eb4d8dcSEmmanuel Vadot <38>, <33>, <38>, 790*2eb4d8dcSEmmanuel Vadot <35>, <35>, <35>; 791*2eb4d8dcSEmmanuel Vadot 792*2eb4d8dcSEmmanuel Vadot azoteq,ati-mode = <3>; 793*2eb4d8dcSEmmanuel Vadot azoteq,ati-base = <195>, <195>, <195>, 794*2eb4d8dcSEmmanuel Vadot <195>, <195>, <195>, 795*2eb4d8dcSEmmanuel Vadot <195>, <195>, <195>; 796*2eb4d8dcSEmmanuel Vadot azoteq,ati-target = <512>; 797*2eb4d8dcSEmmanuel Vadot 798*2eb4d8dcSEmmanuel Vadot azoteq,proj-bias = <1>; 799*2eb4d8dcSEmmanuel Vadot azoteq,sense-freq = <2>; 800*2eb4d8dcSEmmanuel Vadot 801*2eb4d8dcSEmmanuel Vadot linux,keycodes = <KEY_VOLUMEUP>, 802*2eb4d8dcSEmmanuel Vadot <KEY_VOLUMEDOWN>, 803*2eb4d8dcSEmmanuel Vadot <KEY_NEXTSONG>, 804*2eb4d8dcSEmmanuel Vadot <KEY_PREVIOUSSONG>, 805*2eb4d8dcSEmmanuel Vadot <KEY_PLAYPAUSE>, 806*2eb4d8dcSEmmanuel Vadot <KEY_STOPCD>; 807*2eb4d8dcSEmmanuel Vadot 808*2eb4d8dcSEmmanuel Vadot azoteq,gesture-swipe; 809*2eb4d8dcSEmmanuel Vadot azoteq,timeout-swipe-ms = <800>; 810*2eb4d8dcSEmmanuel Vadot azoteq,timeout-tap-ms = <400>; 811*2eb4d8dcSEmmanuel Vadot azoteq,thresh-swipe = <40>; 812*2eb4d8dcSEmmanuel Vadot }; 813*2eb4d8dcSEmmanuel Vadot 814*2eb4d8dcSEmmanuel Vadot /* 815*2eb4d8dcSEmmanuel Vadot * Preserve the default register settings for 816*2eb4d8dcSEmmanuel Vadot * the temperature-tracking channel leveraged 817*2eb4d8dcSEmmanuel Vadot * by reset user interface (RUI) 1. 818*2eb4d8dcSEmmanuel Vadot * 819*2eb4d8dcSEmmanuel Vadot * Scalar properties (e.g. ATI mode) are left 820*2eb4d8dcSEmmanuel Vadot * untouched by simply omitting them; boolean 821*2eb4d8dcSEmmanuel Vadot * properties must be specified explicitly as 822*2eb4d8dcSEmmanuel Vadot * needed. 823*2eb4d8dcSEmmanuel Vadot */ 824*2eb4d8dcSEmmanuel Vadot generic-2 { 825*2eb4d8dcSEmmanuel Vadot azoteq,reseed-disable; 826*2eb4d8dcSEmmanuel Vadot azoteq,meas-cap-decrease; 827*2eb4d8dcSEmmanuel Vadot azoteq,dual-direction; 828*2eb4d8dcSEmmanuel Vadot azoteq,comp-disable; 829*2eb4d8dcSEmmanuel Vadot azoteq,static-enable; 830*2eb4d8dcSEmmanuel Vadot }; 831*2eb4d8dcSEmmanuel Vadot 832*2eb4d8dcSEmmanuel Vadot hall { 833*2eb4d8dcSEmmanuel Vadot azoteq,reseed-disable; 834*2eb4d8dcSEmmanuel Vadot azoteq,meas-cap-decrease; 835*2eb4d8dcSEmmanuel Vadot 836*2eb4d8dcSEmmanuel Vadot event-touch { 837*2eb4d8dcSEmmanuel Vadot linux,code = <SW_LID>; 838*2eb4d8dcSEmmanuel Vadot }; 839*2eb4d8dcSEmmanuel Vadot }; 840*2eb4d8dcSEmmanuel Vadot }; 841*2eb4d8dcSEmmanuel Vadot }; 842*2eb4d8dcSEmmanuel Vadot 843*2eb4d8dcSEmmanuel Vadot... 844