89 lines
2.1 KiB
YAML
89 lines
2.1 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/input/qcom,pm8921-keypad.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Qualcomm PM8921 PMIC KeyPad
|
|
|
|
maintainers:
|
|
- Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
|
|
|
|
allOf:
|
|
- $ref: input.yaml#
|
|
- $ref: matrix-keymap.yaml#
|
|
|
|
properties:
|
|
compatible:
|
|
enum:
|
|
- qcom,pm8058-keypad
|
|
- qcom,pm8921-keypad
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
interrupts:
|
|
items:
|
|
- description: key sense
|
|
- description: key stuck
|
|
|
|
wakeup-source:
|
|
type: boolean
|
|
description: use any event on keypad as wakeup event
|
|
|
|
linux,keypad-wakeup:
|
|
type: boolean
|
|
deprecated: true
|
|
description: legacy version of the wakeup-source property
|
|
|
|
debounce:
|
|
description:
|
|
Time in microseconds that key must be pressed or
|
|
released for state change interrupt to trigger.
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
scan-delay:
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
description: time in microseconds to pause between successive scans of the
|
|
matrix array
|
|
|
|
row-hold:
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
description: time in nanoseconds to pause between scans of each row in the
|
|
matrix array.
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- interrupts
|
|
- linux,keymap
|
|
|
|
unevaluatedProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/input/input.h>
|
|
#include <dt-bindings/interrupt-controller/irq.h>
|
|
pmic {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
keypad@148 {
|
|
compatible = "qcom,pm8921-keypad";
|
|
reg = <0x148>;
|
|
interrupt-parent = <&pmicintc>;
|
|
interrupts = <74 IRQ_TYPE_EDGE_RISING>, <75 IRQ_TYPE_EDGE_RISING>;
|
|
linux,keymap = <
|
|
MATRIX_KEY(0, 0, KEY_VOLUMEUP)
|
|
MATRIX_KEY(0, 1, KEY_VOLUMEDOWN)
|
|
MATRIX_KEY(0, 2, KEY_CAMERA_FOCUS)
|
|
MATRIX_KEY(0, 3, KEY_CAMERA)
|
|
>;
|
|
keypad,num-rows = <1>;
|
|
keypad,num-columns = <5>;
|
|
debounce = <15>;
|
|
scan-delay = <32>;
|
|
row-hold = <91500>;
|
|
};
|
|
};
|
|
...
|