The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/input/samsung-keypad.txt

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 * Samsung's Keypad Controller device tree bindings
    2 
    3 Samsung's Keypad controller is used to interface a SoC with a matrix-type
    4 keypad device. The keypad controller supports multiple row and column lines.
    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 and key-release and report the
    7 event using a interrupt to the cpu.
    8 
    9 Required SoC Specific Properties:
   10 - compatible: should be one of the following
   11   - "samsung,s3c6410-keypad": For controllers compatible with s3c6410 keypad
   12     controller.
   13   - "samsung,s5pv210-keypad": For controllers compatible with s5pv210 keypad
   14     controller.
   15 
   16 - reg: physical base address of the controller and length of memory mapped
   17   region.
   18 
   19 - interrupts: The interrupt number to the cpu.
   20 
   21 Required Board Specific Properties:
   22 - samsung,keypad-num-rows: Number of row lines connected to the keypad
   23   controller.
   24 
   25 - samsung,keypad-num-columns: Number of column lines connected to the
   26   keypad controller.
   27 
   28 - Keys represented as child nodes: Each key connected to the keypad
   29   controller is represented as a child node to the keypad controller
   30   device node and should include the following properties.
   31   - keypad,row: the row number to which the key is connected.
   32   - keypad,column: the column number to which the key is connected.
   33   - linux,code: the key-code to be reported when the key is pressed
   34     and released.
   35 
   36 - pinctrl-0: Should specify pin control groups used for this controller.
   37 - pinctrl-names: Should contain only one value - "default".
   38 
   39 Optional Properties:
   40 - wakeup-source: use any event on keypad as wakeup event.
   41                  (Legacy property supported: "linux,input-wakeup")
   42 
   43 Optional Properties specific to linux:
   44 - linux,keypad-no-autorepeat: do no enable autorepeat feature.
   45 
   46 
   47 Example:
   48         keypad@100a0000 {
   49                 compatible = "samsung,s5pv210-keypad";
   50                 reg = <0x100A0000 0x100>;
   51                 interrupts = <173>;
   52                 samsung,keypad-num-rows = <2>;
   53                 samsung,keypad-num-columns = <8>;
   54                 linux,input-no-autorepeat;
   55                 wakeup-source;
   56 
   57                 pinctrl-names = "default";
   58                 pinctrl-0 = <&keypad_rows &keypad_columns>;
   59 
   60                 key_1 {
   61                         keypad,row = <0>;
   62                         keypad,column = <3>;
   63                         linux,code = <2>;
   64                 };
   65 
   66                 key_2 {
   67                         keypad,row = <0>;
   68                         keypad,column = <4>;
   69                         linux,code = <3>;
   70                 };
   71 
   72                 key_3 {
   73                         keypad,row = <0>;
   74                         keypad,column = <5>;
   75                         linux,code = <4>;
   76                 };
   77         };

Cache object: c13610a555b4738664ad1d1dc9441d7e


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.