~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/input/brcm,bcm-keypad.txt

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/devicetree/bindings/input/brcm,bcm-keypad.txt (Version linux-6.12-rc7) and /Documentation/devicetree/bindings/input/brcm,bcm-keypad.txt (Version linux-4.14.336)


  1 * Broadcom Keypad Controller device tree bindi      1 * Broadcom Keypad Controller device tree bindings
  2                                                     2 
  3 Broadcom Keypad controller is used to interfac      3 Broadcom Keypad controller is used to interface a SoC with a matrix-type
  4 keypad device. The keypad controller supports       4 keypad device. The keypad controller supports multiple row and column lines.
  5 A key can be placed at each intersection of a       5 A key can be placed at each intersection of a unique row and a unique column.
  6 The keypad controller can sense a key-press an      6 The keypad controller can sense a key-press and key-release and report the
  7 event using a interrupt to the cpu.                 7 event using a interrupt to the cpu.
  8                                                     8 
  9 This binding is based on the matrix-keymap bin      9 This binding is based on the matrix-keymap binding with the following
 10 changes:                                           10 changes:
 11                                                    11 
 12 keypad,num-rows and keypad,num-columns are req     12 keypad,num-rows and keypad,num-columns are required.
 13                                                    13 
 14 Required SoC Specific Properties:                  14 Required SoC Specific Properties:
 15 - compatible: should be "brcm,bcm-keypad"          15 - compatible: should be "brcm,bcm-keypad"
 16                                                    16 
 17 - reg: physical base address of the controller     17 - reg: physical base address of the controller and length of memory mapped
 18   region.                                          18   region.
 19                                                    19 
 20 - interrupts: The interrupt number to the cpu.     20 - interrupts: The interrupt number to the cpu.
 21                                                    21 
 22 Board Specific Properties:                         22 Board Specific Properties:
 23 - keypad,num-rows: Number of row lines connect     23 - keypad,num-rows: Number of row lines connected to the keypad
 24   controller.                                      24   controller.
 25                                                    25 
 26 - keypad,num-columns: Number of column lines c     26 - keypad,num-columns: Number of column lines connected to the
 27   keypad controller.                               27   keypad controller.
 28                                                    28 
 29 - col-debounce-filter-period: The debounce per     29 - col-debounce-filter-period: The debounce period for the Column filter.
 30                                                    30 
 31         KEYPAD_DEBOUNCE_1_ms    =       0          31         KEYPAD_DEBOUNCE_1_ms    =       0
 32         KEYPAD_DEBOUNCE_2_ms    =       1          32         KEYPAD_DEBOUNCE_2_ms    =       1
 33         KEYPAD_DEBOUNCE_4_ms    =       2          33         KEYPAD_DEBOUNCE_4_ms    =       2
 34         KEYPAD_DEBOUNCE_8_ms    =       3          34         KEYPAD_DEBOUNCE_8_ms    =       3
 35         KEYPAD_DEBOUNCE_16_ms   =       4          35         KEYPAD_DEBOUNCE_16_ms   =       4
 36         KEYPAD_DEBOUNCE_32_ms   =       5          36         KEYPAD_DEBOUNCE_32_ms   =       5
 37         KEYPAD_DEBOUNCE_64_ms   =       6          37         KEYPAD_DEBOUNCE_64_ms   =       6
 38         KEYPAD_DEBOUNCE_128_ms  =       7          38         KEYPAD_DEBOUNCE_128_ms  =       7
 39                                                    39 
 40 - status-debounce-filter-period: The debounce      40 - status-debounce-filter-period: The debounce period for the Status filter.
 41                                                    41 
 42         KEYPAD_DEBOUNCE_1_ms    =       0          42         KEYPAD_DEBOUNCE_1_ms    =       0
 43         KEYPAD_DEBOUNCE_2_ms    =       1          43         KEYPAD_DEBOUNCE_2_ms    =       1
 44         KEYPAD_DEBOUNCE_4_ms    =       2          44         KEYPAD_DEBOUNCE_4_ms    =       2
 45         KEYPAD_DEBOUNCE_8_ms    =       3          45         KEYPAD_DEBOUNCE_8_ms    =       3
 46         KEYPAD_DEBOUNCE_16_ms   =       4          46         KEYPAD_DEBOUNCE_16_ms   =       4
 47         KEYPAD_DEBOUNCE_32_ms   =       5          47         KEYPAD_DEBOUNCE_32_ms   =       5
 48         KEYPAD_DEBOUNCE_64_ms   =       6          48         KEYPAD_DEBOUNCE_64_ms   =       6
 49         KEYPAD_DEBOUNCE_128_ms  =       7          49         KEYPAD_DEBOUNCE_128_ms  =       7
 50                                                    50 
 51 - row-output-enabled: An optional property ind     51 - row-output-enabled: An optional property indicating whether the row or
 52   column is being used as output. If specified     52   column is being used as output. If specified the row is being used
 53   as the output. Else defaults to column.          53   as the output. Else defaults to column.
 54                                                    54 
 55 - pull-up-enabled: An optional property indica     55 - pull-up-enabled: An optional property indicating the Keypad scan mode.
 56   If specified implies the keypad scan pull-up     56   If specified implies the keypad scan pull-up has been enabled.
 57                                                    57 
 58 - autorepeat: Boolean, Enable auto repeat feat     58 - autorepeat: Boolean, Enable auto repeat feature of Linux input
 59           subsystem (optional).                    59           subsystem (optional).
 60                                                    60 
 61 - linux,keymap: The keymap for keys as describ     61 - linux,keymap: The keymap for keys as described in the binding document
 62   devicetree/bindings/input/matrix-keymap.txt.     62   devicetree/bindings/input/matrix-keymap.txt.
 63                                                    63 
 64 Example:                                           64 Example:
 65 #include "dt-bindings/input/input.h"               65 #include "dt-bindings/input/input.h"
 66                                                    66 
 67 / {                                                67 / {
 68         keypad: keypad@180ac000 {                  68         keypad: keypad@180ac000 {
 69                 /* Required SoC specific prope     69                 /* Required SoC specific properties */
 70                 compatible = "brcm,bcm-keypad"     70                 compatible = "brcm,bcm-keypad";
 71                                                    71 
 72                 /* Required Board specific pro     72                 /* Required Board specific properties */
 73                 keypad,num-rows = <5>;             73                 keypad,num-rows = <5>;
 74                 keypad,num-columns = <5>;          74                 keypad,num-columns = <5>;
 75                                                    75 
 76                 linux,keymap = <MATRIX_KEY(0x0     76                 linux,keymap = <MATRIX_KEY(0x00, 0x02, KEY_F) /* key_forward */
 77                 MATRIX_KEY(0x00, 0x03, KEY_HOM     77                 MATRIX_KEY(0x00, 0x03, KEY_HOME) /* key_home */
 78                 MATRIX_KEY(0x00, 0x04, KEY_M)      78                 MATRIX_KEY(0x00, 0x04, KEY_M) /* key_message */
 79                 MATRIX_KEY(0x01, 0x00, KEY_A)      79                 MATRIX_KEY(0x01, 0x00, KEY_A) /* key_contacts */
 80                 MATRIX_KEY(0x01, 0x01, KEY_1)      80                 MATRIX_KEY(0x01, 0x01, KEY_1) /* key_1 */
 81                 MATRIX_KEY(0x01, 0x02, KEY_2)      81                 MATRIX_KEY(0x01, 0x02, KEY_2) /* key_2 */
 82                 MATRIX_KEY(0x01, 0x03, KEY_3)      82                 MATRIX_KEY(0x01, 0x03, KEY_3) /* key_3 */
 83                 MATRIX_KEY(0x01, 0x04, KEY_S)      83                 MATRIX_KEY(0x01, 0x04, KEY_S) /* key_speaker */
 84                 MATRIX_KEY(0x02, 0x00, KEY_P)      84                 MATRIX_KEY(0x02, 0x00, KEY_P) /* key_phone */
 85                 MATRIX_KEY(0x02, 0x01, KEY_4)      85                 MATRIX_KEY(0x02, 0x01, KEY_4) /* key_4 */
 86                 MATRIX_KEY(0x02, 0x02, KEY_5)      86                 MATRIX_KEY(0x02, 0x02, KEY_5) /* key_5 */
 87                 MATRIX_KEY(0x02, 0x03, KEY_6)      87                 MATRIX_KEY(0x02, 0x03, KEY_6) /* key_6 */
 88                 MATRIX_KEY(0x02, 0x04, KEY_VOL     88                 MATRIX_KEY(0x02, 0x04, KEY_VOLUMEUP) /* key_vol_up */
 89                 MATRIX_KEY(0x03, 0x00, KEY_C)      89                 MATRIX_KEY(0x03, 0x00, KEY_C) /* key_call_log */
 90                 MATRIX_KEY(0x03, 0x01, KEY_7)      90                 MATRIX_KEY(0x03, 0x01, KEY_7) /* key_7 */
 91                 MATRIX_KEY(0x03, 0x02, KEY_8)      91                 MATRIX_KEY(0x03, 0x02, KEY_8) /* key_8 */
 92                 MATRIX_KEY(0x03, 0x03, KEY_9)      92                 MATRIX_KEY(0x03, 0x03, KEY_9) /* key_9 */
 93                 MATRIX_KEY(0x03, 0x04, KEY_VOL     93                 MATRIX_KEY(0x03, 0x04, KEY_VOLUMEDOWN) /* key_vol_down */
 94                 MATRIX_KEY(0x04, 0x00, KEY_H)      94                 MATRIX_KEY(0x04, 0x00, KEY_H) /* key_headset */
 95                 MATRIX_KEY(0x04, 0x01, KEY_KPA     95                 MATRIX_KEY(0x04, 0x01, KEY_KPASTERISK) /* key_* */
 96                 MATRIX_KEY(0x04, 0x02, KEY_0)      96                 MATRIX_KEY(0x04, 0x02, KEY_0) /* key_0 */
 97                 MATRIX_KEY(0x04, 0x03, KEY_GRA     97                 MATRIX_KEY(0x04, 0x03, KEY_GRAVE) /* key_# */
 98                 MATRIX_KEY(0x04, 0x04, KEY_MUT     98                 MATRIX_KEY(0x04, 0x04, KEY_MUTE) /* key_mute */
 99                 >;                                 99                 >;
100                                                   100 
101                 /* Optional board specific pro    101                 /* Optional board specific properties */
102                 col-debounce-filter-period = <    102                 col-debounce-filter-period = <5>;
103                 row-output-enabled;               103                 row-output-enabled;
104                 pull-up-enabled;                  104                 pull-up-enabled;
105                                                   105 
106         };                                        106         };
107 };                                                107 };
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php