Back to home page

OSCL-LXR

 
 

    


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         };