Qualcomm PM8xxx PMIC Keypad
PROPERTIES
compatible:
Usage: required
Value type:
Definition: must be one of:"qcom,pm8058-keypad" "qcom,pm8921-keypad"
reg:
Usage: required
Value type:
Definition: address of keypad control registerinterrupts:
Usage: required
Value type:
Definition: the first interrupt specifies the key sense interruptand the second interrupt specifies the key stuck interrupt. The format of the specifier is defined by the binding document describing the node's interrupt parent.
linux,keymap:
Usage: required
Value type:
Definition: the linux keymap. More information can be found ininput/matrix-keymap.txt.
linux,keypad-no-autorepeat:
Usage: optional
Value type:
Definition: don’t enable autorepeat feature.wakeup-source:
Usage: optional
Value type:
Definition: use any event on keypad as wakeup event.(Legacy property supported: "linux,keypad-wakeup")
keypad,num-rows:
Usage: required
Value type:
Definition: number of rows in the keymap. More information can be foundin input/matrix-keymap.txt.
keypad,num-columns:
Usage: required
Value type:
Definition: number of columns in the keymap. More information can befound in input/matrix-keymap.txt.
debounce:
Usage: optional
Value type:
Definition: time in microseconds that key must be pressed or releasefor key sense interrupt to trigger.
scan-delay:
Usage: optional
Value type:
Definition: time in microseconds to pause between successive scansof the matrix array.
row-hold:
Usage: optional
Value type:
Definition: time in nanoseconds to pause between scans of each row inthe matrix array.
EXAMPLE
keypad@148 {
compatible = "qcom,pm8921-keypad";
reg = <0x148>;
interrupt-parent = <&pmicintc>;
interrupts = <74 1>, <75 1>;
linux,keymap = <
MATRIX_KEY(0, 0, KEY_VOLUMEUP)
MATRIX_KEY(0, 1, KEY_VOLUMEDOWN)
MATRIX_KEY(0, 2, KEY_CAMERA_FOCUS)
MATRIX_KEY(0, 3, KEY_CAMERA)
>;
keypad,num-rows = <1>;
keypad,num-columns = <5>;
debounce = <15>;
scan-delay = <32>;
row-hold = <91500>;
};