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 $ref: /schemas/types.yaml#/definitions/uint32-array 34 minItems: 1 35 maxItems: 16 36 description: | 37 Specifies the numeric keycodes associated with each available touch or 38 proximity event according to the following table. An 'x' indicates the 39 event is supported for a given device. Specify 0 for unused events. 40 41 ------------------------------------------------------------------------- 42 | # | Event | IQS620A | IQS621 | IQS622 | IQS624 | IQS625 | 43 ------------------------------------------------------------------------- 44 | 0 | CH0 Touch | x | x | x | x | x | 45 | | Antenna 1 Touch* | x | | | | | 46 ------------------------------------------------------------------------- 47 | 1 | CH0 Proximity | x | x | x | x | x | 48 | | Antenna 1 Prox.* | x | | | | | 49 ------------------------------------------------------------------------- 50 | 2 | CH1 Touch | x | x | x | x | x | 51 | | Ant. 1 Deep Touch* | x | | | | | 52 ------------------------------------------------------------------------- 53 | 3 | CH1 Proximity | x | x | x | x | x | 54 ------------------------------------------------------------------------- 55 | 4 | CH2 Touch | x | | | | | 56 ------------------------------------------------------------------------- 57 | 5 | CH2 Proximity | x | | | | | 58 | | Antenna 2 Prox.* | x | | | | | 59 ------------------------------------------------------------------------- 60 | 6 | Metal (+) Touch** | x | x | | | | 61 | | Ant. 2 Deep Touch* | x | | | | | 62 ------------------------------------------------------------------------- 63 | 7 | Metal (+) Prox.** | x | x | | | | 64 | | Antenna 2 Touch* | x | | | | | 65 ------------------------------------------------------------------------- 66 | 8 | Metal (-) Touch** | x | x | | | | 67 ------------------------------------------------------------------------- 68 | 9 | Metal (-) Prox.** | x | x | | | | 69 ------------------------------------------------------------------------- 70 | 10 | SAR Active*** | x | | x | | | 71 ------------------------------------------------------------------------- 72 | 11 | SAR Quick Rel.*** | x | | x | | | 73 ------------------------------------------------------------------------- 74 | 12 | SAR Movement*** | x | | x | | | 75 ------------------------------------------------------------------------- 76 | 13 | SAR Filter Halt*** | x | | x | | | 77 ------------------------------------------------------------------------- 78 | 14 | Wheel Up | | | | x | | 79 ------------------------------------------------------------------------- 80 | 15 | Wheel Down | | | | x | | 81 ------------------------------------------------------------------------- 82 * Two-channel SAR. Replaces CH0-2 plus metal touch and proximity events 83 if enabled via firmware. 84 ** "+" and "-" refer to the polarity of a channel's delta (LTA - counts), 85 where "LTA" is defined as the channel's long-term average. 86 *** One-channel SAR. Replaces CH0-2 touch and proximity events if enabled 87 via firmware. 88 89patternProperties: 90 "^hall-switch-(north|south)$": 91 type: object 92 description: 93 Represents north/south-field Hall-effect sensor touch or proximity 94 events. Note that north/south-field orientation is reversed on the 95 IQS620AXzCSR device due to its flip-chip package. 96 97 properties: 98 linux,code: 99 $ref: /schemas/types.yaml#/definitions/uint32 100 description: Numeric switch code associated with the event. 101 102 azoteq,use-prox: 103 $ref: /schemas/types.yaml#/definitions/flag 104 description: 105 If present, specifies that Hall-effect sensor reporting should 106 use the device's wide-range proximity threshold instead of its 107 close-range touch threshold (default). 108 109 required: 110 - linux,code 111 112 additionalProperties: false 113 114if: 115 properties: 116 compatible: 117 contains: 118 enum: 119 - azoteq,iqs624-keys 120 - azoteq,iqs625-keys 121then: 122 patternProperties: 123 "^hall-switch-(north|south)$": false 124 125required: 126 - compatible 127 - linux,keycodes 128 129additionalProperties: false 130 131... 132