Skip to content

Commit 7502426

Browse files
smaeuldtor
authored andcommitted
dt-bindings: input: Add the PinePhone keyboard binding
Add devicetree support for the PinePhone keyboard case, which provides a matrix keyboard interface and a proxied I2C bus. Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Signed-off-by: Samuel Holland <samuel@sholland.org> Link: https://lore.kernel.org/r/20220618165747.55709-2-samuel@sholland.org Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
1 parent 1d666ab commit 7502426

File tree

1 file changed

+66
-0
lines changed

1 file changed

+66
-0
lines changed
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/input/pine64,pinephone-keyboard.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Pine64 PinePhone keyboard device tree bindings
8+
9+
maintainers:
10+
- Samuel Holland <samuel@sholland.org>
11+
12+
description:
13+
A keyboard accessory is available for the Pine64 PinePhone and PinePhone Pro.
14+
It connects via I2C, providing a raw scan matrix, a flashing interface, and a
15+
subordinate I2C bus for communication with a battery charger IC.
16+
17+
properties:
18+
compatible:
19+
const: pine64,pinephone-keyboard
20+
21+
reg:
22+
const: 0x15
23+
24+
interrupts:
25+
maxItems: 1
26+
27+
vbat-supply:
28+
description: Supply for the keyboard MCU
29+
30+
wakeup-source: true
31+
32+
i2c:
33+
$ref: /schemas/i2c/i2c-controller.yaml#
34+
35+
required:
36+
- compatible
37+
- reg
38+
- interrupts
39+
40+
additionalProperties: false
41+
42+
examples:
43+
- |
44+
#include <dt-bindings/input/input.h>
45+
#include <dt-bindings/interrupt-controller/irq.h>
46+
47+
i2c {
48+
#address-cells = <1>;
49+
#size-cells = <0>;
50+
51+
keyboard@15 {
52+
compatible = "pine64,pinephone-keyboard";
53+
reg = <0x15>;
54+
interrupt-parent = <&r_pio>;
55+
interrupts = <0 12 IRQ_TYPE_EDGE_FALLING>; /* PL12 */
56+
57+
i2c {
58+
#address-cells = <1>;
59+
#size-cells = <0>;
60+
61+
charger@75 {
62+
reg = <0x75>;
63+
};
64+
};
65+
};
66+
};

0 commit comments

Comments
 (0)