Add support for advanced sensitivity settings and signal guard feature. Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> Signed-off-by: Jiri Valek - 2N <jiriv@xxxxxxxx> --- .../bindings/input/microchip,cap11xx.yaml | 77 +++++++++++++++++-- 1 file changed, 72 insertions(+), 5 deletions(-) diff --git a/Documentation/devicetree/bindings/input/microchip,cap11xx.yaml b/Documentation/devicetree/bindings/input/microchip,cap11xx.yaml index 5fa625b5c5fb..b69dac1fba0e 100644 --- a/Documentation/devicetree/bindings/input/microchip,cap11xx.yaml +++ b/Documentation/devicetree/bindings/input/microchip,cap11xx.yaml @@ -45,13 +45,13 @@ properties: Enables the Linux input system's autorepeat feature on the input device. linux,keycodes: - minItems: 6 - maxItems: 6 + minItems: 3 + maxItems: 8 description: | Specifies an array of numeric keycode values to be used for the channels. If this property is omitted, KEY_A, KEY_B, etc are used as defaults. - The array must have exactly six entries. + The number of entries must correspond to the number of channels. microchip,sensor-gain: $ref: /schemas/types.yaml#/definitions/uint32 @@ -70,6 +70,55 @@ properties: open drain. This property allows using the active high push-pull output. + microchip,sensitivity-delta-sense: + $ref: /schemas/types.yaml#/definitions/uint32 + default: 32 + enum: [1, 2, 4, 8, 16, 32, 64, 128] + description: + Optional parameter. Controls the sensitivity multiplier of a touch detection. + At the more sensitive settings, touches are detected for a smaller delta + capacitance corresponding to a “lighter” touch. + + microchip,signal-guard: + $ref: /schemas/types.yaml#/definitions/uint32-array + minItems: 3 + maxItems: 8 + items: + minimum: 0 + maximum: 1 + description: | + Optional parameter supported only for CAP129x. + 0 - off + 1 - on + The signal guard isolates the signal from virtual grounds. + If enabled then the behavior of the channel is changed to signal guard. + The number of entries must correspond to the number of channels. + + microchip,input-treshold: + $ref: /schemas/types.yaml#/definitions/uint32-array + minItems: 3 + maxItems: 8 + items: + minimum: 0 + maximum: 127 + description: + Optional parameter. Specifies the delta threshold that is used to + determine if a touch has been detected. + The number of entries must correspond to the number of channels. + + microchip,calib-sensitivity: + $ref: /schemas/types.yaml#/definitions/uint32-array + minItems: 3 + maxItems: 8 + items: + minimum: 1 + maximum: 4 + description: + Optional parameter supported only for CAP129x. Specifies an array of + numeric values that controls the gain used by the calibration routine to + enable sensor inputs to be more sensitive for proximity detection. + The number of entries must correspond to the number of channels. + patternProperties: "^led@[0-7]$": type: object @@ -98,10 +147,23 @@ allOf: compatible: contains: enum: - - microchip,cap1106 + - microchip,cap1188 then: patternProperties: - "^led@[0-7]$": false + "^led@[0-7]$": true + + - if: + properties: + compatible: + contains: + enum: + - microchip,cap1293 + - microchip,cap1298 + + then: + properties: + microchip,signal-guard: true + microchip,calib-sensitivity: true required: - compatible @@ -122,6 +184,11 @@ examples: reg = <0x28>; autorepeat; microchip,sensor-gain = <2>; + microchip,sensitivity-delta-sense = <16>; + + microchip,signal-guard = <0>, <0>, <0>, <0>, <0>, <0>; + microchip,input-treshold = <21>, <18>, <46>, <46>, <46>, <21>; + microchip,calib-sensitivity = <1>, <2>, <2>, <1>, <1>, <2>; linux,keycodes = <103>, /* KEY_UP */ <106>, /* KEY_RIGHT */ -- 2.25.1