# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/input/cirrus,ep9307-keypad.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Cirrus ep93xx keypad maintainers: - Alexander Sverdlin allOf: - $ref: /schemas/input/matrix-keymap.yaml# description: The KPP is designed to interface with a keypad matrix with 2-point contact or 3-point contact keys. The KPP is designed to simplify the software task of scanning a keypad matrix. The KPP is capable of detecting, debouncing, and decoding one or multiple keys pressed simultaneously on a keypad. properties: compatible: oneOf: - const: cirrus,ep9307-keypad - items: - enum: - cirrus,ep9312-keypad - cirrus,ep9315-keypad - const: cirrus,ep9307-keypad reg: maxItems: 1 interrupts: maxItems: 1 clocks: maxItems: 1 debounce-delay-ms: description: | Time in microseconds that key must be pressed or released for state change interrupt to trigger. cirrus,prescale: description: row/column counter pre-scaler load value $ref: /schemas/types.yaml#/definitions/uint16 maximum: 1023 required: - compatible - reg - interrupts - clocks - linux,keymap unevaluatedProperties: false examples: - | #include #include keypad@800f0000 { compatible = "cirrus,ep9307-keypad"; reg = <0x800f0000 0x0c>; interrupt-parent = <&vic0>; interrupts = <29>; clocks = <&eclk EP93XX_CLK_KEYPAD>; pinctrl-names = "default"; pinctrl-0 = <&keypad_default_pins>; linux,keymap = , , , , , , , , , , , , , , , ; };