Add devicetree bindings for CS40L26 driver. Signed-off-by: Fred Treven <fred.treven@xxxxxxxxxx> --- .../devicetree/bindings/input/cs40l26.yaml | 92 ++++++++++++++++++++++ MAINTAINERS | 1 + 2 files changed, 93 insertions(+) create mode 100644 Documentation/devicetree/bindings/input/cs40l26.yaml diff --git a/Documentation/devicetree/bindings/input/cs40l26.yaml b/Documentation/devicetree/bindings/input/cs40l26.yaml new file mode 100644 index 000000000000..1036a374baa0 --- /dev/null +++ b/Documentation/devicetree/bindings/input/cs40l26.yaml @@ -0,0 +1,92 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/input/cs40l26.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Cirrus Logic CS40L26 Boosted Haptic Amplifier + +maintainers: + - Fred Treven <fred.treven@xxxxxxxxxx> + +description: + CS40L26 is a Boosted Haptic Driver with Integrated DSP and Waveform Memory + with Advanced Closed Loop Algorithms and LRA protection + +properties: + compatible: + enum: + - cirrus,cs40l26a + - cirrus,cs40l26b + - cirrus,cs40l27a + - cirrus,cs40l27b + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + description: + Property describing the interrupt line the devices /ALERT pin is connected to. + The device only has one interrupt source. + + VA-supply: + description: Regulator for VA analog voltage + + VP-supply: + description: Regulator for VP peak voltage + + cirrus,bst-ipk-microamp: + description: + Maximum amount of current that can be drawn by the device's boost + converter in uA. Accepted values are between 1600000 uA and 4800000 uA in + 50000 uA increments. + minimum: 1600000 + maximum: 4800000 + default: 4500000 + + cirrus,bst-ctl-microvolt: + description: + Maximum target voltage to which the class H algorithm may increase the + VBST supply, expressed in uV. Valid values range from 2550000 to 11000000 + (inclusive) in steps of 50000. If this value is specified as zero or VP + rises above this value, VBST is bypassed to VP. If this value is omitted, + the maximum target voltage remains at 11 V. + minimum: 2550000 + maximum: 11000000 + default: 11000000 + + cirrus,bst-exploratory-mode-disable: + description: + Disable boost exploratory mode if this boolean is present in the + devicetree. Boost exploratory mode allows the device to overshoot + the set peak current limit. This has potential to damage the boost + inductor. Disabling this mode will prevent this from happening; it will + also prevent the device from detecting boost inductor short errors. + (Default) Enabled + type: boolean + + +required: + - compatible + - reg + - interrupts + +additionalProperties: false + +examples: + - | + i2c { + cs40l26: cs40l26@58 { + compatible = "cirrus,cs40l26a"; + reg = <0x58>; + interrupt-parent = <&gpio0>; + interrupts = <57 8>; + reset-gpios = <&gpio0 54 0>; + VA-supply = <&dummy_vreg>; + VP-supply = <&dummy_vreg>; + cirrus,bst-ctl-microvolt = <2600000>; // Max boost voltage = 2.6V + cirrus,bst-ipk-microamp = <1650000>; // Max boost current = 1.65A + cirrus,bst-exploratory-mode-disabled; // Disable exploratory mode + }; + }; diff --git a/MAINTAINERS b/MAINTAINERS index 7051386d5a13..3cd9f0c8e38d 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -4934,6 +4934,7 @@ L: patches@xxxxxxxxxxxxxxxxxxxxx S: Supported W: https://github.com/CirrusLogic/linux-drivers/wiki T: git https://github.com/CirrusLogic/linux-drivers.git +F: Documentation/devicetree/bindings/input/cs40l26.yaml F: drivers/input/misc/cs40l* F: include/linux/input/cs40l* -- 2.7.4