blob: 70567d92c746ef8bc54eca9652b4f69fb579e74c [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/input/mediatek,pmic-keys.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: MediaTek PMIC Keys
8
9maintainers:
10 - Chen Zhong <chen.zhong@mediatek.com>
11
12allOf:
13 - $ref: input.yaml#
14
15description: |
16 There are two key functions provided by MT6397, MT6323 and other MediaTek
17 PMICs: pwrkey and homekey.
18 The key functions are defined as the subnode of the function node provided
19 by the PMIC that is defined as a Multi-Function Device (MFD).
20
21 For MediaTek MT6323/MT6397 PMIC bindings see
22 Documentation/devicetree/bindings/mfd/mt6397.txt
23
24properties:
25 compatible:
26 enum:
27 - mediatek,mt6323-keys
28 - mediatek,mt6331-keys
29 - mediatek,mt6357-keys
30 - mediatek,mt6358-keys
31 - mediatek,mt6397-keys
32
33 power-off-time-sec: true
34
35 mediatek,long-press-mode:
36 description: |
37 Key long-press force shutdown setting
38 0 - disabled
39 1 - pwrkey
40 2 - pwrkey+homekey
41 $ref: /schemas/types.yaml#/definitions/uint32
42 default: 0
43 maximum: 2
44
45patternProperties:
46 "^((power|home)|(key-[a-z0-9-]+|[a-z0-9-]+-key))$":
47 $ref: input.yaml#
48
49 properties:
50 interrupts:
51 minItems: 1
52 items:
53 - description: Key press interrupt
54 - description: Key release interrupt
55
56 interrupt-names: true
57
58 linux,keycodes:
59 maxItems: 1
60
61 wakeup-source: true
62
63 required:
64 - linux,keycodes
65
66 if:
67 properties:
68 interrupt-names:
69 contains:
70 const: powerkey
71 then:
72 properties:
73 interrupt-names:
74 minItems: 1
75 items:
76 - const: powerkey
77 - const: powerkey_r
78 else:
79 properties:
80 interrupt-names:
81 minItems: 1
82 items:
83 - const: homekey
84 - const: homekey_r
85
86 unevaluatedProperties: false
87
88required:
89 - compatible
90
91unevaluatedProperties: false
92
Tom Rini93743d22024-04-01 09:08:13 -040093...