brintos

brintos / linux-shallow public Read only

0
0
Text · 2.3 KiB · a0d2460 Raw
88 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/input/cirrus,ep9307-keypad.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Cirrus ep93xx keypad8 9maintainers:10  - Alexander Sverdlin <alexander.sverdlin@gmail.com>11 12allOf:13  - $ref: /schemas/input/matrix-keymap.yaml#14 15description:16  The KPP is designed to interface with a keypad matrix with 2-point contact17  or 3-point contact keys. The KPP is designed to simplify the software task18  of scanning a keypad matrix. The KPP is capable of detecting, debouncing,19  and decoding one or multiple keys pressed simultaneously on a keypad.20 21properties:22  compatible:23    oneOf:24      - const: cirrus,ep9307-keypad25      - items:26          - enum:27              - cirrus,ep9312-keypad28              - cirrus,ep9315-keypad29          - const: cirrus,ep9307-keypad30 31  reg:32    maxItems: 133 34  interrupts:35    maxItems: 136 37  clocks:38    maxItems: 139 40  debounce-delay-ms:41    description: |42          Time in microseconds that key must be pressed or43          released for state change interrupt to trigger.44 45  cirrus,prescale:46    description: row/column counter pre-scaler load value47    $ref: /schemas/types.yaml#/definitions/uint1648    maximum: 102349 50required:51  - compatible52  - reg53  - interrupts54  - clocks55  - linux,keymap56 57unevaluatedProperties: false58 59examples:60  - |61    #include <dt-bindings/input/input.h>62    #include <dt-bindings/clock/cirrus,ep9301-syscon.h>63    keypad@800f0000 {64        compatible = "cirrus,ep9307-keypad";65        reg = <0x800f0000 0x0c>;66        interrupt-parent = <&vic0>;67        interrupts = <29>;68        clocks = <&eclk EP93XX_CLK_KEYPAD>;69        pinctrl-names = "default";70        pinctrl-0 = <&keypad_default_pins>;71        linux,keymap = <KEY_UP>,72                       <KEY_DOWN>,73                       <KEY_VOLUMEDOWN>,74                       <KEY_HOME>,75                       <KEY_RIGHT>,76                       <KEY_LEFT>,77                       <KEY_ENTER>,78                       <KEY_VOLUMEUP>,79                       <KEY_F6>,80                       <KEY_F8>,81                       <KEY_F9>,82                       <KEY_F10>,83                       <KEY_F1>,84                       <KEY_F2>,85                       <KEY_F3>,86                       <KEY_POWER>;87    };88