Skip to content

Commit 86ea5e6

Browse files
bebarinodtor
authored andcommitted
Input: pmic8xxx-keypad - migrate to DT
The driver is only supported on DT enabled platforms. Convert the driver to DT so that it can probe properly. Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
1 parent a5dde0c commit 86ea5e6

File tree

3 files changed

+175
-116
lines changed

3 files changed

+175
-116
lines changed
Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
Qualcomm PM8xxx PMIC Keypad
2+
3+
PROPERTIES
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+
- linux,keypad-wakeup:
37+
Usage: optional
38+
Value type: <bool>
39+
Definition: use any event on keypad as wakeup event.
40+
41+
- keypad,num-rows:
42+
Usage: required
43+
Value type: <u32>
44+
Definition: number of rows in the keymap. More information can be found
45+
in input/matrix-keymap.txt.
46+
47+
- keypad,num-columns:
48+
Usage: required
49+
Value type: <u32>
50+
Definition: number of columns in the keymap. More information can be
51+
found in input/matrix-keymap.txt.
52+
53+
- debounce:
54+
Usage: optional
55+
Value type: <u32>
56+
Definition: time in microseconds that key must be pressed or release
57+
for key sense interrupt to trigger.
58+
59+
- scan-delay:
60+
Usage: optional
61+
Value type: <u32>
62+
Definition: time in microseconds to pause between successive scans
63+
of the matrix array.
64+
65+
- row-hold:
66+
Usage: optional
67+
Value type: <u32>
68+
Definition: time in nanoseconds to pause between scans of each row in
69+
the matrix array.
70+
71+
EXAMPLE
72+
73+
keypad@148 {
74+
compatible = "qcom,pm8921-keypad";
75+
reg = <0x148>;
76+
interrupt-parent = <&pmicintc>;
77+
interrupts = <74 1>, <75 1>;
78+
linux,keymap = <
79+
MATRIX_KEY(0, 0, KEY_VOLUMEUP)
80+
MATRIX_KEY(0, 1, KEY_VOLUMEDOWN)
81+
MATRIX_KEY(0, 2, KEY_CAMERA_FOCUS)
82+
MATRIX_KEY(0, 3, KEY_CAMERA)
83+
>;
84+
keypad,num-rows = <1>;
85+
keypad,num-columns = <5>;
86+
debounce = <15>;
87+
scan-delay = <32>;
88+
row-hold = <91500>;
89+
};

0 commit comments

Comments
 (0)