aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings/input
diff options
context:
space:
mode:
authorLaxman Dewangan <ldewangan@nvidia.com>2013-01-06 21:32:22 -0500
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2013-01-17 03:28:00 -0500
commit88390243a9937f9831aeba5113a8b59bb1d4411a (patch)
tree3fd73c6fc87b0c43290a4d49ee2895c8fdbeeaca /Documentation/devicetree/bindings/input
parent00eb81e56a38ffb7839e0e6262e26c20c617d2ab (diff)
Input: tegra-kbc - add support for rows/columns configuration from dt
The NVIDIA's Tegra KBC has maximum 24 pins to make matrix keypad. Any pin can be configured as row or column. The maximum column pin can be 8 and maximum row pin can be 16. Remove the assumption that all first 16 pins will be used as row and remaining as columns and Add the property for configuring pins to either row or column from DT. Update the devicetree binding document accordingly. Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Diffstat (limited to 'Documentation/devicetree/bindings/input')
-rw-r--r--Documentation/devicetree/bindings/input/nvidia,tegra20-kbc.txt22
1 files changed, 22 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/input/nvidia,tegra20-kbc.txt b/Documentation/devicetree/bindings/input/nvidia,tegra20-kbc.txt
index 72683be6de35..2995fae7ee47 100644
--- a/Documentation/devicetree/bindings/input/nvidia,tegra20-kbc.txt
+++ b/Documentation/devicetree/bindings/input/nvidia,tegra20-kbc.txt
@@ -1,7 +1,18 @@
1* Tegra keyboard controller 1* Tegra keyboard controller
2The key controller has maximum 24 pins to make matrix keypad. Any pin
3can be configured as row or column. The maximum column pin can be 8
4and maximum row pins can be 16 for Tegra20/Tegra30.
2 5
3Required properties: 6Required properties:
4- compatible: "nvidia,tegra20-kbc" 7- compatible: "nvidia,tegra20-kbc"
8- reg: Register base address of KBC.
9- interrupts: Interrupt number for the KBC.
10- nvidia,kbc-row-pins: The KBC pins which are configured as row. This is an
11 array of pin numbers which is used as rows.
12- nvidia,kbc-col-pins: The KBC pins which are configured as column. This is an
13 array of pin numbers which is used as column.
14- linux,keymap: The keymap for keys as described in the binding document
15 devicetree/bindings/input/matrix-keymap.txt.
5 16
6Optional properties, in addition to those specified by the shared 17Optional properties, in addition to those specified by the shared
7matrix-keyboard bindings: 18matrix-keyboard bindings:
@@ -19,5 +30,16 @@ Example:
19keyboard: keyboard { 30keyboard: keyboard {
20 compatible = "nvidia,tegra20-kbc"; 31 compatible = "nvidia,tegra20-kbc";
21 reg = <0x7000e200 0x100>; 32 reg = <0x7000e200 0x100>;
33 interrupts = <0 85 0x04>;
22 nvidia,ghost-filter; 34 nvidia,ghost-filter;
35 nvidia,debounce-delay-ms = <640>;
36 nvidia,kbc-row-pins = <0 1 2>; /* pin 0, 1, 2 as rows */
37 nvidia,kbc-col-pins = <11 12 13>; /* pin 11, 12, 13 as columns */
38 linux,keymap = <0x00000074
39 0x00010067
40 0x00020066
41 0x01010068
42 0x02000069
43 0x02010070
44 0x02020071>;
23}; 45};