1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-C 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/input/iqs26 4 $id: http://devicetree.org/schemas/input/iqs269a.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Azoteq IQS269A Capacitive Touch Control 7 title: Azoteq IQS269A Capacitive Touch Controller 8 8 9 maintainers: 9 maintainers: 10 - Jeff LaBundy <jeff@labundy.com> 10 - Jeff LaBundy <jeff@labundy.com> 11 11 12 allOf: 12 allOf: 13 - $ref: input.yaml# 13 - $ref: input.yaml# 14 14 15 description: | 15 description: | 16 The Azoteq IQS269A is an 8-channel capacitiv 16 The Azoteq IQS269A is an 8-channel capacitive touch controller that features 17 additional Hall-effect and inductive sensing 17 additional Hall-effect and inductive sensing capabilities. 18 18 19 Link to datasheet: https://www.azoteq.com/ 19 Link to datasheet: https://www.azoteq.com/ 20 20 21 properties: 21 properties: 22 compatible: 22 compatible: 23 enum: 23 enum: 24 - azoteq,iqs269a 24 - azoteq,iqs269a 25 - azoteq,iqs269a-00 25 - azoteq,iqs269a-00 26 - azoteq,iqs269a-d0 26 - azoteq,iqs269a-d0 27 27 28 reg: 28 reg: 29 maxItems: 1 29 maxItems: 1 30 30 31 interrupts: 31 interrupts: 32 maxItems: 1 32 maxItems: 1 33 33 34 "#address-cells": 34 "#address-cells": 35 const: 1 35 const: 1 36 36 37 "#size-cells": 37 "#size-cells": 38 const: 0 38 const: 0 39 39 40 azoteq,hall-enable: 40 azoteq,hall-enable: 41 type: boolean 41 type: boolean 42 description: 42 description: 43 Enables Hall-effect sensing on channels 43 Enables Hall-effect sensing on channels 6 and 7. In this case, keycodes 44 assigned to channel 6 are ignored and ke 44 assigned to channel 6 are ignored and keycodes assigned to channel 7 are 45 interpreted as switch codes. Refer to th 45 interpreted as switch codes. Refer to the datasheet for requirements im- 46 posed on channels 6 and 7 by Hall-effect 46 posed on channels 6 and 7 by Hall-effect sensing. 47 47 48 azoteq,suspend-mode: 48 azoteq,suspend-mode: 49 $ref: /schemas/types.yaml#/definitions/uin 49 $ref: /schemas/types.yaml#/definitions/uint32 50 enum: [0, 1, 2, 3] 50 enum: [0, 1, 2, 3] 51 default: 0 51 default: 0 52 description: | 52 description: | 53 Specifies the power mode during suspend 53 Specifies the power mode during suspend as follows: 54 0: Automatic (same as normal runtime, i. 54 0: Automatic (same as normal runtime, i.e. suspend/resume disabled) 55 1: Low power (all sensing at a reduced r 55 1: Low power (all sensing at a reduced reporting rate) 56 2: Ultra-low power (channel 0 proximity 56 2: Ultra-low power (channel 0 proximity sensing) 57 3: Halt (no sensing) 57 3: Halt (no sensing) 58 58 59 azoteq,clk-div: 59 azoteq,clk-div: 60 type: boolean 60 type: boolean 61 description: Divides the device's core clo 61 description: Divides the device's core clock by a factor of 4. 62 62 63 azoteq,ulp-update: 63 azoteq,ulp-update: 64 $ref: /schemas/types.yaml#/definitions/uin 64 $ref: /schemas/types.yaml#/definitions/uint32 65 minimum: 0 65 minimum: 0 66 maximum: 7 66 maximum: 7 67 default: 3 67 default: 3 68 description: Specifies the ultra-low-power 68 description: Specifies the ultra-low-power mode update rate. 69 69 70 azoteq,reseed-offset: 70 azoteq,reseed-offset: 71 type: boolean 71 type: boolean 72 description: 72 description: 73 Applies an 8-count offset to all long-te 73 Applies an 8-count offset to all long-term averages upon either ATI or 74 reseed events. 74 reseed events. 75 75 76 azoteq,filt-str-lp-lta: 76 azoteq,filt-str-lp-lta: 77 $ref: /schemas/types.yaml#/definitions/uin 77 $ref: /schemas/types.yaml#/definitions/uint32 78 enum: [0, 1, 2, 3] 78 enum: [0, 1, 2, 3] 79 default: 0 79 default: 0 80 description: 80 description: 81 Specifies the long-term average filter s 81 Specifies the long-term average filter strength during low-power mode. 82 82 83 azoteq,filt-str-lp-cnt: 83 azoteq,filt-str-lp-cnt: 84 $ref: /schemas/types.yaml#/definitions/uin 84 $ref: /schemas/types.yaml#/definitions/uint32 85 enum: [0, 1, 2, 3] 85 enum: [0, 1, 2, 3] 86 default: 0 86 default: 0 87 description: 87 description: 88 Specifies the raw count filter strength 88 Specifies the raw count filter strength during low-power mode. 89 89 90 azoteq,filt-str-np-lta: 90 azoteq,filt-str-np-lta: 91 $ref: /schemas/types.yaml#/definitions/uin 91 $ref: /schemas/types.yaml#/definitions/uint32 92 enum: [0, 1, 2, 3] 92 enum: [0, 1, 2, 3] 93 default: 0 93 default: 0 94 description: 94 description: 95 Specifies the long-term average filter s 95 Specifies the long-term average filter strength during normal-power mode. 96 96 97 azoteq,filt-str-np-cnt: 97 azoteq,filt-str-np-cnt: 98 $ref: /schemas/types.yaml#/definitions/uin 98 $ref: /schemas/types.yaml#/definitions/uint32 99 enum: [0, 1, 2, 3] 99 enum: [0, 1, 2, 3] 100 default: 0 100 default: 0 101 description: 101 description: 102 Specifies the raw count filter strength 102 Specifies the raw count filter strength during normal-power mode. 103 103 104 azoteq,rate-np-ms: 104 azoteq,rate-np-ms: 105 minimum: 0 105 minimum: 0 106 maximum: 255 106 maximum: 255 107 default: 16 107 default: 16 108 description: Specifies the report rate (in 108 description: Specifies the report rate (in ms) during normal-power mode. 109 109 110 azoteq,rate-lp-ms: 110 azoteq,rate-lp-ms: 111 minimum: 0 111 minimum: 0 112 maximum: 255 112 maximum: 255 113 default: 160 113 default: 160 114 description: Specifies the report rate (in 114 description: Specifies the report rate (in ms) during low-power mode. 115 115 116 azoteq,rate-ulp-ms: 116 azoteq,rate-ulp-ms: 117 multipleOf: 16 117 multipleOf: 16 118 minimum: 0 118 minimum: 0 119 maximum: 4080 119 maximum: 4080 120 default: 160 120 default: 160 121 description: Specifies the report rate (in 121 description: Specifies the report rate (in ms) during ultra-low-power mode. 122 122 123 azoteq,timeout-pwr-ms: 123 azoteq,timeout-pwr-ms: 124 multipleOf: 512 124 multipleOf: 512 125 minimum: 0 125 minimum: 0 126 maximum: 130560 126 maximum: 130560 127 default: 2560 127 default: 2560 128 description: 128 description: 129 Specifies the length of time (in ms) to 129 Specifies the length of time (in ms) to wait for an event during normal- 130 power mode before transitioning to low-p 130 power mode before transitioning to low-power mode. 131 131 132 azoteq,timeout-lta-ms: 132 azoteq,timeout-lta-ms: 133 multipleOf: 512 133 multipleOf: 512 134 minimum: 0 134 minimum: 0 135 maximum: 130560 135 maximum: 130560 136 default: 32768 136 default: 32768 137 description: 137 description: 138 Specifies the length of time (in ms) to 138 Specifies the length of time (in ms) to wait before resetting the long- 139 term average of all channels. Specify th 139 term average of all channels. Specify the maximum timeout to disable it 140 altogether. 140 altogether. 141 141 142 azoteq,ati-band-disable: 142 azoteq,ati-band-disable: 143 type: boolean 143 type: boolean 144 description: Disables the ATI band check. 144 description: Disables the ATI band check. 145 145 146 azoteq,ati-lp-only: 146 azoteq,ati-lp-only: 147 type: boolean 147 type: boolean 148 description: Limits automatic ATI to low-p 148 description: Limits automatic ATI to low-power mode. 149 149 150 azoteq,ati-band-tighten: 150 azoteq,ati-band-tighten: 151 type: boolean 151 type: boolean 152 description: Tightens the ATI band from 1/ 152 description: Tightens the ATI band from 1/8 to 1/16 of the desired target. 153 153 154 azoteq,filt-disable: 154 azoteq,filt-disable: 155 type: boolean 155 type: boolean 156 description: Disables all raw count filter 156 description: Disables all raw count filtering. 157 157 158 azoteq,gpio3-select: 158 azoteq,gpio3-select: 159 $ref: /schemas/types.yaml#/definitions/uin 159 $ref: /schemas/types.yaml#/definitions/uint32 160 minimum: 0 160 minimum: 0 161 maximum: 7 161 maximum: 7 162 default: 0 162 default: 0 163 description: 163 description: 164 Selects the channel for which the GPIO3 164 Selects the channel for which the GPIO3 pin represents touch state. 165 165 166 azoteq,dual-direction: 166 azoteq,dual-direction: 167 type: boolean 167 type: boolean 168 description: 168 description: 169 Specifies that long-term averages are to 169 Specifies that long-term averages are to freeze in the presence of either 170 increasing or decreasing counts, thereby 170 increasing or decreasing counts, thereby permitting events to be reported 171 in either direction. 171 in either direction. 172 172 173 azoteq,tx-freq: 173 azoteq,tx-freq: 174 $ref: /schemas/types.yaml#/definitions/uin 174 $ref: /schemas/types.yaml#/definitions/uint32 175 enum: [0, 1, 2, 3] 175 enum: [0, 1, 2, 3] 176 default: 0 176 default: 0 177 description: | 177 description: | 178 Specifies the inductive sensing excitati 178 Specifies the inductive sensing excitation frequency as follows (paren- 179 thesized numbers represent the frequency 179 thesized numbers represent the frequency if 'azoteq,clk-div' is present): 180 0: 16 MHz (4 MHz) 180 0: 16 MHz (4 MHz) 181 1: 8 MHz (2 MHz) 181 1: 8 MHz (2 MHz) 182 2: 4 MHz (1 MHz) 182 2: 4 MHz (1 MHz) 183 3: 2 MHz (500 kHz) 183 3: 2 MHz (500 kHz) 184 184 185 azoteq,global-cap-increase: 185 azoteq,global-cap-increase: 186 type: boolean 186 type: boolean 187 description: Increases the global capacita 187 description: Increases the global capacitance adder from 0.5 pF to 1.5 pF. 188 188 189 azoteq,reseed-select: 189 azoteq,reseed-select: 190 $ref: /schemas/types.yaml#/definitions/uin 190 $ref: /schemas/types.yaml#/definitions/uint32 191 enum: [0, 1, 2, 3] 191 enum: [0, 1, 2, 3] 192 default: 0 192 default: 0 193 description: | 193 description: | 194 Specifies the event(s) that prompt the d 194 Specifies the event(s) that prompt the device to reseed (i.e. reset the 195 long-term average) of an associated chan 195 long-term average) of an associated channel as follows: 196 0: None 196 0: None 197 1: Proximity 197 1: Proximity 198 2: Proximity or touch 198 2: Proximity or touch 199 3: Proximity, touch or deep touch 199 3: Proximity, touch or deep touch 200 200 201 azoteq,tracking-enable: 201 azoteq,tracking-enable: 202 type: boolean 202 type: boolean 203 description: 203 description: 204 Enables all associated channels to track 204 Enables all associated channels to track their respective reference 205 channels. 205 channels. 206 206 207 azoteq,filt-str-slider: 207 azoteq,filt-str-slider: 208 $ref: /schemas/types.yaml#/definitions/uin 208 $ref: /schemas/types.yaml#/definitions/uint32 209 enum: [0, 1, 2, 3] 209 enum: [0, 1, 2, 3] 210 default: 1 210 default: 1 211 description: Specifies the slider coordina 211 description: Specifies the slider coordinate filter strength. 212 212 213 azoteq,touch-hold-ms: 213 azoteq,touch-hold-ms: 214 multipleOf: 256 214 multipleOf: 256 215 minimum: 256 215 minimum: 256 216 maximum: 65280 216 maximum: 65280 217 default: 5120 217 default: 5120 218 description: 218 description: 219 Specifies the length of time (in ms) for 219 Specifies the length of time (in ms) for which the channel selected by 220 'azoteq,gpio3-select' must be held in a 220 'azoteq,gpio3-select' must be held in a state of touch in order for an 221 approximately 60-ms pulse to be asserted 221 approximately 60-ms pulse to be asserted on the GPIO4 pin. 222 222 223 linux,keycodes: 223 linux,keycodes: 224 minItems: 1 224 minItems: 1 225 maxItems: 8 225 maxItems: 8 226 description: | 226 description: | 227 Specifies the numeric keycodes associate 227 Specifies the numeric keycodes associated with each available gesture in 228 the following order (enter 0 for unused 228 the following order (enter 0 for unused gestures): 229 0: Slider 0 tap 229 0: Slider 0 tap 230 1: Slider 0 hold 230 1: Slider 0 hold 231 2: Slider 0 positive flick or swipe 231 2: Slider 0 positive flick or swipe 232 3: Slider 0 negative flick or swipe 232 3: Slider 0 negative flick or swipe 233 4: Slider 1 tap 233 4: Slider 1 tap 234 5: Slider 1 hold 234 5: Slider 1 hold 235 6: Slider 1 positive flick or swipe 235 6: Slider 1 positive flick or swipe 236 7: Slider 1 negative flick or swipe 236 7: Slider 1 negative flick or swipe 237 237 238 azoteq,gesture-swipe: 238 azoteq,gesture-swipe: 239 type: boolean 239 type: boolean 240 description: 240 description: 241 Directs the device to interpret axial ge 241 Directs the device to interpret axial gestures as a swipe (finger remains 242 on slider) instead of a flick (finger le 242 on slider) instead of a flick (finger leaves slider). 243 243 244 azoteq,timeout-tap-ms: 244 azoteq,timeout-tap-ms: 245 multipleOf: 16 245 multipleOf: 16 246 minimum: 0 246 minimum: 0 247 maximum: 4080 247 maximum: 4080 248 default: 400 248 default: 400 249 description: 249 description: 250 Specifies the length of time (in ms) wit 250 Specifies the length of time (in ms) within which a slider touch must be 251 released in order to be interpreted as a 251 released in order to be interpreted as a tap. Default and maximum values 252 as well as step size are reduced by a fa 252 as well as step size are reduced by a factor of 4 with device version 2. 253 253 254 azoteq,timeout-swipe-ms: 254 azoteq,timeout-swipe-ms: 255 multipleOf: 16 255 multipleOf: 16 256 minimum: 0 256 minimum: 0 257 maximum: 4080 257 maximum: 4080 258 default: 2000 258 default: 2000 259 description: 259 description: 260 Specifies the length of time (in ms) wit 260 Specifies the length of time (in ms) within which an axial gesture must be 261 completed in order to be interpreted as 261 completed in order to be interpreted as a flick or swipe. Default and max- 262 imum values as well as step size are red 262 imum values as well as step size are reduced by a factor of 4 with device 263 version 2. 263 version 2. 264 264 265 azoteq,thresh-swipe: 265 azoteq,thresh-swipe: 266 $ref: /schemas/types.yaml#/definitions/uin 266 $ref: /schemas/types.yaml#/definitions/uint32 267 minimum: 0 267 minimum: 0 268 maximum: 255 268 maximum: 255 269 default: 128 269 default: 128 270 description: 270 description: 271 Specifies the number of points across wh 271 Specifies the number of points across which an axial gesture must travel 272 in order to be interpreted as a flick or 272 in order to be interpreted as a flick or swipe. 273 273 274 dependencies: 274 dependencies: 275 azoteq,gesture-swipe: ["linux,keycodes"] 275 azoteq,gesture-swipe: ["linux,keycodes"] 276 azoteq,timeout-tap-ms: ["linux,keycodes"] 276 azoteq,timeout-tap-ms: ["linux,keycodes"] 277 azoteq,timeout-swipe-ms: ["linux,keycodes"] 277 azoteq,timeout-swipe-ms: ["linux,keycodes"] 278 azoteq,thresh-swipe: ["linux,keycodes"] 278 azoteq,thresh-swipe: ["linux,keycodes"] 279 279 280 patternProperties: 280 patternProperties: 281 "^channel@[0-7]$": 281 "^channel@[0-7]$": 282 type: object 282 type: object 283 description: 283 description: 284 Represents a single sensing channel. A c 284 Represents a single sensing channel. A channel is active if defined and 285 inactive otherwise. 285 inactive otherwise. 286 286 287 properties: 287 properties: 288 reg: 288 reg: 289 minimum: 0 289 minimum: 0 290 maximum: 7 290 maximum: 7 291 description: Index of the channel. 291 description: Index of the channel. 292 292 293 azoteq,reseed-disable: 293 azoteq,reseed-disable: 294 type: boolean 294 type: boolean 295 description: 295 description: 296 Prevents the channel from being rese 296 Prevents the channel from being reseeded if the long-term average 297 timeout (defined in 'azoteq,timeout- 297 timeout (defined in 'azoteq,timeout-lta') expires. 298 298 299 azoteq,blocking-enable: 299 azoteq,blocking-enable: 300 type: boolean 300 type: boolean 301 description: Specifies that the channe 301 description: Specifies that the channel is a blocking channel. 302 302 303 azoteq,slider0-select: 303 azoteq,slider0-select: 304 type: boolean 304 type: boolean 305 description: Specifies that the channe 305 description: Specifies that the channel participates in slider 0. 306 306 307 azoteq,slider1-select: 307 azoteq,slider1-select: 308 type: boolean 308 type: boolean 309 description: Specifies that the channe 309 description: Specifies that the channel participates in slider 1. 310 310 311 azoteq,rx-enable: 311 azoteq,rx-enable: 312 $ref: /schemas/types.yaml#/definitions 312 $ref: /schemas/types.yaml#/definitions/uint32-array 313 minItems: 1 313 minItems: 1 314 maxItems: 8 314 maxItems: 8 315 items: 315 items: 316 minimum: 0 316 minimum: 0 317 maximum: 7 317 maximum: 7 318 description: 318 description: 319 Specifies the CRX pin(s) associated 319 Specifies the CRX pin(s) associated with the channel. By default, only 320 the CRX pin corresponding to the cha 320 the CRX pin corresponding to the channel's index is enabled (e.g. CRX0 321 for channel 0). 321 for channel 0). 322 322 323 azoteq,tx-enable: 323 azoteq,tx-enable: 324 $ref: /schemas/types.yaml#/definitions 324 $ref: /schemas/types.yaml#/definitions/uint32-array 325 minItems: 1 325 minItems: 1 326 maxItems: 8 326 maxItems: 8 327 items: 327 items: 328 minimum: 0 328 minimum: 0 329 maximum: 7 329 maximum: 7 330 default: [0, 1, 2, 3, 4, 5, 6, 7] 330 default: [0, 1, 2, 3, 4, 5, 6, 7] 331 description: Specifies the TX pin(s) a 331 description: Specifies the TX pin(s) associated with the channel. 332 332 333 azoteq,meas-cap-decrease: 333 azoteq,meas-cap-decrease: 334 type: boolean 334 type: boolean 335 description: 335 description: 336 Decreases the internal measurement c 336 Decreases the internal measurement capacitance from 60 pF to 15 pF. 337 337 338 azoteq,rx-float-inactive: 338 azoteq,rx-float-inactive: 339 type: boolean 339 type: boolean 340 description: Floats any inactive CRX p 340 description: Floats any inactive CRX pins instead of grounding them. 341 341 342 azoteq,local-cap-size: 342 azoteq,local-cap-size: 343 $ref: /schemas/types.yaml#/definitions 343 $ref: /schemas/types.yaml#/definitions/uint32 344 enum: [0, 1, 2] 344 enum: [0, 1, 2] 345 default: 0 345 default: 0 346 description: | 346 description: | 347 Specifies the capacitance to be adde 347 Specifies the capacitance to be added to the channel as follows: 348 0: None 348 0: None 349 1: Global adder (based on 'azoteq,gl 349 1: Global adder (based on 'azoteq,global-cap-increase') 350 2: Global adder + 0.5 pF 350 2: Global adder + 0.5 pF 351 351 352 azoteq,invert-enable: 352 azoteq,invert-enable: 353 type: boolean 353 type: boolean 354 description: 354 description: 355 Inverts the polarity of the states r 355 Inverts the polarity of the states reported for proximity, touch and 356 deep-touch events relative to their 356 deep-touch events relative to their respective thresholds. 357 357 358 azoteq,proj-bias: 358 azoteq,proj-bias: 359 $ref: /schemas/types.yaml#/definitions 359 $ref: /schemas/types.yaml#/definitions/uint32 360 enum: [0, 1, 2, 3] 360 enum: [0, 1, 2, 3] 361 default: 2 361 default: 2 362 description: | 362 description: | 363 Specifies the bias current applied d 363 Specifies the bias current applied during projected-capacitance 364 sensing as follows: 364 sensing as follows: 365 0: 2.5 uA 365 0: 2.5 uA 366 1: 5 uA 366 1: 5 uA 367 2: 10 uA 367 2: 10 uA 368 3: 20 uA 368 3: 20 uA 369 369 370 azoteq,sense-mode: 370 azoteq,sense-mode: 371 $ref: /schemas/types.yaml#/definitions 371 $ref: /schemas/types.yaml#/definitions/uint32 372 enum: [0, 1, 9, 14, 15] 372 enum: [0, 1, 9, 14, 15] 373 default: 0 373 default: 0 374 description: | 374 description: | 375 Specifies the channel's sensing mode 375 Specifies the channel's sensing mode as follows: 376 0: Self capacitance 376 0: Self capacitance 377 1: Projected capacitance 377 1: Projected capacitance 378 9: Self or mutual inductance 378 9: Self or mutual inductance 379 14: Hall effect 379 14: Hall effect 380 15: Temperature 380 15: Temperature 381 381 382 azoteq,sense-freq: 382 azoteq,sense-freq: 383 $ref: /schemas/types.yaml#/definitions 383 $ref: /schemas/types.yaml#/definitions/uint32 384 enum: [0, 1, 2, 3] 384 enum: [0, 1, 2, 3] 385 default: 1 385 default: 1 386 description: | 386 description: | 387 Specifies the channel's sensing freq 387 Specifies the channel's sensing frequency as follows (parenthesized 388 numbers represent the frequency if ' 388 numbers represent the frequency if 'azoteq,clk-div' is present): 389 0: 4 MHz (1 MHz) 389 0: 4 MHz (1 MHz) 390 1: 2 MHz (500 kHz) 390 1: 2 MHz (500 kHz) 391 2: 1 MHz (250 kHz) 391 2: 1 MHz (250 kHz) 392 3: 500 kHz (125 kHz) 392 3: 500 kHz (125 kHz) 393 393 394 azoteq,static-enable: 394 azoteq,static-enable: 395 type: boolean 395 type: boolean 396 description: Enables the static front- 396 description: Enables the static front-end for the channel. 397 397 398 azoteq,ati-mode: 398 azoteq,ati-mode: 399 $ref: /schemas/types.yaml#/definitions 399 $ref: /schemas/types.yaml#/definitions/uint32 400 enum: [0, 1, 2, 3] 400 enum: [0, 1, 2, 3] 401 default: 3 401 default: 3 402 description: | 402 description: | 403 Specifies the channel's ATI mode as 403 Specifies the channel's ATI mode as follows: 404 0: Disabled 404 0: Disabled 405 1: Semi-partial 405 1: Semi-partial 406 2: Partial 406 2: Partial 407 3: Full 407 3: Full 408 408 409 azoteq,ati-base: 409 azoteq,ati-base: 410 $ref: /schemas/types.yaml#/definitions 410 $ref: /schemas/types.yaml#/definitions/uint32 411 enum: [75, 100, 150, 200] 411 enum: [75, 100, 150, 200] 412 default: 100 412 default: 100 413 description: Specifies the channel's A 413 description: Specifies the channel's ATI base. 414 414 415 azoteq,ati-target: 415 azoteq,ati-target: 416 $ref: /schemas/types.yaml#/definitions 416 $ref: /schemas/types.yaml#/definitions/uint32 417 multipleOf: 32 417 multipleOf: 32 418 minimum: 0 418 minimum: 0 419 maximum: 2016 419 maximum: 2016 420 default: 512 420 default: 512 421 description: Specifies the channel's A 421 description: Specifies the channel's ATI target. 422 422 423 azoteq,assoc-select: 423 azoteq,assoc-select: 424 $ref: /schemas/types.yaml#/definitions 424 $ref: /schemas/types.yaml#/definitions/uint32-array 425 minItems: 1 425 minItems: 1 426 maxItems: 8 426 maxItems: 8 427 items: 427 items: 428 minimum: 0 428 minimum: 0 429 maximum: 7 429 maximum: 7 430 description: 430 description: 431 Specifies the associated channels fo 431 Specifies the associated channels for which the channel serves as a 432 reference channel. By default, no ch 432 reference channel. By default, no channels are selected. 433 433 434 azoteq,assoc-weight: 434 azoteq,assoc-weight: 435 $ref: /schemas/types.yaml#/definitions 435 $ref: /schemas/types.yaml#/definitions/uint32 436 minimum: 0 436 minimum: 0 437 maximum: 255 437 maximum: 255 438 default: 0 438 default: 0 439 description: 439 description: 440 Specifies the channel's impact weigh 440 Specifies the channel's impact weight if it acts as an associated 441 channel (0 = 0% impact, 255 = 200% i 441 channel (0 = 0% impact, 255 = 200% impact). 442 442 443 patternProperties: 443 patternProperties: 444 "^event-prox(-alt)?$": 444 "^event-prox(-alt)?$": 445 type: object 445 type: object 446 $ref: input.yaml# 446 $ref: input.yaml# 447 description: 447 description: 448 Represents a proximity event reporte 448 Represents a proximity event reported by the channel in response to 449 a decrease in counts. Node names suf 449 a decrease in counts. Node names suffixed with '-alt' instead corre- 450 spond to an increase in counts. 450 spond to an increase in counts. 451 451 452 By default, the long-term average tr 452 By default, the long-term average tracks an increase in counts such 453 that only events corresponding to a 453 that only events corresponding to a decrease in counts are reported 454 (refer to the datasheet for more inf 454 (refer to the datasheet for more information). 455 455 456 Specify 'azoteq,dual-direction' to f 456 Specify 'azoteq,dual-direction' to freeze the long-term average when 457 the counts increase or decrease such 457 the counts increase or decrease such that events of either direction 458 can be reported. Alternatively, spec 458 can be reported. Alternatively, specify 'azoteq,invert-enable' to in- 459 vert the polarity of the states repo 459 vert the polarity of the states reported by the channel. 460 460 461 Complementary events (e.g. event-tou 461 Complementary events (e.g. event-touch and event-touch-alt) can both 462 be present and specify different key 462 be present and specify different key or switch codes, but not differ- 463 ent thresholds or hysteresis (if app 463 ent thresholds or hysteresis (if applicable). 464 464 465 properties: 465 properties: 466 azoteq,thresh: 466 azoteq,thresh: 467 $ref: /schemas/types.yaml#/definit 467 $ref: /schemas/types.yaml#/definitions/uint32 468 minimum: 0 468 minimum: 0 469 maximum: 255 469 maximum: 255 470 default: 10 470 default: 10 471 description: Specifies the thresho 471 description: Specifies the threshold for the event. 472 472 473 linux,code: true 473 linux,code: true 474 474 475 additionalProperties: false 475 additionalProperties: false 476 476 477 "^event-touch(-alt)?$": 477 "^event-touch(-alt)?$": 478 type: object 478 type: object 479 $ref: input.yaml# 479 $ref: input.yaml# 480 description: Represents a touch event 480 description: Represents a touch event reported by the channel. 481 481 482 properties: 482 properties: 483 azoteq,thresh: 483 azoteq,thresh: 484 $ref: /schemas/types.yaml#/definit 484 $ref: /schemas/types.yaml#/definitions/uint32 485 minimum: 0 485 minimum: 0 486 maximum: 255 486 maximum: 255 487 default: 8 487 default: 8 488 description: Specifies the thresho 488 description: Specifies the threshold for the event. 489 489 490 azoteq,hyst: 490 azoteq,hyst: 491 $ref: /schemas/types.yaml#/definit 491 $ref: /schemas/types.yaml#/definitions/uint32 492 minimum: 0 492 minimum: 0 493 maximum: 15 493 maximum: 15 494 default: 4 494 default: 4 495 description: Specifies the hystere 495 description: Specifies the hysteresis for the event. 496 496 497 linux,code: true 497 linux,code: true 498 498 499 additionalProperties: false 499 additionalProperties: false 500 500 501 "^event-deep(-alt)?$": 501 "^event-deep(-alt)?$": 502 type: object 502 type: object 503 $ref: input.yaml# 503 $ref: input.yaml# 504 description: Represents a deep-touch e 504 description: Represents a deep-touch event reported by the channel. 505 505 506 properties: 506 properties: 507 azoteq,thresh: 507 azoteq,thresh: 508 $ref: /schemas/types.yaml#/definit 508 $ref: /schemas/types.yaml#/definitions/uint32 509 minimum: 0 509 minimum: 0 510 maximum: 255 510 maximum: 255 511 default: 26 511 default: 26 512 description: Specifies the thresho 512 description: Specifies the threshold for the event. 513 513 514 azoteq,hyst: 514 azoteq,hyst: 515 $ref: /schemas/types.yaml#/definit 515 $ref: /schemas/types.yaml#/definitions/uint32 516 minimum: 0 516 minimum: 0 517 maximum: 15 517 maximum: 15 518 default: 0 518 default: 0 519 description: Specifies the hystere 519 description: Specifies the hysteresis for the event. 520 520 521 linux,code: true 521 linux,code: true 522 522 523 additionalProperties: false 523 additionalProperties: false 524 524 525 required: 525 required: 526 - reg 526 - reg 527 527 528 additionalProperties: false 528 additionalProperties: false 529 529 530 if: 530 if: 531 properties: 531 properties: 532 compatible: 532 compatible: 533 contains: 533 contains: 534 enum: 534 enum: 535 - azoteq,iqs269a-d0 535 - azoteq,iqs269a-d0 536 then: 536 then: 537 patternProperties: 537 patternProperties: 538 "^channel@[0-7]$": 538 "^channel@[0-7]$": 539 properties: 539 properties: 540 azoteq,slider1-select: false 540 azoteq,slider1-select: false 541 else: 541 else: 542 properties: 542 properties: 543 azoteq,touch-hold-ms: false 543 azoteq,touch-hold-ms: false 544 544 545 required: 545 required: 546 - compatible 546 - compatible 547 - reg 547 - reg 548 - interrupts 548 - interrupts 549 - "#address-cells" 549 - "#address-cells" 550 - "#size-cells" 550 - "#size-cells" 551 551 552 additionalProperties: false 552 additionalProperties: false 553 553 554 examples: 554 examples: 555 - | 555 - | 556 #include <dt-bindings/input/input.h> 556 #include <dt-bindings/input/input.h> 557 #include <dt-bindings/interrupt-controller 557 #include <dt-bindings/interrupt-controller/irq.h> 558 558 559 i2c { 559 i2c { 560 #address-cells = <1>; 560 #address-cells = <1>; 561 #size-cells = <0>; 561 #size-cells = <0>; 562 562 563 touch@44 { 563 touch@44 { 564 #address-cells = <1>; 564 #address-cells = <1>; 565 #size-cells = <0>; 565 #size-cells = <0>; 566 566 567 compatible = "azoteq,iqs26 567 compatible = "azoteq,iqs269a"; 568 reg = <0x44>; 568 reg = <0x44>; 569 interrupt-parent = <&gpio> 569 interrupt-parent = <&gpio>; 570 interrupts = <17 IRQ_TYPE_ 570 interrupts = <17 IRQ_TYPE_LEVEL_LOW>; 571 571 572 azoteq,hall-enable; 572 azoteq,hall-enable; 573 azoteq,suspend-mode = <2>; 573 azoteq,suspend-mode = <2>; 574 574 575 linux,keycodes = <KEY_PLAY 575 linux,keycodes = <KEY_PLAYPAUSE>, 576 <KEY_STOP 576 <KEY_STOPCD>, 577 <KEY_NEXT 577 <KEY_NEXTSONG>, 578 <KEY_PREV 578 <KEY_PREVIOUSSONG>; 579 579 580 azoteq,timeout-tap-ms = <4 580 azoteq,timeout-tap-ms = <400>; 581 azoteq,timeout-swipe-ms = 581 azoteq,timeout-swipe-ms = <800>; 582 582 583 channel@0 { 583 channel@0 { 584 reg = <0x0>; 584 reg = <0x0>; 585 585 586 event-prox { 586 event-prox { 587 linux,code 587 linux,code = <KEY_POWER>; 588 }; 588 }; 589 }; 589 }; 590 590 591 channel@1 { 591 channel@1 { 592 reg = <0x1>; 592 reg = <0x1>; 593 azoteq,slider0-sel 593 azoteq,slider0-select; 594 }; 594 }; 595 595 596 channel@2 { 596 channel@2 { 597 reg = <0x2>; 597 reg = <0x2>; 598 azoteq,slider0-sel 598 azoteq,slider0-select; 599 }; 599 }; 600 600 601 channel@3 { 601 channel@3 { 602 reg = <0x3>; 602 reg = <0x3>; 603 azoteq,slider0-sel 603 azoteq,slider0-select; 604 }; 604 }; 605 605 606 channel@4 { 606 channel@4 { 607 reg = <0x4>; 607 reg = <0x4>; 608 azoteq,slider0-sel 608 azoteq,slider0-select; 609 }; 609 }; 610 610 611 channel@5 { 611 channel@5 { 612 reg = <0x5>; 612 reg = <0x5>; 613 azoteq,slider0-sel 613 azoteq,slider0-select; 614 }; 614 }; 615 615 616 channel@6 { 616 channel@6 { 617 reg = <0x6>; 617 reg = <0x6>; 618 azoteq,invert-enab 618 azoteq,invert-enable; 619 azoteq,static-enab 619 azoteq,static-enable; 620 azoteq,reseed-disa 620 azoteq,reseed-disable; 621 azoteq,rx-enable = 621 azoteq,rx-enable = <0>; 622 azoteq,sense-freq 622 azoteq,sense-freq = <0x0>; 623 azoteq,sense-mode 623 azoteq,sense-mode = <0xE>; 624 azoteq,ati-mode = 624 azoteq,ati-mode = <0x0>; 625 azoteq,ati-base = 625 azoteq,ati-base = <200>; 626 azoteq,ati-target 626 azoteq,ati-target = <320>; 627 }; 627 }; 628 628 629 channel@7 { 629 channel@7 { 630 reg = <0x7>; 630 reg = <0x7>; 631 azoteq,invert-enab 631 azoteq,invert-enable; 632 azoteq,static-enab 632 azoteq,static-enable; 633 azoteq,reseed-disa 633 azoteq,reseed-disable; 634 azoteq,rx-enable = 634 azoteq,rx-enable = <0>, <6>; 635 azoteq,sense-freq 635 azoteq,sense-freq = <0x0>; 636 azoteq,sense-mode 636 azoteq,sense-mode = <0xE>; 637 azoteq,ati-mode = 637 azoteq,ati-mode = <0x3>; 638 azoteq,ati-base = 638 azoteq,ati-base = <200>; 639 azoteq,ati-target 639 azoteq,ati-target = <320>; 640 640 641 event-touch { 641 event-touch { 642 linux,code 642 linux,code = <SW_LID>; 643 }; 643 }; 644 }; 644 }; 645 }; 645 }; 646 }; 646 }; 647 647 648 ... 648 ...
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.