linux/Documentation/devicetree/bindings/input/gpio-matrix-keypad.txt
<<
>>
Prefs
   1* GPIO driven matrix keypad device tree bindings
   2
   3GPIO driven matrix keypad is used to interface a SoC with a matrix keypad.
   4The matrix keypad supports multiple row and column lines, a key can be
   5placed at each intersection of a unique row and a unique column. The matrix
   6keypad can sense a key-press and key-release by means of GPIO lines and
   7report the event using GPIO interrupts to the cpu.
   8
   9Required Properties:
  10- compatible:           Should be "gpio-matrix-keypad"
  11- row-gpios:            List of gpios used as row lines. The gpio specifier
  12                        for this property depends on the gpio controller to
  13                        which these row lines are connected.
  14- col-gpios:            List of gpios used as column lines. The gpio specifier
  15                        for this property depends on the gpio controller to
  16                        which these column lines are connected.
  17- linux,keymap:         The definition can be found at
  18                        bindings/input/matrix-keymap.txt
  19
  20Optional Properties:
  21- linux,no-autorepeat:  do no enable autorepeat feature.
  22- linux,wakeup:         use any event on keypad as wakeup event.
  23- debounce-delay-ms:    debounce interval in milliseconds
  24- col-scan-delay-us:    delay, measured in microseconds, that is needed
  25                        before we can scan keypad after activating column gpio
  26
  27Example:
  28        matrix-keypad {
  29                compatible = "gpio-matrix-keypad";
  30                debounce-delay-ms = <5>;
  31                col-scan-delay-us = <2>;
  32
  33                row-gpios = <&gpio2 25 0
  34                             &gpio2 26 0
  35                             &gpio2 27 0>;
  36
  37                col-gpios = <&gpio2 21 0
  38                             &gpio2 22 0>;
  39
  40                linux,keymap = <0x0000008B
  41                                0x0100009E
  42                                0x02000069
  43                                0x0001006A
  44                                0x0101001C
  45                                0x0201006C>;
  46        };
  47