| 
     1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
    2 %YAML 1.2
    3 ---
    4 $id: http://devicetree.org/schemas/input/mediatek,mt6779-keypad.yaml#
    5 $schema: http://devicetree.org/meta-schemas/core.yaml#
    6 
    7 title: Mediatek's Keypad Controller device tree bindings
    8 
    9 maintainers:
   10   - Mattijs Korpershoek <mkorpershoek@baylibre.com>
   11 
   12 allOf:
   13   - $ref: "/schemas/input/matrix-keymap.yaml#"
   14 
   15 description: |
   16   Mediatek's Keypad controller is used to interface a SoC with a matrix-type
   17   keypad device. The keypad controller supports multiple row and column lines.
   18   A key can be placed at each intersection of a unique row and a unique column.
   19   The keypad controller can sense a key-press and key-release and report the
   20   event using a interrupt to the cpu.
   21 
   22 properties:
   23   compatible:
   24     oneOf:
   25       - const: mediatek,mt6779-keypad
   26       - items:
   27           - enum:
   28               - mediatek,mt6873-keypad
   29           - const: mediatek,mt6779-keypad
   30 
   31   reg:
   32     maxItems: 1
   33 
   34   interrupts:
   35     maxItems: 1
   36 
   37   clocks:
   38     maxItems: 1
   39 
   40   clock-names:
   41     items:
   42       - const: kpd
   43 
   44   wakeup-source:
   45     description: use any event on keypad as wakeup event
   46     type: boolean
   47 
   48   debounce-delay-ms:
   49     maximum: 256
   50     default: 16
   51 
   52 required:
   53   - compatible
   54   - reg
   55   - interrupts
   56   - clocks
   57   - clock-names
   58 
   59 additionalProperties: false
   60 
   61 examples:
   62   - |
   63     #include <dt-bindings/input/input.h>
   64     #include <dt-bindings/interrupt-controller/arm-gic.h>
   65 
   66     soc {
   67         #address-cells = <2>;
   68         #size-cells = <2>;
   69 
   70         keyboard@10010000 {
   71           compatible = "mediatek,mt6779-keypad";
   72           reg = <0 0x10010000 0 0x1000>;
   73           interrupts = <GIC_SPI 75 IRQ_TYPE_EDGE_FALLING>;
   74           clocks = <&clk26m>;
   75           clock-names = "kpd";
   76         };
   77     };
Cache object: 1e5e1ece81c262f459689f4c0fe033da 
 
 |