mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-09-06 13:09:58 +00:00
dt-bindings: input: qcom,pm8921-keypad: convert to YAML format
Convert the bindings for the keypad subdevices of Qualcomm PM8921 and PM8058 PMICs from text to YAML format. While doing the conversion also drop the linux,keypad-no-autorepeat The property was never used by DT files. Both input and DT binding maintainers consider that bindings should switch to assertive (linux,autorepeat) instead of negating (no-autorepeat) property. Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Link: https://lore.kernel.org/r/20230928110309.1212221-2-dmitry.baryshkov@linaro.org Signed-off-by: Rob Herring <robh@kernel.org>
This commit is contained in:
parent
88862247ce
commit
53ed3233e6
@ -0,0 +1,89 @@
|
|||||||
|
# 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>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
...
|
@ -1,90 +0,0 @@
|
|||||||
Qualcomm PM8xxx PMIC Keypad
|
|
||||||
|
|
||||||
PROPERTIES
|
|
||||||
|
|
||||||
- compatible:
|
|
||||||
Usage: required
|
|
||||||
Value type: <string>
|
|
||||||
Definition: must be one of:
|
|
||||||
"qcom,pm8058-keypad"
|
|
||||||
"qcom,pm8921-keypad"
|
|
||||||
|
|
||||||
- reg:
|
|
||||||
Usage: required
|
|
||||||
Value type: <prop-encoded-array>
|
|
||||||
Definition: address of keypad control register
|
|
||||||
|
|
||||||
- interrupts:
|
|
||||||
Usage: required
|
|
||||||
Value type: <prop-encoded-array>
|
|
||||||
Definition: the first interrupt specifies the key sense interrupt
|
|
||||||
and the second interrupt specifies the key stuck interrupt.
|
|
||||||
The format of the specifier is defined by the binding
|
|
||||||
document describing the node's interrupt parent.
|
|
||||||
|
|
||||||
- linux,keymap:
|
|
||||||
Usage: required
|
|
||||||
Value type: <prop-encoded-array>
|
|
||||||
Definition: the linux keymap. More information can be found in
|
|
||||||
input/matrix-keymap.txt.
|
|
||||||
|
|
||||||
- linux,keypad-no-autorepeat:
|
|
||||||
Usage: optional
|
|
||||||
Value type: <bool>
|
|
||||||
Definition: don't enable autorepeat feature.
|
|
||||||
|
|
||||||
- wakeup-source:
|
|
||||||
Usage: optional
|
|
||||||
Value type: <bool>
|
|
||||||
Definition: use any event on keypad as wakeup event.
|
|
||||||
(Legacy property supported: "linux,keypad-wakeup")
|
|
||||||
|
|
||||||
- keypad,num-rows:
|
|
||||||
Usage: required
|
|
||||||
Value type: <u32>
|
|
||||||
Definition: number of rows in the keymap. More information can be found
|
|
||||||
in input/matrix-keymap.txt.
|
|
||||||
|
|
||||||
- keypad,num-columns:
|
|
||||||
Usage: required
|
|
||||||
Value type: <u32>
|
|
||||||
Definition: number of columns in the keymap. More information can be
|
|
||||||
found in input/matrix-keymap.txt.
|
|
||||||
|
|
||||||
- debounce:
|
|
||||||
Usage: optional
|
|
||||||
Value type: <u32>
|
|
||||||
Definition: time in microseconds that key must be pressed or release
|
|
||||||
for key sense interrupt to trigger.
|
|
||||||
|
|
||||||
- scan-delay:
|
|
||||||
Usage: optional
|
|
||||||
Value type: <u32>
|
|
||||||
Definition: time in microseconds to pause between successive scans
|
|
||||||
of the matrix array.
|
|
||||||
|
|
||||||
- row-hold:
|
|
||||||
Usage: optional
|
|
||||||
Value type: <u32>
|
|
||||||
Definition: time in nanoseconds to pause between scans of each row in
|
|
||||||
the matrix array.
|
|
||||||
|
|
||||||
EXAMPLE
|
|
||||||
|
|
||||||
keypad@148 {
|
|
||||||
compatible = "qcom,pm8921-keypad";
|
|
||||||
reg = <0x148>;
|
|
||||||
interrupt-parent = <&pmicintc>;
|
|
||||||
interrupts = <74 1>, <75 1>;
|
|
||||||
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>;
|
|
||||||
};
|
|
Loading…
Reference in New Issue
Block a user