Skip to content

Commit 60b2a80

Browse files
fengping.yudtor
authored andcommitted
dt-bindings: input: Add bindings for Mediatek matrix keypad
This patch add devicetree bindings for Mediatek matrix keypad driver. Signed-off-by: fengping.yu <fengping.yu@mediatek.com> Reviewed-by: Marco Felsch <m.felsch@pengutronix.de> Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Reviewed-by: Rob Herring <robh@kernel.org> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Link: https://lore.kernel.org/r/20220303154302.252041-2-mkorpershoek@baylibre.com Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
1 parent dfafa56 commit 60b2a80

1 file changed

Lines changed: 77 additions & 0 deletions

File tree

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/input/mediatek,mt6779-keypad.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Mediatek's Keypad Controller device tree bindings
8+
9+
maintainers:
10+
- Fengping Yu <fengping.yu@mediatek.com>
11+
12+
allOf:
13+
- $ref: "/schemas/input/matrix-keymap.yaml#"
14+
15+
description: |
16+
Mediatek's Keypad controller is used to interface a SoC with a matrix-type
17+
keypad device. The keypad controller supports multiple row and column lines.
18+
A key can be placed at each intersection of a unique row and a unique column.
19+
The keypad controller can sense a key-press and key-release and report the
20+
event using a interrupt to the cpu.
21+
22+
properties:
23+
compatible:
24+
oneOf:
25+
- const: mediatek,mt6779-keypad
26+
- items:
27+
- enum:
28+
- mediatek,mt6873-keypad
29+
- const: mediatek,mt6779-keypad
30+
31+
reg:
32+
maxItems: 1
33+
34+
interrupts:
35+
maxItems: 1
36+
37+
clocks:
38+
maxItems: 1
39+
40+
clock-names:
41+
items:
42+
- const: kpd
43+
44+
wakeup-source:
45+
description: use any event on keypad as wakeup event
46+
type: boolean
47+
48+
debounce-delay-ms:
49+
maximum: 256
50+
default: 16
51+
52+
required:
53+
- compatible
54+
- reg
55+
- interrupts
56+
- clocks
57+
- clock-names
58+
59+
additionalProperties: false
60+
61+
examples:
62+
- |
63+
#include <dt-bindings/input/input.h>
64+
#include <dt-bindings/interrupt-controller/arm-gic.h>
65+
66+
soc {
67+
#address-cells = <2>;
68+
#size-cells = <2>;
69+
70+
keyboard@10010000 {
71+
compatible = "mediatek,mt6779-keypad";
72+
reg = <0 0x10010000 0 0x1000>;
73+
interrupts = <GIC_SPI 75 IRQ_TYPE_EDGE_FALLING>;
74+
clocks = <&clk26m>;
75+
clock-names = "kpd";
76+
};
77+
};

0 commit comments

Comments
 (0)