Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux...
[linux/fpc-iii.git] / Documentation / devicetree / bindings / input / qcom,pm8xxx-keypad.txt
blob4a9dc6ba96b144b8667fc670524cec594f264b3d
1 Qualcomm PM8xxx PMIC Keypad
3 PROPERTIES
5 - compatible:
6         Usage: required
7         Value type: <string>
8         Definition: must be one of:
9                     "qcom,pm8058-keypad"
10                     "qcom,pm8921-keypad"
12 - reg:
13         Usage: required
14         Value type: <prop-encoded-array>
15         Definition: address of keypad control register
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.
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.
31 - linux,keypad-no-autorepeat:
32         Usage: optional
33         Value type: <bool>
34         Definition: don't enable autorepeat feature.
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")
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.
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.
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.
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.
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.
72 EXAMPLE
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         };