1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/input/iqs62x-keys.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Azoteq IQS620A/621/622/624/625 Keys and Switches 8 9maintainers: 10 - Jeff LaBundy <jeff@labundy.com> 11 12description: | 13 The Azoteq IQS620A, IQS621, IQS622, IQS624 and IQS625 multi-function sensors 14 feature a variety of self-capacitive, mutual-inductive and Hall-effect sens- 15 ing capabilities that can facilitate a variety of contactless key and switch 16 applications. 17 18 These functions are collectively represented by a "keys" child node from the 19 parent MFD driver. See Documentation/devicetree/bindings/mfd/iqs62x.yaml for 20 further details and examples. Sensor hardware configuration (self-capacitive 21 vs. mutual-inductive, etc.) is selected based on the device's firmware. 22 23properties: 24 compatible: 25 enum: 26 - azoteq,iqs620a-keys 27 - azoteq,iqs621-keys 28 - azoteq,iqs622-keys 29 - azoteq,iqs624-keys 30 - azoteq,iqs625-keys 31 32 linux,keycodes: 33 allOf: 34 - $ref: /schemas/types.yaml#/definitions/uint32-array 35 - minItems: 1 36 maxItems: 16 37 description: | 38 Specifies the numeric keycodes associated with each available touch or 39 proximity event according to the following table. An 'x' indicates the 40 event is supported for a given device. Specify 0 for unused events. 41 42 ------------------------------------------------------------------------- 43 | # | Event | IQS620A | IQS621 | IQS622 | IQS624 | IQS625 | 44 ------------------------------------------------------------------------- 45 | 0 | CH0 Touch | x | x | x | x | x | 46 | | Antenna 1 Touch* | x | | | | | 47 ------------------------------------------------------------------------- 48 | 1 | CH0 Proximity | x | x | x | x | x | 49 | | Antenna 1 Prox.* | x | | | | | 50 ------------------------------------------------------------------------- 51 | 2 | CH1 Touch | x | x | x | x | x | 52 | | Ant. 1 Deep Touch* | x | | | | | 53 ------------------------------------------------------------------------- 54 | 3 | CH1 Proximity | x | x | x | x | x | 55 ------------------------------------------------------------------------- 56 | 4 | CH2 Touch | x | | | | | 57 ------------------------------------------------------------------------- 58 | 5 | CH2 Proximity | x | | | | | 59 | | Antenna 2 Prox.* | x | | | | | 60 ------------------------------------------------------------------------- 61 | 6 | Metal (+) Touch** | x | x | | | | 62 | | Ant. 2 Deep Touch* | x | | | | | 63 ------------------------------------------------------------------------- 64 | 7 | Metal (+) Prox.** | x | x | | | | 65 | | Antenna 2 Touch* | x | | | | | 66 ------------------------------------------------------------------------- 67 | 8 | Metal (-) Touch** | x | x | | | | 68 ------------------------------------------------------------------------- 69 | 9 | Metal (-) Prox.** | x | x | | | | 70 ------------------------------------------------------------------------- 71 | 10 | SAR Active*** | x | | x | | | 72 ------------------------------------------------------------------------- 73 | 11 | SAR Quick Rel.*** | x | | x | | | 74 ------------------------------------------------------------------------- 75 | 12 | SAR Movement*** | x | | x | | | 76 ------------------------------------------------------------------------- 77 | 13 | SAR Filter Halt*** | x | | x | | | 78 ------------------------------------------------------------------------- 79 | 14 | Wheel Up | | | | x | | 80 ------------------------------------------------------------------------- 81 | 15 | Wheel Down | | | | x | | 82 ------------------------------------------------------------------------- 83 * Two-channel SAR. Replaces CH0-2 plus metal touch and proximity events 84 if enabled via firmware. 85 ** "+" and "-" refer to the polarity of a channel's delta (LTA - counts), 86 where "LTA" is defined as the channel's long-term average. 87 *** One-channel SAR. Replaces CH0-2 touch and proximity events if enabled 88 via firmware. 89 90patternProperties: 91 "^hall-switch-(north|south)$": 92 type: object 93 description: 94 Represents north/south-field Hall-effect sensor touch or proximity 95 events. Note that north/south-field orientation is reversed on the 96 IQS620AXzCSR device due to its flip-chip package. 97 98 properties: 99 linux,code: 100 $ref: /schemas/types.yaml#/definitions/uint32 101 description: Numeric switch code associated with the event. 102 103 azoteq,use-prox: 104 $ref: /schemas/types.yaml#/definitions/flag 105 description: 106 If present, specifies that Hall-effect sensor reporting should 107 use the device's wide-range proximity threshold instead of its 108 close-range touch threshold (default). 109 110 required: 111 - linux,code 112 113 additionalProperties: false 114 115if: 116 properties: 117 compatible: 118 contains: 119 enum: 120 - azoteq,iqs624-keys 121 - azoteq,iqs625-keys 122then: 123 patternProperties: 124 "^hall-switch-(north|south)$": false 125 126required: 127 - compatible 128 - linux,keycodes 129 130additionalProperties: false 131 132... 133