[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <1685059471-9598-1-git-send-email-fred.treven@cirrus.com>
Date: Thu, 25 May 2023 19:04:27 -0500
From: Fred Treven <fred.treven@...rus.com>
To: Fred Treven <fred.treven@...rus.com>,
Ben Bright <ben.bright@...rus.com>,
James Ogletree <james.ogletree@...rus.com>,
Dmitry Torokhov <dmitry.torokhov@...il.com>,
Rob Herring <robh+dt@...nel.org>,
"Krzysztof Kozlowski" <krzysztof.kozlowski+dt@...aro.org>,
Simon Trimmer <simont@...nsource.cirrus.com>,
Charles Keepax <ckeepax@...nsource.cirrus.com>,
Richard Fitzgerald <rf@...nsource.cirrus.com>,
<patches@...nsource.cirrus.com>, <linux-input@...r.kernel.org>,
<devicetree@...r.kernel.org>, <linux-kernel@...r.kernel.org>
CC: <lee@...nel.org>
Subject: [PATCH v2 1/5] dt-bindings: input: cirrus,cs40l26: Support for CS40L26
Introduce required basic devicetree parameters for the
initial commit of CS40L26.
Signed-off-by: Fred Treven <fred.treven@...rus.com>
---
.../devicetree/bindings/input/cirrus,cs40l26.yaml | 102 +++++++++++++++++++++
MAINTAINERS | 10 ++
2 files changed, 112 insertions(+)
create mode 100644 Documentation/devicetree/bindings/input/cirrus,cs40l26.yaml
diff --git a/Documentation/devicetree/bindings/input/cirrus,cs40l26.yaml b/Documentation/devicetree/bindings/input/cirrus,cs40l26.yaml
new file mode 100644
index 000000000000..9cbc964ebded
--- /dev/null
+++ b/Documentation/devicetree/bindings/input/cirrus,cs40l26.yaml
@@ -0,0 +1,102 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/input/cirrus,cs40l26.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Cirrus Logic CS40L26 Boosted Haptic Amplifier
+
+maintainers:
+ - Fred Treven <fred.treven@...rus.com>
+
+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
+
+ reset-gpios:
+ maxItems: 1
+
+ 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.
+ multipleOf: 50000
+ minimum: 1600000
+ maximum: 4800000
+ default: 4500000
+
+ cirrus,bst-ctl-microvolt:
+ description: Maximum target voltage to which DSP may increase the VBST supply.
+ multipleOf: 50000
+ minimum: 2550000
+ maximum: 11000000
+ default: 11000000
+
+ cirrus,bst-exploratory-mode-disable:
+ description:
+ Disable boost exploratory mode.
+
+ In exploratory mode the analog maximum peak current limit of 4.5 A
+ (tolerance of + 160 mA) will be applied. This is required for the
+ device to successfully detect a boost inductor short.
+
+ Boost exploratory mode allows the device to overshoot the set boost peak
+ current limit (i.e. if current peak limit is set to 2.5 A to protect the
+ battery inductor, the current limit will be opened up to 4.5 A for
+ several milliseconds at boost startup).
+ 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.
+ type: boolean
+
+required:
+ - compatible
+ - reg
+ - interrupts
+ - reset-gpios
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+ #include <dt-bindings/input/input.h>
+ #include <dt-bindings/interrupt-controller/irq.h>
+
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ cs40l26@58 {
+ compatible = "cirrus,cs40l26a";
+ reg = <0x58>;
+ interrupt-parent = <&gpio>;
+ interrupts = <57 IRQ_TYPE_LEVEL_LOW>;
+ reset-gpios = <&gpio 54 GPIO_ACTIVE_LOW>;
+ VA-supply = <&dummy_vreg>;
+ VP-supply = <&dummy_vreg>;
+ cirrus,bst-ctl-microvolt = <2600000>;
+ cirrus,bst-ipk-microamp = <1650000>;
+ cirrus,bst-exploratory-mode-disable;
+ };
+ };
diff --git a/MAINTAINERS b/MAINTAINERS
index 2b073facf399..d72ed4957b0b 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -4926,6 +4926,16 @@ L: netdev@...r.kernel.org
S: Maintained
F: drivers/net/ethernet/cirrus/ep93xx_eth.c
+CIRRUS LOGIC HAPTICS DRIVER
+M: Fred Treven <fred.treven@...rus.com>
+M: Ben Bright <ben.bright@...rus.com>
+M: James Ogletree <james.ogletree@...rus.com>
+L: patches@...nsource.cirrus.com
+S: Supported
+W: https://github.com/CirrusLogic/linux-drivers/wiki
+T: git https://github.com/CirrusLogic/linux-drivers.git
+F: Documentation/devicetree/bindings/input/cirrus,cs40l26.yaml
+
CIRRUS LOGIC LOCHNAGAR DRIVER
M: Charles Keepax <ckeepax@...nsource.cirrus.com>
M: Richard Fitzgerald <rf@...nsource.cirrus.com>
--
2.7.4
Powered by blists - more mailing lists