linux/Documentation/devicetree/bindings/input/qcom,pm8xxx-keypad.txt
<<
>>
Prefs
   1Qualcomm PM8xxx PMIC Keypad
   2
   3PROPERTIES
   4
   5- compatible:
   6        Usage: required
   7        Value type: <string>
   8        Definition: must be one of:
   9                    "qcom,pm8058-keypad"
  10                    "qcom,pm8921-keypad"
  11
  12- reg:
  13        Usage: required
  14        Value type: <prop-encoded-array>
  15        Definition: address of keypad control register
  16
  17- interrupts:
  18        Usage: required
  19        Value type: <prop-encoded-array>
  20        Definition: the first interrupt specifies the key sense interrupt
  21                    and the second interrupt specifies the key stuck interrupt.
  22                    The format of the specifier is defined by the binding
  23                    document describing the node's interrupt parent.
  24
  25- linux,keymap:
  26        Usage: required
  27        Value type: <prop-encoded-array>
  28        Definition: the linux keymap. More information can be found in
  29                    input/matrix-keymap.txt.
  30
  31- linux,keypad-no-autorepeat:
  32        Usage: optional
  33        Value type: <bool>
  34        Definition: don't enable autorepeat feature.
  35
  36- wakeup-source:
  37        Usage: optional
  38        Value type: <bool>
  39        Definition: use any event on keypad as wakeup event.
  40                    (Legacy property supported: "linux,keypad-wakeup")
  41
  42- keypad,num-rows:
  43        Usage: required
  44        Value type: <u32>
  45        Definition: number of rows in the keymap. More information can be found
  46                    in input/matrix-keymap.txt.
  47
  48- keypad,num-columns:
  49        Usage: required
  50        Value type: <u32>
  51        Definition: number of columns in the keymap. More information can be
  52                    found in input/matrix-keymap.txt.
  53
  54- debounce:
  55        Usage: optional
  56        Value type: <u32>
  57        Definition: time in microseconds that key must be pressed or release
  58                    for key sense interrupt to trigger.
  59
  60- scan-delay:
  61        Usage: optional
  62        Value type: <u32>
  63        Definition: time in microseconds to pause between successive scans
  64                    of the matrix array.
  65
  66- row-hold:
  67        Usage: optional
  68        Value type: <u32>
  69        Definition: time in nanoseconds to pause between scans of each row in
  70                    the matrix array.
  71
  72EXAMPLE
  73
  74        keypad@148 {
  75                compatible = "qcom,pm8921-keypad";
  76                reg = <0x148>;
  77                interrupt-parent = <&pmicintc>;
  78                interrupts = <74 1>, <75 1>;
  79                linux,keymap = <
  80                        MATRIX_KEY(0, 0, KEY_VOLUMEUP)
  81                        MATRIX_KEY(0, 1, KEY_VOLUMEDOWN)
  82                        MATRIX_KEY(0, 2, KEY_CAMERA_FOCUS)
  83                        MATRIX_KEY(0, 3, KEY_CAMERA)
  84                        >;
  85                keypad,num-rows = <1>;
  86                keypad,num-columns = <5>;
  87                debounce = <15>;
  88                scan-delay = <32>;
  89                row-hold = <91500>;
  90        };
  91