Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: input: microchip,cap11xx: add advanced sensitivity settings

Add support for advanced sensitivity settings and signal guard feature.

Signed-off-by: Jiri Valek - 2N <jiriv@axis.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20231121155250.613242-2-jiriv@axis.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>

authored by

Jiri Valek - 2N and committed by
Dmitry Torokhov
e4af6bb1 97a7d895

+77 -3
+77 -3
Documentation/devicetree/bindings/input/microchip,cap11xx.yaml
··· 45 45 Enables the Linux input system's autorepeat feature on the input device. 46 46 47 47 linux,keycodes: 48 - minItems: 6 49 - maxItems: 6 48 + minItems: 3 49 + maxItems: 8 50 50 description: | 51 51 Specifies an array of numeric keycode values to 52 52 be used for the channels. If this property is 53 53 omitted, KEY_A, KEY_B, etc are used as defaults. 54 - The array must have exactly six entries. 54 + The number of entries must correspond to the number of channels. 55 55 56 56 microchip,sensor-gain: 57 57 $ref: /schemas/types.yaml#/definitions/uint32 ··· 69 69 By default the interrupt pin is active low 70 70 open drain. This property allows using the active 71 71 high push-pull output. 72 + 73 + microchip,sensitivity-delta-sense: 74 + $ref: /schemas/types.yaml#/definitions/uint32 75 + default: 32 76 + enum: [1, 2, 4, 8, 16, 32, 64, 128] 77 + description: 78 + Controls the sensitivity multiplier of a touch detection. 79 + Higher value means more sensitive settings. 80 + At the more sensitive settings, touches are detected for a smaller delta 81 + capacitance corresponding to a "lighter" touch. 82 + 83 + microchip,signal-guard: 84 + $ref: /schemas/types.yaml#/definitions/uint32-array 85 + minItems: 3 86 + maxItems: 8 87 + items: 88 + enum: [0, 1] 89 + description: | 90 + 0 - off 91 + 1 - on 92 + The signal guard isolates the signal from virtual grounds. 93 + If enabled then the behavior of the channel is changed to signal guard. 94 + The number of entries must correspond to the number of channels. 95 + 96 + microchip,input-threshold: 97 + $ref: /schemas/types.yaml#/definitions/uint32-array 98 + minItems: 3 99 + maxItems: 8 100 + items: 101 + minimum: 0 102 + maximum: 127 103 + description: 104 + Specifies the delta threshold that is used to determine if a touch has 105 + been detected. A higher value means a larger difference in capacitance 106 + is required for a touch to be registered, making the touch sensor less 107 + sensitive. 108 + The number of entries must correspond to the number of channels. 109 + 110 + microchip,calib-sensitivity: 111 + $ref: /schemas/types.yaml#/definitions/uint32-array 112 + minItems: 3 113 + maxItems: 8 114 + items: 115 + enum: [1, 2, 4] 116 + description: | 117 + Specifies an array of numeric values that controls the gain 118 + used by the calibration routine to enable sensor inputs 119 + to be more sensitive for proximity detection. 120 + Gain is based on touch pad capacitance range 121 + 1 - 5-50pF 122 + 2 - 0-25pF 123 + 4 - 0-12.5pF 124 + The number of entries must correspond to the number of channels. 72 125 73 126 patternProperties: 74 127 "^led@[0-7]$": ··· 152 99 contains: 153 100 enum: 154 101 - microchip,cap1106 102 + - microchip,cap1203 103 + - microchip,cap1206 104 + - microchip,cap1293 105 + - microchip,cap1298 155 106 then: 156 107 patternProperties: 157 108 "^led@[0-7]$": false 109 + 110 + - if: 111 + properties: 112 + compatible: 113 + contains: 114 + enum: 115 + - microchip,cap1106 116 + - microchip,cap1126 117 + - microchip,cap1188 118 + - microchip,cap1203 119 + - microchip,cap1206 120 + then: 121 + properties: 122 + microchip,signal-guard: false 123 + microchip,calib-sensitivity: false 158 124 159 125 required: 160 126 - compatible ··· 194 122 reg = <0x28>; 195 123 autorepeat; 196 124 microchip,sensor-gain = <2>; 125 + microchip,sensitivity-delta-sense = <16>; 126 + microchip,input-threshold = <21>, <18>, <46>, <46>, <46>, <21>; 197 127 198 128 linux,keycodes = <103>, /* KEY_UP */ 199 129 <106>, /* KEY_RIGHT */