Merge tag 'tegra-for-4.8-i2c' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra...
[cascardo/linux.git] / Documentation / devicetree / bindings / input / imx-keypad.txt
1 * Freescale i.MX Keypad Port(KPP) device tree bindings
2
3 The KPP is designed to interface with a keypad matrix with 2-point contact
4 or 3-point contact keys. The KPP is designed to simplify the software task
5 of scanning a keypad matrix. The KPP is capable of detecting, debouncing,
6 and decoding one or multiple keys pressed simultaneously on a keypad.
7
8 Required SoC Specific Properties:
9 - compatible: Should be "fsl,<soc>-kpp".
10
11 - reg: Physical base address of the KPP and length of memory mapped
12   region.
13
14 - interrupts: The KPP interrupt number to the CPU(s).
15
16 - clocks: The clock provided by the SoC to the KPP. Some SoCs use dummy
17 clock(The clock for the KPP is provided by the SoCs automatically).
18
19 Required Board Specific Properties:
20 - pinctrl-names: The definition can be found at
21 pinctrl/pinctrl-bindings.txt.
22
23 - pinctrl-0: The definition can be found at
24 pinctrl/pinctrl-bindings.txt.
25
26 - linux,keymap: The definition can be found at
27 bindings/input/matrix-keymap.txt.
28
29 Example:
30 kpp: kpp@73f94000 {
31         compatible = "fsl,imx51-kpp", "fsl,imx21-kpp";
32         reg = <0x73f94000 0x4000>;
33         interrupts = <60>;
34         clocks = <&clks 0>;
35         pinctrl-names = "default";
36         pinctrl-0 = <&pinctrl_kpp_1>;
37         linux,keymap = <0x00000067      /* KEY_UP */
38                         0x0001006c      /* KEY_DOWN */
39                         0x00020072      /* KEY_VOLUMEDOWN */
40                         0x00030066      /* KEY_HOME */
41                         0x0100006a      /* KEY_RIGHT */
42                         0x01010069      /* KEY_LEFT */
43                         0x0102001c      /* KEY_ENTER */
44                         0x01030073      /* KEY_VOLUMEUP */
45                         0x02000040      /* KEY_F6 */
46                         0x02010042      /* KEY_F8 */
47                         0x02020043      /* KEY_F9 */
48                         0x02030044      /* KEY_F10 */
49                         0x0300003b      /* KEY_F1 */
50                         0x0301003c      /* KEY_F2 */
51                         0x0302003d      /* KEY_F3 */
52                         0x03030074>;    /* KEY_POWER */
53 };