Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/input/imx-keypad.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: Freescale i.MX Keypad Port(KPP) device tree bindings
0008 
0009 maintainers:
0010   - Liu Ying <gnuiyl@gmail.com>
0011 
0012 allOf:
0013   - $ref: "/schemas/input/matrix-keymap.yaml#"
0014 
0015 description: |
0016   The KPP is designed to interface with a keypad matrix with 2-point contact
0017   or 3-point contact keys. The KPP is designed to simplify the software task
0018   of scanning a keypad matrix. The KPP is capable of detecting, debouncing,
0019   and decoding one or multiple keys pressed simultaneously on a keypad.
0020 
0021 properties:
0022   compatible:
0023     oneOf:
0024       - const: fsl,imx21-kpp
0025       - items:
0026           - enum:
0027               - fsl,imx25-kpp
0028               - fsl,imx27-kpp
0029               - fsl,imx31-kpp
0030               - fsl,imx35-kpp
0031               - fsl,imx51-kpp
0032               - fsl,imx53-kpp
0033               - fsl,imx50-kpp
0034               - fsl,imx6q-kpp
0035               - fsl,imx6sx-kpp
0036               - fsl,imx6sl-kpp
0037               - fsl,imx6sll-kpp
0038               - fsl,imx6ul-kpp
0039               - fsl,imx7d-kpp
0040           - const: fsl,imx21-kpp
0041 
0042   reg:
0043     maxItems: 1
0044 
0045   interrupts:
0046     maxItems: 1
0047 
0048   clocks:
0049     maxItems: 1
0050 
0051 required:
0052   - compatible
0053   - reg
0054   - interrupts
0055   - clocks
0056   - linux,keymap
0057 
0058 unevaluatedProperties: false
0059 
0060 examples:
0061   - |
0062     keypad@73f94000 {
0063         compatible = "fsl,imx51-kpp", "fsl,imx21-kpp";
0064         reg = <0x73f94000 0x4000>;
0065         interrupts = <60>;
0066         clocks = <&clks 0>;
0067         pinctrl-names = "default";
0068         pinctrl-0 = <&pinctrl_kpp_1>;
0069         linux,keymap = <0x00000067      /* KEY_UP */
0070                         0x0001006c      /* KEY_DOWN */
0071                         0x00020072      /* KEY_VOLUMEDOWN */
0072                         0x00030066      /* KEY_HOME */
0073                         0x0100006a      /* KEY_RIGHT */
0074                         0x01010069      /* KEY_LEFT */
0075                         0x0102001c      /* KEY_ENTER */
0076                         0x01030073      /* KEY_VOLUMEUP */
0077                         0x02000040      /* KEY_F6 */
0078                         0x02010042      /* KEY_F8 */
0079                         0x02020043      /* KEY_F9 */
0080                         0x02030044      /* KEY_F10 */
0081                         0x0300003b      /* KEY_F1 */
0082                         0x0301003c      /* KEY_F2 */
0083                         0x0302003d      /* KEY_F3 */
0084                         0x03030074>;    /* KEY_POWER */
0085     };