1aa1a8ff2SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2aa1a8ff2SEmmanuel Vadot%YAML 1.2 3aa1a8ff2SEmmanuel Vadot--- 4aa1a8ff2SEmmanuel Vadot$id: http://devicetree.org/schemas/input/touchscreen/azoteq,iqs7211.yaml# 5aa1a8ff2SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6aa1a8ff2SEmmanuel Vadot 7aa1a8ff2SEmmanuel Vadottitle: Azoteq IQS7210A/7211A/E Trackpad/Touchscreen Controller 8aa1a8ff2SEmmanuel Vadot 9aa1a8ff2SEmmanuel Vadotmaintainers: 10aa1a8ff2SEmmanuel Vadot - Jeff LaBundy <jeff@labundy.com> 11aa1a8ff2SEmmanuel Vadot 12aa1a8ff2SEmmanuel Vadotdescription: | 13aa1a8ff2SEmmanuel Vadot The Azoteq IQS7210A, IQS7211A and IQS7211E trackpad and touchscreen control- 14aa1a8ff2SEmmanuel Vadot lers employ projected-capacitance sensing and can track two contacts. 15aa1a8ff2SEmmanuel Vadot 16aa1a8ff2SEmmanuel Vadot Link to datasheets: https://www.azoteq.com/ 17aa1a8ff2SEmmanuel Vadot 18aa1a8ff2SEmmanuel Vadotproperties: 19aa1a8ff2SEmmanuel Vadot compatible: 20aa1a8ff2SEmmanuel Vadot enum: 21aa1a8ff2SEmmanuel Vadot - azoteq,iqs7210a 22aa1a8ff2SEmmanuel Vadot - azoteq,iqs7211a 23aa1a8ff2SEmmanuel Vadot - azoteq,iqs7211e 24aa1a8ff2SEmmanuel Vadot 25aa1a8ff2SEmmanuel Vadot reg: 26aa1a8ff2SEmmanuel Vadot maxItems: 1 27aa1a8ff2SEmmanuel Vadot 28aa1a8ff2SEmmanuel Vadot irq-gpios: 29aa1a8ff2SEmmanuel Vadot maxItems: 1 30aa1a8ff2SEmmanuel Vadot description: 31aa1a8ff2SEmmanuel Vadot Specifies the GPIO connected to the device's active-low RDY output. The 32aa1a8ff2SEmmanuel Vadot pin doubles as the IQS7211E's active-low MCLR input, in which case this 33aa1a8ff2SEmmanuel Vadot GPIO must be configured as open-drain. 34aa1a8ff2SEmmanuel Vadot 35aa1a8ff2SEmmanuel Vadot reset-gpios: 36aa1a8ff2SEmmanuel Vadot maxItems: 1 37aa1a8ff2SEmmanuel Vadot description: 38aa1a8ff2SEmmanuel Vadot Specifies the GPIO connected to the device's active-low MCLR input. The 39aa1a8ff2SEmmanuel Vadot device is temporarily held in hardware reset prior to initialization if 40aa1a8ff2SEmmanuel Vadot this property is present. 41aa1a8ff2SEmmanuel Vadot 42aa1a8ff2SEmmanuel Vadot azoteq,forced-comms: 43aa1a8ff2SEmmanuel Vadot type: boolean 44aa1a8ff2SEmmanuel Vadot description: 45aa1a8ff2SEmmanuel Vadot Enables forced communication; to be used with host adapters that cannot 46aa1a8ff2SEmmanuel Vadot tolerate clock stretching. 47aa1a8ff2SEmmanuel Vadot 48aa1a8ff2SEmmanuel Vadot azoteq,forced-comms-default: 49aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 50aa1a8ff2SEmmanuel Vadot enum: [0, 1] 51aa1a8ff2SEmmanuel Vadot description: 52aa1a8ff2SEmmanuel Vadot Indicates if the device's OTP memory enables (1) or disables (0) forced 53aa1a8ff2SEmmanuel Vadot communication by default. Specifying this property can expedite startup 54aa1a8ff2SEmmanuel Vadot time if the default value is known. 55aa1a8ff2SEmmanuel Vadot 56aa1a8ff2SEmmanuel Vadot If this property is not specified, communication is not initiated until 57aa1a8ff2SEmmanuel Vadot the device asserts its RDY pin shortly after exiting hardware reset. At 58aa1a8ff2SEmmanuel Vadot that point, forced communication is either enabled or disabled based on 59aa1a8ff2SEmmanuel Vadot the presence or absence of the 'azoteq,forced-comms' property. 60aa1a8ff2SEmmanuel Vadot 61aa1a8ff2SEmmanuel Vadot azoteq,rate-active-ms: 62aa1a8ff2SEmmanuel Vadot minimum: 0 63aa1a8ff2SEmmanuel Vadot maximum: 65535 64aa1a8ff2SEmmanuel Vadot description: Specifies the report rate (in ms) during active mode. 65aa1a8ff2SEmmanuel Vadot 66aa1a8ff2SEmmanuel Vadot azoteq,rate-touch-ms: 67aa1a8ff2SEmmanuel Vadot minimum: 0 68aa1a8ff2SEmmanuel Vadot maximum: 65535 69aa1a8ff2SEmmanuel Vadot description: Specifies the report rate (in ms) during idle-touch mode. 70aa1a8ff2SEmmanuel Vadot 71aa1a8ff2SEmmanuel Vadot azoteq,rate-idle-ms: 72aa1a8ff2SEmmanuel Vadot minimum: 0 73aa1a8ff2SEmmanuel Vadot maximum: 65535 74aa1a8ff2SEmmanuel Vadot description: Specifies the report rate (in ms) during idle mode. 75aa1a8ff2SEmmanuel Vadot 76aa1a8ff2SEmmanuel Vadot azoteq,rate-lp1-ms: 77aa1a8ff2SEmmanuel Vadot minimum: 0 78aa1a8ff2SEmmanuel Vadot maximum: 65535 79aa1a8ff2SEmmanuel Vadot description: Specifies the report rate (in ms) during low-power mode 1. 80aa1a8ff2SEmmanuel Vadot 81aa1a8ff2SEmmanuel Vadot azoteq,rate-lp2-ms: 82aa1a8ff2SEmmanuel Vadot minimum: 0 83aa1a8ff2SEmmanuel Vadot maximum: 65535 84aa1a8ff2SEmmanuel Vadot description: Specifies the report rate (in ms) during low-power mode 2. 85aa1a8ff2SEmmanuel Vadot 86aa1a8ff2SEmmanuel Vadot azoteq,timeout-active-ms: 87aa1a8ff2SEmmanuel Vadot multipleOf: 1000 88aa1a8ff2SEmmanuel Vadot minimum: 0 89aa1a8ff2SEmmanuel Vadot maximum: 65535000 90aa1a8ff2SEmmanuel Vadot description: 91aa1a8ff2SEmmanuel Vadot Specifies the length of time (in ms) to wait for an event before moving 92aa1a8ff2SEmmanuel Vadot from active mode to idle or idle-touch modes. 93aa1a8ff2SEmmanuel Vadot 94aa1a8ff2SEmmanuel Vadot azoteq,timeout-touch-ms: 95aa1a8ff2SEmmanuel Vadot multipleOf: 1000 96aa1a8ff2SEmmanuel Vadot minimum: 0 97aa1a8ff2SEmmanuel Vadot maximum: 65535000 98aa1a8ff2SEmmanuel Vadot description: 99aa1a8ff2SEmmanuel Vadot Specifies the length of time (in ms) to wait for an event before moving 100aa1a8ff2SEmmanuel Vadot from idle-touch mode to idle mode. 101aa1a8ff2SEmmanuel Vadot 102aa1a8ff2SEmmanuel Vadot azoteq,timeout-idle-ms: 103aa1a8ff2SEmmanuel Vadot multipleOf: 1000 104aa1a8ff2SEmmanuel Vadot minimum: 0 105aa1a8ff2SEmmanuel Vadot maximum: 65535000 106aa1a8ff2SEmmanuel Vadot description: 107aa1a8ff2SEmmanuel Vadot Specifies the length of time (in ms) to wait for an event before moving 108aa1a8ff2SEmmanuel Vadot from idle mode to low-power mode 1. 109aa1a8ff2SEmmanuel Vadot 110aa1a8ff2SEmmanuel Vadot azoteq,timeout-lp1-ms: 111aa1a8ff2SEmmanuel Vadot multipleOf: 1000 112aa1a8ff2SEmmanuel Vadot minimum: 0 113aa1a8ff2SEmmanuel Vadot maximum: 65535000 114aa1a8ff2SEmmanuel Vadot description: 115aa1a8ff2SEmmanuel Vadot Specifies the length of time (in ms) to wait for an event before moving 116aa1a8ff2SEmmanuel Vadot from low-power mode 1 to low-power mode 2. 117aa1a8ff2SEmmanuel Vadot 118aa1a8ff2SEmmanuel Vadot azoteq,timeout-lp2-ms: 119aa1a8ff2SEmmanuel Vadot multipleOf: 1000 120aa1a8ff2SEmmanuel Vadot minimum: 0 121aa1a8ff2SEmmanuel Vadot maximum: 60000 122aa1a8ff2SEmmanuel Vadot description: 123aa1a8ff2SEmmanuel Vadot Specifies the rate (in ms) at which the trackpad reference values 124aa1a8ff2SEmmanuel Vadot are updated during low-power modes 1 and 2. 125aa1a8ff2SEmmanuel Vadot 126aa1a8ff2SEmmanuel Vadot azoteq,timeout-ati-ms: 127aa1a8ff2SEmmanuel Vadot multipleOf: 1000 128aa1a8ff2SEmmanuel Vadot minimum: 0 129aa1a8ff2SEmmanuel Vadot maximum: 60000 130aa1a8ff2SEmmanuel Vadot description: 131aa1a8ff2SEmmanuel Vadot Specifies the delay (in ms) before the automatic tuning implementation 132aa1a8ff2SEmmanuel Vadot (ATI) is retried in the event it fails to complete. 133aa1a8ff2SEmmanuel Vadot 134aa1a8ff2SEmmanuel Vadot azoteq,timeout-comms-ms: 135aa1a8ff2SEmmanuel Vadot minimum: 0 136aa1a8ff2SEmmanuel Vadot maximum: 65535 137aa1a8ff2SEmmanuel Vadot description: 138aa1a8ff2SEmmanuel Vadot Specifies the delay (in ms) before a communication window is closed. 139aa1a8ff2SEmmanuel Vadot 140aa1a8ff2SEmmanuel Vadot azoteq,timeout-press-ms: 141aa1a8ff2SEmmanuel Vadot multipleOf: 1000 142aa1a8ff2SEmmanuel Vadot minimum: 0 143aa1a8ff2SEmmanuel Vadot maximum: 60000 144aa1a8ff2SEmmanuel Vadot description: 145aa1a8ff2SEmmanuel Vadot Specifies the length of time (in ms) to wait before automatically 146aa1a8ff2SEmmanuel Vadot releasing a press event. Specify zero to allow the press state to 147aa1a8ff2SEmmanuel Vadot persist indefinitely. 148aa1a8ff2SEmmanuel Vadot 149aa1a8ff2SEmmanuel Vadot azoteq,fosc-freq: 150aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 151aa1a8ff2SEmmanuel Vadot enum: [0, 1] 152aa1a8ff2SEmmanuel Vadot description: | 153aa1a8ff2SEmmanuel Vadot Specifies the device's core clock frequency as follows: 154aa1a8ff2SEmmanuel Vadot 0: 14 MHz 155aa1a8ff2SEmmanuel Vadot 1: 18 MHz 156aa1a8ff2SEmmanuel Vadot 157aa1a8ff2SEmmanuel Vadot azoteq,fosc-trim: 158aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 159aa1a8ff2SEmmanuel Vadot minimum: 0 160aa1a8ff2SEmmanuel Vadot maximum: 15 161aa1a8ff2SEmmanuel Vadot description: Specifies the device's core clock frequency trim. 162aa1a8ff2SEmmanuel Vadot 163aa1a8ff2SEmmanuel Vadot azoteq,num-contacts: 164aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 165aa1a8ff2SEmmanuel Vadot minimum: 0 166aa1a8ff2SEmmanuel Vadot maximum: 2 167aa1a8ff2SEmmanuel Vadot default: 0 168aa1a8ff2SEmmanuel Vadot description: Specifies the number of contacts reported by the device. 169aa1a8ff2SEmmanuel Vadot 170aa1a8ff2SEmmanuel Vadot azoteq,contact-split: 171aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 172aa1a8ff2SEmmanuel Vadot minimum: 0 173aa1a8ff2SEmmanuel Vadot maximum: 255 174aa1a8ff2SEmmanuel Vadot description: Specifies the contact (finger) split factor. 175aa1a8ff2SEmmanuel Vadot 176aa1a8ff2SEmmanuel Vadot azoteq,trim-x: 177aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 178aa1a8ff2SEmmanuel Vadot minimum: 0 179aa1a8ff2SEmmanuel Vadot maximum: 255 180aa1a8ff2SEmmanuel Vadot description: Specifies the horizontal trim width. 181aa1a8ff2SEmmanuel Vadot 182aa1a8ff2SEmmanuel Vadot azoteq,trim-y: 183aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 184aa1a8ff2SEmmanuel Vadot minimum: 0 185aa1a8ff2SEmmanuel Vadot maximum: 255 186aa1a8ff2SEmmanuel Vadot description: Specifies the vertical trim height. 187aa1a8ff2SEmmanuel Vadot 188aa1a8ff2SEmmanuel Vadot trackpad: 189aa1a8ff2SEmmanuel Vadot type: object 190aa1a8ff2SEmmanuel Vadot description: Represents all channels associated with the trackpad. 191aa1a8ff2SEmmanuel Vadot 192aa1a8ff2SEmmanuel Vadot properties: 193aa1a8ff2SEmmanuel Vadot azoteq,rx-enable: 194aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 195aa1a8ff2SEmmanuel Vadot minItems: 1 196aa1a8ff2SEmmanuel Vadot maxItems: 8 197aa1a8ff2SEmmanuel Vadot items: 198aa1a8ff2SEmmanuel Vadot minimum: 0 199aa1a8ff2SEmmanuel Vadot maximum: 7 200aa1a8ff2SEmmanuel Vadot description: 201aa1a8ff2SEmmanuel Vadot Specifies the order of the CRx pin(s) associated with the trackpad. 202aa1a8ff2SEmmanuel Vadot 203aa1a8ff2SEmmanuel Vadot azoteq,tx-enable: 204aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 205aa1a8ff2SEmmanuel Vadot minItems: 1 206aa1a8ff2SEmmanuel Vadot maxItems: 12 207aa1a8ff2SEmmanuel Vadot items: 208aa1a8ff2SEmmanuel Vadot minimum: 0 209aa1a8ff2SEmmanuel Vadot maximum: 11 210aa1a8ff2SEmmanuel Vadot description: 211aa1a8ff2SEmmanuel Vadot Specifies the order of the CTx pin(s) associated with the trackpad. 212aa1a8ff2SEmmanuel Vadot 213aa1a8ff2SEmmanuel Vadot azoteq,channel-select: 214aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 215aa1a8ff2SEmmanuel Vadot minItems: 1 216aa1a8ff2SEmmanuel Vadot maxItems: 36 217aa1a8ff2SEmmanuel Vadot items: 218aa1a8ff2SEmmanuel Vadot minimum: 0 219aa1a8ff2SEmmanuel Vadot maximum: 255 220aa1a8ff2SEmmanuel Vadot description: | 221aa1a8ff2SEmmanuel Vadot Specifies the channels mapped to each cycle in the following order: 222aa1a8ff2SEmmanuel Vadot Cycle 0, slot 0 223aa1a8ff2SEmmanuel Vadot Cycle 0, slot 1 224aa1a8ff2SEmmanuel Vadot Cycle 1, slot 0 225aa1a8ff2SEmmanuel Vadot Cycle 1, slot 1 226aa1a8ff2SEmmanuel Vadot ...and so on. Specify 255 to disable a given slot. 227aa1a8ff2SEmmanuel Vadot 228aa1a8ff2SEmmanuel Vadot azoteq,ati-frac-div-fine: 229aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 230aa1a8ff2SEmmanuel Vadot minimum: 0 231aa1a8ff2SEmmanuel Vadot maximum: 31 232aa1a8ff2SEmmanuel Vadot description: Specifies the trackpad's ATI fine fractional divider. 233aa1a8ff2SEmmanuel Vadot 234aa1a8ff2SEmmanuel Vadot azoteq,ati-frac-mult-coarse: 235aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 236aa1a8ff2SEmmanuel Vadot minimum: 0 237aa1a8ff2SEmmanuel Vadot maximum: 15 238aa1a8ff2SEmmanuel Vadot description: Specifies the trackpad's ATI coarse fractional multiplier. 239aa1a8ff2SEmmanuel Vadot 240aa1a8ff2SEmmanuel Vadot azoteq,ati-frac-div-coarse: 241aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 242aa1a8ff2SEmmanuel Vadot minimum: 0 243aa1a8ff2SEmmanuel Vadot maximum: 31 244aa1a8ff2SEmmanuel Vadot description: Specifies the trackpad's ATI coarse fractional divider. 245aa1a8ff2SEmmanuel Vadot 246aa1a8ff2SEmmanuel Vadot azoteq,ati-comp-div: 247aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 248aa1a8ff2SEmmanuel Vadot minimum: 0 249aa1a8ff2SEmmanuel Vadot maximum: 31 250aa1a8ff2SEmmanuel Vadot description: Specifies the trackpad's ATI compensation divider. 251aa1a8ff2SEmmanuel Vadot 252aa1a8ff2SEmmanuel Vadot azoteq,ati-target: 253aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 254aa1a8ff2SEmmanuel Vadot minimum: 0 255aa1a8ff2SEmmanuel Vadot maximum: 65535 256aa1a8ff2SEmmanuel Vadot description: Specifies the trackpad's ATI target. 257aa1a8ff2SEmmanuel Vadot 258aa1a8ff2SEmmanuel Vadot azoteq,touch-enter: 259aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 260aa1a8ff2SEmmanuel Vadot minimum: 0 261aa1a8ff2SEmmanuel Vadot maximum: 255 262aa1a8ff2SEmmanuel Vadot description: Specifies the trackpad's touch entrance factor. 263aa1a8ff2SEmmanuel Vadot 264aa1a8ff2SEmmanuel Vadot azoteq,touch-exit: 265aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 266aa1a8ff2SEmmanuel Vadot minimum: 0 267aa1a8ff2SEmmanuel Vadot maximum: 255 268aa1a8ff2SEmmanuel Vadot description: Specifies the trackpad's touch exit factor. 269aa1a8ff2SEmmanuel Vadot 270aa1a8ff2SEmmanuel Vadot azoteq,thresh: 271aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 272aa1a8ff2SEmmanuel Vadot minimum: 0 273aa1a8ff2SEmmanuel Vadot maximum: 255 274aa1a8ff2SEmmanuel Vadot description: Specifies the trackpad's stationary touch threshold. 275aa1a8ff2SEmmanuel Vadot 276aa1a8ff2SEmmanuel Vadot azoteq,conv-period: 277aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 278aa1a8ff2SEmmanuel Vadot minimum: 0 279aa1a8ff2SEmmanuel Vadot maximum: 255 280aa1a8ff2SEmmanuel Vadot description: Specifies the trackpad's conversion period. 281aa1a8ff2SEmmanuel Vadot 282aa1a8ff2SEmmanuel Vadot azoteq,conv-frac: 283aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 284aa1a8ff2SEmmanuel Vadot minimum: 0 285aa1a8ff2SEmmanuel Vadot maximum: 255 286aa1a8ff2SEmmanuel Vadot description: Specifies the trackpad's conversion frequency fraction. 287aa1a8ff2SEmmanuel Vadot 288aa1a8ff2SEmmanuel Vadot patternProperties: 289aa1a8ff2SEmmanuel Vadot "^event-(tap(-double|-triple)?|hold|palm|swipe-(x|y)-(pos|neg)(-hold)?)$": 290aa1a8ff2SEmmanuel Vadot type: object 291aa1a8ff2SEmmanuel Vadot $ref: ../input.yaml# 292aa1a8ff2SEmmanuel Vadot description: 293aa1a8ff2SEmmanuel Vadot Represents a gesture event reported by the trackpad. In the case of 294aa1a8ff2SEmmanuel Vadot axial gestures, the duration or distance specified in one direction 295aa1a8ff2SEmmanuel Vadot applies to both directions along the same axis. 296aa1a8ff2SEmmanuel Vadot 297aa1a8ff2SEmmanuel Vadot properties: 298aa1a8ff2SEmmanuel Vadot linux,code: true 299aa1a8ff2SEmmanuel Vadot 300aa1a8ff2SEmmanuel Vadot azoteq,gesture-max-ms: 301aa1a8ff2SEmmanuel Vadot minimum: 0 302aa1a8ff2SEmmanuel Vadot maximum: 65535 303aa1a8ff2SEmmanuel Vadot description: Specifies the maximum duration of tap/swipe gestures. 304aa1a8ff2SEmmanuel Vadot 305aa1a8ff2SEmmanuel Vadot azoteq,gesture-mid-ms: 306aa1a8ff2SEmmanuel Vadot minimum: 0 307aa1a8ff2SEmmanuel Vadot maximum: 65535 308aa1a8ff2SEmmanuel Vadot description: 309aa1a8ff2SEmmanuel Vadot Specifies the maximum duration between subsequent tap gestures 310aa1a8ff2SEmmanuel Vadot (IQS7211E only). 311aa1a8ff2SEmmanuel Vadot 312aa1a8ff2SEmmanuel Vadot azoteq,gesture-min-ms: 313aa1a8ff2SEmmanuel Vadot minimum: 0 314aa1a8ff2SEmmanuel Vadot maximum: 65535 315aa1a8ff2SEmmanuel Vadot description: Specifies the minimum duration of hold gestures. 316aa1a8ff2SEmmanuel Vadot 317aa1a8ff2SEmmanuel Vadot azoteq,gesture-dist: 318aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 319aa1a8ff2SEmmanuel Vadot minimum: 0 320aa1a8ff2SEmmanuel Vadot maximum: 65535 321aa1a8ff2SEmmanuel Vadot description: 322aa1a8ff2SEmmanuel Vadot Specifies the minimum (swipe) or maximum (tap and hold) distance 323aa1a8ff2SEmmanuel Vadot a finger may travel to be considered a gesture. 324aa1a8ff2SEmmanuel Vadot 325aa1a8ff2SEmmanuel Vadot azoteq,gesture-dist-rep: 326aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 327aa1a8ff2SEmmanuel Vadot minimum: 0 328aa1a8ff2SEmmanuel Vadot maximum: 65535 329aa1a8ff2SEmmanuel Vadot description: 330aa1a8ff2SEmmanuel Vadot Specifies the minimum distance a finger must travel to elicit a 331aa1a8ff2SEmmanuel Vadot repeated swipe gesture (IQS7211E only). 332aa1a8ff2SEmmanuel Vadot 333aa1a8ff2SEmmanuel Vadot azoteq,gesture-angle: 334aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 335aa1a8ff2SEmmanuel Vadot minimum: 0 336aa1a8ff2SEmmanuel Vadot maximum: 75 337aa1a8ff2SEmmanuel Vadot description: 338aa1a8ff2SEmmanuel Vadot Specifies the maximum angle (in degrees) a finger may travel to 339aa1a8ff2SEmmanuel Vadot be considered a swipe gesture. 340aa1a8ff2SEmmanuel Vadot 341aa1a8ff2SEmmanuel Vadot azoteq,thresh: 342aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 343aa1a8ff2SEmmanuel Vadot minimum: 0 344aa1a8ff2SEmmanuel Vadot maximum: 42 345aa1a8ff2SEmmanuel Vadot description: Specifies the palm gesture threshold (IQS7211E only). 346aa1a8ff2SEmmanuel Vadot 347aa1a8ff2SEmmanuel Vadot additionalProperties: false 348aa1a8ff2SEmmanuel Vadot 349aa1a8ff2SEmmanuel Vadot dependencies: 350aa1a8ff2SEmmanuel Vadot azoteq,rx-enable: ["azoteq,tx-enable"] 351aa1a8ff2SEmmanuel Vadot azoteq,tx-enable: ["azoteq,rx-enable"] 352aa1a8ff2SEmmanuel Vadot azoteq,channel-select: ["azoteq,rx-enable"] 353aa1a8ff2SEmmanuel Vadot 354aa1a8ff2SEmmanuel Vadot additionalProperties: false 355aa1a8ff2SEmmanuel Vadot 356aa1a8ff2SEmmanuel Vadot alp: 357aa1a8ff2SEmmanuel Vadot type: object 358aa1a8ff2SEmmanuel Vadot $ref: ../input.yaml# 359aa1a8ff2SEmmanuel Vadot description: Represents the alternate low-power channel (ALP). 360aa1a8ff2SEmmanuel Vadot 361aa1a8ff2SEmmanuel Vadot properties: 362aa1a8ff2SEmmanuel Vadot azoteq,rx-enable: 363aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 364aa1a8ff2SEmmanuel Vadot minItems: 1 365aa1a8ff2SEmmanuel Vadot maxItems: 8 366aa1a8ff2SEmmanuel Vadot items: 367aa1a8ff2SEmmanuel Vadot minimum: 0 368aa1a8ff2SEmmanuel Vadot maximum: 7 369aa1a8ff2SEmmanuel Vadot description: 370aa1a8ff2SEmmanuel Vadot Specifies the CRx pin(s) associated with the ALP in no particular 371aa1a8ff2SEmmanuel Vadot order. 372aa1a8ff2SEmmanuel Vadot 373aa1a8ff2SEmmanuel Vadot azoteq,tx-enable: 374aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 375aa1a8ff2SEmmanuel Vadot minItems: 1 376aa1a8ff2SEmmanuel Vadot maxItems: 12 377aa1a8ff2SEmmanuel Vadot items: 378aa1a8ff2SEmmanuel Vadot minimum: 0 379aa1a8ff2SEmmanuel Vadot maximum: 11 380aa1a8ff2SEmmanuel Vadot description: 381aa1a8ff2SEmmanuel Vadot Specifies the CTx pin(s) associated with the ALP in no particular 382aa1a8ff2SEmmanuel Vadot order. 383aa1a8ff2SEmmanuel Vadot 384aa1a8ff2SEmmanuel Vadot azoteq,ati-frac-div-fine: 385aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 386aa1a8ff2SEmmanuel Vadot minimum: 0 387aa1a8ff2SEmmanuel Vadot maximum: 31 388aa1a8ff2SEmmanuel Vadot description: Specifies the ALP's ATI fine fractional divider. 389aa1a8ff2SEmmanuel Vadot 390aa1a8ff2SEmmanuel Vadot azoteq,ati-frac-mult-coarse: 391aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 392aa1a8ff2SEmmanuel Vadot minimum: 0 393aa1a8ff2SEmmanuel Vadot maximum: 15 394aa1a8ff2SEmmanuel Vadot description: Specifies the ALP's ATI coarse fractional multiplier. 395aa1a8ff2SEmmanuel Vadot 396aa1a8ff2SEmmanuel Vadot azoteq,ati-frac-div-coarse: 397aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 398aa1a8ff2SEmmanuel Vadot minimum: 0 399aa1a8ff2SEmmanuel Vadot maximum: 31 400aa1a8ff2SEmmanuel Vadot description: Specifies the ALP's ATI coarse fractional divider. 401aa1a8ff2SEmmanuel Vadot 402aa1a8ff2SEmmanuel Vadot azoteq,ati-comp-div: 403aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 404aa1a8ff2SEmmanuel Vadot minimum: 0 405aa1a8ff2SEmmanuel Vadot maximum: 31 406aa1a8ff2SEmmanuel Vadot description: Specifies the ALP's ATI compensation divider. 407aa1a8ff2SEmmanuel Vadot 408aa1a8ff2SEmmanuel Vadot azoteq,ati-target: 409aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 410aa1a8ff2SEmmanuel Vadot minimum: 0 411aa1a8ff2SEmmanuel Vadot maximum: 65535 412aa1a8ff2SEmmanuel Vadot description: Specifies the ALP's ATI target. 413aa1a8ff2SEmmanuel Vadot 414aa1a8ff2SEmmanuel Vadot azoteq,ati-base: 415aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 416aa1a8ff2SEmmanuel Vadot multipleOf: 8 417aa1a8ff2SEmmanuel Vadot minimum: 0 418aa1a8ff2SEmmanuel Vadot maximum: 255 419aa1a8ff2SEmmanuel Vadot description: Specifies the ALP's ATI base. 420aa1a8ff2SEmmanuel Vadot 421aa1a8ff2SEmmanuel Vadot azoteq,ati-mode: 422aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 423aa1a8ff2SEmmanuel Vadot enum: [0, 1] 424aa1a8ff2SEmmanuel Vadot description: | 425aa1a8ff2SEmmanuel Vadot Specifies the ALP's ATI mode as follows: 426aa1a8ff2SEmmanuel Vadot 0: Partial 427aa1a8ff2SEmmanuel Vadot 1: Full 428aa1a8ff2SEmmanuel Vadot 429aa1a8ff2SEmmanuel Vadot azoteq,sense-mode: 430aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 431aa1a8ff2SEmmanuel Vadot enum: [0, 1] 432aa1a8ff2SEmmanuel Vadot description: | 433aa1a8ff2SEmmanuel Vadot Specifies the ALP's sensing mode as follows: 434aa1a8ff2SEmmanuel Vadot 0: Self capacitive 435aa1a8ff2SEmmanuel Vadot 1: Mutual capacitive 436aa1a8ff2SEmmanuel Vadot 437aa1a8ff2SEmmanuel Vadot azoteq,debounce-enter: 438aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 439aa1a8ff2SEmmanuel Vadot minimum: 0 440aa1a8ff2SEmmanuel Vadot maximum: 255 441aa1a8ff2SEmmanuel Vadot description: Specifies the ALP's debounce entrance factor. 442aa1a8ff2SEmmanuel Vadot 443aa1a8ff2SEmmanuel Vadot azoteq,debounce-exit: 444aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 445aa1a8ff2SEmmanuel Vadot minimum: 0 446aa1a8ff2SEmmanuel Vadot maximum: 255 447aa1a8ff2SEmmanuel Vadot description: Specifies the ALP's debounce exit factor. 448aa1a8ff2SEmmanuel Vadot 449aa1a8ff2SEmmanuel Vadot azoteq,thresh: 450aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 451aa1a8ff2SEmmanuel Vadot minimum: 0 452aa1a8ff2SEmmanuel Vadot maximum: 65535 453aa1a8ff2SEmmanuel Vadot description: Specifies the ALP's proximity or touch threshold. 454aa1a8ff2SEmmanuel Vadot 455aa1a8ff2SEmmanuel Vadot azoteq,conv-period: 456aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 457aa1a8ff2SEmmanuel Vadot minimum: 0 458aa1a8ff2SEmmanuel Vadot maximum: 255 459aa1a8ff2SEmmanuel Vadot description: Specifies the ALP's conversion period. 460aa1a8ff2SEmmanuel Vadot 461aa1a8ff2SEmmanuel Vadot azoteq,conv-frac: 462aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 463aa1a8ff2SEmmanuel Vadot minimum: 0 464aa1a8ff2SEmmanuel Vadot maximum: 255 465aa1a8ff2SEmmanuel Vadot description: Specifies the ALP's conversion frequency fraction. 466aa1a8ff2SEmmanuel Vadot 467aa1a8ff2SEmmanuel Vadot linux,code: true 468aa1a8ff2SEmmanuel Vadot 469aa1a8ff2SEmmanuel Vadot additionalProperties: false 470aa1a8ff2SEmmanuel Vadot 471aa1a8ff2SEmmanuel Vadot button: 472aa1a8ff2SEmmanuel Vadot type: object 473aa1a8ff2SEmmanuel Vadot description: Represents the inductive or capacitive button. 474aa1a8ff2SEmmanuel Vadot 475aa1a8ff2SEmmanuel Vadot properties: 476aa1a8ff2SEmmanuel Vadot azoteq,ati-frac-div-fine: 477aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 478aa1a8ff2SEmmanuel Vadot minimum: 0 479aa1a8ff2SEmmanuel Vadot maximum: 31 480aa1a8ff2SEmmanuel Vadot description: Specifies the button's ATI fine fractional divider. 481aa1a8ff2SEmmanuel Vadot 482aa1a8ff2SEmmanuel Vadot azoteq,ati-frac-mult-coarse: 483aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 484aa1a8ff2SEmmanuel Vadot minimum: 0 485aa1a8ff2SEmmanuel Vadot maximum: 15 486aa1a8ff2SEmmanuel Vadot description: Specifies the button's ATI coarse fractional multiplier. 487aa1a8ff2SEmmanuel Vadot 488aa1a8ff2SEmmanuel Vadot azoteq,ati-frac-div-coarse: 489aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 490aa1a8ff2SEmmanuel Vadot minimum: 0 491aa1a8ff2SEmmanuel Vadot maximum: 31 492aa1a8ff2SEmmanuel Vadot description: Specifies the button's ATI coarse fractional divider. 493aa1a8ff2SEmmanuel Vadot 494aa1a8ff2SEmmanuel Vadot azoteq,ati-comp-div: 495aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 496aa1a8ff2SEmmanuel Vadot minimum: 0 497aa1a8ff2SEmmanuel Vadot maximum: 31 498aa1a8ff2SEmmanuel Vadot description: Specifies the button's ATI compensation divider. 499aa1a8ff2SEmmanuel Vadot 500aa1a8ff2SEmmanuel Vadot azoteq,ati-target: 501aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 502aa1a8ff2SEmmanuel Vadot minimum: 0 503aa1a8ff2SEmmanuel Vadot maximum: 65535 504aa1a8ff2SEmmanuel Vadot description: Specifies the button's ATI target. 505aa1a8ff2SEmmanuel Vadot 506aa1a8ff2SEmmanuel Vadot azoteq,ati-base: 507aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 508aa1a8ff2SEmmanuel Vadot multipleOf: 8 509aa1a8ff2SEmmanuel Vadot minimum: 0 510aa1a8ff2SEmmanuel Vadot maximum: 255 511aa1a8ff2SEmmanuel Vadot description: Specifies the button's ATI base. 512aa1a8ff2SEmmanuel Vadot 513aa1a8ff2SEmmanuel Vadot azoteq,ati-mode: 514aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 515aa1a8ff2SEmmanuel Vadot enum: [0, 1] 516aa1a8ff2SEmmanuel Vadot description: | 517aa1a8ff2SEmmanuel Vadot Specifies the button's ATI mode as follows: 518aa1a8ff2SEmmanuel Vadot 0: Partial 519aa1a8ff2SEmmanuel Vadot 1: Full 520aa1a8ff2SEmmanuel Vadot 521aa1a8ff2SEmmanuel Vadot azoteq,sense-mode: 522aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 523aa1a8ff2SEmmanuel Vadot enum: [0, 1, 2] 524aa1a8ff2SEmmanuel Vadot description: | 525aa1a8ff2SEmmanuel Vadot Specifies the button's sensing mode as follows: 526aa1a8ff2SEmmanuel Vadot 0: Self capacitive 527aa1a8ff2SEmmanuel Vadot 1: Mutual capacitive 528aa1a8ff2SEmmanuel Vadot 2: Inductive 529aa1a8ff2SEmmanuel Vadot 530aa1a8ff2SEmmanuel Vadot azoteq,touch-enter: 531aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 532aa1a8ff2SEmmanuel Vadot minimum: 0 533aa1a8ff2SEmmanuel Vadot maximum: 255 534aa1a8ff2SEmmanuel Vadot description: Specifies the button's touch entrance factor. 535aa1a8ff2SEmmanuel Vadot 536aa1a8ff2SEmmanuel Vadot azoteq,touch-exit: 537aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 538aa1a8ff2SEmmanuel Vadot minimum: 0 539aa1a8ff2SEmmanuel Vadot maximum: 255 540aa1a8ff2SEmmanuel Vadot description: Specifies the button's touch exit factor. 541aa1a8ff2SEmmanuel Vadot 542aa1a8ff2SEmmanuel Vadot azoteq,debounce-enter: 543aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 544aa1a8ff2SEmmanuel Vadot minimum: 0 545aa1a8ff2SEmmanuel Vadot maximum: 255 546aa1a8ff2SEmmanuel Vadot description: Specifies the button's debounce entrance factor. 547aa1a8ff2SEmmanuel Vadot 548aa1a8ff2SEmmanuel Vadot azoteq,debounce-exit: 549aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 550aa1a8ff2SEmmanuel Vadot minimum: 0 551aa1a8ff2SEmmanuel Vadot maximum: 255 552aa1a8ff2SEmmanuel Vadot description: Specifies the button's debounce exit factor. 553aa1a8ff2SEmmanuel Vadot 554aa1a8ff2SEmmanuel Vadot azoteq,thresh: 555aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 556aa1a8ff2SEmmanuel Vadot minimum: 0 557aa1a8ff2SEmmanuel Vadot maximum: 65535 558aa1a8ff2SEmmanuel Vadot description: Specifies the button's proximity threshold. 559aa1a8ff2SEmmanuel Vadot 560aa1a8ff2SEmmanuel Vadot azoteq,conv-period: 561aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 562aa1a8ff2SEmmanuel Vadot minimum: 0 563aa1a8ff2SEmmanuel Vadot maximum: 255 564aa1a8ff2SEmmanuel Vadot description: Specifies the button's conversion period. 565aa1a8ff2SEmmanuel Vadot 566aa1a8ff2SEmmanuel Vadot azoteq,conv-frac: 567aa1a8ff2SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 568aa1a8ff2SEmmanuel Vadot minimum: 0 569aa1a8ff2SEmmanuel Vadot maximum: 255 570aa1a8ff2SEmmanuel Vadot description: Specifies the button's conversion frequency fraction. 571aa1a8ff2SEmmanuel Vadot 572aa1a8ff2SEmmanuel Vadot patternProperties: 573aa1a8ff2SEmmanuel Vadot "^event-(prox|touch)$": 574aa1a8ff2SEmmanuel Vadot type: object 575aa1a8ff2SEmmanuel Vadot $ref: ../input.yaml# 576aa1a8ff2SEmmanuel Vadot description: 577aa1a8ff2SEmmanuel Vadot Represents a proximity or touch event reported by the button. 578aa1a8ff2SEmmanuel Vadot 579aa1a8ff2SEmmanuel Vadot properties: 580aa1a8ff2SEmmanuel Vadot linux,code: true 581aa1a8ff2SEmmanuel Vadot 582aa1a8ff2SEmmanuel Vadot additionalProperties: false 583aa1a8ff2SEmmanuel Vadot 584aa1a8ff2SEmmanuel Vadot additionalProperties: false 585aa1a8ff2SEmmanuel Vadot 586aa1a8ff2SEmmanuel Vadot wakeup-source: true 587aa1a8ff2SEmmanuel Vadot 588aa1a8ff2SEmmanuel Vadot touchscreen-size-x: true 589aa1a8ff2SEmmanuel Vadot touchscreen-size-y: true 590aa1a8ff2SEmmanuel Vadot touchscreen-inverted-x: true 591aa1a8ff2SEmmanuel Vadot touchscreen-inverted-y: true 592aa1a8ff2SEmmanuel Vadot touchscreen-swapped-x-y: true 593aa1a8ff2SEmmanuel Vadot 594aa1a8ff2SEmmanuel Vadotdependencies: 595aa1a8ff2SEmmanuel Vadot touchscreen-size-x: ["azoteq,num-contacts"] 596aa1a8ff2SEmmanuel Vadot touchscreen-size-y: ["azoteq,num-contacts"] 597aa1a8ff2SEmmanuel Vadot touchscreen-inverted-x: ["azoteq,num-contacts"] 598aa1a8ff2SEmmanuel Vadot touchscreen-inverted-y: ["azoteq,num-contacts"] 599aa1a8ff2SEmmanuel Vadot touchscreen-swapped-x-y: ["azoteq,num-contacts"] 600aa1a8ff2SEmmanuel Vadot 601aa1a8ff2SEmmanuel Vadotrequired: 602aa1a8ff2SEmmanuel Vadot - compatible 603aa1a8ff2SEmmanuel Vadot - reg 604aa1a8ff2SEmmanuel Vadot - irq-gpios 605aa1a8ff2SEmmanuel Vadot 606aa1a8ff2SEmmanuel VadotadditionalProperties: false 607aa1a8ff2SEmmanuel Vadot 608aa1a8ff2SEmmanuel VadotallOf: 609aa1a8ff2SEmmanuel Vadot - $ref: touchscreen.yaml# 610aa1a8ff2SEmmanuel Vadot 611aa1a8ff2SEmmanuel Vadot - if: 612aa1a8ff2SEmmanuel Vadot properties: 613aa1a8ff2SEmmanuel Vadot compatible: 614aa1a8ff2SEmmanuel Vadot contains: 615aa1a8ff2SEmmanuel Vadot const: azoteq,iqs7210a 616aa1a8ff2SEmmanuel Vadot 617aa1a8ff2SEmmanuel Vadot then: 618aa1a8ff2SEmmanuel Vadot properties: 619aa1a8ff2SEmmanuel Vadot alp: 620aa1a8ff2SEmmanuel Vadot properties: 621aa1a8ff2SEmmanuel Vadot azoteq,rx-enable: 622aa1a8ff2SEmmanuel Vadot maxItems: 4 623aa1a8ff2SEmmanuel Vadot items: 624aa1a8ff2SEmmanuel Vadot minimum: 4 625aa1a8ff2SEmmanuel Vadot 626aa1a8ff2SEmmanuel Vadot else: 627aa1a8ff2SEmmanuel Vadot properties: 628aa1a8ff2SEmmanuel Vadot azoteq,timeout-press-ms: false 629aa1a8ff2SEmmanuel Vadot 630aa1a8ff2SEmmanuel Vadot alp: 631aa1a8ff2SEmmanuel Vadot properties: 632aa1a8ff2SEmmanuel Vadot azoteq,ati-mode: false 633aa1a8ff2SEmmanuel Vadot 634aa1a8ff2SEmmanuel Vadot button: false 635aa1a8ff2SEmmanuel Vadot 636aa1a8ff2SEmmanuel Vadot - if: 637aa1a8ff2SEmmanuel Vadot properties: 638aa1a8ff2SEmmanuel Vadot compatible: 639aa1a8ff2SEmmanuel Vadot contains: 640aa1a8ff2SEmmanuel Vadot const: azoteq,iqs7211e 641aa1a8ff2SEmmanuel Vadot 642aa1a8ff2SEmmanuel Vadot then: 643aa1a8ff2SEmmanuel Vadot properties: 644aa1a8ff2SEmmanuel Vadot reset-gpios: false 645aa1a8ff2SEmmanuel Vadot 646aa1a8ff2SEmmanuel Vadot trackpad: 647aa1a8ff2SEmmanuel Vadot properties: 648aa1a8ff2SEmmanuel Vadot azoteq,tx-enable: 649aa1a8ff2SEmmanuel Vadot maxItems: 13 650aa1a8ff2SEmmanuel Vadot items: 651aa1a8ff2SEmmanuel Vadot maximum: 12 652aa1a8ff2SEmmanuel Vadot 653aa1a8ff2SEmmanuel Vadot alp: 654aa1a8ff2SEmmanuel Vadot properties: 655aa1a8ff2SEmmanuel Vadot azoteq,tx-enable: 656aa1a8ff2SEmmanuel Vadot maxItems: 13 657aa1a8ff2SEmmanuel Vadot items: 658aa1a8ff2SEmmanuel Vadot maximum: 12 659aa1a8ff2SEmmanuel Vadot 660aa1a8ff2SEmmanuel Vadotexamples: 661aa1a8ff2SEmmanuel Vadot - | 662aa1a8ff2SEmmanuel Vadot #include <dt-bindings/gpio/gpio.h> 663aa1a8ff2SEmmanuel Vadot #include <dt-bindings/input/input.h> 664aa1a8ff2SEmmanuel Vadot 665aa1a8ff2SEmmanuel Vadot i2c { 666aa1a8ff2SEmmanuel Vadot #address-cells = <1>; 667aa1a8ff2SEmmanuel Vadot #size-cells = <0>; 668aa1a8ff2SEmmanuel Vadot 669*b2d2a78aSEmmanuel Vadot touchscreen@56 { 670aa1a8ff2SEmmanuel Vadot compatible = "azoteq,iqs7210a"; 671aa1a8ff2SEmmanuel Vadot reg = <0x56>; 672aa1a8ff2SEmmanuel Vadot irq-gpios = <&gpio 4 GPIO_ACTIVE_LOW>; 673aa1a8ff2SEmmanuel Vadot reset-gpios = <&gpio 17 (GPIO_ACTIVE_LOW | 674aa1a8ff2SEmmanuel Vadot GPIO_PUSH_PULL)>; 675aa1a8ff2SEmmanuel Vadot azoteq,num-contacts = <2>; 676aa1a8ff2SEmmanuel Vadot 677aa1a8ff2SEmmanuel Vadot trackpad { 678aa1a8ff2SEmmanuel Vadot azoteq,rx-enable = <6>, <5>, <4>, <3>, <2>; 679aa1a8ff2SEmmanuel Vadot azoteq,tx-enable = <1>, <7>, <8>, <9>, <10>; 680aa1a8ff2SEmmanuel Vadot }; 681aa1a8ff2SEmmanuel Vadot 682aa1a8ff2SEmmanuel Vadot button { 683aa1a8ff2SEmmanuel Vadot azoteq,sense-mode = <2>; 684aa1a8ff2SEmmanuel Vadot azoteq,touch-enter = <40>; 685aa1a8ff2SEmmanuel Vadot azoteq,touch-exit = <36>; 686aa1a8ff2SEmmanuel Vadot 687aa1a8ff2SEmmanuel Vadot event-touch { 688aa1a8ff2SEmmanuel Vadot linux,code = <KEY_HOME>; 689aa1a8ff2SEmmanuel Vadot }; 690aa1a8ff2SEmmanuel Vadot }; 691aa1a8ff2SEmmanuel Vadot 692aa1a8ff2SEmmanuel Vadot alp { 693aa1a8ff2SEmmanuel Vadot azoteq,sense-mode = <1>; 694aa1a8ff2SEmmanuel Vadot linux,code = <KEY_POWER>; 695aa1a8ff2SEmmanuel Vadot }; 696aa1a8ff2SEmmanuel Vadot }; 697aa1a8ff2SEmmanuel Vadot }; 698aa1a8ff2SEmmanuel Vadot 699aa1a8ff2SEmmanuel Vadot - | 700aa1a8ff2SEmmanuel Vadot #include <dt-bindings/gpio/gpio.h> 701aa1a8ff2SEmmanuel Vadot #include <dt-bindings/input/input.h> 702aa1a8ff2SEmmanuel Vadot 703aa1a8ff2SEmmanuel Vadot i2c { 704aa1a8ff2SEmmanuel Vadot #address-cells = <1>; 705aa1a8ff2SEmmanuel Vadot #size-cells = <0>; 706aa1a8ff2SEmmanuel Vadot 707*b2d2a78aSEmmanuel Vadot touchscreen@56 { 708aa1a8ff2SEmmanuel Vadot compatible = "azoteq,iqs7211e"; 709aa1a8ff2SEmmanuel Vadot reg = <0x56>; 710aa1a8ff2SEmmanuel Vadot irq-gpios = <&gpio 4 (GPIO_ACTIVE_LOW | 711aa1a8ff2SEmmanuel Vadot GPIO_OPEN_DRAIN)>; 712aa1a8ff2SEmmanuel Vadot 713aa1a8ff2SEmmanuel Vadot trackpad { 714aa1a8ff2SEmmanuel Vadot event-tap { 715aa1a8ff2SEmmanuel Vadot linux,code = <KEY_PLAYPAUSE>; 716aa1a8ff2SEmmanuel Vadot }; 717aa1a8ff2SEmmanuel Vadot 718aa1a8ff2SEmmanuel Vadot event-tap-double { 719aa1a8ff2SEmmanuel Vadot linux,code = <KEY_SHUFFLE>; 720aa1a8ff2SEmmanuel Vadot }; 721aa1a8ff2SEmmanuel Vadot 722aa1a8ff2SEmmanuel Vadot event-tap-triple { 723aa1a8ff2SEmmanuel Vadot linux,code = <KEY_AGAIN>; 724aa1a8ff2SEmmanuel Vadot }; 725aa1a8ff2SEmmanuel Vadot 726aa1a8ff2SEmmanuel Vadot event-hold { 727aa1a8ff2SEmmanuel Vadot linux,code = <KEY_STOP>; 728aa1a8ff2SEmmanuel Vadot }; 729aa1a8ff2SEmmanuel Vadot 730aa1a8ff2SEmmanuel Vadot event-palm { 731aa1a8ff2SEmmanuel Vadot linux,code = <KEY_EXIT>; 732aa1a8ff2SEmmanuel Vadot }; 733aa1a8ff2SEmmanuel Vadot 734aa1a8ff2SEmmanuel Vadot event-swipe-x-pos { 735aa1a8ff2SEmmanuel Vadot linux,code = <KEY_REWIND>; 736aa1a8ff2SEmmanuel Vadot }; 737aa1a8ff2SEmmanuel Vadot 738aa1a8ff2SEmmanuel Vadot event-swipe-x-pos-hold { 739aa1a8ff2SEmmanuel Vadot linux,code = <KEY_PREVIOUS>; 740aa1a8ff2SEmmanuel Vadot }; 741aa1a8ff2SEmmanuel Vadot 742aa1a8ff2SEmmanuel Vadot event-swipe-x-neg { 743aa1a8ff2SEmmanuel Vadot linux,code = <KEY_FASTFORWARD>; 744aa1a8ff2SEmmanuel Vadot }; 745aa1a8ff2SEmmanuel Vadot 746aa1a8ff2SEmmanuel Vadot event-swipe-x-neg-hold { 747aa1a8ff2SEmmanuel Vadot linux,code = <KEY_NEXT>; 748aa1a8ff2SEmmanuel Vadot }; 749aa1a8ff2SEmmanuel Vadot 750aa1a8ff2SEmmanuel Vadot event-swipe-y-pos { 751aa1a8ff2SEmmanuel Vadot linux,code = <KEY_VOLUMEUP>; 752aa1a8ff2SEmmanuel Vadot }; 753aa1a8ff2SEmmanuel Vadot 754aa1a8ff2SEmmanuel Vadot event-swipe-y-pos-hold { 755aa1a8ff2SEmmanuel Vadot linux,code = <KEY_MUTE>; 756aa1a8ff2SEmmanuel Vadot }; 757aa1a8ff2SEmmanuel Vadot 758aa1a8ff2SEmmanuel Vadot event-swipe-y-neg { 759aa1a8ff2SEmmanuel Vadot linux,code = <KEY_VOLUMEDOWN>; 760aa1a8ff2SEmmanuel Vadot }; 761aa1a8ff2SEmmanuel Vadot 762aa1a8ff2SEmmanuel Vadot event-swipe-y-neg-hold { 763aa1a8ff2SEmmanuel Vadot linux,code = <KEY_MUTE>; 764aa1a8ff2SEmmanuel Vadot }; 765aa1a8ff2SEmmanuel Vadot }; 766aa1a8ff2SEmmanuel Vadot }; 767aa1a8ff2SEmmanuel Vadot }; 768aa1a8ff2SEmmanuel Vadot 769aa1a8ff2SEmmanuel Vadot... 770