1612a0f0bSAngeloGioacchino Del Regno# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2612a0f0bSAngeloGioacchino Del Regno%YAML 1.2 3612a0f0bSAngeloGioacchino Del Regno--- 4612a0f0bSAngeloGioacchino Del Regno$id: http://devicetree.org/schemas/input/mediatek,pmic-keys.yaml# 5612a0f0bSAngeloGioacchino Del Regno$schema: http://devicetree.org/meta-schemas/core.yaml# 6612a0f0bSAngeloGioacchino Del Regno 7612a0f0bSAngeloGioacchino Del Regnotitle: MediaTek PMIC Keys 8612a0f0bSAngeloGioacchino Del Regno 9612a0f0bSAngeloGioacchino Del Regnomaintainers: 10612a0f0bSAngeloGioacchino Del Regno - Chen Zhong <chen.zhong@mediatek.com> 11612a0f0bSAngeloGioacchino Del Regno 12612a0f0bSAngeloGioacchino Del RegnoallOf: 13612a0f0bSAngeloGioacchino Del Regno - $ref: input.yaml# 14612a0f0bSAngeloGioacchino Del Regno 15612a0f0bSAngeloGioacchino Del Regnodescription: | 16612a0f0bSAngeloGioacchino Del Regno There are two key functions provided by MT6397, MT6323 and other MediaTek 17612a0f0bSAngeloGioacchino Del Regno PMICs: pwrkey and homekey. 18612a0f0bSAngeloGioacchino Del Regno The key functions are defined as the subnode of the function node provided 19612a0f0bSAngeloGioacchino Del Regno by the PMIC that is defined as a Multi-Function Device (MFD). 20612a0f0bSAngeloGioacchino Del Regno 21612a0f0bSAngeloGioacchino Del Regno For MediaTek MT6323/MT6397 PMIC bindings see 22612a0f0bSAngeloGioacchino Del Regno Documentation/devicetree/bindings/mfd/mt6397.txt 23612a0f0bSAngeloGioacchino Del Regno 24612a0f0bSAngeloGioacchino Del Regnoproperties: 25612a0f0bSAngeloGioacchino Del Regno compatible: 26612a0f0bSAngeloGioacchino Del Regno enum: 27612a0f0bSAngeloGioacchino Del Regno - mediatek,mt6323-keys 2860a884daSAngeloGioacchino Del Regno - mediatek,mt6331-keys 29f32397bfSFabien Parent - mediatek,mt6357-keys 30612a0f0bSAngeloGioacchino Del Regno - mediatek,mt6358-keys 31612a0f0bSAngeloGioacchino Del Regno - mediatek,mt6397-keys 32612a0f0bSAngeloGioacchino Del Regno 33612a0f0bSAngeloGioacchino Del Regno power-off-time-sec: true 34612a0f0bSAngeloGioacchino Del Regno 35612a0f0bSAngeloGioacchino Del Regno mediatek,long-press-mode: 36612a0f0bSAngeloGioacchino Del Regno description: | 37612a0f0bSAngeloGioacchino Del Regno Key long-press force shutdown setting 38612a0f0bSAngeloGioacchino Del Regno 0 - disabled 39612a0f0bSAngeloGioacchino Del Regno 1 - pwrkey 40612a0f0bSAngeloGioacchino Del Regno 2 - pwrkey+homekey 41612a0f0bSAngeloGioacchino Del Regno $ref: /schemas/types.yaml#/definitions/uint32 42612a0f0bSAngeloGioacchino Del Regno default: 0 43612a0f0bSAngeloGioacchino Del Regno maximum: 2 44612a0f0bSAngeloGioacchino Del Regno 45612a0f0bSAngeloGioacchino Del RegnopatternProperties: 46612a0f0bSAngeloGioacchino Del Regno "^((power|home)|(key-[a-z0-9-]+|[a-z0-9-]+-key))$": 47612a0f0bSAngeloGioacchino Del Regno $ref: input.yaml# 48612a0f0bSAngeloGioacchino Del Regno 49612a0f0bSAngeloGioacchino Del Regno properties: 50612a0f0bSAngeloGioacchino Del Regno interrupts: 51612a0f0bSAngeloGioacchino Del Regno minItems: 1 52612a0f0bSAngeloGioacchino Del Regno items: 53612a0f0bSAngeloGioacchino Del Regno - description: Key press interrupt 54612a0f0bSAngeloGioacchino Del Regno - description: Key release interrupt 55612a0f0bSAngeloGioacchino Del Regno 56612a0f0bSAngeloGioacchino Del Regno interrupt-names: true 57612a0f0bSAngeloGioacchino Del Regno 58*f30e0430SRob Herring linux,keycodes: 59612a0f0bSAngeloGioacchino Del Regno maxItems: 1 60612a0f0bSAngeloGioacchino Del Regno 61612a0f0bSAngeloGioacchino Del Regno wakeup-source: true 62612a0f0bSAngeloGioacchino Del Regno 63612a0f0bSAngeloGioacchino Del Regno required: 64612a0f0bSAngeloGioacchino Del Regno - linux,keycodes 65612a0f0bSAngeloGioacchino Del Regno 66612a0f0bSAngeloGioacchino Del Regno if: 67612a0f0bSAngeloGioacchino Del Regno properties: 68612a0f0bSAngeloGioacchino Del Regno interrupt-names: 69612a0f0bSAngeloGioacchino Del Regno contains: 70612a0f0bSAngeloGioacchino Del Regno const: powerkey 71612a0f0bSAngeloGioacchino Del Regno then: 72612a0f0bSAngeloGioacchino Del Regno properties: 73612a0f0bSAngeloGioacchino Del Regno interrupt-names: 74612a0f0bSAngeloGioacchino Del Regno minItems: 1 75612a0f0bSAngeloGioacchino Del Regno items: 76612a0f0bSAngeloGioacchino Del Regno - const: powerkey 77612a0f0bSAngeloGioacchino Del Regno - const: powerkey_r 78612a0f0bSAngeloGioacchino Del Regno else: 79612a0f0bSAngeloGioacchino Del Regno properties: 80612a0f0bSAngeloGioacchino Del Regno interrupt-names: 81612a0f0bSAngeloGioacchino Del Regno minItems: 1 82612a0f0bSAngeloGioacchino Del Regno items: 83612a0f0bSAngeloGioacchino Del Regno - const: homekey 84612a0f0bSAngeloGioacchino Del Regno - const: homekey_r 85612a0f0bSAngeloGioacchino Del Regno 86612a0f0bSAngeloGioacchino Del Regno unevaluatedProperties: false 87612a0f0bSAngeloGioacchino Del Regno 88612a0f0bSAngeloGioacchino Del Regnorequired: 89612a0f0bSAngeloGioacchino Del Regno - compatible 90612a0f0bSAngeloGioacchino Del Regno 91612a0f0bSAngeloGioacchino Del RegnounevaluatedProperties: false 92612a0f0bSAngeloGioacchino Del Regno 93612a0f0bSAngeloGioacchino Del Regnoexamples: 94612a0f0bSAngeloGioacchino Del Regno - | 95612a0f0bSAngeloGioacchino Del Regno #include <dt-bindings/input/input.h> 96612a0f0bSAngeloGioacchino Del Regno #include <dt-bindings/interrupt-controller/arm-gic.h> 97612a0f0bSAngeloGioacchino Del Regno 98612a0f0bSAngeloGioacchino Del Regno pmic { 99612a0f0bSAngeloGioacchino Del Regno compatible = "mediatek,mt6397"; 100612a0f0bSAngeloGioacchino Del Regno 101612a0f0bSAngeloGioacchino Del Regno keys { 102612a0f0bSAngeloGioacchino Del Regno compatible = "mediatek,mt6397-keys"; 103612a0f0bSAngeloGioacchino Del Regno mediatek,long-press-mode = <1>; 104612a0f0bSAngeloGioacchino Del Regno power-off-time-sec = <0>; 105612a0f0bSAngeloGioacchino Del Regno 106612a0f0bSAngeloGioacchino Del Regno key-power { 107612a0f0bSAngeloGioacchino Del Regno linux,keycodes = <KEY_POWER>; 108612a0f0bSAngeloGioacchino Del Regno wakeup-source; 109612a0f0bSAngeloGioacchino Del Regno }; 110612a0f0bSAngeloGioacchino Del Regno 111612a0f0bSAngeloGioacchino Del Regno key-home { 112612a0f0bSAngeloGioacchino Del Regno linux,keycodes = <KEY_VOLUMEDOWN>; 113612a0f0bSAngeloGioacchino Del Regno }; 114612a0f0bSAngeloGioacchino Del Regno }; 115612a0f0bSAngeloGioacchino Del Regno }; 116