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
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
71EXAMPLE
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	};
90