Rtwo/kernel/motorola/sm8550-devicetrees/bindings/input/qcom,pm8941-pwrkey.txt
2025-09-30 19:22:48 -05:00

77 lines
2.2 KiB
Text

Qualcomm PM8941 PMIC Power Key
PROPERTIES
- compatible:
Usage: required
Value type: <string>
Definition: must be one of:
"qcom,pm8941-pwrkey"
"qcom,pm8941-resin"
"qcom,pmk8350-pwrkey"
"qcom,pmk8350-resin"
- reg:
Usage: required
Value type: <prop-encoded-array>
Definition: Specifies the SPMI base address for the PON (power-on)
peripheral. For PMICs that have PON peripheral (GEN3) split
into PON_HLOS and PON_PBS (e.g. PMK8350), this can hold
addresses of both PON_HLOS and PON_PBS peripherals.
In that case, the PON_PBS address needs to be specified
to facilitate software debouncing on some PMICs.
- reg-names:
Usage: optional
Value type: <stringlist>
Definition: For PON GEN1 and GEN2, it should be "pon". For PON GEN3, it
should include "pon_hlos" and optionally "pon_pbs".
- interrupts:
Usage: required
Value type: <prop-encoded-array>
Definition: key change interrupt; The format of the specifier is
defined by the binding document describing the node's
interrupt parent.
- debounce:
Usage: optional
Value type: <u32>
Definition: time in microseconds that key must be pressed or released
for state change interrupt to trigger. Note that this
property isn't meaningful for PMK8350 or other PON GEN3
PMICs.
- bias-pull-up:
Usage: optional
Value type: <empty>
Definition: presence of this property indicates that the KPDPWR_N pin
should be configured for pull up. Note that this property
isn't meaningful for PMK8350 or other PON GEN3 PMICs.
- linux,code:
Usage: optional
Value type: <u32>
Definition: The input key-code associated with the power key.
Use the linux event codes defined in
include/dt-bindings/input/linux-event-codes.h
When property is omitted KEY_POWER is assumed.
EXAMPLE
pwrkey@800 {
compatible = "qcom,pm8941-pwrkey";
reg = <0x800>;
interrupts = <0x0 0x8 0 IRQ_TYPE_EDGE_BOTH>;
debounce = <15625>;
bias-pull-up;
linux,code = <KEY_POWER>;
};
pwrkey@1300 {
compatible = "qcom,pmk8350-pwrkey";
reg = <0x1300>, <0x800>;
reg-names = "pon_hlos", "pon_pbs";
interrupts = <0x0 0x13 0x7 IRQ_TYPE_EDGE_BOTH>;
linux,code = <KEY_POWER>;
};