[v3,1/2] dt-bindings: regulator: Add bindings for Richtek RT6190 regulator
Commit Message
From: ChiYuan Huang <cy_huang@richtek.com>
Add devicetree binding for Richtek RT6190 4-Switch buckboost controller.
Signed-off-by: ChiYuan Huang <cy_huang@richtek.com>
---
Hi, Rob:
Since I didn't got any reply from the v2 dt-binding question.
https://lore.kernel.org/lkml/CADiBU3_WUeyYdnmnG0Ff2pH+b3u1zOtP1z44LcA53Ba5c9nrEw@mail.gmail.com/
In v3, I aleady fixed it following by your comment.
I'm just wondering the corrent usage.
As I know, 'enable-gpios' comes from 'gpio-consumer-common.yaml'.
In the common yaml file, it's already declared 'enable-gpios' maxItems as '1'.
That's why I just declared it as 'true'.
Since v3:
- Fix the typo 'upply' to 'supply'.
- Declare 'enable-gpios' maxItems as 1.
- Declare the 'maxItems' for the property 'regulator-allowed-modes'.
Since v2:
- Rename binding filename to 'richtek,rt6190.yaml'
---
.../bindings/regulator/richtek,rt6190.yaml | 79 ++++++++++++++++++++++
1 file changed, 79 insertions(+)
create mode 100644 Documentation/devicetree/bindings/regulator/richtek,rt6190.yaml
Comments
On Mon, Oct 31, 2022 at 10:28:53AM +0800, cy_huang wrote:
> From: ChiYuan Huang <cy_huang@richtek.com>
>
> Add devicetree binding for Richtek RT6190 4-Switch buckboost controller.
>
> Signed-off-by: ChiYuan Huang <cy_huang@richtek.com>
> ---
> Hi, Rob:
>
> Since I didn't got any reply from the v2 dt-binding question.
> https://lore.kernel.org/lkml/CADiBU3_WUeyYdnmnG0Ff2pH+b3u1zOtP1z44LcA53Ba5c9nrEw@mail.gmail.com/
> In v3, I aleady fixed it following by your comment.
>
> I'm just wondering the corrent usage.
> As I know, 'enable-gpios' comes from 'gpio-consumer-common.yaml'.
> In the common yaml file, it's already declared 'enable-gpios' maxItems as '1'.
> That's why I just declared it as 'true'.
Yes, you are right. Either way is fine then.
> Since v3:
> - Fix the typo 'upply' to 'supply'.
> - Declare 'enable-gpios' maxItems as 1.
> - Declare the 'maxItems' for the property 'regulator-allowed-modes'.
>
> Since v2:
> - Rename binding filename to 'richtek,rt6190.yaml'
>
> ---
> .../bindings/regulator/richtek,rt6190.yaml | 79 ++++++++++++++++++++++
> 1 file changed, 79 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/regulator/richtek,rt6190.yaml
Reviewed-by: Rob Herring <robh@kernel.org>
new file mode 100644
@@ -0,0 +1,79 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/regulator/richtek,rt6190.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Richtek RT6190 4-Switch BuckBoost controller
+
+maintainers:
+ - ChiYuan Huang <cy_huang@richtek.com>
+
+description: |
+ The RT6190 is 4-Switch BuckBoost controller designed for converting input
+ voltage to output voltage that can be equal to, higher or lower than input
+ voltage. It operates with wide input voltage range from 4.5V to 36V, and
+ the output voltage can be set from 3V to 36V by external FB pin. It's commonly
+ used for the application like as BuckBoost bus supply, docking station and USB
+ power delivery product.
+
+ Datasheet is available at
+ https://www.richtek.com/assets/product_file/RT6190/DS6190-02.pdf
+
+allOf:
+ - $ref: regulator.yaml#
+
+properties:
+ compatible:
+ enum:
+ - richtek,rt6190
+
+ reg:
+ maxItems: 1
+
+ enable-gpios:
+ maxItems: 1
+
+ wakeup-source: true
+
+ interrupts:
+ maxItems: 1
+
+ regulator-allowed-modes:
+ description: |
+ buck allowed operating mode
+ 0: PSM mode (light load Power Saving Mode)
+ 1: FCCM mode (Forced-CCM mode)
+ maxItems: 2
+ items:
+ enum: [0, 1]
+
+required:
+ - compatible
+ - reg
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+ #include <dt-bindings/interrupt-controller/irq.h>
+
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ regulator@2c {
+ compatible = "richtek,rt6190";
+ reg = <0x2c>;
+ wakeup-source;
+ interrupts-extended = <&gpio26 0 IRQ_TYPE_LEVEL_LOW>;
+ enable-gpios = <&gpio26 1 GPIO_ACTIVE_HIGH>;
+ regulator-name = "richtek,rt6190-buckboost";
+ regulator-min-microvolt = <3000000>;
+ regulator-max-microvolt = <32000000>;
+ regulator-min-microamp = <306000>;
+ regulator-max-microamp = <12114000>;
+ regulator-allowed-modes = <0 1>;
+ };
+ };