0001 Qualcomm PM8xxx PMIC Keypad
0002
0003 PROPERTIES
0004
0005 - compatible:
0006 Usage: required
0007 Value type: <string>
0008 Definition: must be one of:
0009 "qcom,pm8058-keypad"
0010 "qcom,pm8921-keypad"
0011
0012 - reg:
0013 Usage: required
0014 Value type: <prop-encoded-array>
0015 Definition: address of keypad control register
0016
0017 - interrupts:
0018 Usage: required
0019 Value type: <prop-encoded-array>
0020 Definition: the first interrupt specifies the key sense interrupt
0021 and the second interrupt specifies the key stuck interrupt.
0022 The format of the specifier is defined by the binding
0023 document describing the node's interrupt parent.
0024
0025 - linux,keymap:
0026 Usage: required
0027 Value type: <prop-encoded-array>
0028 Definition: the linux keymap. More information can be found in
0029 input/matrix-keymap.txt.
0030
0031 - linux,keypad-no-autorepeat:
0032 Usage: optional
0033 Value type: <bool>
0034 Definition: don't enable autorepeat feature.
0035
0036 - wakeup-source:
0037 Usage: optional
0038 Value type: <bool>
0039 Definition: use any event on keypad as wakeup event.
0040 (Legacy property supported: "linux,keypad-wakeup")
0041
0042 - keypad,num-rows:
0043 Usage: required
0044 Value type: <u32>
0045 Definition: number of rows in the keymap. More information can be found
0046 in input/matrix-keymap.txt.
0047
0048 - keypad,num-columns:
0049 Usage: required
0050 Value type: <u32>
0051 Definition: number of columns in the keymap. More information can be
0052 found in input/matrix-keymap.txt.
0053
0054 - debounce:
0055 Usage: optional
0056 Value type: <u32>
0057 Definition: time in microseconds that key must be pressed or release
0058 for key sense interrupt to trigger.
0059
0060 - scan-delay:
0061 Usage: optional
0062 Value type: <u32>
0063 Definition: time in microseconds to pause between successive scans
0064 of the matrix array.
0065
0066 - row-hold:
0067 Usage: optional
0068 Value type: <u32>
0069 Definition: time in nanoseconds to pause between scans of each row in
0070 the matrix array.
0071
0072 EXAMPLE
0073
0074 keypad@148 {
0075 compatible = "qcom,pm8921-keypad";
0076 reg = <0x148>;
0077 interrupt-parent = <&pmicintc>;
0078 interrupts = <74 1>, <75 1>;
0079 linux,keymap = <
0080 MATRIX_KEY(0, 0, KEY_VOLUMEUP)
0081 MATRIX_KEY(0, 1, KEY_VOLUMEDOWN)
0082 MATRIX_KEY(0, 2, KEY_CAMERA_FOCUS)
0083 MATRIX_KEY(0, 3, KEY_CAMERA)
0084 >;
0085 keypad,num-rows = <1>;
0086 keypad,num-columns = <5>;
0087 debounce = <15>;
0088 scan-delay = <32>;
0089 row-hold = <91500>;
0090 };